====== Интеграция панели телефонии и журнала звонков в "Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 2.0" ====== [[astpanel:fastintegration|Обратно к перечню инструкций]] Инструкции составлены для **конфигурации**: * Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 2.0 (2.0.19.5) Рекомендуемая версия **панели телефонии**: **1.4.26.20+**\\ Рекомендуемая версия **журнала звонков**: **1.0.1.15+** ===== Этап 1. Настройка правил поддержки ===== Перед началом выполнения работ обязательно сделайте **резервное копирование** конфигурации и данных! Для начала следует разблокировать головной объект конфигурации для внесения изменений. Порядок действий следующий: - Убедитесь, что пользователи завершили работу с программой. - Запустите программу в режиме //"Конфигуратор"//. - Откройте окно настройки поддержки. {{ :doc:panel1ccrm20:support.png? |}} - Включите возможность изменения конфигурации. На предупреждение программы ответьте утвердительно. {{ :astpanel:fastintegration:1f.png |}} - В появившемся окне укажите, что объекты поставщика не редактируются. {{ :doc:panel1ccrm20:rules.png? |}} - Затем для головного объекта конфигурации (//"УправлениеТорговлей_CRM_2"//) установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. {{ :astpanel:fastintegration:2f.png |}} - Для общего модуля //"**сфпСофтФонПроКлиент**"// также установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. - Для общего модуля //"**ВариантыОтчетовУТПереопределяемый**"// установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. - Для общей формы //"**CRM_СообщенияПодключения**"// установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"//. - Закройте окно настройки поддержки Теперь конфигурация готова к внесению изменений. ===== Этап 2. Встраивание журнала звонков ===== - Выполните действия **"Конфигурация" - "Сравнить и объеденить с конфигурацией из файла"** {{ :astpanel:fastintegration:4f.png |}} - Выберите файл конфигурации "**Module_Statistic_Х_Х_Х_ХХ.protect.cf**"; - Снимите флажок со всех объектов конфигурации {{ :astpanel:fastintegration:5f.png |}} - Меню "**Действия**" - "**Отметить по подсистемам файла**" {{ :astpanel:fastintegration:6f.png |}} - Выберите **только** те подсистемы, которые указаны на скриншоте. Выполните действие "**Установить**" {{ :astpanel:fastintegration:7f.png |}} - Выполните действие "**Выполнить**" {{ :astpanel:fastintegration:8f.png |}} - В появившемся окне нажимаем "**Продолжить**". Сохраняем отчет сравнения/объединения нашей конфигурации с файлом. {{ :astpanel:fastintegration:9f.png |}} - Сравнение и объединение будет завершено. {{ :astpanel:fastintegration:10f.png |}} ==== Изменение типовых объектов ==== Для завершения этапа встраивания журнала звонков необходимо внести изменения в **общий модуль "ВариантыОтчетовУТПереопределяемый"**. - Открываем общий модуль "**ВариантыОтчетовУТПереопределяемый**" для редактирования - Переходим в процедуру "**ОпределитьРазделыСВариантамиОтчетов**" - В конец **условия** процедуры добавляем строку кода: Процедура ОпределитьРазделыСВариантамиОтчетов(Разделы) Экспорт Если НЕ ПолучитьФункциональнуюОпцию("БазоваяВерсия") Тогда Разделы.Добавить(ВариантыОтчетовКлиентСервер.ИдентификаторНачальнойСтраницы(), НСтр("ru = 'Главное'")); // ВНИМАНИЕ!!! Пропущена часть исходного кода! Разделы.Добавить(Метаданные.Подсистемы.Найти("Планирование"), НСтр("ru= 'Отчеты по планированию'")); // МИКО / PT1C / Подсистема "Расширенный журнал звонков" Разделы.Добавить(Метаданные.Подсистемы.Найти("МИКО_Телефония")); // МИКО / PT1C / Подсистема "Расширенный журнал звонков" КонецЕсли; КонецПроцедуры ===== Этап 3. Встраивание панели телефонии ===== ==== 1. Добавление обработки в подсистему МИКО_Телефония ==== Замените обработку МИКО_ПанельТелефонииДля1С на внешнюю, которая идет в поставке, она должна называться **МИКО_ПанельТелефонииДля1С**.{{ :astpanel:fastintegration:1231.png |}} ==== 2. Правка модуля управляемого приложения ==== - Откройте модуль управляемого приложения. {{ :astpanel:fastintegration:12f.png |}} - Перейдите к процедуре //"ПриЗавершенииРаботыСистемы"// (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже. // PT1C / Панель телефонии Asterisk / Начало Если сфпПанельУправления <> Неопределено И ТипЗнч(сфпПанельУправления) = Тип("УправляемаяФорма") И Найти(сфпПанельУправления.ИмяФормы,"Обработка.МИКО_ПанельТелефонииДля1С")<>0 Тогда сфпПанельУправления.ЗавершитьРаботу(Истина); КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец ==== 3. Изменение общего модуля ==== - Передите к общему модулю "**сфпСофтФонПроКлиент**", - К процедуре "**сфпПодключитьСофтФон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало НазваниеПанелиТелефонии = "Панель телефонии Asterisk (МИКО)"; Если сфпПанельУправления = Неопределено Тогда МИКО_Софтфон.ВыполнитьПервичнуюУстановку(НазваниеПанелиТелефонии); КонецЕсли; Если МИКО_Софтфон.Использовать(НазваниеПанелиТелефонии) Тогда Если сфпПанельУправления = Неопределено Тогда Попытка сфпПанельУправления = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма"); сфпПанельУправления.ИнициализироватьПанельТелефонии(Истина, Ложь); Исключение Сообщить("Не удалось запустить ""Панель телефонии Asterisk (МИКО)""!"); Возврат; КонецПопытки; Иначе // Переопределение обработки команды Если сфпПанельУправления.Открыта() Тогда сфпПанельУправления.Активизировать(); Иначе сфпПанельУправления.Открыть(); КонецЕсли; КонецЕсли; Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПозвонить**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда ОснованиеЗвонка = Неопределено; Если ДанныеЗаполнения <> Неопределено И ДанныеЗаполнения.Свойство("Основание") Тогда ОснованиеЗвонка = Новый Структура("ОснованиеЗвонка, НомерТелефона", ДанныеЗаполнения.Основание, Телефон); КонецЕсли; сфпПанельУправления.Позвонить(Телефон,ОснованиеЗвонка); Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПозвонитьВыбравТелефон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда сфпПанельУправления.ПозвонитьВыбравТелефон(СписокОбъектов); Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец - К процедуре "**сфпПроверитьДоступностьСофтФон**". В начало необходимо вставить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Возврат Истина; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец ==== 4. Изменение общих форм ==== - Перейти к общей форме "**CRM_СообщенияПодключения**". В модуле формы, в процедуре "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если НЕ Параметры.Свойство("ВидФормы") Тогда Отказ = Истина; ИначеЕсли Параметры.ВидФормы = "СофтФон" Тогда // PT1C / Панель телефонии Asterisk / Начало Если МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") Тогда Возврат; КонецЕсли; // PT1C / Панель телефонии Asterisk / Конец // *** *** *** // ВНИМАНИЕ ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА // *** *** *** КонецЕсли; КонецПроцедуры // ПриСозданииНаСервере() - Перейти к общей форме "**ПечатьДокументов**". В **конец** процедуры "**ПриСозданииНаСервере**" необходимо добавить фрагмент кода: // PT1C / Панель телефонии Asterisk / Начало МИКО_Софтфон.ДобавитьКнопкиФаксаНаФормуПечати(ЭтаФорма); // PT1C / Панель телефонии Asterisk / Конец - **После** процедуры "**ПриСозданииНаСервере**", добавить дополнительные процедуры - обработки: &НаКлиенте Процедура МИКО_ОтправитьКакФакс() Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") ИЛИ сфпПанельУправления = Неопределено Тогда Возврат; КонецЕсли; ТабличныеДокументы = Новый СписокЗначений; Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл Если Элементы[НастройкаПечатнойФормы.ИмяРеквизита].Вывод = ИспользованиеВывода.Разрешить И НастройкаПечатнойФормы.Печатать Тогда ТабличныеДокументы.Добавить(ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита], НастройкаПечатнойФормы.Представление); КонецЕсли; КонецЦикла; Если ТабличныеДокументы.Количество()=0 Тогда Возврат; Иначе ТабДок = ТабличныеДокументы[0].Значение; КонецЕсли; // отсылаем факс сфпПанельУправления.ОтправитьФайлПоФаксу(,ТабДок); КонецПроцедуры // МИКО_ОтправитьКакФакс() &НаКлиенте Процедура МИКО_Позвонить() Если НЕ МИКО_Софтфон.Использовать("Панель телефонии Asterisk (МИКО)") ИЛИ сфпПанельУправления = Неопределено Тогда Возврат; КонецЕсли; ПараметрыПечати = Неопределено; Если ТипЗнч(ОбъектыПечати) = Тип("СписокЗначений") И ОбъектыПечати.Количество() > 0 Тогда Участник = МИКО_Софтфон.ПолучитьСсылкуНаУчастникаИзДокумента(ОбъектыПечати[0].Значение); Если ТипЗнч(Участник) = Тип("Массив") И Участник.Количество()>0 Тогда сфпПанельУправления.ПозвонитьВыбравТелефон(Участник); ИначеЕсли Участник <> Неопределено Тогда СписокУчастников = Новый Массив(1); СписокУчастников[0] = Участник; сфпПанельУправления.ПозвонитьВыбравТелефон(СписокУчастников); КонецЕсли; КонецЕсли; КонецПроцедуры ===== Этап 4. Завершение этапа встраивания ===== ==== Сохранение изменений ==== - Обновите конфигурацию базы данных.{{ :astpanel:fastintegration:13f.png |}} - В отобразившемся окне нажмите **Принять** {{ :astpanel:fastintegration:14f.png |}} ==== Обновление конфигурации ==== - Запустите процесс обновления конфигурации. В конфигураторе перейдите в меню "**Сервис**" - "**Параметры**", вкладка "**Запуск 1С:Предприятие**" - В поле "**Параметры запуска**" укажите строку "**ЗапуститьОбновлениеИнформационнойБазы**" {{ :astpanel:statistic:startupdate.png?450 |}} - Запустите 1С:Предприятие из конфигуратора "**Отладка**" - "**Начать отладку**" - Дождитесь завершения обновления - Удалите из параметров запуска строку "**ЗапуститьОбновлениеИнформационнойБазы**". Перезапустите 1С. ===== Первый запуск в режиме 1С:Предприятие ===== **ВНИМАНИЕ!** Первый запуск необходимо производить с **полными правами**. Выполнение регламентных и фоновых заданий следует приостановить. - Запустите конфигурацию в **режиме 1С:Предприятие** от пользователя 1С с полными правами. - Убедитесь, что механизм **дополнительных реквизитов и сведений** включен. В дополнительных сведениях будет храниться информация об ID звонка для документа «Событие» / «Телефонный звонок».\\ {{ :astpanel:fastintegration:100_1.png |}} {{ :astpanel:fastintegration:100_2.png |}} - Выполните настройки для возможности работы с документами «Событие». \\ {{ :astpanel:fastintegration:100_3.png |}} - В подсистеме "**Администрирование**" -> "**CRM: Интеграция с телефонией**" включите опцию «**Использовать Софтфон**» {{ :astpanel:fastintegration:101.png |}} {{ :astpanel:fastintegration:102.png |}} - Перейдите в персональные настройки пользователя и установите возможность использования панели телефонии {{ :astpanel:fastintegration:103.png |}} {{ :astpanel:fastintegration:104.png |}} {{ :astpanel:fastintegration:105.png |}} {{ :astpanel:fastintegration:106.png |}} {{ :astpanel:fastintegration:107.png |}} ==== Завершение настройки ==== Операции требовательны к ресурсам ПК. Лучше их выполнить в нерабочее время. - Запустите **1С Предприятие под полными правами** в пользовательском режиме - **"Все функции" - "Обработки" - "МИКО: Заполнить индекс телефонов"** - Выполните действие "**Заполнить коды городов**" - Выполните действие "**Перезаполнить индекс номеров**" На этом встраивание панели телефонии и журнала звонков в конфигурацию завершено. Теперь можно перейти к настройке продуктов в режиме 1С:Предприятие: *[[astpanel:enterprise:managed#pervyj_zapusk| Настройка панели телефонии]] *[[astpanel:statistic:settings| Настройка журнала звонков]] [[astpanel:fastintegration|Обратно к перечню инструкций]]