Имя: Пароль:
1C
1С v8
v8: Внешняя обработка: изменить реквизит в ТЧ документа
0 листопад
 
14.05.13
11:32
Пишу внешнюю обработку, которая должна обнулить суммы в уже заполненной ТЧ док-та. Подключила ее через внешние обработки. После срабатывания, ничего не поменялось и выдает сообщение:

Заполнение ТЧ не произведено!
Метод объекта не обнаружен (Записать)


Подскажите, где ошибка. Вот мой код:

Процедура Инициализировать1 (ДокОбъект, ИмяТабЧасть, ТабЧасть) Экспорт;
   
   Счет70 = ПланыСчетов.Хозрасчетный.РасчетыСПерсоналомПоОплатеТруда;
   Счет96 = ПланыСчетов.Хозрасчетный.РезервыПредстоящихРасходов;
   Субконто96 = Справочники.Резервы.НайтиПоНаименованию("Резервы");
   
   МассивСтрок=Новый Массив;
   ТабЧасть = ДокОбъект[ИмяТабЧасть];
   Для каждого Строка Из ТабЧасть Цикл
       Если (Строка.СчетДт = Счет96) И (Строка.СчетКт = Счет70) И (Строка.СубконтоДт1 = Субконто96) Тогда
           МассивСтрок.Добавить(Строка);
       КонецЕсли;
   КонецЦикла;
   
   Если МассивСтрок.Количество()=0 Тогда
       Сообщить("Нет искомых строк!!!");
   Иначе
       Для каждого Строка Из МассивСтрок Цикл
           Сообщить ("НАШЛА!!!");
           Строка.СуммаНУ = 0;
           ТабЧасть.Записать(Строка);
       КонецЦикла;    
   КонецЕсли;
   
КонецПроцедуры
1 salvator
 
14.05.13
11:33
А что мешает сразу менять в ТЧ, а не (бугуга) в массиве?
2 salvator
 
14.05.13
11:34
А по поводу ошибки - читай СП
3 Флудер
 
14.05.13
11:35
Что это ТабЧасть.Записать(Строка); ? Нет записи ТЧ. В конце процедуры поставь ДокОбъект.Записать() тогда уж, а вообще оставь это на откуп пользователю
4 листопад
 
14.05.13
11:38
(3) Спасибо! Получилось!!!