Доступ к переменной модуля объекта из модулей форм.
В модуле документа объявлена переменная Перем ааа Экспорт;
В модуле формы элемента она получает какое то значение и далее в модуле объекта это значение видно,то есть все нормально.
А вот с модулем формы списка так не получается. То есть ,если в какой то процедуре модуля списка делаю ааа = НужноеЗначение, то эта переменная видна только внутри данной процедуры. Видимо,я не так понял назначение глобальных переменных модуля объекта? Как же сделать,чтобы из модуля списка передать переменную в модуль объекта?
В модуле формы элемента она получает какое то значение и далее в модуле объекта это значение видно,то есть все нормально.
А вот с модулем формы списка так не получается. То есть ,если в какой то процедуре модуля списка делаю ааа = НужноеЗначение, то эта переменная видна только внутри данной процедуры. Видимо,я не так понял назначение глобальных переменных модуля объекта? Как же сделать,чтобы из модуля списка передать переменную в модуль объекта?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Здравствуйте.
В модуле отчета создал переменную:
Перем МояПеременная Экспорт;
В основной форме отчета получаю:
В форме отчета объект ОтчетОбъект после этой команды содержит заполненную переменную.
Ног, когда я после вызова СкомпоноватьРезультат() в форме попадаю в процедуру ПриКомпоновкеРезультата модуля - тогда опять значение моей переменной неопределено
Почему не сохраняется значение? Как присовить значение переменной модуля?
В модуле отчета создал переменную:
Перем МояПеременная Экспорт;
В основной форме отчета получаю:
ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
ОтчетОбъект.МояПеременная = "значение";
СкомпоноватьРезультат();
В форме отчета объект ОтчетОбъект после этой команды содержит заполненную переменную.
Ног, когда я после вызова СкомпоноватьРезультат() в форме попадаю в процедуру ПриКомпоновкеРезультата модуля - тогда опять значение моей переменной неопределено
Почему не сохраняется значение? Как присовить значение переменной модуля?
Достаточно много на эту тему сказано, повторюсь...
Вероятно вопрос возник при работе с управляемыми формами. Если переменную объявить на клиенте, то она будет жить пока не закрыта форма
А время жизни переменных, объявленных на сервере ограничено временем исполнения серверного вызова. Как только управление возвращается к клиенту все значения серверных переменных очищаются
В приведенном куске кода анализ значения переменной происходит
Возможно следует создать не переменную, а постоянный реквизит обработки, и сохранять в нем значения при переходе с клиента на сервер и наоборот. Значение, которое будет сохраняться в этом реквизите, должно соответствовать используемой схеме XDTO
Вероятно вопрос возник при работе с управляемыми формами. Если переменную объявить на клиенте, то она будет жить пока не закрыта форма
&НаКлиенте
Перем МояПеременная; // Живет пока открыта форма
А время жизни переменных, объявленных на сервере ограничено временем исполнения серверного вызова. Как только управление возвращается к клиенту все значения серверных переменных очищаются
&НаСервере
Перем МояПеременная; // Живет только во время серверного вызова
В приведенном куске кода анализ значения переменной происходит
в основной форме отчета
ОтчетОбъект = РеквизитФормыВЗначение("Отчет");
ОтчетОбъект.МояПеременная = "значение";
СкомпоноватьРезультат();
Возможно следует создать не переменную, а постоянный реквизит обработки, и сохранять в нем значения при переходе с клиента на сервер и наоборот. Значение, которое будет сохраняться в этом реквизите, должно соответствовать используемой схеме XDTO
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот