|
УТ11 подключение внешней обработки | ☑ | ||
|---|---|---|---|---|
|
0
190-4
05.12.24
✎
16:07
|
всем привет! ситуация следующая
есть типовая конфигурация УТ 11 и внешняя обработка, которая запускается нажатием кнопки из документа ЗаказКлиента. Внешнюю обработку успешна подключена пользователем через меню "Дополнительные отчеты и обработки". Но при попытке запустить, она не открывается, а точнее открывается форма справочника "Дополнительные отчеты и обработки". В модуле формы документа ЗаказКлиента прописан след.код для ее открытия: &НаКлиенте Процедура Обработка(Команда) ПодключитьВнешнююОбработку(); КонецПроцедуры &НаСервере Функция ПодключитьВнешнююОбработку() Обр = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Автозаполнение Заказов"); Форма = Обр.ПолучитьФорму(); Форма.Открыть(); КонецФункции Помогите, пожалуйста. Что нужно исправить в данном коде |
|||
|
1
Ненавижу 1С
гуру
05.12.24
✎
16:19
|
Зачем эта обработка?
Зачем писать код в форме документа? |
|||
|
2
Lite777888
naïve
05.12.24
✎
16:28
|
(0) ОткрытьФорму("Обработка.ОбработкаДляПримера.Форма",,,,,,,
|
|||
|
3
190-4
05.12.24
✎
16:32
|
(1) в форме документа создана кнопка с командой, по нажатию на на которою открывается форма обработки
|
|||
|
4
Мультук
гуру
05.12.24
✎
16:42
|
(2)
Ответ хороший, но неправильный. Обработка внешняя и лежит в справочник "Дополнительные отчеты и обработки". (3) Не открывается Ибо вы открываете (пытаетесь) её на сервере. А там некому смотреть. Пользователь он "на клиенте" Мой вам совет: -- книги -- курсы P.S. google выдал вот такой код, наверное правильный. Думать лень &НаКлиенте
Процедура Обработка(Команда)
Обр = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Автозаполнение Заказов");
ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(Обр);
Если Обр.ЭтоОтчет Тогда
ОткрытьФорму("ВнешнийОтчет."+ ИмяОбработки +".Форма");
Иначе
ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма");
КонецЕсли;
КонецПроцедуры
|
|||
|
5
Jackman
05.12.24
✎
16:43
|
(0) Можете средствами БСП это сделать.
Погуглите, забив в поиск "ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеФормыОбработки", сразу получите несколько примеров готовых решений. |
|||
|
6
MWWRuza
гуру
05.12.24
✎
18:20
|
Могу ошибаться, но, чтобы обработка правильно работала через штатный механизм "дополнительных обработок", в модуле объекта самой обработки должно быть что-то на вроде этого прописано:
Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1"); ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка(); ПараметрыРегистрации.Версия = "1.0.0.0"; ПараметрыРегистрации.БезопасныйРежим=Ложь; Команда = ПараметрыРегистрации.Команды.Добавить(); Команда.Представление = НСтр("ru = 'Имя, как она должна быть пользователю видна'"); Команда.Идентификатор = "ТутИмяФайлаОбработки"; Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы(); Возврат ПараметрыРегистрации; КонецФункции // () |
|||
|
7
190-4
05.12.24
✎
22:11
|
(4) вариант оказался рабочим, спасибо большое. Ошибка только в том, что к справочнику нельзя обраться с клиента, поэтому нужно было сделать серверную функцию. Спасибо за помощь!
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |