12.11.2015, 13:13 | #1 |
Участник
|
Вызов AIF сервиса в отдельном соединении
Всем добрый день,
есть одна проблема, которая заключается в следующем: при вызове AIF custom сервиса происходит импорт данных, во время которого пишутся логи. НО: если хоть где-то в коде выбросится ошибка или вызов ttsabort, то соответственно ни лога, ни данных... Если бы это была одна какая-то таблица, я не задумываясь использовал бы UserConnection, но здесь сервис вызывает класс, который выполняет всю логику, поэтому классу я передать соединение не могу, к тому же класс написан внешниками и зашифрован при помощи макросов (можно конечно парсер написать, но по лицензионному соглашению запрещено). Есть предложение от коллеги использовать anonymous pipes, примерно вот так: X++: pipeServer = new System.IO.Pipes.AnonymousPipeServerStream(System.IO.Pipes.PipeDirection::Out , System.IO.HandleInheritability::Inheritable); thread = new Thread(); thread.setInputParm([clr2XppStr(pipeServer.GetClientHandleAsString())]); thread.removeOnComplete(true); thread.run(classNum(ApIpcExample), staticMethodStr(ApIpcExample, messageReader)); pipeServer.DisposeLocalCopyOfClientHandle(); Может кто сталкивался с подобной проблемой? |
|