Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Изменение данных через COMConnector
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование управляемых форм 1С 8.2
poritskiy
Есть 2 базы 1с82, ЗУП и самописная(База2). Так вот подключаюсь к ЗУПу от Базы2 через COMConnector, перебираю циклом документы ПриказыНАПрием, и есть доки в которых нужно изменить реквизит с Типом булево, попросту говоря в доках есть установленная галочка и ее просто нужно снять. Подскажите как это сделать через COMConnector, так как в цикле я получаю значение с типом комОбъект, тоесть считать могу, а изменить нет (((((.
Vofka
Вообще-то можно и читать и писать через com. Если бы вы привели пример кода и описание ошибки, которое у вас возникает, то, возможно, вам кто-то что-то подскажет. А так шансов не много.
poritskiy
Может кому то пригодится )
Код следующий :
&НаСервере  
Процедура ИнициализацияЗУП()

    
    V8 = Новый COMОбъект("V82.COMConnector");
    СтрокаСоединенияСБазойАФ = "
    |Srvr=10.23.220.115;
    |Ref=ZUP_COPY1;
    |Usr=Администратор;
    |Pwd=poritskiy;
    |";
    Попытка
        ЗУП = V8.Connect(СтрокаСоединенияСБазойАФ);
    Исключение
        Сообщить("Произошла ош[B][/B]ибка подключения к базе");
    КонецПопытки;
   ВыборкаДокПрием = ЗУП.Документы.ПриемНаРаботуВОрганизацию.Выбрать(Объект.НачПериода,Объект.КонПериода);
   Пока ВыборкаДокПрием.Следующий() Цикл
        Док = ВыборкаДокПрием.Ссылка.ПолучитьОбъект();
        Док.Р_ДокИзменен = Ложь;
        Док.Записать();
   КонецЦикла;



Но выдавало ошибку:
Ошибка при вызове метода контекста (Записать)
Док.Записать();
по причине:
Произошла исключительная ситуация (1C:Enterprise 8.2.16.352): Ошибка при выполнении обработчика - 'ПередЗаписью'
Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода РегистрацияИзмененийДляДокументовПередЗаписью ().

Проблема была на стороне ЗУП в документе, который я пытался записать с самописной базы в ЗУПе, была еще подписка на событие передзаписью, действие которой выполнялось в общем модуле у которого стояла галочка "На сервере". Два дня танцевал с бубном пока нашел )))), короче убрал эту галку и все заработало...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.