Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
doc:panel1cbp20:config_bezint [2012/07/22 17:48] apor |
doc:panel1cbp20:config_bezint [2014/11/14 22:32] (текущий) |
||
---|---|---|---|
Строка 5: | Строка 5: | ||
===== Достоинства безинтеграционного режима работы: ===== | ===== Достоинства безинтеграционного режима работы: ===== | ||
- | * Элемент ненумерованного спискаНе требуетяся изменение конфигурации. Панель может быть запущена через главное меню **“Файл -Открыть”**. При этом доступен практически весь функционал панели. | + | * Не требуется изменение конфигурации. Панель может быть запущена через главное меню **“Файл -Открыть”**. При этом доступен практически весь функционал панели. |
===== Особенности и ограничения: ===== | ===== Особенности и ограничения: ===== | ||
Строка 81: | Строка 81: | ||
// {{{ МИКО }}} КОНЕЦ Панель телефонии Asterisk | // {{{ МИКО }}} КОНЕЦ Панель телефонии Asterisk | ||
КонецПроцедуры</code> | КонецПроцедуры</code> | ||
+ | |||
+ | ------------------------------------------------------------------------------------------------ | ||
+ | **Задача:** необходимо, для поиска номеров в базе использовать запрос не по временной таблице, а непосредственно по регистру сведений "КонтактнаяИнформация". | ||
+ | |||
+ | **Решение:** необходимо модифицировать регистр сведений **"КонтактнаяИнформация"**: | ||
+ | Добавить ресурсы: | ||
+ | * CRM_ПолеХраненияНомера (число длина 32) | ||
+ | * CRM_НомерТелефона (переменная строка 32) | ||
+ | |||
+ | В модуле набора записей изменить процедуру: | ||
+ | |||
+ | <code 1c>Процедура ПередЗаписью(Отказ, Замещение) | ||
+ | Если ОбменДанными.Загрузка Тогда | ||
+ | Возврат; | ||
+ | КонецЕсли; | ||
+ | |||
+ | Для каждого Запись Из ЭтотОбъект Цикл | ||
+ | | ||
+ | // ... ... ... Пропущена часть исходного текста ... ... ... | ||
+ | |||
+ | //{{{ МИКО }}} НАЧАЛО Код встраивания "Панель телефонии Asterisk" | ||
+ | Если НЕ Miko_Ajam = Неопределено | ||
+ | И НЕ Miko_Ajam.МИКО_ОбщийМодуль = Неопределено | ||
+ | И Запись.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда | ||
+ | МИКО_ПредставлениеНомера = Запись.Поле1 | ||
+ | +Запись.Поле2 | ||
+ | +Запись.Поле3; | ||
+ | Если ЗначениеЗаполнено(Запись.Поле4) И НЕ ЗначениеЗаполнено(МИКО_ПредставлениеНомера) Тогда | ||
+ | Запись.CRM_ПолеХраненияНомера = Miko_Ajam.МИКО_ОбщийМодуль.ПреобразоватьНомерДляСохранения(Запись.Поле4, | ||
+ | Miko_Ajam.глКоличествоХранимыхЦифрТелефона); | ||
+ | Запись.CRM_НомерТелефона = Miko_Ajam.МИКО_ОбщийМодуль.УдалитьБуквыИзНомераТелефона(Запись.Поле4); | ||
+ | Иначе | ||
+ | Запись.CRM_ПолеХраненияНомера = Miko_Ajam.МИКО_ОбщийМодуль.ПреобразоватьНомерДляСохранения (МИКО_ПредставлениеНомера, | ||
+ | Miko_Ajam.глКоличествоХранимыхЦифрТелефона); | ||
+ | Запись.CRM_НомерТелефона = Miko_Ajam.МИКО_ОбщийМодуль.УдалитьБуквыИзНомераТелефона(МИКО_ПредставлениеНомера); | ||
+ | КонецЕсли; | ||
+ | КонецЕсли; | ||
+ | //{{{ МИКО }}} КОНЕЦ | ||
+ | КонецЦикла; | ||
+ | |||
+ | Если Отказ Тогда | ||
+ | Сообщить(СтрокаОтказа); | ||
+ | КонецЕсли; | ||
+ | |||
+ | КонецПроцедуры</code> | ||
+ | После этого, добавленные ранее ресурсы, будут заполняться надлежащим образом. | ||
+ | |||
+ | ==== Справочник "Контрагенты" ==== | ||
+ | |||
+ | ------------------------------------------------------------------------------------------------ | ||
+ | **Задача:** необходимо, добавить возможность произвести звонок из карточки контрагента. | ||
+ | |||
+ | **Решение:** необходимо модифицировать форму элемента справочника "Контрагенты": | ||
+ | |||
+ | <code 1c> | ||
+ | Процедура ПриОткрытии() | ||
+ | |||
+ | // !!! пропущена часть исходно текста !!! | ||
+ | | ||
+ | // {{{ МИКО Панель телефонии Asterisk }}} НАЧАЛО | ||
+ | Если НЕ Miko_Ajam = Неопределено | ||
+ | И Miko_Ajam.МИКО_ОбщийМодуль.ИспользоватьСофтФон() Тогда | ||
+ | МИКО_ОбщийМодуль = Miko_Ajam.МИКО_ОбщийМодуль; | ||
+ | // добавляем элементы управления на форму | ||
+ | |||
+ | МИКО_ОбщийМодуль.ДобавитьКнопкуЗвонкаНаПанельДействий(ЭлементыФормы.КоманднаяПанельФормы.Кнопки, | ||
+ | "МИКО_ВыполнитьДействие", | ||
+ | "кнМИКО_НабратьНомерВыбравИзСписка"); | ||
+ | // | ||
+ | ЭлементыФормы.КоманднаяПанельФормы.ИзменяетДанные = Ложь; | ||
+ | КонецЕсли; | ||
+ | // {{{ МИКО Панель телефонии Asterisk }}} КОНЕЦ | ||
+ | КонецПроцедуры // ПриОткрытии() | ||
+ | </code> | ||
+ | |||
+ | <code 1c>// Набор номера по заданному алгоритму | ||
+ | // | ||
+ | Процедура МИКО_ВыполнитьДействие(Кнопка) | ||
+ | Действие = Кнопка.Имя; | ||
+ | |||
+ | Если НЕ Miko_Ajam.глИспользоватьСофтФонMIKO_Ajam Тогда Возврат; КонецЕсли; | ||
+ | |||
+ | Если Действие = "кнМИКО_НабратьНомерВыбравИзСписка" ТОгда | ||
+ | // Позвонить по телефону, выбранному пользователем из списка телефонов определенных у контрагента и контактного лица | ||
+ | СписокОбъектов = Новый Структура(); | ||
+ | СписокОбъектов.Вставить("Контрагент", Ссылка); | ||
+ | СписокОбъектов.Вставить("КонтактноеЛицо", ОсновноеКонтактноеЛицо); | ||
+ | Если НЕ Ссылка = ГоловнойКонтрагент Тогда | ||
+ | СписокОбъектов.Вставить("КонтактноеЛицо", ГоловнойКонтрагент); | ||
+ | КонецЕсли; | ||
+ | |||
+ | Miko_Ajam.ПозвонитьВыбравТелефон(СписокОбъектов); | ||
+ | КонецЕсли; | ||
+ | |||
+ | КонецПроцедуры | ||
+ | </code> | ||
+ | |||
+ | ==== Общая форма печати документов ==== | ||
+ | **Задача:** необходимо, добавить возможность отправки сформированной печатной формы в виде факсимильного сообщения в текущий вызов. | ||
+ | |||
+ | **Решение:** необходимо модифицировать общую форму "ПечатьДокументов": | ||
+ | |||
+ | <code 1c>Процедура ПриОткрытии() | ||
+ | |||
+ | //ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоПросмотр.Доступность = ЗначениеЗаполнено(Документ); | ||
+ | //ЭлементыФормы.ПолеДокумента.ТолькоПросмотр = ЗначениеЗаполнено(Документ); | ||
+ | |||
+ | ОбновитьДанные(); | ||
+ | |||
+ | // ... ... ... Пропущена часть исходного текста ... ... ... | ||
+ | |||
+ | ЭлементыФормы.КоманднаяПанель1.Кнопки.ТолькоПросмотр.Пометка = Истина; | ||
+ | |||
+ | КоличествоКопий = Макс(ЭлементыФормы.ПолеДокумента.КоличествоЭкземпляров, 1); | ||
+ | // {{{ МИКО Панель телефонии Asterisk }}} НАЧАЛО | ||
+ | Если НЕ Miko_Ajam = Неопределено | ||
+ | И Miko_Ajam.МИКО_ОбщийМодуль.ИспользоватьСофтФон() Тогда | ||
+ | МИКО_ОбщийМодуль = Miko_Ajam.МИКО_ОбщийМодуль; | ||
+ | // добавляем элементы управления на форму | ||
+ | МИКО_ОбщийМодуль.ДобавитьКнопкуОтправкиФаксаНаПанельДействий(ЭлементыФормы.КоманднаяПанель1.Кнопки, | ||
+ | "МИКО_ВыполнитьДействие", | ||
+ | "кнМИКО_ОтправитьФакс"); | ||
+ | КонецЕсли; | ||
+ | // {{{ МИКО Панель телефонии Asterisk }}} КОНЕЦ | ||
+ | КонецПроцедуры | ||
+ | </code> | ||
+ | |||
+ | <code 1c>// Набор номера по заданному алгоритму | ||
+ | // | ||
+ | Процедура МИКО_ВыполнитьДействие(Кнопка) | ||
+ | Действие = Кнопка.Имя; | ||
+ | Если НЕ Miko_Ajam.глИспользоватьСофтФонMIKO_Ajam Тогда Возврат; КонецЕсли; | ||
+ | |||
+ | Если Действие = "кнМИКО_ОтправитьФакс" Тогда | ||
+ | // Обработчик нажатия на кнопку отправки табличного документа в текущий разговор | ||
+ | Miko_Ajam.ОтправитьФаксомТабДок(ЭлементыФормы.ПолеДокумента); | ||
+ | КонецЕсли; | ||
+ | |||
+ | КонецПроцедуры | ||
+ | </code> | ||
+ | |||
+ | ===== Полезные ссылки ===== | ||
+ | |||
+ | [[doc:panel1cut:config_bezint|Интеграция панели телефонии с УТ 10.3]] | ||