При попытке сохранить страницу редактирования выбивает такую ошибку

 

Изображение удалено.



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

 

Можно ли как-нибудь сбросить раздел до "Заводских настроек" или исправить это?

Нравится

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

Добрый день!

 

Запрос "SysModuleVisa" в этом разделе показывал, что у Вас было настроено визирование в разделе с обращениями, но схемы для этой визы в БД не существовало.

 

select * from "SysModule"

where "SysModuleEntityId" in (

select "Id" from "SysModuleEntity" where "SysEntitySchemaUId" in (

select "UId" from "SysSchema" where "Name" = 'Case'))



select * from "SysModuleEdit"

where "SysModuleEntityId" = '6513d6fc-9383-4bfb-8e0b-a6dc8e7231b0'



select * from "SysModuleVisa" where "Id" = '2e41b591-9f9f-4b80-9aa4-6bcf8d5cdd5e'

select * from "SysSchema" where "UId" = '9b657b4f-80dc-475d-92f1-0f5633d73cd5'

 

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

 

update "SysModule"

set "SysModuleVisaId" = null

where "SysModuleEntityId" in (

select "Id" from "SysModuleEntity" where "SysEntitySchemaUId" in (

select "UId" from "SysSchema" where "Name" = 'Case'))



delete from "SysModuleVisa" where "Id" = '2e41b591-9f9f-4b80-9aa4-6bcf8d5cdd5e'



Мы обновили "SysModule" и удалили в "SysModuleVisa" упоминание о визировании этого раздела в БД.

 

На данный момент, Мастер раздела успешно сохраняет изменения.

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

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

Подскажите, с чем это может быть связано и как исправить?

 

На первом скриншоте то как отображается у пользователя, на втором подтверждение того, что в обращении есть другое сообщения

Прикрепленные файлы

Нравится

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

Добрый день, 

 

Просим написать на support@terrasoft.ua для более детального анализа вопроса. 

 

С уважением, 

Игорь

Видимо проблема с правами. У пользователя нет прав на второе письмо, которое он не видит.

Ну а почему - причин у этого может быть ОООчень много.

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

Коллеги, приветствую.



Нужно реализовать уведомление пользователю, что через 2 часа срок разрешения обращения закончится.

 

2 часа (120 минут) буду зашивать в системную настройку (чтобы можно было варьировать админу)

 

Хочу реализовать с помощью БП по таймеру, который раз в час будет отбирать обращения по определенным критериям. 

далее, из записи вычитаю поле "время разрешения" (тип поля - дата/время) и тут главная загвозка.... как мне высчитать, что обращение должно разрешиться через 2 часа (120 минут)?

 

если должно решиться больше 2 часов - пропустить запись

если меньше, то по идее, должно было уже отправиться уведомление.

ко всему прочему, кажется, что могут возникнут потери записей (из разряда, если на момент проверки, "время разрешения" должно быть через 2 часа и 5 минут, то в следующую проверку может быть уже меньше 2 часов) - это смущает.



из идей:

  1. пробовать преобразовать поле с помощью формул .TotalHours/.TotalMinutes в часы/минуты и сравнивать..
  2. попробовать с помощью формул .AddMinutes(), .AddHours() добавить настройке "текущее время и дата" значение системной настройки и сравнить...

в общем, буду рада советом, а сама пошла пока пробовать :) 

Нравится

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

Aleksei Efimenko, 

я прибегла к другому решению:

  • сделала системную настройку, которая хранит значение за сколько нужно уведомление (в минутах)
  • сделала 2 параметра: 

Параметр 1: [#Системная переменная.Текущее значение времени#]. AddMinutes([число из системной настройки])

Параметр 2: параметр 1. AddMinutes(59) - чтобы получился час

 

  • и развела условными потоками:

1. если время разрешение больше моих параметров или меньше - проскакиваю

2. если время разрешение попадает в промежуток параметров - высылаю уведомление

Создаю новое поле - Reminding time. И его сравниваю.

 

Ещё процессы, которые его заполняют. И поле с временем, когда уведомление было отправлено. Это позволит избежать ситуации, когда таймер не сработает, например. Надо всего лишь выбирать те, у которых время уведомления прошло, но уведомление не было отправлено

Александра Дубс, подскажите, решило ли вашу задачу предоставленное решение от Владимира?

Aleksei Efimenko, 

я прибегла к другому решению:

  • сделала системную настройку, которая хранит значение за сколько нужно уведомление (в минутах)
  • сделала 2 параметра: 

Параметр 1: [#Системная переменная.Текущее значение времени#]. AddMinutes([число из системной настройки])

Параметр 2: параметр 1. AddMinutes(59) - чтобы получился час

 

  • и развела условными потоками:

1. если время разрешение больше моих параметров или меньше - проскакиваю

2. если время разрешение попадает в промежуток параметров - высылаю уведомление

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

Доброго времени суток.

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

Нравится

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

Игорь, добрый день.

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

Столкнулись с аналогичной потребностью, чтобы на портале переключать стадии обращения. Как оказалось, это отключено в коде специально (вероятно, по причине из комментария выше).

В схеме PortalCaseSectionActionsDashboard пакета Portal функция заменена заглушкой:

/**
 * @inheritDoc Terrasoft.DcmSectionActionsDashboardMixin#setDcmAvailableStages
* @overridden
 */
setDcmAvailableStages: this.Terrasoft.emptyFn,

Для исправления в пакете проекта в этой  же схеме вернул код из упомянутого выше миксина:

setDcmAvailableStages: function(actionsItem) {
	const dcmSchema = this.get("DcmSchema");
	const sourceStageUId = actionsItem.get("StageUId");
	const outgoingConnections = dcmSchema.stageConnections.getOutgoingConnections(sourceStageUId);
	const availableStages = outgoingConnections.map(function(connection) {
		const referenceStage = dcmSchema.stages.get(connection.target);
		return referenceStage.stageRecordId;
	});
	actionsItem.set("AvailableStages", availableStages);
},

Теперь стадии переключает.

Но в коробке, наверно, не зря для этого раздела на портале отключили. Может, что-то при этом сломается, но я не заметил. Например, какая-то логика на объекте не отработает, или БП не запустится, или в кейсе не все возможности корректно работать будут. В консоли ошибок нет, но стоит иметь в виду, если позже где-то связанная с обращениями ошибка проявится.

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

Добрый день. Сейчас через скрипт рекордер записываю действия и прогоняю по этому сценарию нагрузку. Вопрос у заказчика в другом, почему к примеру, при нагрузке в 600 пользователей не создаётся 600 тестовых обращений хотя по скрипту записано от и до. Авторизация в JMeter работает.

Нравится

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

Думаю, заказчику лучше обратиться с вопросом к тому, кто разрабатывал сценарий. Без подробностей сложно сказать, что именно он делает в системе. Например, если каждый раз сохранять запись о новом обращении с одним и тем же Id (а при нормальной работе он уже есть в запросе к /0/DataService/json/SyncReply/InsertQuery), то не создастся много записей, а будут ошибки.

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

кейс: обрабатывая обращение КЦ назначает ответственных. Необходимо добавить два и более человек, но не группу. На данный момент система позволяет добавить только одного ответственного и одну группу. 

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

Нравится

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

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

Но учтите, что на это поле завязано много логики, как специфичной для раздела обращений, так и общей для всех разделов (например, выдача ответственному прав доступа). Всю её потребуется адаптировать под разработанную функциональность.

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

спасибо

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

Добрый вечер!

 

Прошу помощь с настройкой распределения обращений.

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

Т.е. агент тех. подержки видит только свои обращения.

p.s прикладываю схемуИзображение удалено.

Нравится

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

Альмир, можно попробовать реализовать это бизнес-процессом:

 

Сначала создаём в контакте (или контрагенте, если привязка будет ним) новое поле «Агент КЦ» (или используем для этой цели стандартное поле «Ответственный»).

 

Затем создаём БП, срабатывающий при создании обращения. Проверяем в нём значение поля «Контакт» и по ссылке «Агент КЦ» этого контакта. Если там заполнено, распределяем обращение на него, выставляя в нём поле «Ответственный». А если пусто, то есть контакт ничейный, то распределяем на того, у кого меньше других обращений, то есть выставляем его в «Ответственный» в обращении и «Агент КЦ» в контакте.

 

Видеть только свои записи можно при помощи раздачи прав доступа только ответственному. В БП есть специальный элемент для работы с ними. См. пример работы с ним тут.

 

При разработке нужно всё проанализировать и учесть, не конфликтует ли с уже существующей логикой очередей и подобного.

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

Доброго времени суток.

Работаю с разделом Case(Обращения). Для непортальных пользователей можно легко при помощи мастера перенастроить прогресс бар. Например, сделать несколько прогресс баров в зависимости от значения какого-нибудь поля. Но для портальных не понятно, как это сделать. Может кто-то сталкивался и подскажет, как это реализовать?

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

Нравится

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

Здравствуйте, Кирилл!

 

Ваш вопрос по нескольким DCM в зависимости от типа записи? Если да, то это настраивается в дизайнере и работает в новых (созданных мастером) разделах. В CasePage тоже по идее должно. Если вопрос как сделать разные наборы для портала и системы – никак. DCM один и он общий для обоих пользователей. Пользователь на портале видит те же шаги, что и пользователь системы. А тип выбирается в зависимости от записи и тоже не зависит от типа пользователя.

Мотков Илья,

Да, по нескольким DCM. В разделе Case  в мастере настроил несколько progressbar в зависимости от значения поля. Для системных пользователей всё работает. Но для портальных пользователей не работает. Отображается progressbar по умолчанию при любом значении указанного поля. Разные наборы для портала и системы мне не нужно делать

Походу проблема, возможно, из-за кастомной разработки. Развернул чистую версию 7.14.3 и там всё корректно работает.

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

Каким образом использовать функционал сервисных инженеров по сервису? 

В курсах указано:

1) Создать сервис и указать сервисных инженеров по уровню поддержки

2) В обращении указать сервис и уровень поддержки (по умолчанию указан 1 уровень), после чего в полях группа ответственных и ответственный должны быть доступны выбранные группы/ответственные. Но такого не происходит. Доступны все группы и все пользователи.

Нравится

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

Константин Марков,

Напишите запрос в службу поддержки, возможно, что в коробке ошибка, или в новой версии изменилась логика, а в документацию изменения внести не успели.

А стрелка вниз в этом поле ещё работает? Кажется, ею можно было вызвать отфильтрованный список

 

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

Константин Марков,

Напишите запрос в службу поддержки, возможно, что в коробке ошибка, или в новой версии изменилась логика, а в документацию изменения внести не успели.

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

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

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

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

Изображение удалено.

Нравится

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

Добрый день.

Если хотите сравнивать значения до и после, то есть 2 варианта.

1. Запускать процесс не по сигналу, а из клиентских скриптов, например, из карточки редактирования обращения.

2. Реализовать данную логику через событийные процессы схемы таблицы на серверной стороне.

И в одном, и в другом случае есть возможность сравнить значение до изменения и после.

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

Добрый день.

Если хотите сравнивать значения до и после, то есть 2 варианта.

1. Запускать процесс не по сигналу, а из клиентских скриптов, например, из карточки редактирования обращения.

2. Реализовать данную логику через событийные процессы схемы таблицы на серверной стороне.

И в одном, и в другом случае есть возможность сравнить значение до изменения и после.

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

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