===== Добавление кнопки "Позвонить" на закладку контактной информации справочников ===== В формах некоторых справочников (например, //"Контрагент"//) присутствует закладка //"Контактная информация"//. Для полей адреса и электронной почты уже разработан механизм добавляющий кнопку с соответствующим действием. Добавим для поля телефон аналогичную кнопку с действием //"Позвонить"//. Порядок действий следующий. - Откройте окно настройки поддержки и установите правило поддержки на //"Объект поставщика редактируется с сохранением поддержки"// для объектов: * //ОбщийМодуль.УправлениеКонтактнойИнформацией//; * //ОбщийМодуль.УправлениеКонтактнойИнформациейКлиент//. - Откройте модуль //"УправлениеКонтактнойИнформацией"// и перейдите к функции //"Действие"//. - Измените текст функции как показано ниже. Добавьте текст, выделенный в комментарий ** PT1C**Функция Действие(Форма, Тип, ИмяРеквизита, ГруппаДействий, КоличествоАдресов, ЕстьКомментарий = Ложь) МожноСоздаватьДействие = Истина; Если Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда МодульРаботаСПочтовымиСообщениями = ОбщегоНазначения.ОбщийМодуль("РаботаСПочтовымиСообщениями"); Если НЕ МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем() Тогда МожноСоздаватьДействие = Ложь; КонецЕсли; Иначе МожноСоздаватьДействие = Ложь; КонецЕсли; КонецЕсли; Если МожноСоздаватьДействие И ((Тип = Перечисления.ТипыКонтактнойИнформации.ВебСтраница // PT1C / Панель телефонии Asterisk / Начало Или Тип = Перечисления.ТипыКонтактнойИнформации.Телефон // PT1C / Панель телефонии Asterisk / Конец Или Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты) Или (Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И КоличествоАдресов > 1)) Тогда // Есть действие ... Если Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда ... ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.ВебСтраница Тогда ... ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда ... // PT1C / Панель телефонии Asterisk / Начало ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда Элемент.Заголовок = НСтр("ru='Позвонить'"); Команда.Подсказка = НСтр("ru='Позвонить'"); Команда.Картинка = БиблиотекаКартинок.МИКО_Телефон; // PT1C / Панель телефонии Asterisk / Конец КонецЕсли; ... Иначе ... КонецЕсли; Возврат Элемент; КонецФункции - Откройте модуль //"УправлениеКонтактнойИнформациейКлиент"// и перейдите к функции //"ПодключаемаяКоманда"//. - Измените текст процедуры как показано ниже. Добавьте текст, выделенный в комментарий ** PT1C**Функция ПодключаемаяКоманда(Форма, Знач ИмяКоманды) Экспорт ... Если КомандаКонтекстногоМеню Тогда ... ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда ... ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда ... ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.ВебСтраница") Тогда ... // PT1C / Панель телефонии Asterisk / Начало ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон") Тогда ПозвонитьПоТелефону(Форма, ИмяРеквизита); // PT1C / Панель телефонии Asterisk / Конец КонецЕсли; Возврат Неопределено; КонецФункции - Затем добавьте в этот модуль процедуру //"ПозвонитьПоТелефону"// с [[astpanel:designer:unf:proccall|текстом, расположенным по данной ссылке]].