====== ИНТЕГРАЦИЯ С УНФ ред. 1.5 ======
Что дает интеграция в сравнении с без интеграционным режимом работы?
- Не нужно выполнять каких-либо дополнительных действий при запуске системы. Панель телефонии начинает работу сразу после запуска 1С в свернутом виде.
- Работа продолжается даже после закрытия окна панели. Если поступит входящий звонок, панель отобразиться на экране.
- Сделать звонок можно не только из панели телефонии, но и кнопками "Позвонить", расположенными в карточках контрагентов и различных документах.
===== Этап 1. Настройка правил поддержки =====
Для начала следует разблокировать головной объект конфигурации для внесения изменений.
Порядок действий следующий.
- Убедитесь, что пользователи завершили работу с программой.
- **Выполните резервное копирование**
- Запустите программу в режиме //"Конфигуратор"//.
- Откройте окно настройки поддержки. {{ :doc:panel1ccrm20:support.png? |}}
- Включите возможность изменения конфигурации. На предупреждение программы ответьте утвердительно.
- В появившемся окне укажите, что объекты поставщика не редактируются. {{ :doc:panel1ccrm20:rules.png? |}}
- Затем для головного объекта конфигурации (//"УправлениеНебольшойФирмой"//) установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//.
Теперь конфигурация готова к внесению изменений.
===== Этап 2. Встраивание панели телефонии =====
Начать рекомендуем с [[astpanel:designer:optimization_managed|инструкции по оптимизации конфигурации]].
Необходимо встроить внешнюю обработку (панель телефонии) в конфигурации, настроить права доступа и ее автоматический запуск в фоновом режиме.
==== Изменение типовых объектов ====
Для работы панели телефонии в фоне и ее автоматического запуска внесем изменения в модуль управляемого приложения.
- Откройте модуль управляемого приложения. {{ :doc:korenconf.png |}}
- Определите глобальную переменную в начале модуля до раздела процедур. // PT1C / Панель телефонии Asterisk / Начало
Перем сфпФормаТелефон Экспорт;
// PT1C / Панель телефонии Asterisk / Конец
- Перейдите к процедуре //"ПриНачалеРаботыСистемы"//. В конец процедуры вставьте код приведенный ниже.
// PT1C / Панель телефонии Asterisk / Начало
Попытка
Отказ = Ложь;
// получим форму - основной "модуль" панели телефонии
сфпФормаТелефон = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма");
Исключение
сфпФормаТелефон = Неопределено; //Нет прав на обработку
КонецПопытки;
Если НЕ сфпФормаТелефон = Неопределено Тогда
сфпФормаТелефон.ИнициализироватьПанельТелефонии(Истина, Отказ);
КонецЕсли;
// проверим успешность инициализации
Если Отказ Тогда
Сообщить("Не удалось запустить ""МИКО Панель телефонии Asterisk""");
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
- Перейдите к процедуре //"ПриЗавершенииРаботыСистемы"// (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже.
// PT1C / Панель телефонии Asterisk / Начало
Если сфпФормаТелефон <> Неопределено Тогда
сфпФормаТелефон.ЗавершитьРаботу(Истина);
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
==== Добавление обработки и подсистемы в конфигурацию ====
* Вставьте внешнюю обработку, которая идет в поставке, в конфигурацию, она должна называться **МИКО_ПанельТелефонииДля1С**.
* Добавьте в обработку **МИКО_ПанельТелефонииДля1С** команду "**Открыть**"
* Установите для созданной команды свойство "**Группа**" в значение "**Панель навигации.Важное**".{{ :doc:panel1cunf:commandopen.png |}}
* Далее требуется описать обработчик команды "**Открыть**".
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Если сфпФормаТелефон <> Неопределено Тогда
Если сфпФормаТелефон.Открыта() Тогда
сфпФормаТелефон.Активизировать();
Иначе
сфпФормаТелефон.Открыть();
КонецЕсли;
КонецЕсли;
КонецПроцедуры
* Создайте новую подсистему "**МИКО_ПанельТелефонии**" и включите в ее состав обработку **МИКО_ПанельТелефонииДля1С**.
* В командном интерфейсе выполнить настройку - **отключить стандартную команду запуска обрабокти**
{{ :astpanel:designer:command_interface.png?nolink |}}
==== Настройка ролей ====
- Добавьте в конфигурацию новую роль **МИКО_Софтфон**.
- Снимите все отметки о правах выставляемые по умолчанию.
- Для обработки **МИКО_ПанельТелефонииДля1С** а также для команды //"Открыть"// отметьте все доступные права. {{ :doc:panel1ccrm20:role.png? | Права на обработку.}} {{ :astpanel:designer:permit_command_open.png?nolink&450 |Права на команду "Открыть"}}
- Для подсистемы **МИКО_ПанельТелефонии** отметьте все доступные права. {{ :astpanel:designer:permit_csubsystem.png?nolink&450 |}}
- Добавьте роль в состав подсистемы **МИКО_ПанельТелефонии**.
==== Добавление конфигурации в список поддерживаемых ====
Перейдите к обработке "**МИКО_ПанельТелефонииДля1С**". Откройте модуль объекта.
Далее необходимо изменить функцию "**ОпределитьПараметрыКонфигурации**" следующим образом:
Функция ОпределитьПараметрыКонфигурации() Экспорт
// *** *** ***
// ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА
// *** *** ***
ИначеЕсли ТекущаяКонфигурация = "УправлениеНебольшойФирмой"
ИЛИ ТекущаяКонфигурация = "УправлениеНебольшойФирмойБазовая"
//Для Казахстана /Начало
ИЛИ ТекущаяКонфигурация = "УправлениеНебольшойФирмойДляКазахстана"
//Для Казахстана /Конец
ИЛИ ТекущаяКонфигурация = "УправлениеНебольшойФирмойДляУкраины" Тогда
// *** *** ***
// ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА
// *** *** ***
КонецФункции
Перейдите к функции "**ПоддерживаемыеКонфигурации**" и добавьте строку, как показано ниже:
Функция ПоддерживаемыеКонфигурации() Экспорт
// *** *** ***
// ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА
// *** *** ***
//Для Казахстана
Результат.Добавить("УправлениеНебольшойФирмойДляКазахстана", "Управление небольшой фирмой для Казахстана, редакция 1.5");
Возврат Результат;
КонецФункции
Обновите конфигурацию базы данных. {{ :doc:panel1ccrm20:confupd.png? |}}
Далее можно переходить к [[astpanel:enterprise:managed |настройке в режиме 1С:Предприятие 8]], шаги описанные ниже являются опциональными.
===== Этап 3. Добавление кнопки "Позвонить" в область команд форм справочников и документов =====
Для автоматизации набора номера телефона добавим кнопку "**Позвонить**" в область команд форм некоторых справочников и документов.
Порядок действий следующий.
- Создайте общий модуль //"МИКО_Софтфон"//.
- Скопируйте [[astpanel:designer:unf:modulesrc|текст, расположенный по данной ссылке]], и вставьте его в модуль.
- Добавьте в обработку **МИКО_ПанельТелефонииДля1С** команду "**Позвонить**" и поместите в модуль команды [[astpanel:designer:unf:modulecall|текст, расположенный по данной ссылке]].
- Установите свойство "**Группа**" в значение "**Командная панель формы.Важное**".{{ :doc:panel1cunf:commandcall.png |}}
- Свойство "**Тип параметра команды**" должно иметь составной тип данных:
* //СправочникСсылка.КонтактныеЛица//;
* //СправочникСсылка.Контрагент//;
* //ДокументСсылка.Событие//;
* //ДокументСсылка.ЗаказПокупателя//;
* //ДокументСсылка.ЗаказПоставщику//.
Вы может указать и другие типы объектов, в которых будет отображена команда "**Позвонить**". Основным критерием для выбора таких объектов является наличие табличной части "**КонтактнаяИнформация**", если это справочник, или реквизита "**Контрагент**", если это документ. В ином случае может потребоваться изменение текста модуля команды.
При желании можно добавить картинку на кнопку команды, предварительно разместив ее в библиотеке картинок.
- Раскройте дерево конфигурации на группе "**Общие картинки**" и добавьте в нее новый элемент "**МИКО_Телефон**".
- Загрузите в созданный объект изображение для кнопки "**Позвонить**" ({{:doc:phonegray.png|}}).
- Вернитесь к команде "**Позвонить**" обработки **МИКО_ПанельТелефонииДля1С** и заполните свойства "**Отображение**" в значение "**Картинка и текст**", "**Картинка**" в значение "**МИКО_Телефон**".
Для ранее созданной роли "**МИКО_Софтфон**" добавьте права на доступ к команде "**Позвонить**".
{{ :astpanel:designer:permit_command_dial.png?nolink&450 |}}
Обновите конфигурацию базы данных и запустите программу в режиме //"Предприятие"//. Результат работы показан на рисунке ниже.
{{ :doc:panel1cunf:showcommandcall.png |}}
===== Этап 4. Добавление кнопки "Прослушать запись" в область команд документа "Событие" =====
Для создания возможности прослушать запись телефонного разговора из документа "Событие" добавим кнопку "**Прослушать звонок**" в область команд формы документа. При нажатии на кнопку запись будет воспроизведена в трубке телефона. Документ должен быть связан с телефонным звонком посредством дополнительного свойства "ID_Звонок", значение которого - хранить идентификатор звонка. Дополнительные свойства документа будут созданы автоматически по завершению работы помощника первоначальной работы.
Порядок действий следующий.
- Добавьте в обработку //МИКО_ПанельТелефонииДля1С// команду //"ПрослушатьЗапись"// и поместите в модуль команды [[astpanel:designer:unf:modulelistenrecord|текст, расположенный по данной ссылке]].
- Установите свойство //"Группа"// в значение //"Командная панель формы.Важное"//.
- Свойство //"Тип параметра команды"// должно иметь тип данных: //ДокументСсылка.Событие//.
При желании можно добавить картинку на кнопку команды, предварительно разместив ее в библиотеке картинок.
- Раскройте дерево конфигурации на группе //"Общие картинки"// и добавьте в нее новый элемент //"МИКО_ЗаписьРазговора"//.
- Загрузите в созданный объект изображение для кнопки //"Прослушать запись"// ({{:doc:cassetetape16.png|}}).
- Вернитесь к команде //"ПрослушатьЗапись"// обработки //МИКО_ПанельТелефонииДля1С// и заполните свойства //"Отображение"// в значение //"Картинка и текст"//, //"Картинка"// в значение //"МИКО_ЗаписьРазговора"//.
Данная команда будет доступна только для пользователей с полными правами. Вы можете оставить так или предусмотреть для этого отдельную роль. Не стоит добавлять доступ к этой команде в роль "МИКО_Софтфон", т.к. в этом случае все пользователи софтфона получат доступ к записям других сотрудников.
Обновите конфигурацию базы данных и запустите программу в режиме //"Предприятие"//. Результат работы показан на рисунке ниже.
{{ :doc:panel1cunf:showcommandlisten.png |}}