Вопрос

Еще раз о процессных задачах

Коллеги, вот постом Светланы Матвеевой навеяно. Смотрите, какая штука получается - в процессах есть четыре элемента для взаимодействия с пользователем:

1. Задача

2. Пользовательский диалог (что есть активность в приципе)

3. Автогенерируемая страница

4. Преднастроенная страница.

Теперь последовательно:

1. Если используется мобильное приложение, то очевидно, что п.2. попадет в синхронизацию, т.е. можно будет его выполнить как обычную задачу в мобильном приложении, что приведет к смерти процесса. Тоже самое будет если произойдет например синхронизация с MS Exchange и там ее выполнят или удалят. Это проблема 1.

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

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

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

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

Т.е. мы видим следующие беды:

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

2. Потеря окна пользователем требует от него недюжинной смекалки и еще прав ибо в журнал не все попадут.

3. Даже при наличии этой смекалки практически невозможно найти объект, необходимый для продолжения работы, в любом случае это заберет немерянное количество времени.

И как это все решать?

 

Нравится

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

Дмитрий, здравствуйте!

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

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

Виталий, спасибо за ответ. В нем правда есть пара нюансов: 1) про пункт 2 Вы не написали вообще, 2) что касается кнопки действия - а как Вы предлагаете эту запись находить?

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