К документу "Заказ покупателя" нужно добавить некоторое количество (10-15) новых реквизитов. Чтобы не сильно перелопачивать конфигурацию, хотел создать новый регистр сведения, в который и записывать значения этих реквизитов.
Сделал такую процедуру в форме документа:
```1c
    Процедура ДействияФормыОткрытьФормуЗаявкиНаСборку(Кнопка)

    ФормаЗаявкиНаСборку = РегистрыСведений.ЗаявкиНаСборку.ПолучитьФорму("ФормаЗаписи");
    ФормаЗаявкиНаСборку.ЗаказПокупателя = Ссылка;

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

    ФормаЗаявкиНаСборку.Открыть();

    КонецПроцедуры
```
 Но после редактирования реквизитов регистра выдается сообщение "Запись с такими ключевыми полями существует!" Похоже, что-то нужно записать в модуль регистра сведений, но я туплю :(
Подскажите, пожалуйста!
А может быть в качестве измерения нельзя использовать Документ?
Или может быть вообще подойти к проблемы в другой стороны?
---
Или еще можно создать процедуру в модуле формы "Заказа покупателя", которая будет открывать форму записи РС соотв. конкретному документу. И привязать эту процедуру к кнопке.
```1c
    Процедура ОсновныеДействияФормыРеквизитыНаРС(Кнопка)

    Если Ссылка.Пустая() Тогда
    Предупреждение("Документ не записан! Для ввода реквизитов в РС документ необходимо записать!");
    КонецЕсли;

    Запись = РегистрыСведений.РС.СоздатьМенеджерЗаписи();
    Запись.ЗаказПокупателя = Ссылка;
    Запись.Прочитать();

    Если Не Запись.Выбран() Тогда
    Запись.ЗаказПокупателя = Ссылка;
    КонецЕсли;

    ФормаЗаписи = Запись.ПолучитьФорму();
    ФормаЗаписи.Открыть();

    КонецПроцедуры
```
---
Чем не устраивает подчиненный РС вместо независимого?
---
(1)Чем не устраивает подчиненный РС вместо независимого?Такой РС будет изменяться после действий с Заказом покупателя, а нам этого не нужно.
---
Но после редактирования реквизитов регистра выдается сообщение "Запись с такими ключевыми полями существует!"
а где код вызывающий эту ошибку?
---
а где код вызывающий эту ошибку?По ошибке останова нет. Но, вероятно, это при записи в регистр.
---
Еще один реквизит в РС нужно добавить: Свойство тип - ПВХ.
---
Еще один реквизит в РС нужно добавить: Свойство тип - ПВХ.Это зачем? Я не вижу куда это добавить.
---
Что бы ошибки не было.
---
Перед редактированием нужно найти запись РС соответствующую этому документу и отредактировать ее новыми значениями. У вас наверное при каждом редактировании пытается добавить новая запись в РС.
---
У вас наверное при каждом редактировании добавляется новая запись в РС.Вот и непонятно почему она добавляется. Как это исключить?
---
При сохранении из формы записи видимо идет запись без замещения

Наверное можно в Модуле набора записей изменить параметр Замещение,
но у меня не получилось
---
Через менеджер записи попробуйте изменять данные.
---
Примерно так это может выглядеть
```1c
    &НаСервере
    Процедура УстановитьЗначенияРеквизитов()
    Запись = РегистрыСведений.РеквизитыДокумента.СоздатьМенеджерЗаписи();
    Запись.Документ = Ссылка;
    Запись.Прочитать();
    Если Запись.Выбран() Тогда
    Запись.Реквизит1 = Реквизит1;
    // ..................
    // ..................
    // ..................
    Запись.РеквизитN = РеквизитN;
    Запись.Записать();
    КонецЕсли;
    КонецПроцедуры
```
---
Что-то похожее делать пробовал, но может быть я такую процедуру использовал в несоответствующем месте. Куда ее нужно включить? При записи в модуле формы РС?
---
В
```1c
    &НаСервере
    Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
```
 модуля формы вашего документа "Заказ покупателя"
---
модуля формы вашего документа
"Заказ покупателя"1. У нас УТ 10.3
2. Если в модуле Заказа покупателя, то значит нужно перезаписывать документ, а нужно только изменить РС.
---
Судя по приведенному вами коду
```1c
    Если Выборка.Следующий() Тогда
    ЗаполнитьЗначенияСвойств(ФормаЗаявкиНаСборку,Выборка);
    КонецЕсли;
```
эти реквизиты из РС выводятся на форму документа. Ну тогда посадите кнопку на эту форму, и привяжите к ней процедуру по сохранению этих реквизитов в РС.
---
Или еще можно создать процедуру в модуле формы "Заказа покупателя", которая будет открывать форму записи РС соотв. конкретному документу. И привязать эту процедуру к кнопке.
```1c
    Процедура ОсновныеДействияФормыРеквизитыНаРС(Кнопка)

    Если Ссылка.Пустая() Тогда
    Предупреждение("Документ не записан! Для ввода реквизитов в РС документ необходимо записать!");
    КонецЕсли;

    Запись = РегистрыСведений.РС.СоздатьМенеджерЗаписи();
    Запись.ЗаказПокупателя = Ссылка;
    Запись.Прочитать();

    Если Не Запись.Выбран() Тогда
    Запись.ЗаказПокупателя = Ссылка;
    КонецЕсли;

    ФормаЗаписи = Запись.ПолучитьФорму();
    ФормаЗаписи.Открыть();

    КонецПроцедуры
```
---
Настройки измерения РС ЗаказПокупателя
---
Надо передавать отбор в РС.
Форма = РегистрыСведений.ТВОЙРС.Получить"ИМЯФОРМЫ"();
ОтборПоСписку = Форма.РегистрСведенийСписок.Отбор;
ОтборПоДокументу = ОтборПоСписку.Документ;
ОтборПоДокументу .Использование = Истина;
ОтборПоДокументу .Значение = Ссылка;
А так?
---
Записать(Истина);
---
С отбором все нормально, а вот с записью изменений в РС проблема.
---
Записать(Истина);Есть документ, к которому я хочу "преписать" запись РС. У РС есть форма записи (других форм нет). В документе добавил процедуру открытия записи РС. Форма записи по этой процедуре открывается. Теперь мне нужно ее отредактировать в этой форме и записать изменения. Но при нажатие на "ОК" или "Записать" выдается такое сообщение ("Запись с такими ключевыми полями существует!"). Куда же добавить эту строку?

Еще. Если у измерения "Заказ покупателя" установить галку "Ведущее", в меню "Перейти" появляется строка с вызовом РС, но при открытии я попадаю в форму списка РС (хотя формы списка не задана и в способе редактирования указано "В диалоге").
---
```1c
    Запись = РегистрыСведений.РС.СоздатьМенеджерЗаписи();
    Запись.ЗаказПокупателя = Ссылка;
    Запись.Прочитать();
    Запись.Реквизит1 = 1;
    Запись.Записать(Истина);
```

А типовых допреквизитов нет в конфе?