|
1с83 Как передать строку из одного модуля в другой модуль через глобальную переменную |
☑ |
0
VBMADD
11.07.19
✎
08:41
|
Всем Привет.
1с83 Хочу передать строку из одного модуля в другой модуль через глобальную переменную
Делаю так
В модуле ОбщиаяФорма.ПечатьДокументов
&НаКлиенте
Перем МояПеременная Экспорт;
&НаКлиенте
МояФункция()
Сообщить("МояПеременная = " + МояПеременная);
КонецФункции
В модуле менеджера ОсновногоСредства
Процедура МояПроцедура()
ПП = СокрЛП(Строка(Шапка.Параметры.ИнвентарныйНомер));
Ф = ПолучитьФорму("ОбщаяФорма.ПечатьДокументов");
Ф.МояПеременная = ПП;
КонецПроцедуры
Пишет что
Значение не является значением объектного типа (МояПеременная)
Ф.МояПеременная = ПП;
Что нужно подправить?
|
|
1
lodger
11.07.19
✎
08:46
|
(0) нужно перестать мыслить стандартами ОФ в УФ.
передавайте параметры между формами через вызовы.
|
|
2
VBMADD
11.07.19
✎
09:10
|
(1) Ну хорошо.
Тогда более конкретно.
Мне нужно сохранить печатную форму Инвентарной карточки в файл PDF чтобы имя файла совпадало с инвентарным номером карточки без ручного ввода имени файла.
Я пытаюсь это сделать через процедуру "СохранитьПечатныеФормыВПапку" подставив вместо УникальногоИмениФайла инвентарный номер карточки
&НаКлиенте
Процедура СохранитьПечатныеФормыВПапку
...
ДвоичныеДанные.Записать(УникальноеИмяФайла(Папка + ФайлДляЗаписи.Представление));
...
КонецПроцедуры
|
|
3
VBMADD
11.07.19
✎
09:12
|
Подскажи пож-ста
Как мне получить номер инвентарной карточки в модуле ФормаПечатьДокументов
|
|
4
DrWatson
11.07.19
✎
09:15
|
(3) Его нужно передать в форму из места вызова. А в форме организовать хранение и использование.
|
|
5
catena
11.07.19
✎
09:21
|
|
|
6
VBMADD
11.07.19
✎
09:23
|
(4) Вот именно,
я для этого в форме ПечатьДокументов создаю Глобальную переменную
которую использую для хранения и использования НомераИнвентарнойКарточки
а из Модуля МенеджераОсновногоСредства хочу передать НомерИнвентарнойКарточки в эту
Глобальную переменную
|
|
7
VBMADD
11.07.19
✎
09:27
|
(4)Как мне установить значение этой Глобальной переменной в Модуле ПечатьДокументов
из Модуля менеджера ОсновногоСредства
Подскажи пож-ста
|
|
8
DrWatson
11.07.19
✎
09:27
|
(6) Не понял. Модуль менеджера - это сервер. Форма - открывается с клиента. Как Вы форму открываете с сервера?
Параметры можно передавать в ОткрытьФорму. Но что у Вас происходит непонятно.
|
|
9
Провинциальный 1сник
11.07.19
✎
09:31
|
На сервере нет глобальных переменных. Селяви. Можно только в хранилище хранить, или в файле. Соответственно, с несериализуемыми значениями полный пролёт - способа их сохранить между серверными вызовами официально нет. Неофициальные способы не советую, ибо рискуем получить вылет серверного процесса в самый подходящий момент.
|
|
10
lodger
11.07.19
✎
09:59
|
напомните, какой там стек вызовов?
форма объекта - форма печати - модульменеджера.
т.е. автору не из модульменеджера надо передать в форма печати, а из форма объекта в форма печати.
|
|
11
VBMADD
11.07.19
✎
11:25
|
Всем огромное спасибо спасибо(9) за общение и хорошего дня.
Все получилось как я хотел!!!
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший