|
Как построить запрос | ☑ | ||
---|---|---|---|---|
0
bahtik
06.12.12
✎
17:49
|
Есть три простых регистра накопления (все вида "остатки"):
1) ЗаявкиНаОбеспечение - хранит информацию о заявках от удаленных складов центральному складу на обеспечение материалами. Измерения: Номенклатура, ЗаявкаНаОбеспечение. Ресурс: Количество; 2) ОстаткиНоменклатуры - хранит то, что в названии. Измерения: Склад, Номенклатура. Ресурс: Количество; 3) ЗаявкиНаЗакупку - хранит информацию о заявках центрального склада отделу обеспечения на закупку материалов. Теперь нужно построить отчет для центрального склада, который покажет, сколько нужно заказать к закупке материалов, чтобы обеспечить текущие заявки на обеспечение. С помощью СКД без особых проблем: ВЫБРАТЬ ЗаявкиНаОбеспечениеОстатки.Номенклатура, ЗаявкиНаОбеспечениеОстатки.КоличествоОстаток КАК КоличествоПоЗаявкам, ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК КоличествоПоОстаткам, ЗаявкиНаЗакупкуОстатки.КоличествоОстаток КАК КоличествоЗаказаноЗакупить ИЗ РегистрНакопления.ЗаявкиНаОбеспечение.Остатки( &Период, ЗаявкаНаОбеспечение.Подтверждена И НЕ ЗаявкаНаОбеспечение.Закрыта) КАК ЗаявкиНаОбеспечениеОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки(&Период, Склад = &Склад) КАК ОстаткиНоменклатурыОстатки ПО ЗаявкиНаОбеспечениеОстатки.Номенклатура = ОстаткиНоменклатурыОстатки.Номенклатура, РегистрНакопления.ЗаявкиНаЗакупку.Остатки(&Период, ) КАК ЗаявкиНаЗакупкуОстатки В итоге получаем примерно такой отчет: | Номенклатура | По заявкам | По остаткам | Уже заказано | Нужно заказать | | Краска | 350 | 100 | 50 | 200 | Поле "Нужно заказать" - пользовательское поле, указанное в настройках. Теперь, собственно, вопрос. Допустим, количество по заявкам состоит из 3-х разных заявок. Можно ли как-то построить запрос так, чтоб в отчете под строкой по Номенклатуре выводились расшифровки по заявкам (по ним из должно показываться только поле "По заявкам")? |
|||
1
ДайтеДайте Сказать
06.12.12
✎
17:50
|
это сложно, много букв
|
|||
2
Жан Пердежон
06.12.12
✎
17:55
|
Можно
|
|||
3
bahtik
06.12.12
✎
18:03
|
Как? Хотя бы в общем.
|
|||
4
lxndr
06.12.12
✎
18:05
|
(0) Что ты хочешь видеть в колонке "По остаткам" напротив каждого заказа?
|
|||
5
bahtik
06.12.12
✎
18:06
|
Ничего.
|
|||
6
rincewind
06.12.12
✎
18:06
|
(3) В общем - сдается мне, что тебе пригодится таблица ОстаткиИОбороты, и разворот по Регистратору.
|
|||
7
bahtik
06.12.12
✎
18:06
|
По заявкам нужно видеть только "По заявкам"
|
|||
8
bahtik
06.12.12
✎
18:07
|
Просто я не понимаю, нужно использовать вложенный запрос, или временную таблицу... С помощью чего это можно сделать и проще сделать?
|
|||
9
bahtik
06.12.12
✎
18:07
|
Отдельно построить этот запрос - проще простого. Но вот как втиснуть его в этот?
|
|||
10
rincewind
06.12.12
✎
18:09
|
Как вариант, вложенный запрос.
Результат второго запроса соединяй с первым Левым соединением. |
|||
11
bahtik
06.12.12
✎
18:11
|
(10) Так пробовал, но тогда получается бред. Остатки номенклатуры суммируются, заказанное количество суммируется...
|
|||
12
lxndr
06.12.12
✎
18:16
|
(11) для ресурса остатков убери расчет по группировке заказ
|
|||
13
Жан Пердежон
06.12.12
✎
18:18
|
(3) можно либо создать новый набор данных и соединить его со свои набором, либо изменить свой запрос и кучу настроек в скд
|
|||
14
rincewind
06.12.12
✎
18:18
|
Щас вспомнил, подобную задачу решил так: вторым запросом, не вложенным, получал обороты, и при построении отчета после строки с общим числом выводил в детализации результаты из второго запроса, где номенклатура совпадает с результатом из первого.
|
|||
15
bahtik
06.12.12
✎
18:30
|
Ща будем пробовать...
|
|||
16
bahtik
06.12.12
✎
19:15
|
(12) Имеешь в виду, на закладке "Ресурсы", в колонке "Рассчитывать по" указать флажок только для поля "Номенклатура"? Указал, но почему-то считает все равно, как сумму.
|
|||
17
bahtik
06.12.12
✎
19:16
|
+(16) Т.е. результат такой же.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |