Добрый день. Программно создал в тестовой базе документ установка цен номенклатуры, при его открытии вылезает ошибка (Поле объекта не обнаружено (ВидЦены2042bf0b86dd12ed811dac1f6b6313c)). Подскажите, пожалуйста, как ее можно исправить? И второй момент, как правильно программно создавать документ Установка цен номенклатуры и сразу его записывать, без открытия формы. Сейчас настроено так, и вылезает ошибка из сообщения выше
```1c
    &НаСервере
    Процедура СоздатьУстановкуЦенНоменклатуры(ДокументОснование)
    ТаблицаТоваров = Объект.Товары.Выгрузить();
    УстановкаЦенНоменклатуры = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    УстановкаЦенНоменклатуры.Дата = КонецДня(ТекущаяДатаСеанса());
    УстановкаЦенНоменклатуры.Статус = Перечисления.СтатусыУстановокЦенНоменклатуры.Согласован;
    УстановкаЦенНоменклатуры.Ответственный = Пользователи.ТекущийПользователь();
    УстановкаЦенНоменклатуры.ДокументОснование = ДокументОснование;
    Для Каждого Строка Из ТаблицаТоваров Цикл
    НоваяСтрока = УстановкаЦенНоменклатуры.Товары2_5.Добавить();
    НоваяСтрока.Номенклатура = Строка.Номенклатура;
    НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Закупка");
    НоваяСтрока.ХарактеристикаЦО = Справочники.ХарактеристикиНоменклатурыДляЦенообразования.НайтиПоНаименованию(СокрЛП(Строка.Характеристика));
    НоваяСтрока.Цена = Строка.Цена + (Строка.Цена * 0.2);
    НоваяСтрока.ЦенаИзмененаВручную = Ложь;
    КонецЦикла;
    УстановкаЦенНоменклатуры.Записать(РежимЗаписиДокумента.Проведение);
    КонецПроцедуры
```

Пробовал заполнять так, но тогда при открытии документа нужно выбирать вид цены, и в табличной части он не установлен.
```1c
    &НаСервере
    Процедура ЗаполнитьПоПоступлениюТоваровУслуг(
    Знач ДокументОснование,
    ДанныеЗаполнения)

    УстановкаЦенНоменклатуры = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    // Заполним данные шапки документа.
    Запрос = Новый Запрос(
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | ВидыЦен.Ссылка,
    | ВидыЦен.УстанавливатьЦенуПриВводеНаОсновании,
    | ВидыЦен.ПометкаУдаления
    |ПОМЕСТИТЬ ВидыЦен
    |ИЗ
    | Справочник.ВидыЦен КАК ВидыЦен
    |ГДЕ
    | ВидыЦен.УстанавливатьЦенуПриВводеНаОсновании
    | И ВидыЦен.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыДействияВидовЦен.Действует)
    | И НЕ ВидыЦен.ПометкаУдаления
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ПриобретениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
    | ПриобретениеТоваровУслугТовары.Характеристика КАК Характеристика,
    | ПриобретениеТоваровУслугТовары.Серия,
    | ПриобретениеТоваровУслугТовары.Упаковка КАК Упаковка,
    | ВидыЦен.Ссылка КАК ВидЦены,
    | 0 КАК Цена
    |ИЗ
    | Документ.ПриобретениеТоваровУслуг.Товары КАК ПриобретениеТоваровУслугТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ ВидыЦен КАК ВидыЦен
    | ПО ИСТИНА
    |ГДЕ
    | ПриобретениеТоваровУслугТовары.Ссылка = &Ссылка");
    Запрос.УстановитьПараметр("Ссылка", ДокументОснование);

    РезультатЗапроса = Запрос.Выполнить();
    Если РезультатЗапроса.Пустой() Тогда
    Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
    НСтр("ru = 'Не требуется вводить установку цен номенклатуры на основании документа %1'"),
    ДокументОснование);
    ВызватьИсключение Текст;
    Иначе

    ЭтотОбъект.ДокументОснование = ДокументОснование;
    ЗагрузитьТовары(УстановкаЦенНоменклатуры, РезультатЗапроса.Выгрузить());

    КонецЕсли;

    КонецПроцедуры

    &НаСервере
    Процедура ЗагрузитьТовары(УстановкаЦен, ТаблицаТовары)

    ИспользуетсяЦенообразование25 = ЦенообразованиеВызовСервера.ИспользуетсяЦенообразование25();

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

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

    Если ТаблицаТовары.Колонки.Найти("Характеристика") = Неопределено Тогда
    ТаблицаТовары.Колонки.Добавить("Характеристика", Новый ОписаниеТипов("СправочникСсылка.ХарактеристикиНоменклатуры"));
    КонецЕсли;

    СтруктураНастроек = Новый Структура();
    СтруктураНастроек.Вставить("ТаблицаТоваров", ТаблицаТовары);
    СтруктураНастроек.Вставить("ИмяМакетаСхемыКомпоновкиДанных", "Макет2_5");
    СтруктураНастроек.Вставить("КомпоновщикНастроек", Неопределено);
    СтруктураНастроек.Вставить("ВестиУчетСертификатовНоменклатуры", Ложь);
    СтруктураНастроек.Вставить("ИспользуетсяОтборПоВнешнемуИсточникуДанных", Истина);
    СтруктураНастроек.Вставить("ОбязательныеПоля" , Новый Массив);

    СтруктураНастроек.ОбязательныеПоля.Добавить("Номенклатура");
    СтруктураНастроек.ОбязательныеПоля.Добавить("Характеристика");
    СтруктураНастроек.ОбязательныеПоля.Добавить("ХарактеристикаЦО");
    СтруктураНастроек.ОбязательныеПоля.Добавить("Серия");
    СтруктураНастроек.ОбязательныеПоля.Добавить("СерияЦО");
    СтруктураНастроек.ОбязательныеПоля.Добавить("Упаковка");
    СтруктураНастроек.ОбязательныеПоля.Добавить("УпаковкаЦО");
    СтруктураНастроек.ОбязательныеПоля.Добавить("ВидЦены");

    СтруктураРезультата = Обработки.ПодборТоваровПоОтбору.ПодготовитьСтруктуруДанных(СтруктураНастроек);

    Товары2_5.Загрузить(СтруктураРезультата.ТаблицаТоваров);
    Иначе
    Товары.Загрузить(ТаблицаТовары);
    КонецЕсли;

    УстановкаЦен.Дата = ТекущаяДатаСеанса();
    УстановкаЦен.Записать(РежимаЗаписиДокумента.Проведение);

    КонецПроцедуры
```
---
В документе два табличных поля: Товары и ВидыЦен. Добавь в ВидыЦен строку с твоим видом цен
---
В документе два табличных поля: Товары и ВидыЦен. Добавь в ВидыЦен строку с твоим видом цен
---
спасибо