В процедуре записи справочника Медицина.Больница 1.1 (8.3 управляемое) создаю com-соединение к Отель (8.3 не управляемое).
В подключаемой базы данные должны дублироваться из текущей базы в справочник и 2 документа.
К файловой подключаюсь:
"File=""C:\Users\Midasu\Documents\InfoBase"";Usr=""Администратор"";Pwd="""";";
К серверной:
"Srvr=""localhost"";Ref=""medicine"";Usr=""Администратор"";Pwd="""";";
В обоих случаях подключаю:
V83COMConnector = Новый COMОбъект("V83.COMConnector");
Соединение = V83COMConnector.Connect(Параметры);
К файловой базе всё шуршит как надо и пишется.
Пытаюсь к серверной, ошибка:
Ошибка при выполнении обработчика - 'OnWrite' по причине:
{Catalog.Clients.ObjectModule(516)}: Ошибка при вызове метода контекста (СоздатьДокумент) по причине:
Произошла исключительная ситуация (1C:Enterprise 8.3.4.408): При подписке HL7ОтправкаДанныхГоспитализацииОбработкаПроведения на событие ОбработкаПроведения произошла ошибка. Обработчик события не найден.
Нужно ли использовать какие-то директивы? Если в отеле пишу &НаСервере, то процедуру просто не видит 1с-ка.
Что делать? В чём причина? Подскажите, пожалуйста.
В файловом режиме нет сервера и подписка выполняется внутри ком-соединения, которому видны также и модули отмеченные как серверные. В клиент-серверном режиме, модули подписки, возможно, не могут работать в режиме ком-соединения, т.к. не стоят соответствующие флажки.
(1)
Спасибо.
Т.е. получается, что когда я через com к файловой подключаюсь, она как бы работает в не управляемом интерфейсе? А когда к серверной базе, тогда она запускается в управляемом и не работают подписки?
А можно как-то при com-подключении тогда подключиться к базе в не управляемом интерфейсе? Я же могу в режиме толстого клиента подключиться к базе, которая на сервере лежит.
У ком соединения нет интерфейса, это отдельный режим работы с базой. Ком соединение ближе к толстому клиенту по постоянству соединения и затрачиваемым ресурсам; оно служит больше для совместимости.
Проверьте синтаксис базы (конфигурация/проверка конфигурации...), поставив флажки проверять для внешнее соединение и внешнее соединение вариант клиент-сервер, будут ошибки стоит исправить.
Или можно попробовать OLE для тонкого клиента Новый COMОбъект("V83c.COMConnector") , сам не проверял.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой