Здесь показаны различия между двумя версиями данной страницы.
Последняя версия Следующая версия справа и слева | |||
astpanel:designer:bp3 [2018/05/18 07:00] tpor создано |
astpanel:designer:bp3 [2018/09/11 13:05] tpor |
||
---|---|---|---|
Строка 24: | Строка 24: | ||
- | ===== Этап 3. Добавление кнопки "Позвонить" ===== | + | ===== Этап 3. Добавление кнопки "Позвонить" на закладку контактной информации справочников ===== |
- | + | ||
- | Для автоматизации набора номера телефона добавим кнопку **"Позвонить"** в область команд форм некоторых справочников. | + | |
- | + | ||
- | Порядок действий следующий. | + | |
- | - Добавьте в обработку **МИКО_ПанельТелефонииДля1С** команду **"Позвонить"** и поместите в модуль команды <code 1c> | + | |
- | &НаКлиенте | + | |
- | Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) | + | |
- | + | ||
- | Если сфпФормаТелефон <> Неопределено Тогда | + | |
- | + | ||
- | СписокУчастников = ПолучитьСсылкуНаУчастникаИзДокумента(ПараметрКоманды); | + | |
- | Если СписокУчастников <> Неопределено Тогда | + | |
- | сфпФормаТелефон.ПозвонитьВыбравТелефон(СписокУчастников); | + | |
- | КонецЕсли; | + | |
- | + | ||
- | КонецЕсли; | + | |
- | + | ||
- | КонецПроцедуры | + | |
- | + | ||
- | // Для документов будет возвращено значение реквизита "Контрагент" | + | |
- | // Для справочников - возвращается ссылка на элемент | + | |
- | // В случае ошибки возвращается "Неопределено" | + | |
- | // | + | |
- | Функция ПолучитьСсылкуНаУчастникаИзДокумента(Знач Ссылка) Экспорт | + | |
- | + | ||
- | Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Ссылка)) Тогда | + | |
- | МассивОбъектов = Новый Массив(1); | + | |
- | МассивОбъектов[0] = Ссылка; | + | |
- | + | ||
- | Возврат МассивОбъектов; | + | |
- | ИначеЕсли Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Ссылка)) Тогда | + | |
- | МассивОбъектов = Новый Массив; | + | |
- | ДобавитьЗначениеРеквизитаВМассив(Ссылка, МассивОбъектов, "Контрагент"); | + | |
- | ДобавитьЗначениеРеквизитаВМассив(Ссылка, МассивОбъектов, "Партнер"); | + | |
- | ДобавитьЗначениеРеквизитаВМассив(Ссылка, МассивОбъектов, "КонтактноеЛицо"); | + | |
- | ДобавитьЗначениеРеквизитаВМассив(Ссылка, МассивОбъектов, "АбонентКонтакт"); | + | |
- | Возврат МассивОбъектов; | + | |
- | КонецЕсли; | + | |
- | КонецФункции // ПолучитьСсылкуНаУчастникаИзДокумента() | + | |
- | + | ||
- | // Получате значение раквизита, если значение заполнено - добавляет его в массив. | + | |
- | // | + | |
- | Функция ДобавитьЗначениеРеквизитаВМассив(Знач Ссылка, Массив, ИмяРеквизита) Экспорт | + | |
- | Если Ссылка.Метаданные().Реквизиты.Найти(ИмяРеквизита) = Неопределено Тогда | + | |
- | Возврат Ложь; | + | |
- | КонецЕсли; | + | |
- | Если ЗначениеЗаполнено(Ссылка[ИмяРеквизита]) Тогда | + | |
- | Массив.Добавить(Ссылка[ИмяРеквизита]); | + | |
- | КонецЕсли; | + | |
- | + | ||
- | Возврат Истина; | + | |
- | КонецФункции // ДобавитьЗначениеРеквизитаВМассив() | + | |
- | </code>. | + | |
- | - Установите свойство **"Группа"** в значение **"Командная панель формы.Важное"**. {{:astpanel:designer:sostav_dial.png?500|}} | + | |
- | - Свойство **"Тип параметра команды"** должно иметь составной тип данных: | + | |
- | * **СправочникСсылка.КонтактныеЛица**; | + | |
- | * **СправочникСсылка.Контрагенты**; | + | |
- | * **СправочникСсылка.Пользователи**; | + | |
- | * **СправочникСсылка.Организации**; | + | |
- | * **СправочникСсылка.ФизическиеЛица**; | + | |
- | + | ||
- | Для ранее созданной роли "**МИКО_Софтфон**" добавьте права на доступ к команде "**Позвонить**". | + | |
- | {{ :astpanel:designer:permit_command_dial.png?nolink&450 |}} | + | |
- | + | ||
- | Вы можете указать и другие типы объектов, в которых будет отображена команда **"Позвонить"**. Основным критерием для выбора таких объектов является наличие табличной части **"КонтактнаяИнформация"**, если это справочник, или реквизита **"Контрагент"**, если это документ. В ином случае может потребоваться изменение текста модуля команды. | + | |
- | + | ||
- | При желании можно добавить картинку на кнопку команды, предварительно разместив ее в библиотеке картинок. | + | |
- | - Раскройте дерево конфигурации на группе **"Общие картинки"** и добавьте в нее новый элемент **"МИКО_Телефон"**. | + | |
- | - Загрузите в созданный объект изображение для кнопки **"Позвонить"** ({{:doc:phonegray.png|}}). | + | |
- | - Вернитесь к команде **"Позвонить"** обработки **МИКО_ПанельТелефонииДля1С** и заполните свойства **"Отображение"** в значение **"Картинка и текст"**, **"Картинка"** в значение **"МИКО_Телефон"**. | + | |
- | + | ||
- | Обновите конфигурацию базы данных и запустите программу в режиме **"Предприятие"**. Результат работы показан на рисунке ниже. | + | |
- | + | ||
- | ===== Этап 4. Добавление кнопки "Позвонить" на закладку контактной информации справочников ===== | + | |
Перейдите в общий модуль "**УправлениеКонтактнойИнформациейКлиент**", процедуру "**ПозвонитьПоТелефону**", пример: | Перейдите в общий модуль "**УправлениеКонтактнойИнформациейКлиент**", процедуру "**ПозвонитьПоТелефону**", пример: | ||
<code 1c>Процедура ПозвонитьПоТелефону(НомерТелефона) | <code 1c>Процедура ПозвонитьПоТелефону(НомерТелефона) |