Не сходится отчет из-за неверного левого соединения

1. user1211995 16 27.09.19 11:22 Сейчас в теме
КА 1.1, Платформа 8.3.9.2170
Менеджеры пользуются двумя отчетами: "Товары на складах"(типовой) и "Продажи с остатками"(самописный). После добавления 18 сентября позиции с Характеристикой номенклатуры, самописный отчет стал показывать некорректные значения(до 18 сентября какой-то бред, после 18 сентября адекватные значения). Они сверяются по типовому отчету "Товары на складах".

Почему сейчас в самописном отчете "Продажи с остатками" до 18 числа не учитывается номенклатура, не имеющая заполненой Характеристики номенклатуры?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lefthander 27.09.19 11:25 Сейчас в теме
(1)Скорее всего ваш самописный не учитывает наличие у номенклатуры характеристик. ;)
user1211995; +1 Ответить
3. user1211995 16 27.09.19 11:29 Сейчас в теме
(2) Значения с характеристикой учитываются и до 18 сентября и после. Значения с пустой характеристикой почему-то отсутствуют до 18 сентября, после появляются. :/
4. lefthander 27.09.19 11:32 Сейчас в теме
(3)Значит кто то создал номенклатуру с пустой характеристикой. Если это не допустимо, значит при сохранении номенклатуры проверяйте заполнение характеристики
user1211995; +1 Ответить
9. user1211995 16 30.09.19 04:39 Сейчас в теме
(4) Перепроведение документов не устранило ошибки, значит дело не в заполненности характеристики...
6. lefthander 27.09.19 11:49 Сейчас в теме
(1)Еще могло быть что 18 числа могла измениться ФО использовать характеристики номенклатуры...
user1211995; +1 Ответить
10. user1211995 16 30.09.19 04:41 Сейчас в теме
13. lefthander 30.09.19 10:15 Сейчас в теме
(10)Функциональная опция.... конкретно за характеристики отвечает константа ИспользоватьХарактеристикиНоменклатуры и связанная с ней функциональная опция.
5. zarankony 306 27.09.19 11:47 Сейчас в теме
Если я правильно понял, там характеристика как измерение регистра (было бы намного наглядней если бы Вы показали текст запроса, от картинок толку мало).
Скорее всего документы до 18 числа просто не проставляли характеристику в один или оба этих регистра, попробуйте их перепровести.
user1211995; +1 Ответить
7. user1211995 16 30.09.19 04:03 Сейчас в теме
(5)
ВЫБРАТЬ
	СвободныеОстаткиОстатки.Номенклатура,
	СвободныеОстаткиОстатки.ХарактеристикаНоменклатуры,
	СвободныеОстаткиОстатки.КоличествоОстаток
ПОМЕСТИТЬ ВТ_Ост
ИЗ
	РегистрНакопления.СвободныеОстатки.Остатки(&ДатаКон, Склад В (&СписокСкладов)) КАК СвободныеОстаткиОстатки
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	ИсточникДанных.Номенклатура КАК Номенклатура,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Номенклатура) КАК НоменклатураПредставление,
	ИсточникДанных.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.ХарактеристикаНоменклатуры) КАК ХарактеристикаНоменклатурыПредставление,
	ИсточникДанных.ЗаказПокупателя КАК ЗаказПокупателя,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.ЗаказПокупателя) КАК ЗаказПокупателяПредставление,
	ИсточникДанных.ДоговорКонтрагента КАК ДоговорКонтрагента,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.ДоговорКонтрагента) КАК ДоговорКонтрагентаПредставление,
	ИсточникДанных.ДокументПродажи КАК ДокументПродажи,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.ДокументПродажи) КАК ДокументПродажиПредставление,
	ИсточникДанных.Подразделение КАК Подразделение,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Подразделение) КАК ПодразделениеПредставление,
	ИсточникДанных.Проект КАК Проект,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Проект) КАК ПроектПредставление,
	ИсточникДанных.Организация КАК Организация,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Организация) КАК ОрганизацияПредставление,
	ИсточникДанных.Контрагент КАК Контрагент,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Контрагент) КАК КонтрагентПредставление,
	ИсточникДанных.Номенклатура.БазоваяЕдиницаИзмерения КАК НоменклатураБазоваяЕдиницаИзмерения,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Номенклатура.БазоваяЕдиницаИзмерения) КАК НоменклатураБазоваяЕдиницаИзмеренияПредставление,
	ИсточникДанных.КоличествоОборот КАК КоличествоОборот,
	ИсточникДанных.СтоимостьОборот КАК СтоимостьОборот,
	ИсточникДанных.СтоимостьБезСкидокОборот КАК СтоимостьБезСкидокОборот,
	ИсточникДанных.НДСОборот КАК НДСОборот,
	ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ИсточникДанных.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетов,
	ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕд,
	ВЫБОР
		КОГДА ИсточникДанных.СтоимостьБезСкидокОборот = 0
			ТОГДА 0
		ИНАЧЕ (ИсточникДанных.СтоимостьБезСкидокОборот - ИсточникДанных.СтоимостьОборот) / ИсточникДанных.СтоимостьБезСкидокОборот * 100
	КОНЕЦ КАК ПроцентСкидки,
	ИсточникДанных.СтоимостьБезСкидокОборот - ИсточникДанных.СтоимостьОборот КАК СуммаСкидки,
	ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаДляОтчетов.Вес КАК Вес,
	ИсточникДанных.Регистратор КАК Регистратор,
	ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Регистратор) КАК РегистраторПредставление,
	ИсточникДанных.Период КАК Период,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, ДЕНЬ) КАК ПериодДень,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, НЕДЕЛЯ) КАК ПериодНеделя,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, ДЕКАДА) КАК ПериодДекада,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, МЕСЯЦ) КАК ПериодМесяц,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, КВАРТАЛ) КАК ПериодКвартал,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие,
	НАЧАЛОПЕРИОДА(ИсточникДанных.Период, ГОД) КАК ПериодГод,
	ЕСТЬNULL(ВТ_Ост.КоличествоОстаток, 0) КАК КоличествоОстаток
ИЗ
	РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор, ) КАК ИсточникДанных
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Ост КАК ВТ_Ост
		ПО ИсточникДанных.Номенклатура = ВТ_Ост.Номенклатура
			И ИсточникДанных.ХарактеристикаНоменклатуры = ВТ_Ост.ХарактеристикаНоменклатуры
Показать
11. zarankony 306 30.09.19 09:30 Сейчас в теме
(7) У Вас главная таблица - обороты, если нет оборотов по характеристике, то остатки тоже не подтянутся. Попробуйте левое соединение заменить на правое, тогда главными будут остатки. В типовом отчете как раз остатки.
user1211995; +1 Ответить
12. zarankony 306 30.09.19 09:45 Сейчас в теме
(11) Хотя нет, все равно не выведется в таком случае. У вас же номенклатура из оборотов тянется, а по ней отбор в отчете стоит. Короче если оборотов нет до 18 числа, то надо номенклатуру, характеристику и склад тянуть из остатков, их же использовать как главную таблицу тогда наверное сработает.
user1211995; +1 Ответить
8. user1211995 16 30.09.19 04:37 Сейчас в теме
(5) Пробовал перепроводить. Ошибки остались
14. user1211995 16 07.10.19 05:11 Сейчас в теме
Результаты по отчетам не совпадали, потому что данные у самописного отчета брались из одного регистра накопления, а у типового из другого. Чтобы решить проблему, нужно с нуля переписать отчет.
Оставьте свое сообщение

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