Внимание!
Эта wiki об устаревших версиях
Документация к актуальной версии интеграции 1С и телефонии доступна по ссылке

Инструменты пользователя

Инструменты сайта


astpanel:designer:bp20

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
astpanel:designer:bp20 [2013/08/15 12:11]
apor [Интеграция]
astpanel:designer:bp20 [2018/09/11 13:09] (текущий)
tpor
Строка 1: Строка 1:
 ====== Пример интеграции в БП 2.0.48.7 ====== ====== Пример интеграции в БП 2.0.48.7 ======
 +
 +<note important>​Встраивать панель телефонии стало проще! Доработка конфигурации с минимальными изменениями! Встраивание панели телефонии с помощью **механизма расширений** описано [[astpanel:​designer:​extension|здесь]].</​note>​
  
 ==== Подготовка конфигурации к изменениям ==== ==== Подготовка конфигурации к изменениям ====
Строка 52: Строка 54:
 Процедура ОбработкаВнешнегоСобытия(Источник,​ Событие,​ Данные) Процедура ОбработкаВнешнегоСобытия(Источник,​ Событие,​ Данные)
  // {{doc:​panel1cbp20:​{ Панель телефонии Asterisk, МИКО }}} НАЧАЛО  // {{doc:​panel1cbp20:​{ Панель телефонии Asterisk, МИКО }}} НАЧАЛО
- Если Источник = "​MikoAjamEvent"​+ Если ​(Источник = "​MikoAjamEvent"​
  ИЛИ Источник = "​MIKO_SoftPhone"​  ИЛИ Источник = "​MIKO_SoftPhone"​
- ИЛИ Источник = "MIKO_InFormAutor"+ ИЛИ Источник = "hWindow")
  И НЕ Miko_Ajam ​ = Неопределено Тогда  И НЕ Miko_Ajam ​ = Неопределено Тогда
    
Строка 63: Строка 65:
 </​code>​ </​code>​
  
-В конец процедуры ​ **ПриЗавершенииРаботыСистемы** добавим:​+В конец процедуры ​ **ПередЗавершениемРаботыСистемы** добавим:​
  
-<code 1c>// {{doc:​panel1cbp20:​{ МИКО }}} НАЧАЛО Панель телефонии Asterisk+<code 1c> 
 + // {{doc:​panel1cbp20:​{ МИКО }}} НАЧАЛО Панель телефонии Asterisk
  // Завершим работу Панель телефонии Asterisk перед выходом из предприятия  // Завершим работу Панель телефонии Asterisk перед выходом из предприятия
- Если Miko_Ajam ​ = Неопределено Тогда+ Если ​НЕ Отказ И НЕ Miko_Ajam ​ = Неопределено Тогда
  Miko_Ajam.ОтключитьВК();​  Miko_Ajam.ОтключитьВК();​
  КонецЕсли;​  КонецЕсли;​
- // {{doc:​panel1cbp20:​{ МИКО }}} КОНЕЦ Панель телефонии Asterisk </​code>​+ // {{doc:​panel1cbp20:​{ МИКО }}} КОНЕЦ Панель телефонии Asterisk 
 + 
 +</​code>​
  
 === Модернизация регистра сведений "​Контактная информация"​ === === Модернизация регистра сведений "​Контактная информация"​ ===
Строка 90: Строка 95:
          ​          ​
                 // ... ... ... Пропущена часть исходного текста ... ... ...                 // ... ... ... Пропущена часть исходного текста ... ... ...
- + // Панель телефонии ​для 1С // НАЧАЛО 
- #Если Клиент Тогда  +сли Клиент Тогда
- //{{doc:​panel1cbp20:​{ МИКО }}} НАЧАЛО ​Код встраивания "Панель ​телефонии Asterisk"​+
  Если НЕ Miko_Ajam = Неопределено ​                        Если НЕ Miko_Ajam = Неопределено ​                      
                      И НЕ Miko_Ajam.мОбработкаДанных = Неопределено                      И НЕ Miko_Ajam.мОбработкаДанных = Неопределено
                      И Запись.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда                      И Запись.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
- ПредставлениеНомера = Запись.Поле1 + Запись.Поле2 + Запись.Поле3;​ + глКоличествоХранимыхЦифрТелефона = Miko_Ajam.ГлобальныеПеременные.глКоличествоХранимыхЦифрТелефона;​ 
- + мОбработкаДанных = Miko_Ajam.мОбработкаДанных;​ 
 +  
 + ПредставлениеНомера = мОбработкаДанных.УбратьИзНомераТелефонаВсеБуквы(Запись.Поле1 + Запись.Поле2 + Запись.Поле3); 
 + ПредставлениеБаза ​  = мОбработкаДанных.УбратьИзНомераТелефонаВсеБуквы(Запись.Представление)
 +
  Если ЗначениеЗаполнено(Запись.Поле4) И НЕ ЗначениеЗаполнено(ПредставлениеНомера) Тогда  Если ЗначениеЗаполнено(Запись.Поле4) И НЕ ЗначениеЗаполнено(ПредставлениеНомера) Тогда
- Запись.CRM_ПолеХраненияНомера = Miko_Ajam.мОбработкаДанных.ПреобразоватьНомерДляСохранения(Запись.Поле4,  ​Miko_Ajam.ГлобальныеПеременные.глКоличествоХранимыхЦифрТелефона);​ + Запись.CRM_ПолеХраненияНомера = мОбработкаДанных.ПреобразоватьНомерДляСохранения(Запись.Поле4, ​ глКоличествоХранимыхЦифрТелефона);​ 
- Запись.CRM_НомерТелефона ​     = Miko_Ajam.мОбработкаДанных.УбратьИзНомераТелефонаВсеБуквы ​  ​(Запись.Поле4);​+ Запись.CRM_НомерТелефона ​     = мОбработкаДанных.УбратьИзНомераТелефонаВсеБуквы ​  ​(Запись.Поле4)
 + ИначеЕсли НЕ ЗначениеЗаполнено(ПредставлениеНомера + Запись.Поле4) И ЗначениеЗаполнено(ПредставлениеБаза) Тогда  
 + Запись.CRM_ПолеХраненияНомера = мОбработкаДанных.ПреобразоватьНомерДляСохранения(ПредставлениеБаза, ​ глКоличествоХранимыхЦифрТелефона);​ 
 + Запись.CRM_НомерТелефона ​     = ПредставлениеБаза;
  Иначе  Иначе
- Запись.CRM_ПолеХраненияНомера = Miko_Ajam.мОбработкаДанных.ПреобразоватьНомерДляСохранения (ПредставлениеНомера, ​ ​Miko_Ajam.ГлобальныеПеременные.глКоличествоХранимыхЦифрТелефона);​ + Запись.CRM_ПолеХраненияНомера = мОбработкаДанных.ПреобразоватьНомерДляСохранения(ПредставлениеНомера,​глКоличествоХранимыхЦифрТелефона);​ 
- Запись.CRM_НомерТелефона ​     = Miko_Ajam.мОбработкаДанных.УбратьИзНомераТелефонаВсеБуквы ​   (ПредставлениеНомера);+ Запись.CRM_НомерТелефона ​     = ПредставлениеНомера;​
  КонецЕсли;​  КонецЕсли;​
  КонецЕсли;​  КонецЕсли;​
Строка 110: Строка 121:
  Если Найти(Запись.Вид,"​Skype"​)>​0 Тогда  Если Найти(Запись.Вид,"​Skype"​)>​0 Тогда
  Запись.CRM_НомерТелефона = Запись.Представление;​  Запись.CRM_НомерТелефона = Запись.Представление;​
- Иначе 
- Запись.Представление = Miko_Ajam.мОбработкаДанных.СформироватьСтруктуруНомераИзПолей(Запись).Представление;​ 
  КонецЕсли;​  КонецЕсли;​
- //​{{doc:​panel1cbp20:​{ МИКО }}} КОНЕЦ + #КонецЕсли 
- #конецесли + // Панель телефонии для 1С// КОНЕЦ
  КонецЦикла;​  КонецЦикла;​
   
Строка 176: Строка 185:
 КонецПроцедуры КонецПроцедуры
  </​code>​  </​code>​
 +==== Модернизация общей формы печати документов ====
 +=== Отправка факсом текущего документа ===
 +**Задача:​** необходимо,​ добавить возможность отправки сформированной печатной формы в виде факсимильного сообщения в текущий вызов.
 +
 +**Решение:​** необходимо модифицировать общую форму "​**ФормаПечати**":​
 +
 +<code 1c>
 +Процедура ПриОткрытии()
 + // ... ... ... Пропущена часть исходного текста ... ... ...
 +
 + // {{doc:​panel1cut:​{ МИКО Панель телефонии Asterisk }}} НАЧАЛО
 + Если НЕ Miko_Ajam = Неопределено ​
 + И НЕ Miko_Ajam.мОбщийМодуль = Неопределено Тогда
 + мОбщийМодуль = Miko_Ajam.мОбщийМодуль;​
 + // добавляем элементы управления на форму
 + мОбщийМодуль.ДобавитьКнопкуОтправкиФаксаНаПанельДействий(ЭлементыФормы.КоманднаяПанель1.Кнопки, ​
 +                                                                          "​МИКО_ВыполнитьДействие", ​
 +                                                                          "​кнМИКО_ОтправитьФакс"​);​
 + КонецЕсли; ​
 + // {{doc:​panel1cut:​{ МИКО Панель телефонии Asterisk }}} КОНЕЦ
 +КонецПроцедуры
 +</​code>​
 +
 +добавить обработчик нажатия кнопки:​
 +
 +<code 1c>
 +// Набор номера по заданному алгоритму
 +//
 +Процедура МИКО_ВыполнитьДействие(Кнопка)
 + ​ Действие = Кнопка.Имя;​
 + Если Miko_Ajam = Неопределено Тогда Возврат;​ КонецЕсли;​
 + 
 + Если Действие = "​кнМИКО_ОтправитьФакс"​ Тогда
 + // Обработчик нажатия на кнопку отправки табличного документа в текущий разговор
 + Miko_Ajam.ОтправитьФаксомТабДок(ЭлементыФормы.ПолеДокумента);​
 + КонецЕсли; ​
 + 
 +КонецПроцедуры
 +
 +</​code>​
 +
 +Общая печатная форма примет вид:
 +{{ :​doc:​panel1cut:​obschaja_forma_pechati_dokumentov.png?​ |}}
 +
 +==== Настройка прав доступа ====
 +
 +Обязательно укажите для пользователя роль "​**Использование панели телефонии Asterisk (МИКО)**"​. Иначе первый запуск произвести невозможно.
 +
 +{{ :​astpanel:​designer:​user_rol.png?​nolink |}}
  
 На этом встраивание завершено. На этом встраивание завершено.
astpanel/designer/bp20.1376568703.txt.gz · Последние изменения: 2014/11/14 22:32 (внешнее изменение)