Вход | Регистрация
 

Помогите Пожалуйста.

↓ [Волшебник, 05.06.21 - 21:59]
Помогите Пожалуйста.
Я
   Meiyah
 
05.06.21 - 10:39
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
Поле объекта не обнаружено (Количество)
{Документ.Потребление.МодульОбъекта(53)}:        Движение.Ко

























Процедура ОбработкаПроведения(Отказ, Режим)
    
    // регистр Продукты Расход
    Движения.Продукты.Записывать = Истина;
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
                   |    ПотреблениеПродукты.Продукт КАК Продукт,
                   |    СУММА(ПотреблениеПродукты.Количество) КАК Количесвто
                   |ИЗ
                   |    Документ.Потребление.Продукты КАК ПотреблениеПродукты
                   |ГДЕ
                   |    ПотреблениеПродукты.Ссылка = &Ссылка
                   |
                   |СГРУППИРОВАТЬ ПО
                   |    ПотреблениеПродукты.Продукт";
    
    Запрос.УстановитьПараметр("Ссылка", Ссылка);
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаПоТоварамДокумента = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаПоТоварамДокумента.Следующий() Цикл
                
        СебестоимостьПродукта = 0;
        
        Запрос = Новый Запрос;
        Запрос.Текст = "ВЫБРАТЬ
                       |    ПродуктыОстатки.Продукт КАК Продукт,
                       |    ПродуктыОстатки.КоличествоОстаток КАК КоличествоОстаток,
                       |    ПродуктыОстатки.СуммаОстаток КАК СуммаОстаток
                       |ИЗ
                       |    РегистрНакопления.Продукты.Остатки(&ДатаЗапроса, Продукт = &ОтборПоПродукту) КАК ПродуктыОстатки";
        
        Запрос.УстановитьПараметр("ДатаЗапроса", МоментВремени());
        Запрос.УстановитьПараметр("ОтборПоПродукту", ВыборкаПоТоварамДокумента.Продукт);
        
        РезультатЗапроса = Запрос.Выполнить();
        ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
        
        Если ВыборкаДетальныеЗаписи.Следующий() Тогда                                        
            Если ВыборкаДетальныеЗаписи.КоличествоОстаток > 0 Тогда
                СебестоимостьПродукта = ВыборкаДетальныеЗаписи.СуммаОстаток / ВыборкаДетальныеЗаписи.КоличествоОстаток;
            КонецЕсли;
        КонецЕсли;
    
        Движение = Движения.Продукты.Добавить();
        Движение.ВидДвижения    = ВидДвиженияНакопления.Расход;
        Движение.Период         = Дата;
        Движение.Продукт        = ВыборкаПоТоварамДокумента.Продукт;
        Движение.Количество     = ВыборкаПоТоварамДокумента.Количество;
        Движение.Сумма          = ВыборкаПоТоварамДокумента.Количество * СебестоимостьПродукта;
        
     КонецЦикла;

КонецПроцедуры
   acht
 
1 - 05.06.21 - 11:09
Псевдоним в запросе надо написать правильно.
   brainguard
 
2 - 05.06.21 - 11:09
(0) Ошибка в слове "количество"
   Бишбармак
 
3 - 05.06.21 - 11:16
(1,2) уже ответили, но
(0) Избавьтесь от запроса в цикле.
   Злопчинский
 
4 - 05.06.21 - 16:41
(3) "Избавьтесь от запроса в цикле."
а в типовых в модуле проведения есть запросы вообще?
   Aleksey
 
5 - 05.06.21 - 16:43
(3) И что теперь базовую типовую переписывать. Ведь там куча мест с запросами в цикле
   hhhh
 
6 - 05.06.21 - 19:22
(4) есть. Один огромный запрос на все регистры.
   bolder
 
7 - 05.06.21 - 20:30
(3) +100500.Запрос в цикле неверное решение здесь.Задача простая и решается левым соединение к остаткам.
(4) А как же.Их разбросали по 10 модулям и все.
   acanta
 
8 - 05.06.21 - 20:31
(5) Да, базовая такая. Вероятно запросы в цикле в файловой, в отличие от вклиент-серверной, не просто допустимы, а даже предпочтительны.
   Волшебник
 
Модератор
9 - 05.06.21 - 22:00
КАК Количесвто
   Meiyah
 
10 - 07.06.21 - 21:35
»
   Asmody
 
Модератор
11 - 07.06.21 - 22:04
(10) и незачем так орать.
Внизу есть ссылка "Правила", отправляю читать до просветления.

Список тем форума
 
AdBlock убивает бесплатный контент. 1Сергей
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.