Правильный запрос к РегистрБухгалтерии.Хозрасчетный.Остатки по списку номенклатуры
В настоящее время остатки по списку номенклатуры (содержится во временной таблице ТабНоменклатура) получаю так:
На сколько это оптимальный вариант реализации? Или же нужно без использования ЛЕВОЕ СОЕДИНЕНИЕ сразу передавать нужный список номенклатуры как-то в параметре:
// ТабНоменклатура - номенклатура для запроса остатков
ВЫБРАТЬ
Таб0.Номенклатура
ПОМЕСТИТЬ ТабНоменклатура
ИЗ
Таб0
СГРУППИРОВАТЬ ПО
Таб0.Номенклатура
;
// ТабОстатки - получаем остатки
ВЫБРАТЬ
Остатки.Субконто3.Код КАК СкладКод,
Остатки.КоличествоОстаток КАК Остатки,
Остатки.Субконто1.Код КАК НоменклатураКод
ПОМЕСТИТЬ ТабОстатки
ИЗ
ТабНоменклатура КАК ТабНоменклатура
ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет В ИЕРАРХИИ (&ВыбСчет), , Субконто3 В (&Склады)) КАК Остатки
ПО ТабНоменклатура.Номенклатура = Остатки.Субконто1
ПоказатьРегистрБухгалтерии.Хозрасчетный.Остатки(, Счет В ИЕРАРХИИ (&ВыбСчет), , Субконто2 в (&ТабНоменклатура) И Субконто3 В (&Склады))По теме из базы знаний
Найденные решения
В результате код получился такой:
// ТабНоменклатура - номенклатура для запроса остатков
ВЫБРАТЬ
Таб0.Номенклатура
ПОМЕСТИТЬ ТабНоменклатура
ИЗ
Таб0
СГРУППИРОВАТЬ ПО
Таб0.Номенклатура
;
// ТабОстатки - получаем остатки
ВЫБРАТЬ
Остатки.Субконто3.Код КАК СкладКод,
Остатки.КоличествоОстаток КАК Остатки,
Остатки.Субконто1.Код КАК НоменклатураКод
ПОМЕСТИТЬ ТабОстатки
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет В ИЕРАРХИИ (&ВыбСчет), ,
Субконто1 В (ВЫБРАТЬ ТабНоменклатура.Номенклатура ИЗ ТабНоменклатура) И Субконто3 В (&Склады)) КАК Остатки ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Кажется, принято делать так: Желательно через параметр НоменклатураИСклад (в нем указать вид субконто номенклатура и склад).
ВЫБРАТЬ
ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто1 КАК Справочник.Номенклатура).Код КАК НоменклатураКод,
ВЫРАЗИТЬ(ХозрасчетныйОстатки.Субконто2 КАК Справочник.Склады).Код КАК СкладКод,
ХозрасчетныйОстатки.КоличествоОстаток КАК КоличествоОстаток
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(
,
Счет В ИЕРАРХИИ (&ВыбСчет),
&НоменклатураИСклад,
Субконто1 В (&МассивНоменклатуры)
И Субконто2 В (&МассивСкладов)) КАК ХозрасчетныйОстатки Показать
Если ты отбора не делаешь по номенклатуре - то она тебе вообще тут нафиг не нужна. Ни в соединении, ни в фильтре, ни в параметрах виртуалки.
(7)
В настоящее время остатки по списку номенклатуры (содержится во временной таблице ТабНоменклатура) получаю так:
А ты в своем посте разве указал, что тебе надо получить остатки ПО ЧАСТИ товаров, а не по ВСЕМ? Нет, не указал.
как раз явно указал об этом:
В настоящее время остатки по списку номенклатуры (содержится во временной таблице ТабНоменклатура) получаю так:
В результате код получился такой:
// ТабНоменклатура - номенклатура для запроса остатков
ВЫБРАТЬ
Таб0.Номенклатура
ПОМЕСТИТЬ ТабНоменклатура
ИЗ
Таб0
СГРУППИРОВАТЬ ПО
Таб0.Номенклатура
;
// ТабОстатки - получаем остатки
ВЫБРАТЬ
Остатки.Субконто3.Код КАК СкладКод,
Остатки.КоличествоОстаток КАК Остатки,
Остатки.Субконто1.Код КАК НоменклатураКод
ПОМЕСТИТЬ ТабОстатки
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет В ИЕРАРХИИ (&ВыбСчет), ,
Субконто1 В (ВЫБРАТЬ ТабНоменклатура.Номенклатура ИЗ ТабНоменклатура) И Субконто3 В (&Склады)) КАК Остатки Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот