Содержание:
В своей предыдущей статье я разбирал способ создания презентаций в 1С среде на основе сохранения картинок в справочник. В ней использовалось сохранение в подчиненный справочник 1С. В данной же статье разберем, как делать нечто похожее, но немного другими способами.
1. Как создать справочник в 1С
Задача стоит следующая: необходимо создать справочник 1С, в котором можно будет хранить графические схемы, причем при выборе элемента созданного справочника 1С должна отображаться схема, которую содержит элемент.
Для выполнения задачи первым делом создадим справочник 1С. Назовем его «Графические схемы 1С» и создадим сразу две формы – списка и элемента.
Откроем форму элемента и добавим два реквизита – АдресВХранилище – строка, ГрафическаяСхема – тип графическая схема.
Вынесем схему на форму, а адрес в хранилище будет служебным реквизитом, который виден не будет.
Теперь мы можем создавать схемы, но при записи и повторном открытии ничего не сохранится.
2. Как сохранять графическую схему в созданном регистре 1С
Чтобы исправить это, создадим регистр 1С, в котором будут храниться схемы, в виде двоичных данных. Созданный регистр 1С должен быть независимым, непериодическим и иметь следующие реквизиты:
· Измерение «Наименование» – строка;
· Ресурс «Графическая схема 1С» - хранилище значения.
Теперь добавим несколько процедур, первая из которых будет сохранять схему в регистр сведений при изменении.
Создадим событие для схемы «ПриИзменении», с помощью которого при каждом изменении будем помещать схему во временное хранилище 1С.
Следующий этап – запись в регистр сведений при записи элемента. Напишем код, для события «ПриЗаписиНаСервере».
Теперь при записи элемента справочника графическая схема сохраняется в созданном в 1С регистре сведений.
Все что осталось сделать, это с помощью ссылки получить графическую схему из регистра, когда открывается форма. Используем для этого событие «ПриСозданииНаСервере».
Нам удалось добиться того, чтобы при внесении изменений результат сохранялся.
Для полного выполнения поставленной задачи осталось всего лишь создать на форме списка такой же, как на форме элемента реквизит типа «графическая схема 1С», добавить событие «ПриАктивизацииСтроки», получить ссылку с помощью «Элементы.Список.ТекущиеДанные.Ссылка» и получить графическую схему с помощью аналогичного кода в 1С:Предприятие, что использовался в процедуре «ПриСозданииНаСервере» на форме элемента, передав туда ссылку.
Специалист компании ООО «Кодерлайн»
Фархутдинов Айдар