Это старая версия документа!
Интеграция в конфигурацию "Бухгалтерия предприятия, ред. 3.0"
Руководство составлено для «Бухгалтерия предприятия, редакция 3.0 (3.0.54.20)» и панели телефонии МИКО 1.4.26.25+.
Обязательно перед работами создайте РЕЗЕРВНУЮ КОПИЮ информационной базы.
ВНИМАНИЕ!
Для конфигурации БП, ред. 3.0 в режиме 1С:Предприятие для настройки «Открыть в начале разговора» можно установить только значение «Клиент», т.е при входящем / исходящем звонке будет открываться карточка Клиента.
Этап 1. Настройка правил поддержки
Для начала следует разблокировать головной объект конфигурации для внесения изменений.
Порядок действий следующий.
Запустите программу в режиме «Конфигуратор».
Откройте окно настройки поддержки.
Включите возможность изменения конфигурации. На предупреждение программы ответьте утвердительно.
В появившемся окне укажите, что объекты поставщика не редактируются.
Затем для корневого объекта конфигурации («БухгалтерияПредприятия») установите правило поддержки на «Объект поставщика редактируется с сохранением поддержки».
Теперь конфигурация готова к внесению изменений.
Этап 2. Встраивание панели телефонии
Необходимо встроить внешнюю обработку (панель телефонии) в конфигурации, настроить права доступа и ее автоматический запуск в фоновом режиме.
Изменение типовых объектов
Для работы панели телефонии в фоне и ее автоматического запуска внесем изменения в модуль управляемого приложения.
Откройте модуль управляемого приложения.
Определите глобальную переменную в начале модуля до раздела процедур.
// PT1C / Панель телефонии Asterisk / Начало
Перем сфпФормаТелефон Экспорт;
// PT1C / Панель телефонии Asterisk / Конец
Перейдите к процедуре
«ПриНачалеРаботыСистемы». В конец процедуры вставьте код приведенный ниже.
// PT1C / Панель телефонии Asterisk / Начало
Попытка
Отказ = Ложь;
// получим форму - основной "модуль" панели телефонии
сфпФормаТелефон = ПолучитьФорму("Обработка.МИКО_ПанельТелефонииДля1С.Форма.Форма");
Исключение
сфпФормаТелефон = Неопределено; //Нет прав на обработку
КонецПопытки;
Если НЕ сфпФормаТелефон = Неопределено Тогда
сфпФормаТелефон.ИнициализироватьПанельТелефонии(Истина, Отказ);
КонецЕсли;
// проверим успешность инициализации
Если Отказ Тогда
Сообщить("Не удалось запустить ""МИКО Панель телефонии Asterisk""");
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
Перейдите к процедуре
«ПриЗавершенииРаботыСистемы» (создайте процедуру, если ее нет). В конец процедуры вставьте код приведенный ниже.
// PT1C / Панель телефонии Asterisk / Начало
Если сфпФормаТелефон <> Неопределено Тогда
сфпФормаТелефон.ЗавершитьРаботу(Истина);
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
Добавление обработки и подсистемы в конфигурацию
Вставьте внешнюю обработку, которая идет в поставке, в конфигурацию, она должна называться МИКО_ПанельТелефонииДля1С.
Добавьте в обработку МИКО_ПанельТелефонииДля1С команду «ОткрытьПанельТелефонии»
Установите для созданной команды свойство «
Группа» в значение «
Панель навигации.Важное».
Далее требуется описать обработчик команды «ОткрытьПанельТелефонии».
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Если сфпФормаТелефон <> Неопределено Тогда
Если сфпФормаТелефон.Открыта() Тогда
сфпФормаТелефон.Активизировать();
Иначе
сфпФормаТелефон.Открыть();
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Создайте новую подсистему «МИКО_ПанельТелефонии» и включите в ее состав обработку МИКО_ПанельТелефонииДля1С.
В командном интерфейсе выполнить настройку - отключить стандартную команду запуска обрабокти
Настройка ролей
Добавьте в конфигурацию новую роль МИКО_Софтфон.
Снимите все отметки о правах выставляемые по умолчанию
Для обработки
МИКО_ПанельТелефонииДля1С а также для команды
«ОткрытьПанельТелефонии» отметьте все доступные права.
Для подсистемы
МИКО_ПанельТелефонии отметьте все доступные права.
Добавьте роль в состав подсистемы МИКО_ПанельТелефонии.
Обновите конфигурацию базы данных.
Перейдите в общий модуль «УправлениеКонтактнойИнформациейКлиент», процедуру «ПозвонитьПоТелефону», пример:
Процедура ПозвонитьПоТелефону(НомерТелефона)
НомерТелефона = СтроковыеФункцииКлиентСервер.ЗаменитьОдниСимволыДругими("()_- ", НомерТелефона, "");
// PT1C / Панель телефонии Asterisk / Начало
Если НЕ сфпФормаТелефон = Неопределено Тогда
сфпФормаТелефон.НабратьНомерКИ(, НомерТелефона);
Возврат;
КонецЕсли;
// PT1C / Панель телефонии Asterisk / Конец
// по умолчанию используем "tel"
ИмяПротокола = "tel";
// *** *** ***
// ВНИМАНИЕ! ПРОПУЩЕНА ЧАСТЬ ИСХОДНОГО КОДА
// *** *** ***
КонецПроцедуры
Обновите конфигурацию базы данных и запустите программу в режиме «Предприятие».