1с7 Неверные обороты по счёту

1. GrafB 10 16.08.18 12:15 Сейчас в теме
Добрый день, что-то застрял и не могу понять в чём беда, не срабатывает простой код, по некоторым товарам выводит верно, а по некоторым нет.

Ит = СоздатьОбъект("БухгалтерскиеИтоги");
	Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура, СписокТоваров, 1, 0);
	Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "002.2",,,, "День", "К");
	
	Ит.ВыбратьПериоды(1);
	Пока Ит.ПолучитьПериод() = 1 Цикл
		Ит.ВыбратьСубконто(ВидыСубконто.Номенклатура, 1);   
		Пока Ит.ПолучитьСубконто(ВидыСубконто.Номенклатура) = 1 Цикл
			Товар = Ит.Субконто(ВидыСубконто.Номенклатура);
            Начало = Ит.СНД(3)-Ит.СНК(3);
            Пришло = Ит.ДО(3);
			Ушло = Ит.КО(3);
            Конец = Ит.СКД(3)-Ит.СКК(3);
			Сообщить("" + Ит.НачДата + "	" + Товар + "	" + Начало + "	" + Пришло + "	" + Ушло + "	" + Конец);
		КонецЦикла;
    КонецЦикла;
Показать


Через ОСВ по счёту показывает верно, например по одному товару по факту было 600 Пришло 0 Ушло 96 На конец 504, а этот код показывает 0 0 96 -96. Это если в фильтр выбираю всю группу товаров, а если только этот товар, то показывает верно и так не с одним товаром, но со многими всё верно.
+
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. GrafB 10 16.08.18 13:58 Сейчас в теме
Заработало верно после изменений:
Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура, СписокТоваров, 1);
	Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, "002.2",,,1, "День", "К");

странно, но в одном случае я убрал значение которое итак идёт по-умолчанию, а в другом добавил значение, которое опять же идёт по-умолчанию
+
3. GrafB 10 16.08.18 16:40 Сейчас в теме
нет всё же не взлетело, проблема такова:
на начало периода был некий остаток, но в этот день движения не было и нужно чтобы с начала периода до дня с движением показывал остаток:
01.01 600 0 0 600
02.01 600 0 0 600
03.01 600 0 96 504
04.01 504 0 0 504
...
+
4. Cooler 22 16.08.18 17:18 Сейчас в теме
(3)
на начало периода был некий остаток, но в этот день движения не было
Не было движения - нет записей в регистрах бухучета. Соответственно, штатный запрос 1С ничего не выведет.

Путей обхода лично я вижу два:
1. Формировать нужные строки отчета по заданному образцу, без обращения к бухитогам.
2. Выполнять запрос в цикле - сколько дней, столько
Ит.ВыполнитьЗапрос(ДеньПериода, ДеньПериода, "002.2",,,1, "День", "К");
+
5. GrafB 10 30.08.18 12:09 Сейчас в теме
сделал перед обходом по периодам заполнение таблицы значений с начальными остатками, а потом при обходе по периодам их увеличивал/уменьшал на обороты.
+
Внимание! Тема сдана в архив

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