|
Отбор в СКД | ☑ | ||
---|---|---|---|---|
0
DAVI
21.08.14
✎
13:32
|
Добрый день! Есть отчет на скд(делал не я) по продажам и остаткам товара.
Вот запрос : ВЫБРАТЬ ВложенныйЗапрос.Номенклатура, ВложенныйЗапрос.Склад, ВложенныйЗапрос.КолПродано КАК КолПродано, ВложенныйЗапрос.КолОстаток КАК КолОстаток ИЗ (ВЫБРАТЬ Продажи.Номенклатура КАК Номенклатура, Продажи.ДокументПродажи.Склад КАК Склад, Продажи.Количество КАК КолПродано, 0 КАК КолОстаток ИЗ РегистрНакопления.Продажи КАК Продажи ГДЕ Продажи.ДокументПродажи.Склад = &Склад И Продажи.Период МЕЖДУ &НачалоПериода И &КонецПериода И Продажи.Номенклатура = &Номенклатура И Продажи.ХарактеристикаНоменклатуры = &ХарактеристикаНоменклатуры ОБЪЕДИНИТЬ ВЫБРАТЬ ТоварыНаСкладахОстатки.Номенклатура, ТоварыНаСкладахОстатки.Склад, 0, ТоварыНаСкладахОстатки.КоличествоОстаток ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(&ТекущаяДата, ) КАК ТоварыНаСкладахОстатки) КАК ВложенныйЗапрос Проблема в том, что в пользовательском режиме чтобы установить отбор по номенклатуре и складу нужно ставить отбор в двух местах. Сначала в настройке самого отчета потом отдельно в группировке номенклатура. Это очень не удобно для пользователя, Подскажите в чем проблема,может запрос неправильный или настройки? УПП для каз 1.0.23.30 Платформа 8.2.19.102 |
|||
1
Кир Пластелинин
21.08.14
✎
13:37
|
что то я не понял - для чего отбор по номенклатуре в группировке... и вопрос. почему берется реальная таблица рн "продажи", а не обороты? касательно отборов - прописать на закладке компоновка данных отбор по номенклатуре в параметрах вирт. таблицы и указать ему для каждого рн одинаковый синоним
|
|||
2
fmrlex
21.08.14
✎
13:37
|
За неиспользование виртуальных таблиц обычно бьют розгами.
|
|||
3
13_Mult
21.08.14
✎
13:42
|
ещё вложенный запрос убери, объединить и всё.
|
|||
4
DAVI
21.08.14
✎
13:54
|
Суть такова: Этот отчет должен показывать остатки по выбранным складам и продажи ТОЛЬКО по складу,который прописан в настройках пользователя
|
|||
5
DAVI
21.08.14
✎
13:55
|
он работает,но только если установишь два отбора,на самом отчете и на группировке
|
|||
6
DAVI
21.08.14
✎
13:58
|
(1) исправил запрос на вот так
ВЫБРАТЬ ВложенныйЗапрос.Номенклатура, ВложенныйЗапрос.Склад, ВложенныйЗапрос.КолПродано КАК КолПродано, ВложенныйЗапрос.КолОстаток КАК КолОстаток ИЗ (ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, ПродажиОбороты.ДокументПродажи.Склад КАК Склад, ПродажиОбороты.КоличествоОборот КАК КолПродано, 0 КАК КолОстаток ИЗ РегистрНакопления.Продажи.Обороты( &НачалоПериода, &КонецПериода, , ДокументПродажи.Склад = &Склад И Номенклатура = &Номенклатура {(ДокументПродажи.Склад = &Склад И Номенклатура = &Номенклатура)}) КАК ПродажиОбороты ОБЪЕДИНИТЬ ВЫБРАТЬ ТоварыНаСкладахОстатки.Номенклатура, ТоварыНаСкладахОстатки.Склад, 0, ТоварыНаСкладахОстатки.КоличествоОстаток ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(&ТекущаяДата, {(Номенклатура = &Номенклатура)}) КАК ТоварыНаСкладахОстатки) КАК ВложенныйЗапрос |
|||
7
barrgand
21.08.14
✎
14:02
|
(6) Для чего нужен вложенный запрос?
И это зачем: ДокументПродажи.Склад = &Склад И Номенклатура = &Номенклатура {(ДокументПродажи.Склад = &Склад И Номенклатура = &Номенклатура)} |
|||
8
Кир Пластелинин
21.08.14
✎
14:06
|
о хоспади. так отбор или параметр? РегистрНакопления.ТоварыВЯчейках.Обороты(, , , {(Номенклатура) КАК Номенклатура_Отбор}) - вот пример отбора
|
|||
9
DAVI
21.08.14
✎
14:24
|
ВЫБРАТЬ
ПродажиОбороты.Номенклатура, ПродажиОбороты.ХарактеристикаНоменклатуры, ПродажиОбороты.ДокументПродажи.Склад, ПродажиОбороты.КоличествоОборот КАК КоличествоПроданного, 0 КАК КоличествоОстаток ИЗ РегистрНакопления.Продажи.Обороты(, , , {(Номенклатура) КАК Номенклатура_Отбор}) КАК ПродажиОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ТоварыНаСкладахОстатки.Номенклатура, ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры, ТоварыНаСкладахОстатки.Склад, 0, ТоварыНаСкладахОстатки.КоличествоОстаток ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(, {(Номенклатура) КАК Номенклатура_Отбор}) КАК ТоварыНаСкладахОстатки |
|||
10
DAVI
21.08.14
✎
14:24
|
Так?
|
|||
11
Кир Пластелинин
21.08.14
✎
14:59
|
ну это скорей мне у Вас нужно спросить - что Вам нужно: отбор или параметр, ибо параметр задается условно "жестко". касательно складов. тут как минимум два разных отбора/параметра нужно, если я правильно понял суть задачи. один - по продажам, другой по остаткам. ну ок. в одной вт прописать Склады_Продажи, в другой вт - Склады_Остатки. и пока не понятно - у пользователя жестко ограничены возможности выбора склада для получения продаж по нему или он может и другой выбрать.
|
|||
12
DAVI
21.08.14
✎
15:07
|
(11)у пользователя жестко прописан выбор склада для получения продаж. Продажи только свой,остатки любой.
|
|||
13
DAVI
21.08.14
✎
15:11
|
убрал группировку,теперь как добавить иерархию номенклатуры?
запрос в (9) работает,но показывает продажи и по другому складу. Прог который делал этот отчет получал Основной склад пользователя и прописывал его в параметр Склад. Я так понял нужно делать еще два отбора по Склад_Продажи и Склад_Остатки и при открытии отчета Заполнять отбор Склад_Продажи программно? |
|||
14
Кир Пластелинин
21.08.14
✎
15:25
|
(13) если склад для получения продаж жестко прописан у каждого пользователя, то сделать параметром и заполнять при открытии. ну и скрыть этот параметр от пользователя. для остатков - отбор. и да. зачем группировку убрали?)
|
|||
15
DAVI
21.08.14
✎
15:44
|
(14) а параметр в запросе куда писать?в условиях таблицы ПродажиОбороты? группировку вернул
|
|||
16
Кир Пластелинин
21.08.14
✎
15:52
|
(15)*сарказм. ну естественно в таблице остатков. нам же продажи нужно ограничить по одному складу.
|
|||
17
DAVI
21.08.14
✎
15:59
|
(16) Спасибо вам,вроде работает!! еще вопрос можно, на форме отчета создал табличное поле с типом значения ОтборКомпоновкиДанных,заполнить его нужными элементами отбора при открытии?
|
|||
18
DAVI
21.08.14
✎
16:00
|
(17) как?
|
|||
19
Кир Пластелинин
21.08.14
✎
16:09
|
(17) эээ. зачем? платформа сама должна заполнить исходя из указанной основной схемы.
|
|||
20
Crush
21.08.14
✎
16:39
|
(17) Не тип выбирай, а данные у таблиного поля.
Компановщик - настройки - отбор |
|||
21
DAVI
22.08.14
✎
07:42
|
(20) я так и сделал,данные Компоновщик - Настройки - Отбор. в конфигураторе табличное поле заполнилось нужными колонками,но в пользовательском режиме при открытии отчета таб поле не заполняется,оно пустое,приходится вручную добавлять новый элемент отбора
|
|||
22
DAVI
22.08.14
✎
08:58
|
(21)может еще где то галочку не поставил??
|
|||
23
barrgand
22.08.14
✎
09:50
|
(21) А что там должно быть? Там отображается то, что указано на вкладке Отбор в СКД
|
|||
24
Crush
22.08.14
✎
09:52
|
В макете в скд в настройках отчета вынеси поля в отбор
|
|||
25
DAVI
22.08.14
✎
10:02
|
(24) спасибо,заработало. Всем спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |