Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
06 дек 2022, 17:36

Не отображаются данные в регистре накопления Продажи

Автор НикNik, 09 июн 2022, 16:30

0 Пользователей и 2 гостей просматривают эту тему.

НикNik

Всем добрый день :btbzdb: Не отображаются данные в регистре накопления Продажи в 1С Предприятие. Подскажите пожалуйста, что забыл дописать.



   Движения.ОстаткиТоваров.Записывать = Истина;
   //Регистр Продажи
   Движения.Продажи.Записывать = Истина;
      
   СписаннаяСебестоимость = 0;
   
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
      
      Для каждого Движение Из Движения.ОстаткиТоваров Цикл   
         
         Если Движение.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура Тогда
            
            Движение.СуммаПоступления = Движение.Количество * ВыборкаДетальныеЗаписи.СуммаПоступленияОстаток / ВыборкаДетальныеЗаписи.КоличествоОстаток;
            
            ДвижениеПродажи = Движения.Продажи.Добавить();
            ДвижениеПродажи.Период = Дата; 
            ДвижениеПродажи.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
            ДвижениеПродажи.Контрагент = Контрагент;
            ДвижениеПродажи.Сумма = Движение.СуммаРеализации;
            ДвижениеПродажи.Себестоимость = Движение.СуммаПоступления;
            ДвижениеПродажи.Количество = Движение.Количество;   
            
            СписаннаяСебестоимость = СписаннаяСебестоимость + Движение.СуммаПоступления;
            
            
         КонецЕсли;
                  
      КонецЦикла;
      
   КонецЦикла;
Никогда не поздно учиться...

LexaK

НикNik, допустим что Движения.ОстаткиТоваров у вас пустой! (например новый еще не проведенный документ)

тогда ни чего и не заполняется в ДвижениеПродажи.

посмотрите в отладчике, что у вас в Движения.ОстаткиТоваров?

вообще лучше переписать алгоритм, обычно делают так
Выполняют запрос(ы) к базе, получают результат(ы)
и за одни проход по результату формируют записи в движениях
если помогло нажмите: Спасибо!

НикNik

LexaK, к сожалению, на данный момент у меня низкий уровень знаний 1С и ваша информация мне не сильно помогла. В любом случае, вам спасибо за ответ. На всякий случай(может это как-то поможет для более точного ответа), Приход товара осуществляется в начале месяца, а Реализация в конце этого же месяца, и думаю, что регистр накопления ОстаткиТовара уже заполнен и должен заполнять регистр накопления Продажи.
Никогда не поздно учиться...

LexaK

НикNik, Движения это коллекции наборов записей движений документа. (если они были, по текущему документу)
что бы получить данные из Регистров их необходимо прочитать
или Запросом 
или с помощью функций менеджера регистра (пример)
тзОстатки  = РегистрыНакопления.ОстаткиТовара.Остатки(); (подробнее см. СП)

у вас в коде этого нет, по другому ни как  :fdbsdfbsd:


или такой вариант: без анализа остатков, просто пишите расход как есть, а уже в отчетах все сложат и поделят что надо.
если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск