Здравствуйте! Понадобилось массово изменить счет в бухгалтерских операциях. Простым групповым изменением реквизитов не получается, так как видимо записи операции лежат непосредственно в хозрасчетном.
Запрос = Новый Запрос();
Запрос.УстановитьПараметр("СчетДт",СчетДт);
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
|Хозрасчетный.Регистратор,
|Хозрасчетный.СчетДт
|ИЗ
|РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(,,СчетДт=&СчетДт,,) КАК Хозрасчетный";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Если ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ОперацияБух") Тогда
Набор = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Набор.Отбор.Регистратор.Установить(Выборка.Регистратор);
Набор.Прочитать();
Для Каждого Запись из Набор Цикл
Запись.СчетДт = ЗаменитьНаСчетДт;
КонецЦикла;
Набор.Записать(Истина);
Набор.Очистить();
КонецЕсли;
КонецЦикла;
Написал простенький и вроде логичный код, но при попытке выполнения получаю ошибку "Запись не верна! Вид субконто "Статьи затрат" не доступен для данной записи". Подскажите, что в Хозрасчетном я не так понял?
там наверняка штук 10 проводок, наверно не надо во все строчки этот счет херачить.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший