Есть сторонний код, работающий в управляемом режиме и падающий в неуправляемом.
Есть необходимость вызывать этот код из внешнего приложения.
Пытаюсь вызывать этот код, вызывая операцию web-сервиса - ничего не выходит - такое ощущение, что он исполняется в неуправляемом режиме.
Есть ли возможность задавать режим исполнения при работе через web-сервис?
Код на 1С
Собственно, весь код - создание и проведение документа.
Но раз этот код работает только в управляемом режиме - значит, видимо есть какая-то обработка на клиенте?
И значит, вызов этого кода через веб-сервис не сработает в любом случае?
К сожалению, зависит.
Весь код:
[code]
документ = Документы.ВводПоказанийСчетчиков.СоздатьДокумент();
...
документ.Записать(РежимЗаписиДокумента.Проведение);
[/code]
если я этот код запускаю в обработке "Произвольный алгоритм" в управляемом приложении - все хорошо. Если в той же обработке в неуправляемом - падает на последней строке.
Собственно, падает со следующим сообщением:
Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода РазрешеноПроведениеДокумента
Падение происходит не в моем модуле, и править его мне запрещено.
Путем выставления настроек на мой модуль (откуда происходит создание документа) "Клиент (управляемое приложение)" и других, мне удалось добиться, чтобы из клиента 1с данный код выполнялся в любом случае. Но при вызове через веб-сервис этой же функции - падение все-равно происходит.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший