ПолучитьМакет внешней обработки НаСервереБезКонтекста - есть варианты? #780045


#0 by camojiet
По идее должна работать схема: Но ругается на Тип. При этом &НаСервере Объект получен без проблем. Далее выясняется что ТипЗнч(РеквизитФормыВЗначение("Объект")) и Тип("ВнешняяОбработкаОбъект.РабочийСтолСборники") возвращают одно и то же, но не они не равны друг другу. :s Проблема не критичная, но приходится часто разрабатывать внешние обработки, и приходится каждый раз когда мне надо обновить содержимое табличного документа гонять контекст на сервер и обратно. В интернете шукал - не нашёл подходящей методы. Сам не допёр. Может есть метода какая?
#1 by zak555
Объект -- реквизит формы => нужен контекст
#2 by camojiet
Придумал дегродный, но рабочий вариант. &НаСервере &НаСервереБезКонтекста Процедура ОбновитьТД(ТабДок,Знач Объект,Тип) И усё работает. Может кто-то предложит лучше?
#3 by camojiet
Неправильно скопировал. ТипОбработки  заполняется ПриСозданииНаСервере. Короче тупо - но работает. Контекст не нужен.
#4 by DrZombi
Отстой... Проще вообще в твою функцию передать макет :) Код же работает на сервере :)
#5 by DrZombi
Да что ты там к типу привязалси? :)
#6 by DrZombi
Спасибо... не ожидал, что не так просто передать тип :)
#7 by camojiet
Вы имеете в виду ЗначениеВСтрокуВнутр(РеквизитФормыВЗначение("Объект").ПолучитьМакет); ? Ну наверное так тоже можно :)
#8 by DrZombi
Не обращай на это. Это было еще до того, как я попробовал :)
#9 by DrZombi
+  Можно в качестве реквизита формы вообще указать ТабличныйДокумент. Любопытно, только как это все скажется на объеме данных? :)
#10 by camojiet
Смех смехом а не ясно ещё, что меньше по объёму - передавать на сервер ДанныеФормы "Объект", или сразу Макет. Если макет небольшой (в моём случае он микроскопический), то скорее всего макет будет меньше. Не буду врать - не знаю что конкретно передается на сервер в виде ДанныхФормы.
#11 by DrZombi
+ Передаваемых от Клиента на сервер.
#12 by DrZombi
1С и правду, как то не дали механизм получения Типов без контекста :( Ведь по ИД этот тип есть, просто мы о нем не знаем :)
#13 by camojiet
Короче сделал через макет. Так как получается, что передавая на сервер данные формы "Объект" я передаю весь объект, в том числе и макет. Зачем передавать всё, если можно передать только макет. Ну и не имеет смысла передавать ТабДок на сервер, так как он всё равно там первым делом у меня очищается. Сделаю функцией и передам табдок через возврат.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С