Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 ноя 2024, 17:07

вид сравнение "В группе из списка"

Автор maxxi, 24 сен 2024, 15:33

0 Пользователей и 1 гость просматривают эту тему.

maxxi

Привет всем, скажите пожалуйста, как соединить:
ОстаткиОстатки.Товар в (&Товар) и
ОстаткиОстатки.Товар  в иерархии (&Товар)

чтобы получить вид сравнение "В группе из списка".
Спасибо.

Максим75

maxxi,
1 вариант: Создайте в СКД отбор. Сам отбор программно заполните. Без параметров тогда запрос.
2 вариант: используйте конструкцию ОстаткиОстатки.Товар в (&Товар), а сам параметр Товар заполните выборкой всей номенклатуры из нужных групп, создайте просто список товара из нужных групп. Мы так еще в 7-ке игрались, там не было понятия в Иерархии. Создавали вначале на форме список групп, а потом уже по этим группам создавали список товаров.

я других не знаю, может кто еще подскажет.

maxxi

Максим75,
ВЫБРАТЬ
ОстаткиОстатки.Товар КАК Товар,
ОстаткиОстатки.Остаток КАК Остаток
ИЗ
РегистрНакопления.Остатки.Остатки КАК ОстаткиОстатки
ГДЕ
ОстаткиОстатки.Товар В (
ВЫБРАТЬ
ОстаткиОстатки.Товар КАК Товар,
ОстаткиОстатки.Остаток КАК Остаток,
ОстаткиОстатки.СуммаОстаток КАК СуммаОстаток
ИЗ
РегистрНакопления.Остатки.Остатки КАК ОстаткиОстатки
ГДЕ
ОстаткиОстатки.Товар В ИЕРАРХИИ (&Товар))

пробовал так.
Ошибка.

Максим75

maxxi, погодите, так Вы пытаетесь просто получить номенклатуру из группы, но никак не из списка групп.
по такому принципу просто сначала во временную таблицу выберите из справочника все товары из нужной группы.
а потом уже получайте остатки по этому списку товаров. и даже можете не через условие, а сразу в виртуальной таблице условие наложить на товар.

antoneus

Да просто в параметрах виртуальной таблицы пишите

ВЫБРАТЬ
    ОстаткиОстатки.Товар КАК Товар,
    ОстаткиОстатки.Остаток КАК Остаток
ИЗ
    РегистрНакопления.Остатки.Остатки КАК ОстаткиОстатки(, Товар в иерархии(&СписокГрупп))

И ВСЁ!!! 1С все сделает за вас. И, скажу по секрету - в параметр СписокГрупп можно подсунуть именно что список групп.

Максим75

antoneus, о, спасибо, не знал. что можно список групп подсунуть в иерархии.

maxxi

antoneus,
Скажите пожалуйста и еще хочу вывести все товары поэтому написал так:

ВЫБРАТЬ
    ОстаткиОстатки.Товар КАК Товар,
    ОстаткиОстатки.Остаток КАК Остаток
ИЗ
    РегистрНакопления.Остатки.Остатки КАК ОстаткиОстатки(, Товар в иерархии(&СписокГрупп) ИЛИ Товар=Значение(Справочник.Товары.ПустаяСсылка))


 но результат пустой.




ВЫБРАТЬ
    ОстаткиОстатки.Товар КАК Товар,
    ОстаткиОстатки.Остаток КАК Остаток
ИЗ
    РегистрНакопления.Остатки.Остатки КАК ОстаткиОстатки(, Товар в иерархии(&СписокГрупп) ИЛИ &СписокГрупп=Значение(Справочник.Товары.ПустаяСсылка))


так тоже ничего не вводится.

antoneus

А остатки-то есть? В СписокГрупп что передается? Ссылки со строками не путаете, как у нас тут принято?

maxxi

antoneus, да остатки есть, у меня ссылки.

Максим75

maxxi, там через конструкцию Выбор надо реализовывать.
передавать параметр (допустим ЕстьСписокГрупп) и если он есть, тогда использовать конструкцию Товар в иерархии(&СписокГрупп), а если нет, то просто ИСТИНА.

только я не знаю, работает такая конструкция прямо в условии виртуальной таблицы или нет.
в ГДЕ точно работает.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск