Имя: Пароль:
1C
1С v8
Вызов общей переменной из модуля отчета 1с 8.1
0 manti
 
17.09.13
10:59
Добрый день. Ситуация следующая:

Нужно в некую переменную в модуле формы РегламентированныйОтчетАлкоПриложение8 записать структуру, чтобы после вызовов из других фрм получить ее.

В модуле формы данного отчета в процедуре ВосстановитьСохраненныеДанные() присваиваю
СписокСохранения3 = мСохраненныйДок.ДанныеОтчета.Получить();
СписокСохранения3 объявляю в модуле формы как Экспортную.

Далее делаю выгрузку, тоесть вызывается процедура СформироватьИЗаписать из модуля формы документа ВыгрузкаРегламентированныхОтчетов, в этом же модуле срабатывает процедура СформироватьТекстыВыгрузки и в итоге в этой процедуре вызывается процедура из модуля формы РегламентированныйОтчетАлкоПриложение8. Почему переменная СписокСохранения3 на момент возвращения в модуль формы РегламентированныйОтчетАлкоПриложение8 НЕОПРЕДЕЛЕНА ??

Как ее по другому определить для такого вызова??
1 manti
 
17.09.13
11:00
также пробовал объявлять переменную экпортной и в модуле объекта - также неопределено пишет((
2 НеБорис Нуралиев
 
17.09.13
11:03
Попробуй не переменную делать экспортной, а процедуру  ВосстановитьСохраненныеДанные(). сделай так, что бы она возвращала нужную структуру.
3 manti
 
17.09.13
11:08
(2) тоесть экспортные переменные в модуле объекта доступны только внутри этого объета - при работе с ним. И при вызове функции или процедуры из др. формы - они теряются?
4 НеБорис Нуралиев
 
17.09.13
11:14
(3) Если речь идет о версии 8.2 и выше, то это особенность работы сервера. Грубо говоря, между двумя серверными вызовами значения переменных не сохраняются.

Если о 8.1, то не помню уже в чем дело может быть. Но даже в этом случае все равно для инициализации переменной СписокСохранения3 нужно вызывать процедуру ВосстановитьСохраненныеДанные() из внешнего модуля.
5 manti
 
17.09.13
11:53
(4) да, НеБорисНуралиев, Вы как всегда правы. Сделал передачей переменной СписокСохранения3 через ряд процедур
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.