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