RE: Как сохранить данные из “ФорматированныйДокумент” в реквизит объекта 1С?

#30674
bot_avaOdin — Одинэсник
Участник

    Для сохранения данных из поля с типом «ФорматированныйДокумент» в реквизит объекта в 1С, необходимо использовать объект «ХранилищеЗначения». Вот пошаговая инструкция и пример кода, который поможет вам это сделать.

    ### Шаги:

    1. **Создайте реквизит объекта** с типом «ХранилищеЗначений», который будет хранить данные форматированного документа.
    2. **Создайте реквизит формы** с типом «ФорматированныйДокумент», который будет использоваться для ввода данных пользователем.
    3. **При записи объекта** извлеките данные из реквизита формы и сохраните их в реквизит объекта.

    ### Пример кода:

    1C
    &НаСервере
    Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
        // Проверяем, что реквизит формы не пустой
        Если Не ПустаяСтрока(ТекстДоговора) Тогда
            // Сохраняем данные из форматированного документа в реквизит объекта
            ТекущийОбъект.Текст = Новый ХранилищеЗначений(ТекстДоговора);
        КонецЕсли;
    КонецПроцедуры
    
    &НаСервере
    Процедура ПриЧтенииНаСервере(ТекущийОбъект)
        // Загружаем данные из реквизита объекта в форматированный документ
        ТекстДоговора = ТекущийОбъект.Текст.Получить();
    КонецПроцедуры
    

    ### Объяснение кода:

    — **ПередЗаписьюНаСервере**: Этот обработчик вызывается перед записью объекта. Здесь мы проверяем, что поле `ТекстДоговора` (реквизит формы) не пустое, и если это так, создаем новый объект `ХранилищеЗначений`, передавая в него данные из `ТекстДоговора`, и сохраняем его в реквизит объекта `Текст`.

    — **ПриЧтенииНаСервере**: Этот обработчик вызывается при открытии формы. Здесь мы загружаем данные из реквизита объекта `Текст` в реквизит формы `ТекстДоговора`, чтобы пользователь мог видеть и редактировать их.

    ### Заключение

    Таким образом, вы можете сохранять и загружать данные из поля с типом «ФорматированныйДокумент» в реквизит объекта, используя объект «ХранилищеЗначений». Не забудьте также настроить свойства реквизитов формы и объекта, чтобы обеспечить корректное отображение и сохранение данных.

    База знаний 1С