|
Как выполнить процедуру формы документа из внешней обработки ? | ☑ | ||
---|---|---|---|---|
0
makfromkz
18.07.20
✎
08:53
|
Вот код который я на УФах выполняю в режиме толстого клиента:
&НаСервере Процедура кмдВыполнитьНаСервере() Дата1 = '20160101'; Дата2 = '20160131235959'; выбОпер = Документы.ОперацияБух.Выбрать(Дата1, Дата2); Пока выбОпер.Следующий() Цикл обОпер = выбОпер.ПолучитьОбъект(); фрмОпер = обОпер.ПолучитьФорму(); фрмОпер.БУЗаполнитьНУНаСервере(); КонецЦикла; КонецПроцедуры фрмОпер - существует, т.е. ПолучитьФорму() отрабатывает, но процедура БУЗаполнитьНУНаСервере() не хочет выполняться, даже если добавить к описанию процедуры волшебное слово Экспорт. Запускал на платформе 8.3.7 вопрос: до какого релиза платформы можно было вызывать экспортные процедуры формы документа? |
|||
1
Волшебник
18.07.20
✎
08:55
|
на сервере нет форм
|
|||
2
makfromkz
18.07.20
✎
09:00
|
Я же в режиме толстого клиента запускаю.
В отладчике вижу форму, реквизиты формы и все такое. |
|||
3
Волшебник
18.07.20
✎
09:01
|
Тогда убери директиву &НаСервере
|
|||
4
makfromkz
18.07.20
✎
09:06
|
Убрал директиву:
{Форма.Форма.Форма(10)}: Метод объекта не обнаружен (БУЗаполнитьНУНаСервере) фрмОпер.БУЗаполнитьНУНаСервере(); |
|||
5
makfromkz
18.07.20
✎
09:07
|
может быть разработчики с какого-то релиза запретили вызов процедур из формы?
|
|||
6
ДенисЧ
18.07.20
✎
09:10
|
А Экспорт у процедуры есть?
|
|||
7
makfromkz
18.07.20
✎
09:10
|
Хотя пост 2016 года, где это реализовано: https://helpf.pro/help/view/17389.html
|
|||
8
makfromkz
18.07.20
✎
09:10
|
Да Экспорт я сразу в документ добавил
|
|||
9
Волшебник
18.07.20
✎
09:17
|
процедуру кмдВыполнитьНаСервере нужно перенести в общий модуль с флагом "Толстый клиент"
|
|||
10
Akela has missed
18.07.20
✎
10:33
|
Кстати, а как же работают внешние обработки такие как "заполнение объекта"? Там форма передается в модуль объекта обработки, модуль объекта на сервере - но на сервере форм быть не может))
|
|||
11
Волшебник
18.07.20
✎
10:35
|
(10)
РеквизитФормыВЗначение ЗначениеВРеквизитФормы и ДанныеФормыВЗначение ЗначениеВДанныеФормы |
|||
12
Akela has missed
18.07.20
✎
10:39
|
ах да, точно
|
|||
13
Жан Пердежон
18.07.20
✎
14:17
|
(10) может, только их создавать надо на клиенте и явно нельзя на сервер передавать
|
|||
14
makfromkz
18.07.20
✎
16:51
|
Решил я задачку, оказывается все надо делать на стороне клиента:
&НаКлиенте Процедура ЗаполнитьНалоговыйНаборЗаписей(ссДок) П = Новый Структура("Ключ", ссДок); фрмДок = ПолучитьФорму("Документ.ОперацияБухНБ.ФормаОбъекта", П); фрмДок.НацбанкНаборЗаписей.Очистить(); фрмДок.ДокТиповойПриИзмененииНаСервере(); фрмДок.Записать(); КонецПроцедуры &НаКлиенте Процедура кмдВыполнить(Команда) Перем мсТаб1; мсТаб1 = ПолучитьМАССдоков(); Для Каждого ссДок Из мсТаб1 Цикл ЗаполнитьНалоговыйНаборЗаписей(ссДок) КонецЦикла; КонецПроцедуры ========== (9) (10) Потом попробую проверить ваши советы. Всем спасибо за советы!!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |