Управление видимостью групп в диалоговой форме — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
м (Файлы)
 
(не показано 25 промежуточных версии этого же участника)
Строка 1: Строка 1:
 +
[[Практики|Наверх]]    <span style="color:darkviolet"><nowiki>[Oktell 2.12+]</nowiki></span>
  
 +
__TOC__
  
В релизе Oktell от 2 июня 2015г. Появилась возможность управлять видимостью групп в зависимости от выбранных значений элементов в диалоговых формах.
+
==Введение==
  
Рассмотрим пример реализации данного функционала:
+
В релизе Oktell 2.12 от 2 июня 2015г. Появилась возможность управлять видимостью групп в зависимости от выбранных или введенных значений элементов в диалоговых формах.
  
[[Файл:Dyn_gr_cc_1.jpg|center|800px]]
+
Данный функционал используется например:
 +
*При создании скрипта разговора для оператора, в котором можно будет предусмотреть отображение дальнейших действий в зависимости от развития разговора.
 +
*Для группировки номеров внутреннего номерного плана по различным критериям и отображении в зависимости от цели перевода.
 +
*Для проверки введенных значений оператором с помощью элементарных операций сравнения.
  
  
Описание сценария:
+
==Пример реализации==
1)Компонент «Старт 1» - Без параметра запуска
+
  
[[Файл:Dyn_gr_cc_2.jpg|center|800px]]
 
  
 +
<span style="color:red">
 +
Обратите внимание!</span>
 +
<br/>
 +
*<span style="color:red">Дополнительно можно анализировать наличие галочки у поля ( [[//wiki.oktell.ru/%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D1%8B_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B0_%D1%84%D0%BE%D1%80%D0%BC#.D0.93.D1.80.D1.83.D0.BF.D0.BF.D0.B0 Ссылка на wiki - Группа]] )</span>
 +
*<span style="color:red">Назначение свойства «Сохранение» НЕ является необходимым условием для работы видимости группы!</span>
 +
*<span style="color:red">Рекомендуется название идентификатора начинать с буквы, либо при описании условия видимости заключать идентификатор в квадратные скобки. Например: a5, promo, [2a5], [2], и т. д.</span>
 +
*<span style="color:red">Значения в скрытые группы подгружаются только после открытия</span>
 +
<br /><br />
  
2)Компонент «Объявление переменных»
+
===Вариант 1 (условие для введенных значений)===
  
[[Файл:Dyn_gr_cc_3.jpg|center|800px]]
+
В данном варианте рассмотрим поле «Промокод» используется для отображения специальных предложений в зависимости от введенного значения.
  
Тип компонента — Присвоение значения переменной
+
[[Файл:Dyn_gr_cc_8.jpg|center|800px]]
  
Режим — множественный
+
*Ключевым является свойство «Идентификатор» (в примере: promo) в него будет сохранено введенное значение и  его мы будем анализировать для отображения того или иного специального предложения.
 +
*Свойство «Значение» - по умолчанию 0 (можно указать начальное значения для отображения базового спец. Предложения)
 +
*Свойство «Сохранение» - указываем переменную в которую сохраним значение (НЕ является необходимым условием для работы видимости группы!)
  
В данном компоненте происходит присвоение значений переменным:
+
Были созданы группы с условиями видимости в зависимости от введенного значения (promo):
*переменной scr_comments присваивается значение из переменной типа поле таблицы comments
+
*Если promo<1500 (введенное значение меньше 1500), то отобразится группа "Специальные предложения 1"
*переменной scr_fio присваивается значение из переменной типа поле таблицы fio
+
*Если promo>=1500&&promo<=10000 (введенное значение находится в пределах от 1500 до 10000 включительно), то отобразится группа "Специальные предложения 2"
*переменной scr_idchain присваивается значение фунции Id цепочки коммутаций
+
*Если promo>10000 (введенное значение больше 10000), то отобразится группа "Специальные предложения 3"
*переменной scr_phone присваивается значение из переменной типа поле таблицы phone
+
*переменной scr_dogovor присваивается значение из переменной типа поле таблицы dogovor
+
*переменной scr_balance присваивается значение из переменной типа поле таблицы balance
+
*переменной scr_dogovor_date присваивается значение из переменной типа поле таблицы  dogovor_date
+
  
На изображении так же отображены все переменные с указанием типа данных и места хранения.
+
Если вводить не числовые символы то отображение заданных групп происходить не будет. Возможно так же сравнение со строками, для этого их необходимо заключить в одинарные кавычки, например: promo=='promokey'
  
  
4)Настройка диалоговой формы
+
===Вариант 2 (выбор варианта оператором)===
 +
Рассмотрим Меню — у данной группы идентификатор не установлен. Необходима для управления видимостью различных групп.
  
[[Файл:Dyn_gr_cc_4.jpg|center|800px]]
+
Состоит из одного компонента «Группа опций»
 +
 
 +
[[Файл:Dyn_gr_cc_12.jpg|center|800px]]
 +
 
 +
*Свойство «Идентификатор» (в примере: dyn_menu)  в него будет сохранено значение выбранного варианта (в примере значение может быть 0,1 или 2)
 +
*Свойство «Элементы» - в примере sql запрос первый атрибут будет присвоен в значение идентификатора компонента, а второй будет отображен пользователю.
 +
 
 +
Были созданы группы с условиями видимости в зависимости от выбранного значения группы опций (dyn_menu):
 +
*Если dyn_menu==1, то отобразится группа "Данные по договору"
 +
*Если dyn_menu==2, то отобразится группа "История обращений"
 +
*Если dyn_menu==3, то отобразится группа "Переключение"
 +
 
 +
 
 +
===Подробное описание формы===
 +
 
 +
'''1''')Демонстрационный вариант диалогового сценария
 +
 
 +
[[Файл:Dyn_gr_cc_4.jpg|center|600px]]
  
 
У компонента Диалоговая форма при необходимости настраиваем свойства (Блок переключения, Команда СТОП, Команда НАЗАД и т. д.)
 
У компонента Диалоговая форма при необходимости настраиваем свойства (Блок переключения, Команда СТОП, Команда НАЗАД и т. д.)
 +
 +
[[Файл:Dyn_gr_cc_5.jpg|center|400px]]
  
 
После выделения компонента переходим во вкладку свойство, либо в соответствующее свойство в инспекторе объектов
 
После выделения компонента переходим во вкладку свойство, либо в соответствующее свойство в инспекторе объектов
  
[[Файл:Dyn_gr_cc_5.jpg|center|800px]]
 
  
Общий вид редактора форм созданной карточки виден на следующем изображении
+
 
 +
Общий вид редактора форм:
  
 
[[Файл:Dyn_gr_cc_6.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_6.jpg|center|800px]]
  
  
4.1)Группы (настройка управления видимостью)
+
1.1)Группы (настройка управления видимостью)
  
4.1.1)Информация о клиенте — базовая группа при открытии карточки у оператора, отображается необходимая информация для начала обработки звонка.  
+
1.1.1)Информация о клиенте — базовая группа при открытии карточки у оператора, отображается необходимая информация для начала обработки звонка.  
  
 
[[Файл:Dyn_gr_cc_7.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_7.jpg|center|800px]]
Строка 63: Строка 92:
 
*Свойство «Значение» - по умолчанию 0 (можно указать начальное значения для отображения базового спец. Предложения)
 
*Свойство «Значение» - по умолчанию 0 (можно указать начальное значения для отображения базового спец. Предложения)
 
*Свойство «Сохранение» - указываем переменную в которую сохраним значение (НЕ является необходимым условием для работы видимости группы!), в данном примере используется для сохранения истории в БД
 
*Свойство «Сохранение» - указываем переменную в которую сохраним значение (НЕ является необходимым условием для работы видимости группы!), в данном примере используется для сохранения истории в БД
 
<span style="color:red">
 
Обратите внимание!</span></br>
 
<span style="color:red">*Дополнительно можно анализировать наличие галочки у поля [[http://wiki.oktell.ru/%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D1%8B_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B0_%D1%84%D0%BE%D1%80%D0%BC#.D0.93.D1.80.D1.83.D0.BF.D0.BF.D0.B0 Группа]]</span>
 
<span style="color:red">*Назначение свойства «Сохранение» НЕ является необходимым условием для работы видимости группы!</span>
 
<span style="color:red">*Рекомендуется название идентификатора начинать с буквы, либо при описании условия видимости заключать идентификатор в квадратные скобки. Например: a5, promo, [2a5], [2], и т. д.</span>
 
  
  
4.1.2)Специальные предложения 1 — группа с условием видимости для идентификатора «promo»
+
1.1.2)Специальные предложения 1 — группа с условием видимости для идентификатора «promo»
  
 
[[Файл:Dyn_gr_cc_9.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_9.jpg|center|800px]]
Строка 84: Строка 107:
  
  
4.1.3)Специальные предложения 2 - группа с условием видимости для идентификатора «promo»
+
1.1.3)Специальные предложения 2 - группа с условием видимости для идентификатора «promo»
  
 
[[Файл:Dyn_gr_cc_10.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_10.jpg|center|800px]]
Строка 95: Строка 118:
  
  
4.1.4)Специальные предложения 3 - группа с условием видимости для идентификатора «promo»
+
1.1.4)Специальные предложения 3 - группа с условием видимости для идентификатора «promo»
  
 
[[Файл:Dyn_gr_cc_11.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_11.jpg|center|800px]]
Строка 105: Строка 128:
  
  
4.1.5)Меню — у данной группы идентификатор не установлен. Необходима для управления видимостью различных групп.
+
1.1.5)Меню — у данной группы идентификатор не установлен. Необходима для управления видимостью различных групп.
  
 
Состоит из одного компонента «Группа опций»  
 
Состоит из одного компонента «Группа опций»  
Строка 114: Строка 137:
 
*Свойство «Элементы» - в примере sql запрос первый атрибут будет присвоен в значение идентификатора компонента, а второй будет отображен пользователю.
 
*Свойство «Элементы» - в примере sql запрос первый атрибут будет присвоен в значение идентификатора компонента, а второй будет отображен пользователю.
  
4.1.6)Данные по договору - группа с условием видимости для идентификатора «dyn_menu»
+
1.1.6)Данные по договору - группа с условием видимости для идентификатора «dyn_menu»
  
 
[[Файл:Dyn_gr_cc_13.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_13.jpg|center|800px]]
Строка 124: Строка 147:
  
  
4.1.7)История обращений - группа с условием видимости для идентификатора «dyn_menu»
+
1.1.7)История обращений - группа с условием видимости для идентификатора «dyn_menu»
  
 
[[Файл:Dyn_gr_cc_14.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_14.jpg|center|800px]]
Строка 140: Строка 163:
  
  
4.1.8)Переключение - группа с условием видимости для идентификатора «dyn_menu». Необходима для выбора отдела на который будет происходить переключение.
+
1.1.8)Переключение - группа с условием видимости для идентификатора «dyn_menu». Необходима для выбора отдела на который будет происходить переключение.
  
 
[[Файл:Dyn_gr_cc_15.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_15.jpg|center|800px]]
Строка 156: Строка 179:
 
*Свойство «Элементы» - значение будет присвоено в идентификатор компонента, а подпись отображается пользователю для выбора.
 
*Свойство «Элементы» - значение будет присвоено в идентификатор компонента, а подпись отображается пользователю для выбора.
  
4.1.8)Тех поддержка - группа с условием видимости для идентификатора «dyn_tran»
+
1.1.8)Тех поддержка - группа с условием видимости для идентификатора «dyn_tran»
  
 
[[Файл:Dyn_gr_cc_17.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_17.jpg|center|800px]]
Строка 166: Строка 189:
  
  
4.1.9)Отдел продаж - группа с условием видимости для идентификатора «dyn_tran»
+
1.1.9)Отдел продаж - группа с условием видимости для идентификатора «dyn_tran»
  
 
[[Файл:Dyn_gr_cc_18.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_18.jpg|center|800px]]
Строка 176: Строка 199:
  
  
4.1.10)Отдел доставки - группа с условием видимости для идентификатора «dyn_tran»
+
1.1.10)Отдел доставки - группа с условием видимости для идентификатора «dyn_tran»
  
 
[[Файл:Dyn_gr_cc_19.jpg|center|800px]]
 
[[Файл:Dyn_gr_cc_19.jpg|center|800px]]
Строка 185: Строка 208:
 
Группа состоит из трех компонентов «Кнопка» с номерами 301,302 и 303, с соответствующим свойством «Надпись на кнопке».
 
Группа состоит из трех компонентов «Кнопка» с номерами 301,302 и 303, с соответствующим свойством «Надпись на кнопке».
  
5)Компонент «Записываем данные в таблицу истории» - Sql запрос, который записывает данные полученные после общения с клиентом
+
<br /><br />
 
+
[[Файл:Dyn_gr_cc_20.jpg|center|800px]]
+
 
+
Список параметров указан на изображении.
+
 
+
Текст sql запроса:
+
<pre>
+
if @idchain=''
+
set @idchain='00000000-0000-0000-0000-000000000000'
+
 
+
insert into oktell.dbo.article_vis_in_abon_history
+
(phone, fio, comments, idchain, dogovor, balance, dogovor_date, promo)
+
values
+
(@phone, @fio, @comments, @idchain, @dogovor, @balance, @dogovor_date, @promo)
+
</pre>
+
  
 +
==Результаты==
 +
<video type="youtube" id="WN3oKuCOAkw" width="1280" desc="Управление видимостью групп в диалоговой форме. Демонстрационный пример функционала. " frame="false" position="center" size="full" allowfullscreen="false"/>
  
6)Компонент «Сохранение данных» - модифицирует данные в таблице абонентов с которой работает задача. Используются переменные типа поле таблицы.
+
==Файлы==
  
[[Файл:Dyn_gr_cc_21.jpg|center|800px]]
+
#[[Media:Dlg_%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2%D0%B8%D0%B4%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C%D1%8E_%D0%B3%D1%80%D1%83%D0%BF%D0%BF.oscr|Диалоговый сценарий "Карточка с управлением видимостью групп"]]
 +
#[[Media:%D0%94%D0%B5%D0%BC%D0%BE_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2%D0%B8%D0%B4%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C%D1%8E_%D0%B3%D1%80%D1%83%D0%BF%D0%BF.prz|Проект "Демо управление видимостью групп"]]

Текущая версия на 08:41, 16 февраля 2023

Наверх    [Oktell 2.12+]

Введение

В релизе Oktell 2.12 от 2 июня 2015г. Появилась возможность управлять видимостью групп в зависимости от выбранных или введенных значений элементов в диалоговых формах.

Данный функционал используется например:

  • При создании скрипта разговора для оператора, в котором можно будет предусмотреть отображение дальнейших действий в зависимости от развития разговора.
  • Для группировки номеров внутреннего номерного плана по различным критериям и отображении в зависимости от цели перевода.
  • Для проверки введенных значений оператором с помощью элементарных операций сравнения.


Пример реализации

Обратите внимание!

  • Дополнительно можно анализировать наличие галочки у поля ( [Ссылка на wiki - Группа] )
  • Назначение свойства «Сохранение» НЕ является необходимым условием для работы видимости группы!
  • Рекомендуется название идентификатора начинать с буквы, либо при описании условия видимости заключать идентификатор в квадратные скобки. Например: a5, promo, [2a5], [2], и т. д.
  • Значения в скрытые группы подгружаются только после открытия



Вариант 1 (условие для введенных значений)

В данном варианте рассмотрим поле «Промокод» используется для отображения специальных предложений в зависимости от введенного значения.

Dyn gr cc 8.jpg
  • Ключевым является свойство «Идентификатор» (в примере: promo) в него будет сохранено введенное значение и его мы будем анализировать для отображения того или иного специального предложения.
  • Свойство «Значение» - по умолчанию 0 (можно указать начальное значения для отображения базового спец. Предложения)
  • Свойство «Сохранение» - указываем переменную в которую сохраним значение (НЕ является необходимым условием для работы видимости группы!)

Были созданы группы с условиями видимости в зависимости от введенного значения (promo):

  • Если promo<1500 (введенное значение меньше 1500), то отобразится группа "Специальные предложения 1"
  • Если promo>=1500&&promo<=10000 (введенное значение находится в пределах от 1500 до 10000 включительно), то отобразится группа "Специальные предложения 2"
  • Если promo>10000 (введенное значение больше 10000), то отобразится группа "Специальные предложения 3"

Если вводить не числовые символы то отображение заданных групп происходить не будет. Возможно так же сравнение со строками, для этого их необходимо заключить в одинарные кавычки, например: promo=='promokey'


Вариант 2 (выбор варианта оператором)

Рассмотрим Меню — у данной группы идентификатор не установлен. Необходима для управления видимостью различных групп.

Состоит из одного компонента «Группа опций»

Dyn gr cc 12.jpg
  • Свойство «Идентификатор» (в примере: dyn_menu) в него будет сохранено значение выбранного варианта (в примере значение может быть 0,1 или 2)
  • Свойство «Элементы» - в примере sql запрос первый атрибут будет присвоен в значение идентификатора компонента, а второй будет отображен пользователю.

Были созданы группы с условиями видимости в зависимости от выбранного значения группы опций (dyn_menu):

  • Если dyn_menu==1, то отобразится группа "Данные по договору"
  • Если dyn_menu==2, то отобразится группа "История обращений"
  • Если dyn_menu==3, то отобразится группа "Переключение"


Подробное описание формы

1)Демонстрационный вариант диалогового сценария

Dyn gr cc 4.jpg

У компонента Диалоговая форма при необходимости настраиваем свойства (Блок переключения, Команда СТОП, Команда НАЗАД и т. д.)

Dyn gr cc 5.jpg

После выделения компонента переходим во вкладку свойство, либо в соответствующее свойство в инспекторе объектов


Общий вид редактора форм:

Dyn gr cc 6.jpg


1.1)Группы (настройка управления видимостью)

1.1.1)Информация о клиенте — базовая группа при открытии карточки у оператора, отображается необходимая информация для начала обработки звонка.

Dyn gr cc 7.jpg

Развернута по умолчанию — Да Количество полей и их назначение произвольное, в данном примере используется поле «Промокод» для отображения специальных предложений в зависимости от введенного значения.

Dyn gr cc 8.jpg
  • Ключевым является свойство «Идентификатор» (в примере: promo) в него будет сохранено введенное значение и его мы будем анализировать для отображения того или иного специального предложения.
  • Свойство «Значение» - по умолчанию 0 (можно указать начальное значения для отображения базового спец. Предложения)
  • Свойство «Сохранение» - указываем переменную в которую сохраним значение (НЕ является необходимым условием для работы видимости группы!), в данном примере используется для сохранения истории в БД


1.1.2)Специальные предложения 1 — группа с условием видимости для идентификатора «promo»

Dyn gr cc 9.jpg
  • Свойство «Условие видимости» - promo<1500
  • Свойство «Развернуто по умолчанию» - Да

Учитывая значение по умолчанию в поле «Промокод» данная группа будет открыта при поступлении звонка. Группа состоит из одного компонента «Метка» с фиксированным текстом.



1.1.3)Специальные предложения 2 - группа с условием видимости для идентификатора «promo»

Dyn gr cc 10.jpg
  • Свойство «Условие видимости» - promo>=1500&&promo<=10000
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из одного компонента «Метка» с фиксированным текстом.


1.1.4)Специальные предложения 3 - группа с условием видимости для идентификатора «promo»

Dyn gr cc 11.jpg
  • Свойство «Условие видимости» - promo>10000
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из одного компонента «Метка» с фиксированным текстом.


1.1.5)Меню — у данной группы идентификатор не установлен. Необходима для управления видимостью различных групп.

Состоит из одного компонента «Группа опций»

Dyn gr cc 12.jpg
  • Свойство «Идентификатор» (в примере: dyn_menu) в него будет сохранено значение выбранного варианта (в примере значение может быть 0,1 или 2)
  • Свойство «Элементы» - в примере sql запрос первый атрибут будет присвоен в значение идентификатора компонента, а второй будет отображен пользователю.

1.1.6)Данные по договору - группа с условием видимости для идентификатора «dyn_menu»

Dyn gr cc 13.jpg
  • Свойство «Условие видимости» - dyn_menu==0
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из нескольких компонентов «Текстовое поле» с произвольным содержанием. В примере из базы данных загружается информация о договоре клиента.


1.1.7)История обращений - группа с условием видимости для идентификатора «dyn_menu»

Dyn gr cc 14.jpg
  • Свойство «Условие видимости» - dyn_menu==1
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из одного компонента «Таблица», в котором отображается информация об истории обращений клиента. Данные получаем с помощью sql запроса из таблицы oktell.dbo.article_vis_in_abon_history

Текст sql запроса:

select phone, fio, comments, dogovor, balance, dogovor_date, promo
from article_vis_in_abon_history
where phone like '%'+[phone]+'%'


1.1.8)Переключение - группа с условием видимости для идентификатора «dyn_menu». Необходима для выбора отдела на который будет происходить переключение.

Dyn gr cc 15.jpg
  • Свойство «Условие видимости» - - dyn_menu==2
  • Свойство «Сбрасывать введенные значения при скрытии» - Да
  • Свойство «Развернуто по умолчанию» - Да


Состоит из одного компонента «Группа опций»

Dyn gr cc 16.jpg
  • Свойство «Идентификатор» (в примере: dyn_tran) в него будет сохранено значение выбранного варианта (в примере значение может быть 11,12 или 13)
  • Свойство «Элементы» - значение будет присвоено в идентификатор компонента, а подпись отображается пользователю для выбора.

1.1.8)Тех поддержка - группа с условием видимости для идентификатора «dyn_tran»

Dyn gr cc 17.jpg
  • Свойство «Условие видимости» - dyn_tran==11
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из трех компонентов «Кнопка» с номерами 101,102 и 103, с соответствующим свойством «Надпись на кнопке».


1.1.9)Отдел продаж - группа с условием видимости для идентификатора «dyn_tran»

Dyn gr cc 18.jpg
  • Свойство «Условие видимости» - dyn_tran==12
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из трех компонентов «Кнопка» с номерами 201,202 и 203, с соответствующим свойством «Надпись на кнопке».


1.1.10)Отдел доставки - группа с условием видимости для идентификатора «dyn_tran»

Dyn gr cc 19.jpg
  • Свойство «Условие видимости» - dyn_tran==13
  • Свойство «Развернуто по умолчанию» - Да

Группа состоит из трех компонентов «Кнопка» с номерами 301,302 и 303, с соответствующим свойством «Надпись на кнопке».



Результаты

Управление видимостью групп в диалоговой форме. Демонстрационный пример функционала.

Файлы

  1. Диалоговый сценарий "Карточка с управлением видимостью групп"
  2. Проект "Демо управление видимостью групп"