Вывод нулевых остатков в СКД

1. NikitaBarinov 04.05.18 04:07 Сейчас в теме
Всем доброго времени суток!
Работать с СКД начал совсем недавно, опыта нет, поэтому заранее извиняюсь)
Вопрос мой заключается в следующем - Создал отчёт, в котором нужно было отразить остатки с Артикулом, Наименованием, Количеством, Видами Цен и самой Ценой. Использовал для этого Регистр сведений ЦеныНоменклатурыСрезПоследних и Регистр накопления ТоварыНаСкладахОстатки. Вроде всё получилось и работает. Но нюанс в том что, так же стоит задача, чтобы позиции по которым остатки нулевые либо отрицательные, тоже были отражены в данном отчёте. Подскажите как этого добиться, плиз!
По теме из базы знаний
Найденные решения
2. Неопределено 90 04.05.18 04:43 Сейчас в теме
Сначала получить запросом номенклатуру из справочника, поместить её во временную таблицу, а затем левым соединением получить остатки и цены, где остаток получается через
ЕстьNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
, а цена через
ЕстьNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0)
Ещё в формате выбранных полей на всякий случай следует указать представление нуля "ЧН=0".
NikitaBarinov; +1 Ответить
5. Неопределено 90 04.05.18 05:21 Сейчас в теме
ВЫБРАТЬ
	СпрНоменклатура.Ссылка,
	СпрНоменклатура.Артикул,
	ЕстьNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	ЦеныНоменклатурыСрезПоследних.ВидЦены
	ЕстьNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК Количество,
	ТоварыНаСкладахОстатки.Склад
ИЗ
	Справочник.Номенклатура КАК СпрНоменклатура
	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
	ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = СпрНоменклатура.Ссылка
	ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
	ПО СпрНоменклатура.Ссылка = ТоварыНаСкладахОстатки.Номенклатура
Показать
NikitaBarinov; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Artem1995amyr 04.05.18 05:04 Сейчас в теме
(1) Покажи сформированный запрос.
4. NikitaBarinov 04.05.18 05:07 Сейчас в теме
ВЫБРАТЬ
	ТоварыНаСкладахОстатки.Склад КАК Склад,
	ТоварыНаСкладахОстатки.Номенклатура.Артикул КАК НоменклатураАртикул,
	ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
	ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток
ПОМЕСТИТЬ Остатки
ИЗ
	РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
	ЦеныНоменклатурыСрезПоследних.Номенклатура.Артикул КАК НоменклатураАртикул,
	ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
	ЦеныНоменклатурыСрезПоследних.Цена КАК Цена
ПОМЕСТИТЬ Цены
ИЗ
	РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Остатки.Склад КАК Склад,
	Остатки.НоменклатураАртикул КАК Артикул,
	Остатки.Номенклатура КАК Номенклатура,
	Остатки.КоличествоОстаток КАК Количество,
	Цены.ВидЦены КАК ВидЦены,
	Цены.Цена КАК Цена
ИЗ
	Остатки КАК Остатки
		ЛЕВОЕ СОЕДИНЕНИЕ Цены КАК Цены
		ПО Остатки.Номенклатура = Цены.Номенклатура
Показать
6. Artem1995amyr 04.05.18 06:03 Сейчас в теме
(4) Вообще временные таблицы удобны, но в этом случае они лишние. Вот здесь таится ответ (2)
2. Неопределено 90 04.05.18 04:43 Сейчас в теме
Сначала получить запросом номенклатуру из справочника, поместить её во временную таблицу, а затем левым соединением получить остатки и цены, где остаток получается через
ЕстьNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
, а цена через
ЕстьNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0)
Ещё в формате выбранных полей на всякий случай следует указать представление нуля "ЧН=0".
NikitaBarinov; +1 Ответить
5. Неопределено 90 04.05.18 05:21 Сейчас в теме
ВЫБРАТЬ
	СпрНоменклатура.Ссылка,
	СпрНоменклатура.Артикул,
	ЕстьNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	ЦеныНоменклатурыСрезПоследних.ВидЦены
	ЕстьNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК Количество,
	ТоварыНаСкладахОстатки.Склад
ИЗ
	Справочник.Номенклатура КАК СпрНоменклатура
	ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
	ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = СпрНоменклатура.Ссылка
	ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
	ПО СпрНоменклатура.Ссылка = ТоварыНаСкладахОстатки.Номенклатура
Показать
NikitaBarinov; +1 Ответить
7. Artem1995amyr 04.05.18 08:21 Сейчас в теме
(5) а вот здесь вообще готовый запрос.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот