Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
15 Июн 2021, 15:49
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
МультиВход
 
collapse

Автор Тема: Не происходит присваивание переменной в процедуре модуля объекта документ  (Прочитано 1771 раз)

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

Оффлайн soclose

  • *
  • Регистрация: 2017-02-10
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Всем доброго времени суток!
Возникла проблема:
В модуле объекта документа приходная накладная я написан некоторый код, который гасит по фифо долги перед поставщиками. Но есть одна загвоздка: я пишу запрос, устанавливаю ему все необходимые параметры(приводить его здесь не буду так как он работает как надо) далее идут стандартные
Результат = Запрос.Выполнить();
ДетальнаяВыборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
 
после этого в теле процедуры я объявляю переменную СчетчикСумма = ДетальнаяВыборка.Сумма;
 
и далее идет цикл ДетальнаяВыборка.Следующий() который делает обход и в котором вышеозначенная переменная СчетчикСумма выступает счетчиком.
 
Проблема в том, что не происходит присваивание переменной СчетчикСумма, при дебаге до цикла пишет что у переменной значение неопределенно, то есть присваивание значения не происходит(хотя реквизит берется из табличной части документа и имеет числовой тип данных). Но стоит мне ввести переменную в цикл, то присваивание начинает работать - но мне это не нужно, поскольку переменная счетчиксумма используется как важное условие цикла и она должна быть до цикла.
Почему в теле(корне) процедуры обработкапроведения присваивание не работает, а в цикле начинает работать. Как быть?
P.S. Я рассматриваю вариант что можно получить значение переменной из самой формы документа, но это как то неправильно. Какие есть варианты в моем случае?


Оффлайн ilyay

  • 1С:Специалист, 1С:Эксперт
  • *****
  • Регистрация: 2011-06-09
  • Сообщений: 562
  • РЕПУТАЦИЯ: 104
  • КПД: 19%
  • Профессия: Разработчик 1С
до цикла: СчетчикСумма = 0;
Данные выборки не доступны, пока не спозиционируетесь на запись вызовом метода Следующий(), поэтому присваивается неопределено.

Оффлайн soclose

  • *
  • Регистрация: 2017-02-10
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
до цикла: СчетчикСумма = 0;
Данные выборки не доступны, пока не спозиционируетесь на запись вызовом метода Следующий(), поэтому присваивается неопределено.
Хм, просто если я делаю еще цикл над циклом то у меня попросту неправильное списание происходит из за двух циклов поэтому это не вариант.
Есть ли возможность тогда присвоить этой переменной значение из поля формы документа табличной части или еще как нибудь? Просто насколько мне известно значения реквизитов формы недоступны из модуля объекта. Или я ошибаюсь?


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Последние вакансии

* Том 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
69 Сообщений
LexaK
67 Сообщений
antoneus antoneus
32 Сообщений
Ивашка
27 Сообщений
neek666
25 Сообщений
KATERINA 861
19 Сообщений
SSC
15 Сообщений
alexandr_ll
13 Сообщений
Алексей_1985_06
12 Сообщений
MiThO
8 Сообщений

* Кто онлайн

  • Точка Гостей: 698
  • Точка Скрытых: 1
  • Точка Пользователей: 10
  • Точка Сейчас на форуме:

* Облако тэгов

* Инструменты

* Дополнительно

Поиск