Из-за некоторых архитектурных особенностей Web-приложений невозможно реализовать абсолютно аналогичный функционал в точности как для Desktop – редакции для ресурсоёмких и длительных по времени операций (таких, как загрузки и выгрузки больших файлов). В связи с этим был разработан функционал так называемых «фоновых заданий».
Фоновое задание – это задание (обычно долгое по выполнению), выполняемое на сервере без участия пользователя и позволяющее не блокировать работу пользователя, и не заставлять его держать вкладку браузера открытой (в отличие от Desktop-редакции, где до окончания процесса окно Системы должно быть открыто). Так же механизм фоновых заданий позволяет более точно и правильно отслеживать прогресс выполнения задания и управлять им соответственно.
Как правило, все фоновые задания складываются в папку типа Фоновое задание
которая создается пользователем под корневым элементом в обозревателе проектов и документов.
Рис 1. Папка "Фоновых заданий" и "Фоновые задания"
В данном состоянии пользователь добавляет необходимые файлы и связи для фонового задания, после чего переводит его в состояние Готов к работе
. Так же доступен переход в состояние Выполнено
и Завершено с ошибками
.
В данном состоянии пользователь не как не взаимодействует со связями и файлами фонового задания т.к. оно в любой момент может быть захвачено обработчиком и переведено в состояние В работе
. Пользователю запрещено самому переводить фоновое задание в состояние В работе
это может привести к ошибкам. Пользователь может при желании перевести фоновое задание назад в состояние <Нет>
(не рекомендуется).
С данным состоянием пользователю запрещено взаимодействовать, с этим состоянием должен работать только обработчик. Так же в этом состоянии запрещено проводить какие-либо манипуляции с фоновым заданием.
Не рекомендуется проводить манипуляции с объектами которые могут или задействованы фоновым заданием.
Данное состояние указывает что фоновое задание завершено. Пользователь на данном состоянии фонового задания может проводить над ним любые действия. Если пользователю необходимо запустить это задание заново он переводит его в состояние Готов к работе
. Так же доступен переход в состояние <Нет>
.
Данное состояние указывает что фоновое задание завершено с ошибками, ошибку можно просмотреть в атрибуте Сообщение
. Пользователь на данном состоянии фонового задания может проводить над ним любые действия. Если пользователю необходимо запустить это задание заново он переводит его в состояние Готов к работе
. Так же доступен переход в состояние <Нет>
.