Предлагаю реализовать функционал в БП, поле в котором можно выбрать от кого пользователя запускать процесс.
Когда процессы запускаются из под портального пользователя да и из под любого другого не отрабатывают части процесса так-как у пользователей которые запустили процесс нет прав на что-то. А раздавать им на это права нельзя. Если можно будет выбирать пользователя по умолчанию это всем упростит жизнь.
Понравилась ли вам эта идея?
Евгений, здравствуйте!
Ваше пожелание передано аналитикам продукта для рассмотрения возможности реализации данной функциональности в последующих релизах.
Обращаю Ваше внимание на то, что на данный момент есть возможность реализовать такую логику с помощью вызова другого процесса из элемента Задание - сценарий с указанием пользователя, от имени которого выполняется запуск. Пример кода предоставлен ниже.
var userConnection = Get<UserConnection>("UserConnection");
string schedulerJobGroupName = "MyProcessGroup";//- Любое имя
string jobProcessName = "UsrSchedule2"; //- Название процесса
string schedulerJobName = "MyJobName"; //- Любое имя
int startOffset = 5; //- Количество секунд до старта
string userName = "user2";
AppScheduler.RemoveJob(schedulerJobName, schedulerJobGroupName);
var job = AppScheduler.CreateProcessJob(schedulerJobName, schedulerJobGroupName, jobProcessName, userConnection.Workspace.Name, userName);
var trigger = new SimpleTriggerImpl(schedulerJobName + "Trigger", schedulerJobGroupName, DateTime.UtcNow.AddSeconds(startOffset));
AppScheduler.Instance.ScheduleJob(job, trigger);
return true;
Евгений,
Изменение ответственного в ходе процесса не решит проблему, так как проверяются права пользователя, под которым был запущен процесс.
Рекомендую для реализации воспользоваться именно вызовом из планировщика, как описано в предыдущем ответе.
Евгений,
Для вызова в Задании - сценарии указанных методов необходимо также добавить в дизайнере процесса следующие библиотеки:
- Quartz
- Quartz.Impl.Triggers
-Terrasoft.Core.Scheduler
- System