|
Внешний отчет и ругань на внешнее соединение | ☑ | ||
---|---|---|---|---|
0
zippygrill
09.04.20
✎
13:59
|
Всем привет!
Программно вызываю внешний дополнительный отчет. КОнфа 1С ERP ОбработкаСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоРеквизиту("ИмяОбъекта", ИмяОбъектаКакВСправочнике); ДвоичныеДанныеОбработки = ОбработкаСсылка.ХранилищеОбработки.Получить(); ДвоичныеДанныеОбработки.Записать(ИмяВременногоФайлаОбработки); ВнешняяОбработкаОбъект = ВнешниеОбработки.Создать(ИмяВременногоФайлаОбработки); ИмяВыполняемойКоманды = "Идентификатор_ВедомостьПокупных"; ВнешняяОбработкаОбъект.ВыполнитьКоманду(ИмяВыполняемойКоманды, ПараметрыКоманды); В ВыполнитьКоманду() есть внешнее подключение к другой базе через WS и ругается на WSОпределение. Ошибка при вызове конструктора (WSОпределения) У пользователя от которого запущена все эта байда, снята галка "Защита от опасных действий" и стоит роль "Разрешить внешнее соединение" Что еще посмотреть? В СведенияОВнешнейОбработке может какие особые разрешения вписать? Пы.сы. Если отчет открыть через Файл - Открыть и сформировать , то подключение к другой базе проходит. |
|||
1
RomanYS
09.04.20
✎
14:02
|
>>В СведенияОВнешнейОбработке может какие особые разрешения вписать?
Как минимум безопасный режим снять. Хотя ошибка странноватая |
|||
2
zippygrill
09.04.20
✎
14:03
|
(1) Ужо есть
ПараметрыРегистрации.БезопасныйРежим = Ложь; |
|||
3
RomanYS
09.04.20
✎
14:07
|
(2) Значит проблема не в интерграции внешней обработки, а в самом конструкторе. Там как минимум один обязательный параметр. Текст ошибки?
|
|||
4
zippygrill
09.04.20
✎
14:15
|
(3) Вот не очень информативно..просто ошибка в конструкторе
{ВнешняяОбработка.ERP_Обработка_ВедомостьПокупных_РКМПоПериоду.МодульОбъекта(457)}: Ошибка при вызове конструктора (WSОпределения) |
|||
5
zippygrill
09.04.20
✎
14:18
|
Весь этот код находится в модуле http сервиса. Подключение к этому http сервису идет также от имени пользователя у которого отключены опасные действия и разрешить внешние соединения.
ОбработкаСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоРеквизиту("ИмяОбъекта", ИмяОбъектаКакВСправочнике); ДвоичныеДанныеОбработки = ОбработкаСсылка.ХранилищеОбработки.Получить(); ДвоичныеДанныеОбработки.Записать(ИмяВременногоФайлаОбработки); ВнешняяОбработкаОбъект = ВнешниеОбработки.Создать(ИмяВременногоФайлаОбработки); ИмяВыполняемойКоманды = "Идентификатор_ВедомостьПокупных"; ВнешняяОбработкаОбъект.ВыполнитьКоманду(ИмяВыполняемойКоманды, ПараметрыКоманды); |
|||
6
RomanYS
09.04.20
✎
14:27
|
(5) Эээ.
Во-первых строку с конструктором мы так и не увидели. Во-вторых (2) относится запуску из интерфейса. Ты же её кодом из файла запускаешь(забудь в такой ситуации про интеграцию БСП). У метода ВнешниеОбработки.Создать вроде должны быть параметры безопасного режима, могу ошибаться. |
|||
7
zippygrill
09.04.20
✎
14:28
|
ВнешниеОбработкиМенеджер (ExternalDataProcessorsManager)
Создать (Create) Вариант синтаксиса: По имени файла Синтаксис: Создать(<ПолноеИмяФайла>, <БезопасныйРежим>, <ЗащитаОтОпасныхДействий>) СведенийОВнешнейОбработке() похоже фиолетово на ВнешниеОбработки.Создать(,БезопасныйРежим). Указал истина в ВнешняяОбработкаОбъект = ВнешниеОбработки.Создать(ИмяВременногоФайлаОбработки,Истина); Мне помогло |
|||
8
zippygrill
09.04.20
✎
14:29
|
точнее указал Ложь
|
|||
9
zippygrill
09.04.20
✎
14:31
|
всем спс))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |