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

Не происходит присваивание переменной в процедуре модуля объекта документ

Автор soclose, 15 фев 2017, 17:32

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

soclose

Всем доброго времени суток!
Возникла проблема:
В модуле объекта документа приходная накладная я написан некоторый код, который гасит по фифо долги перед поставщиками. Но есть одна загвоздка: я пишу запрос, устанавливаю ему все необходимые параметры(приводить его здесь не буду так как он работает как надо) далее идут стандартные
Результат = Запрос.Выполнить();
ДетальнаяВыборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

после этого в теле процедуры я объявляю переменную СчетчикСумма = ДетальнаяВыборка.Сумма;

и далее идет цикл ДетальнаяВыборка.Следующий() который делает обход и в котором вышеозначенная переменная СчетчикСумма выступает счетчиком.

Проблема в том, что не происходит присваивание переменной СчетчикСумма, при дебаге до цикла пишет что у переменной значение неопределенно, то есть присваивание значения не происходит(хотя реквизит берется из табличной части документа и имеет числовой тип данных). Но стоит мне ввести переменную в цикл, то присваивание начинает работать - но мне это не нужно, поскольку переменная счетчиксумма используется как важное условие цикла и она должна быть до цикла.
Почему в теле(корне) процедуры обработкапроведения присваивание не работает, а в цикле начинает работать. Как быть?
P.S. Я рассматриваю вариант что можно получить значение переменной из самой формы документа, но это как то неправильно. Какие есть варианты в моем случае?

ilyay

до цикла: СчетчикСумма = 0;
Данные выборки не доступны, пока не спозиционируетесь на запись вызовом метода Следующий(), поэтому присваивается неопределено.

soclose

Цитата: ilyay от 15 фев 2017, 17:48
до цикла: СчетчикСумма = 0;
Данные выборки не доступны, пока не спозиционируетесь на запись вызовом метода Следующий(), поэтому присваивается неопределено.
Хм, просто если я делаю еще цикл над циклом то у меня попросту неправильное списание происходит из за двух циклов поэтому это не вариант.
Есть ли возможность тогда присвоить этой переменной значение из поля формы документа табличной части или еще как нибудь? Просто насколько мне известно значения реквизитов формы недоступны из модуля объекта. Или я ошибаюсь?

Теги:

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

Рейтинг@Mail.ru

Поиск