|
Из модуля упр. формы одного документы вызвать процедуру в модуле другого документа на ОФ | ☑ | ||
---|---|---|---|---|
0
nemoxp
22.12.21
✎
19:59
|
Есть доработанная УТ 10.3.
Есть стандартный документ "РеализацияТоваровУслуг". У него есть модуль объекта и экспортная процедура "Печать". Есть нестандартный Документ2 с управляемыми формами. У документа есть реквизит "Реализация", ссылка на документ "РеализацияТоваровУслуг". На форме документа кнопка по которой нужно напечатать печатную форму по указанной реализации в реквизите "Реализация", вызвав процедуру "Печать" из модуля объекта документа "РеализацияТоваровУслуг". Написал: &НаСервере Процедура ПечатьРеализацииНаСервере() Док = Объект.Реализация.ПолучитьОбъект(); Док.Печать(); КонецПроцедуры &НаКлиенте Процедура КомандаНажатияКнопкиПечать(Команда) ПечатьРеализацииНаСервере(); КонецПроцедуры Ругается что "Метод объекта не обнаружен (Печать)". Процедура "Печать определяется, по F12 переходит в модуль объекта реализации... Подскажите плиз что не так делаю. |
|||
1
pechkin
22.12.21
✎
20:17
|
а переменная док какого типа получается? может уже занята?
|
|||
2
nemoxp
22.12.21
✎
20:23
|
(1) Все как надо: ДокументОбъект.РеализацияТоваровУслуг
|
|||
3
Сергиус
22.12.21
✎
20:43
|
(0)А метод Печать точно есть? Там же как минимум параметры должны быть какие то.
|
|||
4
acht
22.12.21
✎
20:58
|
(0) ПолучитьОбъект от битой ссылки возвращает неопределено, например
|
|||
5
nemoxp
22.12.21
✎
21:52
|
И метод "печать" точно есть и "Экспорт" указано и ссылка рабочая... мистика...
|
|||
6
Сергиус
23.12.21
✎
03:51
|
(5)Отладчиком проходил? По идее должен выдать "Недостаточно параметров", если процедура Печать типовая. Какие настройки совместимости у конфы? Ну и кэш бы почистить для проверки.
|
|||
7
hhhh
23.12.21
✎
04:54
|
всё-таки похоже тут дело в клиенте и сервере. Процедура Печать же на клиенте. А вызывают с сервера.
|
|||
8
DEVIce
23.12.21
✎
06:09
|
Вынести метод в модуль менеджера и не лохматить бабушку.
|
|||
9
eddy_n
23.12.21
✎
10:31
|
Чтобы получить доступ к процедура из модуля формы к процедуре модуля объекта надо не ПолучитьОбъект() использовать, а РеквизитФормыВЗначение
|
|||
10
acht
23.12.21
✎
10:55
|
(9) Напиши, пожалуйста, пример для случая, обсуждаемого в этой теме.
|
|||
11
ptiz
23.12.21
✎
11:02
|
(5) И процедура Печать(), небось, обрамлена директивами #Если Клиент Тогда
|
|||
12
Мультук
гуру
23.12.21
✎
11:02
|
(0)
Имхо, ты мешаешь вместе идеологию тонкого и толстого клиента &НаСервере Процедура ПечатьРеализацииНаСервере() Док = Объект.Реализация.ПолучитьОбъект(); Док.Печать(); КонецПроцедуры Вероятно в Док.Печать() "где-то внутри" делается Таб.Показать() Таким образом, ты пытаешься сделать а-ля &НаСервере Процедура ПечатьРеализацииНаСервере() таб = Новый ТабличныйДокумент; таб.Показать(); КонецПроцедуры а так нелья P.S. Это гадание на хрустальном шаре, но имхо все так и есть |
|||
13
nemoxp
23.12.21
✎
12:29
|
(12) Все можно.
Оказалось что часть процедур, в т.ч. и "Печать" в модуле документа Реализации была внутри условия: #Если Клиент Тогда #КонецЕсли |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |