Имя: Пароль:
1C
1С v8
Не записывает элемент справочника через ОЛЕ 8.3. Как быть? Как отлаживать?
,
0 batmansoft
 
02.02.14
12:01
Добрый день. При попытке записать элемент справочника "БанковскиеСчета" через ОЛЕ 8.3.4.408 в базу БП 3.0.29.5

Выдает сообщение об ошибке:
"
ВнешняяОбработка.ВыгрузкаДокументов.МодульОбъекта(177)}: Ошибка при вызове метода контекста (Записать)
    УдОбъект.Записать();
по причине:
Произошла исключительная ситуация (1C:Enterprise 8.3.4.408): Ошибка при выполнении обработчика - 'ПриЗаписи'
{ОбщийМодуль.ЭлектронныйДокументооборотСКонтролирующимиОрганами.Модуль(62)}: Ошибка при вызове метода контекста (ПолучитьОбработкуЭДО)
Ошибка при вызове серверного метода.
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
Ошибка преобразования данных XDTO:
Запись значения свойства 'ret':
    форма: Элемент
    имя: {http://v8.1c.ru/8.2/managed-application/modules}ret
Ошибка отображения типов:
Отсутствует отображение для типа 'ОбработкаОбъект.ДокументооборотСКонтролирующимиОрганами'
"
Подскажите пожалуйста, как лечить подобные ситуации?
1 DJ Anthon
 
02.02.14
19:03
не ставить новые платформы
2 Torquader
 
02.02.14
19:10
Или переписывать всё, что было написано ранее - по новому.
3 Torquader
 
02.02.14
19:11
В данном случае, похоже, что кто-то объект обработки пытается передать между клиентом и сервером, а это - невозможно.
4 zladenuw
 
02.02.14
19:18
(0) для модуля поставить внешние соединение
5 batmansoft
 
03.02.14
22:47
(3) Спасибо за идею.
Что бы проверить данное предположение, не стал вообще заполнять никакие реквизиты объекта, но такое сообщение вылазит все равно.
6 batmansoft
 
03.02.14
22:48
(4) Это где поставить, в той конфе, в которую я выгружаю? Оно она типовая, никак нельзя избежать ее правки?
7 zladenuw
 
03.02.14
22:51
ну так при обновление просто не забывай что у тебя для модуля включено внешние соединение. или тогда пиши в модуле внешнего соединение создание документа. а туда с источника передавай тз или массив или структуру. что душе желаешь. или же пиши в кд и вызывай обмен по сом
8 xReason
 
03.02.14
22:53
Выкинуть ОЛЕ
9 batmansoft
 
03.02.14
22:53
(7) Там кстати стоит галочка "Внешнее соединение".
10 batmansoft
 
03.02.14
22:55
А вообще, может есть какой то способ отладки того что выполняется по ОЛЕ?
11 zladenuw
 
03.02.14
22:56
в конфигураторе,где подключение. установить флаг внешние соединение
12 batmansoft
 
03.02.14
22:59
(11) В смысле "где подключение"? Разве вы не имели в ввиду поставить галочку на общий модуль "ЭлектронныйДокументооборотСКонтролирующимиОрганами" (на который ругается?
Дык там стоит такая галочка.
13 batmansoft
 
03.02.14
23:00
(11) А, понял, там где список запущенных процессов...
14 zladenuw
 
03.02.14
23:02
(0) ошибка что пишет
Ошибка при вызове метода контекста (ПолучитьОбработкуЭДО)
15 batmansoft
 
03.02.14
23:23
Что то странно. Когда в режиме предприятия я запускаю обработикну вида:
"&НаКлиенте
Процедура Команда2(Команда)
    Команда2НаСервере();
КонецПроцедуры

&НаСервереБезКонтекста
Процедура Команда2НаСервере()
    спр=Справочники.Организации.СоздатьЭлемент();
    спр.Наименование="вапываыва";
    спр.Записать();
КонецПроцедуры
"
все проходить нормлаьно и создает новый элемент справочника орагниазции.
А когда тоже самое делаю через ОЛЕ:
"            лБаза=ПодключитьсяКИнформационнойБазе(Выборка.Организация);
            спр=лБаза.База.Справочники.Организации.СоздатьЭлемент();
            спр.Наименование="ываывавыаываыв";
            спр.Записать();
" то вылазит сабжевое сообщение об ошиюке.
Ну почему так???
16 batmansoft
 
03.02.14
23:25
Кстати, а что вот это за кусок кода в БП 3.0, для чего он и нас сколько критично если я тупо закомментирую его:
Процедура ПриЗаписиОрганизации(ОбъектЗаписи, Отказ) Экспорт
    
    КонтекстЭДО = ДокументооборотСКОВызовСервера.ПолучитьОбработкуЭДО();
    Если КонтекстЭДО = Неопределено Тогда
        Возврат;
    КонецЕсли;
    
    КонтекстЭДО.ПриЗаписиОбъекта(ОбъектЗаписи, Отказ);
    
    
КонецПроцедуры
17 zladenuw
 
03.02.14
23:32
ну так посмотри что она фиксирует. а вообще опиши свой алгоритм создание в приемнике. в источнике его вызывай и передавай структуру данных. а вообще КД в руки и вперед
18 zmaximka
 
03.02.14
23:58
попробуй при создании элемента установить Спр.ОбменДанными.Загрузка = истина
19 batmansoft
 
04.02.14
21:03
(18) спасибо, помогло
20 zulu_mix
 
04.02.14
21:27
(18) вот посоветовал, вот молодец. а если там перед записью другие важные действия были?
21 DJ Anthon
 
04.02.14
21:51
(20) а это уже не наши проблемы )
22 Torquader
 
04.02.14
23:47
(20) Ну были, эта команда для того и придумана, чтобы не думать о том, что может не записаться.
Основная теорема систематики: Новые системы плодят новые проблемы.