Добрый день!
разрабатываю конфигурацию, имеются 2 документа, вносящие записи в один регистр.
Измерением регистра является поле "Утиль", где хранится название утилизированного документа.
Первый документ вносит значение "Ложь" в ресурс регистра, второй, соответственно, вносит значение истина.
Подскажите, как корректно написать процедуру, пожалуйста.
Вот что есть сейчас:
Процедура ПриЗакрытииНаСервере()
 Запрос = Новый Запрос;
 Запрос.Текст =
  "ВЫБРАТЬ
  | Утилиз.Регистратор,
  | Утилиз.Утиль,
  | Утилиз.Утилизирован
  |ИЗ
  | РегистрСведений.Утилиз КАК Утилиз";

 РезультатЗапроса = Запрос.Выполнить();

 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

  НаборЗаписей = РегистрыСведений.Утилиз.СоздатьНаборЗаписей();
  НаборЗаписей.Отбор.Утиль.Установить(ЭтаФорма.Объект.Наименование);

        НаборЗаписей.Прочитать();
        Для каждого Запись Из НаборЗаписей Цикл
            Запись.Утилизирован = Истина;
        КонецЦикла;
        НаборЗаписей.Записать();

 КонецЦикла;

При отладке выводится ошибка
{Документ.АктОСписании.Форма.ФормаДокумента.Форма(25)}: Поле объекта не обнаружено (Утилиз)
  НаборЗаписей.Отбор.Утилиз.Утиль.Установить(ЭтаФорма.Объект.Наименование);

Спасибо заранее за помощь
---
Я концептуальное замечание сделаю.
Если вы хотите в регистре сведений хранить состояния чего бы то ни было и хотите менять это состояние документами, то единственно верный способ - это использовать периодический регистр сведений с периодичностью до регистратора. Документы же должны просто делать записи в этот регистр об изменении состояния (не основываясь на предыдущих записях).
Только такая схема обеспечивает корректную историю состояний при любых непротиворечивых операциях с документами, позволяет получить состояние на любой момент времени (срез последних) и гарантирует одинаковый конечный результат при любом порядке проведения/перепроведения документов.
---
А вы точно привели листинг того модуля, в котором вам выдается ошибка?
В листинге:
НаборЗаписей.Отбор.Утиль.Установить(ЭтаФорма.Объект.Наименование);
В описании ошибки:
НаборЗаписей.Отбор.Утилиз.Утиль.Установить(ЭтаФорма.Объект.Наименование);
---
Ошибка сохраняется, сначала выдавал ошибку
{Документ.АктОСписании.Форма.ФормаДокумента.Форма(25)}: Поле объекта не обнаружено (Утилиз)
НаборЗаписей.Отбор.Утиль.Установить(ЭтаФорма.Объект.Наименование)
потом я утилиз добавила
---
Может Вы подскажете более легкое решение моей задачи?
У меня 2 регистра, в одном есть срок утилизации документа, в другом, соответственно, утилизирован он или нет. В обоих регистрах измерением является наименование документа
В отчете нужно вывести таблицу, в которой будут данные из обоих регистров.
Если я не вношу данные со значением "Ложь" в регистр "Утилиз", то в отчете выводятся только те позиции, где значение ресурса = "Истина", а меня как раз таки не они в первую очередь интересуют
---
Регистры независимые или подчинены регистратору?
Судя по тексту запроса, один регистр точно регистратору подчинен
---
Если в вашем регистре есть поле Регистратор и он подчинен документу, то отбор обязательно должен включать поле "регистратор"
т.е. д.б. как-то так
НаборЗаписей.Отбор.Утиль.Установить(ЭтаФорма.Объект.Наименование); (upd: отбор в таком случае возможен только по регистратору)
НаборЗаписей.Отбор.Регистратор.Установить(СсылкаНаДокумент);
Вы меняете 1 запись, можно не использовать наборЗаписей, а воспользоваться МенеджерЗаписи
---
Я концептуальное замечание сделаю.
Если вы хотите в регистре сведений хранить состояния чего бы то ни было и хотите менять это состояние документами, то единственно верный способ - это использовать периодический регистр сведений с периодичностью до регистратора. Документы же должны просто делать записи в этот регистр об изменении состояния (не основываясь на предыдущих записях).
Только такая схема обеспечивает корректную историю состояний при любых непротиворечивых операциях с документами, позволяет получить состояние на любой момент времени (срез последних) и гарантирует одинаковый конечный результат при любом порядке проведения/перепроведения документов.