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 Сейчас в теме
сделал перед обходом по периодам заполнение таблицы значений с начальными остатками, а потом при обходе по периодам их увеличивал/уменьшал на обороты.
Оставьте свое сообщение

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