В процессе работы прикладного решения значения реквизитов объекта могут меняться не только интерактивно, но и программно. При этом запись данных объекта в информационную базу должна выполняться в единой транзакции за один серверный вызов.
Рассмотрим этот вопрос на примере работы с файлами и картинками.
Предположим, в форме элемента справочника Товары содержится поле, отражающее картинку товара. При нажатии кнопки Загрузить картинку, расположенной в форме документа, должен открываться диалог выбора файла картинки. Выбранная картинка должна быть отображена в форме элемента и записана в соответствующий реквизит объекта (рис. 4.60).

Рис. 4.60. Выбор картинки в форме товара
Сначала пользователь должен выбрать картинку товара. Единственный способ работы с файлами пользователя – интерактивно выбрать картинку и поместить ее во временное хранилище на сервере. Затем получить ее из временного хранилища и записать в базу данных, например в реквизит объекта.
В форме картинка отображается автоматически по навигационной ссылке на временное хранилище или на реквизит объекта, содержащий эту картинку.
Когда же нужно записывать картинку из временного хранилища в соответствующий реквизит объекта? Можно записать картинку сразу после выбора, но более эффективно записать ее тогда, когда пользователь захочет сохранить объект.
Рассмотрим возможные варианты решения этой задачи.