# Интеграция с расширениями

Внимание!   
Интеграция модуля с другими расширениями возможна только с версии совместимости 8.3.20 и выше!  
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/image.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/image.png)

А при установке расширения - отключаем безопасный режим  
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/aeXimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/aeXimage.png)

Интеграция должна быть двухсторонняя и состоит из 2-х элементов:   
п. 1) Запись данных о версиях объектов:  
*Эту задачу решает данный модуль, настройка будет на этапе 2*  
п. 2) Вывод кнопочки для того чтобы можно было эти версии смотреть:   
*И это нужно будет сделать в том расширении, в котором были добавлены новые справочники или документы.*

Для примера конфигурация "ЗУП" и какое-то расширение "Кадровик".  
Задача сделать так чтобы история велась по этим документам:   
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/TcXimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/TcXimage.png)

1\) Добавить общую команду \[префикс\]\_ITSPM\_ВерсионированиеОбъектов\_ИсторияИзменений  
Главные свойства: Группа и тип параметра команды *Имя, синоним и картинка, конечно, на ваше усмотрение.* [![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/Ot4image.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/Ot4image.png)  
Обработка команды:  
<span style="color: rgb(0, 0, 255);">Модуль\_ITSPM\_ВерсионированиеОбъектов\_ОбщийМодуль\_Клиент <span style="color: rgb(255, 25, 0);">=</span> ОбщегоНазначенияКлиент.ОбщийМодуль<span style="color: rgb(255, 25, 0);">(</span></span>"ITSPM\_ВерсионированиеОбъектов\_ОбщийМодуль\_Клиент"<span style="color: rgb(0, 0, 255);"><span style="color: rgb(255, 25, 0);">);</span>   
</span><span style="color: rgb(0, 0, 255);"><span style="color: rgb(255, 25, 0);">Если </span>Модуль\_ITSPM\_ВерсионированиеОбъектов\_ОбщийМодуль\_Клиент <span style="color: rgb(255, 25, 0);">&lt;&gt; Неопределено тогда </span>Модуль\_ITSPM\_ВерсионированиеОбъектов\_ОбщийМодуль\_Клиент.ОбработкаКоманды\_ИсторияИзменений<span style="color: rgb(255, 25, 0);">(</span>ПараметрКоманды<span style="color: rgb(255, 25, 0);">,</span> ПараметрыВыполненияКоманды<span style="color: rgb(255, 25, 0);">)</span>   
</span><span style="color: rgb(0, 0, 255);"><span style="color: rgb(255, 25, 0);">КонецЕсли;</span></span>

1.1) Обращаю внимание, что должна быть включена галочка "Автозаполнение".   
В ином случае выводите как хотите сами.  
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/5quimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/5quimage.png)

2\) В базе открываем обработку "Настройки версионирования дополнительных объектов" и выбираем свои расширения.  
*(только записать не забудьте)* [![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/Lacimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/Lacimage.png)

Это минимальный набор действий, но если нужно чтобы кнопочка появлялась, и исчезала в зависимости от того ведется по ней запись или нет можно пользоваться функциональными опциями (точно так же как работает основной конфигурации).  
Так можно настроить интеграцию сразу со всеми объектами, но не использовать ее прямо сейчас.

Мы будем скрывать кнопку если по этому объекту не ведется запись версий.

  
3\) В расширение с которым выполняется интеграция добавляем регистр "НастройкиВерсионированияОбъектов" и ресурс "Использовать".  
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/3Sjimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/3Sjimage.png)

4\) Добавляем функциональную опцию \[префикс\]\_ITSPM\_ВерсионированиеОбъектов\_ИсторияИзменений  
И выбираем в свойстве "Хранение" ресурс который добавили выше  
*Назвать тоже можете как хотите* [![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/2Lvimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/2Lvimage.png)

4.1) В состав включаем ранее добавленную команду.  
[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/oSPimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/oSPimage.png)

5\) В каждую форму элемента или списка объектов к которым привязана команда добавить при создании на сервере код:

<span style="color: rgb(0, 0, 255);">ВерсионированиеОбъектов.ПриСозданииНаСервере</span><span style="color: rgb(255, 25, 0);">(</span><span style="color: rgb(0, 0, 255);">ЭтаФорма</span><span style="color: rgb(255, 25, 0);">);</span>[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/exYimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/exYimage.png)

Если этого не сделать кнопка будет отображаться даже если версионирование не ведется.

[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/6XGimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/6XGimage.png)

[![image.png](https://wiki.accounter.org/uploads/images/gallery/2023-09/scaled-1680-/Esoimage.png)](https://wiki.accounter.org/uploads/images/gallery/2023-09/Esoimage.png)