Всем доброго времени суток!
Возможно ли базовыми методами реализовать следующее, что бы при взятии в обработку записи из очереди через Единое окно оператору открывались только те записи на которые у него есть права доступа. Если прав нет то ему открывается пустая карточка как новая запись, это нужно исключить. 

Если стандартными средствами невозможно реализовать данный функционал, что посоветуете, в какую сторону смотреть?
 

Заранее благодарен!

Нравится

2 комментария
Лучший ответ

Только записи на которые у оператора есть права должны ему выводится (согласно документации по работе с Единым окном), обратитесь в тех поддержку с вопросом возможно в следующих версиях продукта данная проблема устранена. 

Только записи на которые у оператора есть права должны ему выводится (согласно документации по работе с Единым окном), обратитесь в тех поддержку с вопросом возможно в следующих версиях продукта данная проблема устранена. 

Механизм открытия карточки из очереди реализуется в БП «Обработка обращений из очереди в Едином окне», недавно обсуждавшемся.

Там нет никаких проверок прав. Можно добавить логику, чтобы карточка открывалась только в случае наличия прав у текущего пользователя.

Показать все комментарии

Добрый день,

Столкнулся с технической проблемой: есть динамическая очередь, настроенная на объект-представление. В сам объект-представление инсертить данные не получается ("БП падает с ошибкой Update or insert of view or function 'dbo.VwAppApproval' failed because it contains a derived or constant field"), а если создавать запись, удовлетворяющую условиям фильтра очереди в сам объект, то очередь не создается. Пробовал писать данные в объект, а потом менять через представление - работает некорректно. Кто-нибудь может подсказать в какую сторону копать, что бы решить проблему?

П.С.: Перенастроить очередь и изменить вьюху нет возможности.

Нравится

1 комментарий

В сам объект-представление инсертить данные не получается ("БП падает с ошибкой Update or insert of view or function 'dbo.VwAppApproval' failed because it contains a derived or constant field"),

Так чтобы в представление можно было вставлять, нужно на нём создать instead of insert (а заодно и delete, update) триггеры. А в них осуществлять вставку (удаление. изменение) в нужные таблицы.

Тогда с таким объектом можно будет в БП работать так же, как с обычным.

Показать все комментарии

Всем доброго времени суток!

Стоит задача настройки сортировки очереди не по существующему приоритету, а по числовому - http://prntscr.com/mf7dc3
Подскажите в какой схеме происходит сортировка что бы поправить на кастомную.
Заранее благодарен.

Нравится

2 комментария

Галка «Сортировать по приоритету» добавляется в схеме страницы QueueItemSection:

{
	"operation": "insert",
	"name": "AgentViewMode",
	"parentName": "LeftGridUtilsContainer",
	"index": 0,
	"propertyName": "items",
	"values": {
		"checked": {"bindTo": "UseAgentViewSorting"},
		"visible": {"bindTo": "getAreFixedFilterCheckboxesVisible"},
		"caption": {"bindTo": "Resources.Strings.AgentViewCheckboxCaption"},
		"labelButtonClick": {"bindTo": "onUseAgentViewLabelButtonClick"},
		"generator": "QueueItemSectionViewHelper.getFixedFilterCheckboxGenerator"
	}
},

Её значение UseAgentViewSorting учитывает логика:

/**
 * @inheritdoc Terrasoft.GridUtilities#initQueryColumns
 * @overridden
 */
initQueryColumns: function(esq) {
	this.mixins.GridUtilities.initQueryColumns.apply(this, arguments);
	if (this.get("UseAgentViewSorting")) {
		this.addQueueSortColumns(esq, this.get("QueueColumnsSortConfig"));
	}
},
 
/**
 * @inheritdoc Terrasoft.GridUtilities#initQuerySorting
 * @overridden
 */
initQuerySorting: function(esq) {
	this.mixins.GridUtilities.initQuerySorting.apply(this, arguments);
	if (this.get("UseAgentViewSorting")) {
		this.initQueueQuerySorting(esq, this.get("QueueColumnsSortConfig"));
	}
},

QueueColumnsSortConfig берётся:

/**
 * Initializes sorting options.
 * @param {Function} callback The callback function.
 * @protected
 */
initQueueSortingConfig: function(callback) {
	this.queryColumnsSortConfig({
		callback: function(sortConfig) {
			this.set("QueueColumnsSortConfig", sortConfig);
			callback();
		}.bind(this)
	});
},

А вот и сортировка, но по имени:

/**
 * @inheritdoc Terrasoft.QueueSortUtilities#getInitialQueueSortConfig
 * @overridden
 */
getInitialQueueSortConfig: function() {
	var sortConfig = this.mixins.QueueSortUtilities.getInitialQueueSortConfig.apply(this, arguments);
	sortConfig.push({
		"name": "Queue.QueueEntitySchema.Name",
		"orderPosition": 4,
		"orderDirection": Terrasoft.OrderDirection.ASC
	});
	return sortConfig;
},

Логика включения-выключения галки:

/**
 * Handles Agent view Label 'click' event.
 * @protected
 */
onUseAgentViewLabelButtonClick: function() {
	this.set("UseAgentViewSorting", !this.get("UseAgentViewSorting"));
},
 
/**
 * Handles UseAgentView attribute value changed.
 * @param {Backbone.Model} model The model.
 * @param {Boolean} useAgentView The new attribute value.
 */
onUseAgentViewChanged: function(model, useAgentView) {
	if (useAgentView) {
		this.set("SortColumnIndex", -1);
		this.reloadGridData();
	}
	this.set("IsSortMenuVisible", !useAgentView);
	this.saveCheckboxAttributeInProfile("UseAgentViewSorting", useAgentView);
},

 

Зверев Александр,

Благодарю. В целом помогло.

Показать все комментарии

Добрый день.

Стоит задача добавить булево поле в карточку Очереди (SupervisorSingleWindowPageV2).
Добавление произвожу через мастер раздела.
Предварительно в свойствах своего пакета добавляю на вкладке "Завист от пакетов" добавляю:
OperatorSingleWindow,
OperatorCustomerEngagementCenter,
ServiceEnterpriseDefSettings
CustomerCenterDefSettings.

Булево поле создаётся и отображается в карточке. В пакете создан замещающий объект Queue, замещающая схема карточки (SupervisorSingleWindowPageV2) и замещающая схема раздела(SupervisorSingleWindowSectionV2).

Но при попытке создания новой очереди (нажатие на "Сохранить") BPMOnline подвисает и в итоге выдает следующую ошибку.
В консоли только ошибки таймаута.

Если удаляю замещающие объекты/схемы, то сохранение новой очереди происходит без проблем.
Что делаю не так?

В Академии по запросу "Обработка обращений из очереди в Едином окне" проблематично что-либо найти, кроме описания самого раздела.

Нравится

7 комментариев

Автора такого user-friendly уведомления усадить бы туда кнопку "Подробнее" вставить да редирект на страницу сделать... :smile:
В пожелания, пожалуйста :cool:

Игорь, добрый день!!
Проблема, скорее всего, не в вашем поле. Для того, чтобы процесс можно было использовать в чоереди, у него должно быть добавлено два параметра глобальных: queueItemId и entityRecordId. Оба с типом "Unique identifier". В первое передается Id записи из очереди (именно объекта "Элемент очереди"), а во второй - Id записи образения/заказа/конаткта и т.д. - самого наполнения очереди.

В последних билдах в сообщении именно это и говорится. А ранее было вот такое непонятное.

Юлия, здравствуйте!
В том то и дело, что без замещённых схем запись в разделе "очереди" прекрасно сохраняется.
Пробовал на разных билдах, ситуация аналогичная

Тогда без отладки - никак. Попробуйте отладиться и запостить сюда результаты, если не удастся найти ошибку самостоятельно.

Как это сделать на on-demand?

Мне кажется, что до момента вызова самого БП, вся логика происходит на клиенте, а его можно отладить и в облаке. https://academy.terrasoft.ru/documents/technic-sdk/7-8-0/otladka-klient….
Или вы проверяли и там сразу идет запрос ан сервер?

Но чем вызвано подобное поведение, ведь я наследовался от всех необходимых пакетов?

Показать все комментарии

Добрый день!
Начиная с версии 7.5. в bpmonline itil transitions
появился такой функционал, как очереди, единое окно, процесс управления обращениями из очереди.
В документации к данному продукту, выложенной на сайте, нет ни строчки про это
http://academy.terrasoft.ru/documents/?product=transitions&ver=7.5.0

Где можно почитать описание работы с этими разделами, и почему его нет в документации.

Нравится

16 комментариев

Добрый день, Дарья!

Большое спасибо за Ваше замечание. Данный недочет взяли в работу.

Сейчас Вы можете ознакомиться с функциональностью перечисленных разделов в
руководстве пользователя

Добрый день!
В руководстве по engagement centre тоже не слишком много написано про очереди, правила формирования и т.п.

Рассмотрим продукт ITIL transitions
1)В разделе Очереди есть уже созданная очередь, называемая Обращения на обработку
Создается обращение, где ответственный - текущий контакт, и состояние обращения не конечное.
Такое обращение, насколько я понимаю, должно отражаться в едином окне текущего пользователя.
Но оно не отображается. Почему?
2) Приведите, пожалуйста, пример какие еще могут быть очереди

Здравствуйте, Дарья!

1. Для того, чтобы данная очередь отображалась в Едином окне оператора необходимо указать состояние "В работе". Если для очереди указано состояние отличное от данного, в едином окне оно отображаться не будет.

Так же проверьте при помощи фильтрации в реестре, существуют ли Обращения удовлетворяющие условиям фильтрации в очереди. Если таких записей нет, они так же не будут отображаться.

2. К примеру, могут быть очереди Контактов, по которым необходимо дополнить информацию.

Поменяла состояние обращения на в работе - ничего не изменилось - обращение в едином окне не появилось.
и где собственно задается это условие - про "состояние в работе"

P.S. Обращение, удовлетворяющее условиям фильтрации в очереди, есть.

Дарья, состояние "В работе" необходимо указать в настройках очереди.

Скриншот во вложении.

В настройках очереди указала состояние " в работе".
Создала обращение - ответственный текущий пользователь, состояние - новый.
Обращение условиям фильтрации очереди удовлетворяет.
Но обращения в очереди по-прежнему не видно.

Дарья, в продолжение телефонного разговора, взаимодействие по данному вопросу будет продолжено в рамках обращения в службу технической поддержки.

Елена, после конструкции http://localhost:6565/0/ServiceModel/ProcessEngineService.svc/QueuesUpd…
процесс запуска очередей запустился.

Проблемы с производительностью сайта версии 7.5.0.1054 тоже сейчас не наблюдается (перезапустила IIS и еще раз очистила Redis)

Но наблюдается новая проблема в едином окне. Пытаюсь взять обращение в работу(нажать на кнопку "Взять в работу"), и система зависает и ничего не происходит ( см. вложение).
Что может быть не так? и что вообще должно происходить при нажатии на эту кнопку.

Дарья, для решения вопроса понадобится более глубокий анализ. Отправили Вам личное сообщение для координации дальнейших действий.

"Татаровская Дарья" написал:

В настройках очереди указала состояние " в работе".
Создала обращение - ответственный текущий пользователь, состояние - новый.
Обращение условиям фильтрации очереди удовлетворяет.
Но обращения в очереди по-прежнему не видно.


Добрый день,
сталкиваюсь с аналогичной проблемой.

Создала очередь с очень простыми условиями Ответственный текущий пользователь или не заполнено, очередь в работе, вижу в журнале процессов "Процесс наполнения очередей единого окна" в состояниях Завершен.
в Едином окне пусто.

Маргарита, вероятнее всего, не запустился процесс наполнения очереди.

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

http://*****/0/ServiceModel/ProcessEngineService.svc/QueuesUpdateProcess/Execute

Вместо "*****" укажите адрес Вашего сайта.

это действие нужно будет выполнять каждый раз?

Маргарита, данное действие достаточно выполнить один раз.

"Лазоренко Елена Петровна" написал:

Маргарита, вероятнее всего, не запустился процесс наполнения очереди.

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

http://localhost:6565/0/ServiceModel/ProcessEngineService.svc/QueuesUpda...

Вместо "localhost:6565" укажите адрес Вашего сайта.

Наполнение Единого окна Очередью "Обращения на обработку" происходит,
а вот если отключаю эту очередь "в планах" и включить " в работе" очередь, созданную мной, Единое окно не наполняется, даже после выполнения ссылки.

Маргарита, для решения вопроса понадобится более глубокий анализ. Отправили Вам личное сообщение для координации дальнейших действий.

Маргарита, проблема заключалась в том, что не были указаны операторы на детали "Команда".

Показать все комментарии