|
Запуск процедуры &НаКлиенте модуля объекта из процедуры &НаКлиенте формы | ☑ | ||
---|---|---|---|---|
0
Симпатяга
11.12.18
✎
11:17
|
Осваиваю УФ
Никак не пойму. Есть на форме процедура. На клиенте. Из нее я обращаюсь через Объект к процедуре в модуле объекта. Функции на форме &НаКлиенте Процедура Печать() МойОбъект = ПолучитьОбъектНаСервере(); ЭтотОбъект1.Печать(); КонецПроцедуры &НаСервере Процедура ПолучитьОбъектНаСервере() ЭтотОбъект1 = РеквизитФормыВЗначение("Объект"); Возврат ЭтотОбъект1; КонецПроцедуры Выдает ошибку по передачи между сервером и клиентом. Дело в том, что процедура в модуле объекта Печать должна быть именно на клиенте. Если серверная была бы, то с формы из функции ПолучитьОбъектНаСервере() сразу бы обратился к функции в модуле |
|||
1
Numerus Mikhail
11.12.18
✎
11:18
|
Все процедуры и функции модуля объекта априори выполняются на сервере.
|
|||
2
Симпатяга
11.12.18
✎
11:18
|
(0) в первой процедуре ЭтотОбъект1= МойОбъект
|
|||
3
Симпатяга
11.12.18
✎
11:19
|
(1) мне нужно сформировать документ Word на клиенте. внешняя пф
|
|||
4
Numerus Mikhail
11.12.18
✎
11:20
|
&НаКлиенте
Процедура Печать() МакетИлиЧтоТут = ПолучитьОбъектНаСервере(); МакетИлиЧтоТут.Показать(); КонецПроцедуры &НаСервере Процедура ПолучитьОбъектНаСервере() ЭтотОбъект1 = РеквизитФормыВЗначение("Объект"); МакетИлиЧтоТут = ЭтотОбъект1.Печать() Возврат МакетИлиЧтоТут; КонецПроцедуры |
|||
5
Numerus Mikhail
11.12.18
✎
11:21
|
(3) Формируй на сервере и передавай двоичные данные на клиент
Или формируй на клиенте, но тогда модуль объекта тебе не подходит. |
|||
6
Симпатяга
11.12.18
✎
11:26
|
(5) на сервере не установлен word
|
|||
7
Симпатяга
11.12.18
✎
11:27
|
(1) а для чего тогда &НаКлиенте в модуле внешней обработки?
|
|||
8
Diman000
11.12.18
✎
11:30
|
(7) А для чего знак деления в выражении 3/0?
&НаКлиенте это не для модуля внешней обработки, это для всего. Но в модуле объекта этой директивой пользоваться нельзя. |
|||
9
Numerus Mikhail
11.12.18
✎
11:35
|
(7) Вообще не вижу проблемы тогда
Если у тебя не установлен ворд на сервере, значит процедура Печать() уже полностью написана под клиент, следовательно тебе просто надо перенести ее на форму или в общий клиентский модуль. |
|||
10
Alexandr_U1982
11.12.18
✎
11:37
|
(3) В серверной функции извлекаешь данные из базы, помещаешь в структуру. Структуру возвращаешь на клиент и на клиенте формируешь документ Word.
|
|||
11
Симпатяга
11.12.18
✎
11:38
|
(9) в общий модуль нельзя. конфа не измененная.
т.е. я делаю внешнюю печатную форму. из модуля объекта обращаюсь и создаю форму. в ней пишу свой код. открываю Ворд и закрываю форму. я правильно понял? |
|||
12
Alexandr_U1982
11.12.18
✎
11:41
|
||||
13
Симпатяга
11.12.18
✎
13:44
|
(12) Спасибо. Разобрался!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |