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

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

Нравится

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

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

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

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

Добрый день!

Не обессудьте первый день рою bpm.

Увидел две таблицы: "Пользователь портала" и "Пользователи/роли (Представление)". В чем разница?

Я так понимаю чтобы добавить пользователя портала нужно добавить запись в таблицу "Пользователи/роли (Представление)"

Делаю через действия системы "Добавить данные" и он мне выдает ошибку: System.NullReferenceException: Object reference not set to an instance of an object.

Ошибка сама по себе понятна после выполнения результат данного действия равен NULL, вопрос почему? Или Таблица "Пользователи/роли (Представление)" вовсе не таблица, а как и написано в скобках это View и пользователя портала (системы) нужно добавлять как-то по другому.

И самый главный вопрос где прочитать? про это все можно искал в академии: толи там нет, толи искалка еще не выросла

Нравится

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

Да, это - view. На основе SysAdminUnit.

Не нашел таблицу "Пользователь портала", но примерный алгоритм работы ролей и пользователей в bpm:

1) все роли и пользователи хранятся в SysAdminUnit (да, это помойка из кучи записей, с разными типами)

2) в SysUserInRole задаётся связь роли (из SysAdminUnit) с контактом (из того же SysAdminUnit)

Как-то так. И да, почитать - нигде. У нас тут практикуется исключительно хождение по граблям. Странный способ получения экспириенса, но какой есть...

Чисто для примера: я вот тут вчера узнал, что система в деталях возвращает UsrDate(поле типа DateTime из карточки родителя, подтягивал через аттрибуты) в виде строки. А при заходе в страницу редактирования той же самой записи, тот же самый код возвращает UsrDate, но уже в типе DateTime. Так и живем ¯\_(ツ)_/¯

Да, это - view. На основе SysAdminUnit.

Не нашел таблицу "Пользователь портала", но примерный алгоритм работы ролей и пользователей в bpm:

1) все роли и пользователи хранятся в SysAdminUnit (да, это помойка из кучи записей, с разными типами)

2) в SysUserInRole задаётся связь роли (из SysAdminUnit) с контактом (из того же SysAdminUnit)

Как-то так. И да, почитать - нигде. У нас тут практикуется исключительно хождение по граблям. Странный способ получения экспириенса, но какой есть...

Чисто для примера: я вот тут вчера узнал, что система в деталях возвращает UsrDate(поле типа DateTime из карточки родителя, подтягивал через аттрибуты) в виде строки. А при заходе в страницу редактирования той же самой записи, тот же самый код возвращает UsrDate, но уже в типе DateTime. Так и живем ¯\_(ツ)_/¯

Варфоломеев Данила,

Спасибо

Но я так понимаю в эти таблицы нельзя добавить данные через элемент бизнес-процесса "Добавить данные" (не представлены в выборе объектов для добавления) и нужно писать скриптом?

Красильников Аександр,

Есть, просто называются "Объект администрирования" и "Вхождение пользователя в роли"

Варфоломеев Данила,

Где можно узнать, "Понятное имя" таблиц БД?

В разделе «Конфигурация».

Или в базе в свойствах таблицы:

Красильников Аександр,

Используются для выбора заголовки таблиц

Всем спасибо за оперативные ответы

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

Добрый день.
Есть следующий кейс:
Необходимо создать рабочие места на портале самообслуживания для разных ролей пользователей портала  (Клиенты и партнёры) с различным набором разделов и соответствующими доступами для конкретного пользователя. Данный подход уже реализован на портале самообслуживания Terrasoft. 

Как можно решить данный кейс? 

Обнаружил, что в группу "Все пользователи портала" нельзя добавить подчинённые группы. И даже добавить их с помощью sql-инъекции, права для портала на них не распространяются.
  
 

Нравится

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

Специальной логики с разными разделами на портале Terrasoft нет. Для разграничения прав на обращения только своей компании используются обычные группы (например, по контрагентам), не входящие в группу  «Все пользователи портала».

Мотков Илья,

Меня интересует именно создание разных рабочих мест на портале самообслуживания, и предоставление на них доступа для разных дочерних ролей (Клиенты/Партнёры) роли "Все пользователи портала".

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

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

Мотков Илья,

На портале самообслуживания для партнёров есть два рабочих места с разным набором разделов.
Прошу поделится кейсом реализации подобной функциональности.

 

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

Мотков Илья,

Прошу предоставить инструкцию по реализации такой настройки.
Пытался сделать, с использованием базовых механизмов орг. и функциональных ролей, но выделить в них отдельные  группы пользователей портала нет возможности:
1. Для пользователя портала нельзя добавить функциональные роли.
2. Для орг. группы "Все пользователи порта" нельзя добавить подчинённые орг. группы.

3. Как быть с настройкой аналитики на главной странице портала для разных групп пользователей?

И получается, что если я буду добавлять доступ на конкретное рабочее место для отдельных пользователей, то всё равно эти пользователи будут видеть все рабочие места всех пользователей портала.

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

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

Тогда это новое место будет доступно для всех пользователь портала, а мне нужно только для определённой подгруппы

Да, всё верно. Для группы «All portal users».

Мотков Илья,

Т.е. для обеих рабочих мест дан доступ только для пользователей портала?

Из Вашего скриншота это нельзя достоверно выяснить. Попробовал на тестовой базе, добавил второе рабочее место с указанием прав для этой группы, зашёл под портальным пользователем — видно оба рабочих места.

Да, рабочее место создать можно.

Но вопрос в другом: Как отобразить рабочие места в зависимости от роли пользователя портала (партнёр/клиент)?

Все пользователи портала входят в одну и ту же роль.

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

Добрый день!

Столкнулись с следующей ситуацией: для портальных пользователей не отображается на детали История email отправленные ими же. 

Кейс: cпочты пользователя портала отправляется письмо на почту техподдержки, это письмо регистрируется в системе (активность с типом email), по нему создается обращение в системе со связью с письмом. Можно добавить портальное сообщение. Со стороны бэкофиса на странице Обращения на детали История первой записью будет отображаться письмо от пользователя. Если зайти со стороны портала, то данного письма на детали не будет.

Подскажите, пожалуйста, где можно настроить видимость писем на детали история для пользователей портала?

Спасибо! 

Нравится

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

Вы указали, что пользователь портала не видит писем в «Истории», это корректное поведение системы. В рамках базовой логики – портал самообслуживания не подразумевает общения письмами, в таком случае вообще портал самообслуживания теряет смысл. В системе реализована отдельная логика по работе с обращениями, происхождение у которых «Email». А пользователь, у которого есть портальные учетные данные – предполагается будет общаться с поддержкой и регистрировать обращения через портал.

Мы реализовывали раздачу прав пользователям портала на записи в БП. 

Ключевое здесь - это выдача прав на Activity по полученному письму. 
И основная сложность - это отловить получение письма. Примерно так выглядит сигнал на это событие:

Владмир, спасибо за информацию. Жалко, что на скриншоте ничего не видно. Можно сделать дололнение для маркета.

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

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

Владимир Соколов,

Владимир, подскажите, пожалуйста, как именно происходила раздача прав (настройка элемента процесса)? Требуется ли дополнительная настройка прав в разделе Администрирования: Доступ к объектам?

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

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

Добрый день.

Столкнулись со следующей проблемой:

Есть объект заявка, при создании этого объекта запускается бизнес процесс "Обработать заявку". Заявка может быть создана и со стороны основного приложения, с потрала и с мобильного клиента. 
Проблема в том, когда заявка создается от пользователя с ролью "Все пользователи портала" (т.е. от пользователя с очень ограниченными правами), то и Бизнес процесс запускается под этим пользователем. И процесс перестает работать на шаге создания активности:
 

После того как скачали текст ошибки и изучил исходники - выяснилось, что портальному пользователю не хватает прав на объект ActivityParticipantRole. После того как были выданы права на этот объект, появилась ошибка, что прав не хватает уже на объект "ActivityParticipant". Дальше права не стали выдавать (т.к. есть опасения что придется выдавать очень много).

Пока мы видим 3 решения этой проблемы: 

а) Последовательно выдавать пользователям портала права на все необходимые объекты - видится что это не самый правильный вариант решения проблемы, но рабочий.

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

Собственно вопросы:
1) Есть ли еще какие нибудь варианты решения и как "правильно" решить данную проблему?
2) Можно ли запускать процесс от конкретного пользователя?

 

Нравится

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

По пунктам:

а) Действительно рабочий, но куча проблем оттестировать этот момент.

б) Я бы переделал весь процесс и выборки/изменения/удаления делал через C# скрипт, пользуясь UserConnection.AppConnection.SystemUserConnection

в) скорее всего запускать так нельзя, только выполнять отдельные элементы под "видом" супервизора (см. пункт б)

Добрый день. Вот тоже столкнулся с проблемой. Что за пункт 6? 

Что то сайт совсем поломался, процитировать не могу.

По поводу "Я бы переделал весь процесс и выборки/изменения/удаления делал через C# скрипт, пользуясь UserConnection.AppConnection.SystemUserConnection" - наш процесс не маленький, по этому такая переделка будет очень трудоемкой, возможно даже более трудоемкой чем выдача прав.

Придумали еще 1 вариант, это запускать процессы по новым заявкам по таймеру (например раз в 1, 5 или 10 минут получать все заявки по которым еще не запущен процесс и запускать)

Габбазов Искандер Рустемович,

А как вы считываете, что по данному обращению был запущен именно тот процесс который активность создаёт? 

Евгений. В журнале процессов это все можно увидеть

Габбазов Искандер Рустемович,

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

А, вопрос про то запущен процесс уже или нет? Так можно поле флаг создать. Например когда процесс по заявке стартует, сразу заполняем это поле флаг. А для запуска ищем все заявки у которых этот флаг не отмечен.

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

Доброго времени суток.
Воникла проблема с BPMonline Service Desk. Заходя во вкладку Инструменты - Администрирование - Пользователи портала, система выдает сообщение ошибки:

В работе приложения BPMonline возникла ошибка.
Exception Message: Невозможно получить экземпляр схемы типа "Terrasoft.Configuration.SysSSPUserQSchema"
Exception Type: Terrasoft.Common.NullOrEmptyException
Exception Source: Terrasoft.Core

Нравится

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

Стандартно в конфигурации нет схемы с названием «SysSSPUserQSchema». Возможно это какая-то доработка?
Что пишет в полном тексте сообщения?
Какая у Вас используется версия системы?

 

Application Version: 5.4.0.1315

А у Вас в разделе «Конфигурация» есть схема, называющаяся «SysSSPUserQSchema» или «SysSSPUserQ»?
Судя по коду, логика системы обращается к схеме по имени и не находит. Возможно, она не перенесена в корневую конфигурацию из другой или на основной сервер с сервера разработки.
Или где-то в коде портальной страницы допущена опечатка, вместо «SysSSPUser» написали «SysSSPUserQ».

При попытке открыть метаданные SysSSPUserQ выдало ошибку. (см. скриншоты)

Exception Message: Невозможно получить экземпляр схемы типа "Terrasoft.Configuration.SysSSPUserQSchema"
Exception Type: Terrasoft.Common.NullOrEmptyException
Exception Source: Terrasoft.Core
 
Exception Stack Trace:
   at Terrasoft.Core.SchemaManager`1.InitializeSchema(ISchemaManagerItem schemaManagerItem, Assembly assembly)
   at Terrasoft.Core.SchemaManagerItem`1.get_Instance()
   at Terrasoft.Core.Manager`2.GetInstanceByUId(Guid uid)
   at Terrasoft.Core.SchemaManager`1.GetReadableSchemaMetaData(Guid schemaUId, UserConnection userConnection)
   at Terrasoft.WebApp.SolutionExplorerModule.OnViewMetaDataMenuItemClick(Object sender, AjaxEventArgs e)
   at Terrasoft.UI.WebControls.Controls.ScriptManager.RaisePostBackEvent(String eventArgument)
   at Terrasoft.UI.WebControls.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 
Form:
	submitAjaxEventConfig: {"config":{"viewStateMode":"include","extraParams":{"tag":""}}}
	__EVENTTARGET: ScriptManager
	__EVENTARGUMENT: ViewMetaDataMenuItem|event|Click
	__VIEWSTATEFIELDCOUNT: 13
	__VIEWSTATE0: /wEPGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYWBQ1TY3JpcHRNYW5hZ2VyBRlTeXNTY2hlbWFGb2xkZXJEYXRhU291cmNlBRNTeXNTY2hlbWFEYXRhU291cmNlBQlNYWluUGFuZWwFCUxlZnRQYW5lbAUPQWN0aW9uc1RhYlBhbmVsBQdGb.....................

Возможно, стандартную схему «SysSSPUser» кто-то пытался доработать и переименовать и сломал.
Посмотрите у неё значения «Изменено» и «Изменил».
Можно накатить схему, взятую с тестового (или наоборот, основного) сайта.
Ещё можно удалить самую свежую запись в таблице SysSchemaInSolution, где SysSchemaId равно Id этой схемы. Это вернёт предыдущую версию.

Exception Message: Элемент коллекции с идентификатором "{2BCBE4B8-FD0E-4CC6-A979-93574A377150}" не найден
Exception Type: Terrasoft.Common.ItemNotFoundException
Exception Source: Terrasoft.Core

Часто бывает и такое.

Это означает что не найден элемент с определенным идентификатором. Как пример, удалили поле в объекте, затем его добавили, но ранее уже была выполнена привязка к полю.

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

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

Здраствуйте,

При синхронизации BPMOnlineServiceDesk (Версия 5.4.0.1315) с LDAP-ом добавились "пользователи портала" на раздел "Администрирование". Захотела войти на портал этих пользователей, но у меня не получилась. (прикрепленный файл) Выдает следующую ошибку:

"Ошибка авторизации. Вы ввели неправильный логин или пароль, либо Ваша учетная запись неактивна"

Хотела уточнит. Разве "логин" и "пароль" пользователя портала не синхронизируется с аккаунтом AD?
Знаю что, для пользователей синхронизируется. А как же для "пользователи портала"? Для них администратор сам дольжен назначить пароль?

Заранее спосиба

С уважением,
Гюнель Рустамова

Нравится

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

Гюнель, подозреваю что у Вас в Web-config'e в списке разрешенных провайдеров авторизации не добавлен SSPLdapProvider, либо же в этом же конфиге параметры этого провайдера не правильно сконфигурированы.

Проверьте, пожалуйста.

Спосиба, Дмитрий

Мы нашли в Web-config'e SSPLdapProvider, но на параметр "ServerPath" value="хх.хх.хх.хх"добавлен чужой IP. (Прик. файл "SSPLdapProvider") Не могли бы помочь? IP какого сервера нужно туда добавлять? И нужно ли, какие та другие изменение?

Заранее спосиба,

С уважением
Гюнель

Гюнель, IP сервера LDAP.
Смотрите, если у Вас настроена и работает LDAP-авторизация для "обычных" пользователей, все настройки можете посмотреть в настройках этого провайдера (LDAP). Они будут аналогичны.

После настройки, не забудьте включить этот провайдер в список разрешенных - через запятую без пробелов.

Спосиба за ответь.

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

Заранее спосиба

С уважением,
Гюнель

Гюнель, добрый день.

Перезагружать сервер не нужно.
Изменения нужно внести здесь:

Я все итак сделала. Но к сожелению не сработала. Выдаеть ошибку (прик. файл "SSPLdap_Error")
Что я не правильно настроила?

С уважением,
Гюнель

Гюнель, попробуйте в настройках SSPLdapProvider поменять путь с

 

на

 

На этот раз выдает следующую ошибку: (прик. файл "SSPLdap_Error02")

"Ошибка авторизации Exception of type "System.Security.SecurityException" was thrown."

С уважением,
Гюнель

Гюнель, прикрепите web.config, пожалуйста.

Добрый день!

в web конфиге приложения у нас прописан один коннектор ldap. При проблемах с контроллером домена в приложение невозможно авторизоваться по ldap. Возможно ли в вэбконфиг прописать адреса ДВУХ контроллеров домена, для обеспечения отказоустойчивости?

Здравствуйте!

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

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