Сложилась такая ситуация, знаю регистратор, по этому регистратору заполняются проводки в таблицу значений на форме, на ней меняются суммы проводок, и далее необходимо сохранить измененные проводки, нет вариантов добавлять или удалять итоговые проводки, просто получаем их и изменяем руками. Как мне реализовать сохранение измененных в ТЗ проводок?
---
Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Проводки.Отбор.Регистратор.Установить(стр.Док);
Проводки.Прочитать();

тз = Проводки.Выгрузить()
//передаём тз на форму

...
//после получения тз с формы

Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Проводки.Отбор.Регистратор.Установить(стр.Док);
Проводки.Прочитать();
Проводки.Загрузить(тз);
Проводки.Записать(Истина);
---
Получить набор записей РБ с отбором по регистратору, загрузить туда нужные проводки, записать набор записей
---
спасибо, логику я понимал, хотелось бы пример кода либо ссылочку, с примером
---
Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Проводки.Отбор.Регистратор.Установить(стр.Док);
Проводки.Прочитать();
Для Каждого пров из Проводки Цикл

КонецЦикла
//Проводки.ОбменДанными.Загрузка = ИСТИНА;
Проводки.Записать(ИСТИНА);
---
понятно, но тут получается Проводки выступают в качестве объекта, допустим я получу проводки и запишу их в ТЗ

```1c
    Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    Проводки.Отбор.Регистратор.Установить(стр.Док);
    Проводки.Прочитать();
    Для Каждого пров из Проводки Цикл
    // записываю тут всё в ТЗ
    КонецЦикла
```

Но вот что делать потом? изменения я же делаю на форме
---
на форме их делать неправильно, посмотрите в коде как это делается в типовой конфигурации
---
на форме их делать неправильно

При постановке "пользователь редактирует их руками" - вполне правильно
---
Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Проводки.Отбор.Регистратор.Установить(стр.Док);
Проводки.Прочитать();

тз = Проводки.Выгрузить()
//передаём тз на форму

...
//после получения тз с формы

Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
Проводки.Отбор.Регистратор.Установить(стр.Док);
Проводки.Прочитать();
Проводки.Загрузить(тз);
Проводки.Записать(Истина);
---
спасибо, буду разбираться
---
//передаём тз на форму
смотрю что здесь тоже не всё так просто(
---
А как ты собирался раньше выполнить "по этому регистратору заполняются проводки в таблицу значений на форме" ?
---
Запросом выбирал проводки и заполнял
---
А теперь выбирай не запросом, а через перебор набора записей. Разница непринципиальна.
Главное - перед загрузкой в НЗ - тз должна иметь правильную структуру.
---
но при таком способе, мне нужно что бы тз на форме была идентичной структуры, как и получаемая структура проводки?
---
Если это для тебя самая главная проблема, то я тебе завидую...
---
это был просто вопрос) проблем хватает
---
вот и возникла новая проблеме) при создании структуры ТЗ на форме, для СУбконтоДт и СубконтоКт установил тип Произвольный, и соответственно при заполнении тз вылезла ошибка

РегистрБухгалтерииСубконто.Хозрасчетный" не может использоваться в данных формы
---
понадобилось тут как то в операциях бух поменять субконто - вот как это выглядит : лепишь на форму два реквизита справочников дохы и расходы и в модуле формы пишешь вот такой вот код

```1c
    &НаСервере
    Процедура ПеренестиНаСервере()

    Если Объект.Документ.Пустая() Тогда
    Сообщить("Не выбран документ для заполнения");
    Возврат;
    Конецесли;
    ТекДок=Неопределено;
    ТекДок=Объект.Документ.ПолучитьОбъект();
    Если ТекДок=Неопределено Тогда
    Сообщить("Не выбран документ для заполнения");
    Возврат;
    Иначе

    ДокОперацияСсылка = ТекДок.Ссылка;
    ДатаВДок = ТекДок.Дата;

    Проводки = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    Проводки.Отбор.Регистратор.Установить(ДокОперацияСсылка);

    Проводки.Прочитать();

    инд1=1;
    Для Каждого пров из Проводки Цикл

    Если пров.СчетКт.Код = "91.01" Тогда
    БухгалтерскийУчет.УстановитьСубконто(пров.СчетКт, пров.СубконтоКт, "ПрочиеДоходыИРасходы", Объект.ДиР9101);
    КонецЕсли;

    Если пров.СчетДт.Код = "91.02" Тогда
    БухгалтерскийУчет.УстановитьСубконто(пров.СчетДт, пров.СубконтоДт, "ПрочиеДоходыИРасходы", Объект.ДиР9102);
    КонецЕсли;

    инд1=инд1+1;
    КонецЦикла;
    //Проводки.ОбменДанными.Загрузка = ИСТИНА;
    Проводки.Записать(ИСТИНА);

    КонецЕсли;
    КонецПроцедуры

    &НаКлиенте
    Процедура Перенести(Команда)
    ПеренестиНаСервере();
    КонецПроцедуры
```
---
да и на форме документ этот выбираешь .
---
вот эта обработка