Проверить выполнение задачи 1с

Обновлено: 04.07.2024

Как говорилось в описанной ранее статье (Книга знаний: v8: Адресация задач.) для объекта "Задача" очень важны свойства адресации. В этой статье я постараюсь на простом примере показать как правила адресации могут применяться в контексте задач создаваемых точками маршрута бизнес процессов.

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

Перечисление Роли с двумя значениями: Руководитель и РядовойСотрудник.

Параметр сеанса "ТекущийИсполнитель", тип: СправочникСсылка.Исполнители.

Регистр сведений "ПравилаАдресации" с тремя измерениями: Исполнитель (ведущее, запрет незаполненных значений, тип: СправочникСсылка.Исполнители), Отдел (не ведущее, запрет незаполненных значений не установлен, тип значения: СправочникСсылка.Отделы) и Роль (не ведущее, запрет незаполненных значений не установлен, тип значения: ПеречислениеСсылка.Роли).

Задача "ЗадачиБП" с тремя реквизитами адресации: Исполнитель (основной реквизит адресации, тип: СправочникСсылка.Исполнители), Отдел (тип значения: СправочникСсылка.Отделы) и Роль (тип значения: ПеречислениеСсылка.Роли). В свойстве "Адресация" указан регистр сведений "ПравилаАдресации", "Основной реквизит адресации" - "Исполнитель", "ТекущийИсполнитель" – ссылка не параметр сеанса "ТекущийИсполнитель".

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

Несколько слов о свойствах бизнес-процессов

Описанием алгоритма бизнес-процесса служит карта маршрута. Точки маршрута карты маршрута бизнес-процесса делятся на две основные категории:

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

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

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

С одним объектом "Задача" может быть связано несколько БП.

А что на практике

Создадим простой БП . Ну например БП внутреннего аудита компании.

Карта маршрута бизнес процесса будет включать в себя три точки действия. Это основные точки карты маршрута бизнес процесса. Эти точки создают задачи и имеют интерактивные события.

Кроме точек действия любой бизнес процесс должен включать в себя хотя бы по одной точке старта и точки завершения. Эти точки не создают задачи, а используются лишь для описания не интерактивных событий "ПередСтартом" и "ПриЗавершении".

Но нас сейчас интересуют в первую очередь точки действия и те задачи, которые они создают.

Рассмотрим свойства каждой из точек действия подробно.

1. Начать Аудит. Кроме имени для точки действия можно настроить адресацию (Адресация – это группа свойств точки действия). К сожалению, указать на этапе разработки бизнес процесса конкретного исполнителя не получится, так как это элемент справочника – раз, да и для каждого бизнес процесса видимо может быть разный ответственный за проведение аудита – два. Назначать косвенные свойства адресации в нашем конкретном случае нет смысла так как инициатор этого бизнес-процесса сам назначит ответственного (это будет дополнительным реквизитом бизнес-процесса). Как же назначить исполнителя для задачи формируемой точкой действия? Довольно просто. Необходимо перехватить событие создания задач этой точкой действия. Сделать это можно в двух обработчиках событий: "ПередСозданиемЗадач" – этот обработчик событий вызывается когда задачи еще не созданы, можно создать новый задачи и полностью заполнить их свойства; "ПриСозданииЗадач" – здесь задачи уже созданы их можно отредактировать.

В нашем случае лучше воспользоваться обработчиком события "ПриСозданииЗадач", так как необходимо лишь указать исполнителя, а все остальные свойства задачи менять ни к чему.

Вопрос: Почему цикл? Разве задача не одна формируется? А вот этого никто не знает. Точка действия может формировать сколь угодно задач.

Кстати, если в событии "ПриСозданииЗадач" установить свойство "Выполнена" в Истина, то задача будет выполнена, но ход бизнес-процесса дальше не сдвинется.

В принципе все что связано с первой точкой действия мы сделали. Теперь задача формируемая этой точкой будет наделена конкретным исполнителем, указанным в реквизите бизнес-процесса.

2. Подготовить отчетную документацию. В свойствах адресации этой точки действия установим значение "Роль" – Руководитель. И флаг "Групповая".

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

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

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

Но давайте посмотрим, как ведет себя стандартный механизм.

Для проверки понадобится инициализировать параметр сеанса. Конечно, хорошо бы это делать при начале работы системы, но нам для удобства проверки как себя ведут задачи, инициализацию можно сделать в форме списка справочника "Исполнители". Я создал форму списка (не меняя настройки, которые по умолчанию предлагает конструктор форм) и в панели действий формы описал новую кнопку "УстановитьПС" (ПС – параметр сеанса). Вот процедура, которая связана с действием этой кнопки:

В справочнике "Исполнители" уже в режиме 1С:Предприятие введу нескольких пользователей.

И регистр сведений "Правила адресации" заполним следующим образом:

Что-то многовато у меня руководителей получилось :)

Самое время создать и запустить бизнес-процесс. В качестве ответственного укажем Петрова.

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

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

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

Могу предположить, что у некоторых вместо трех задач создалась одна без исполнителя, только с указанной ролью "Руководитель". Это связано с тем, что в свойствах задачи "ЗадачиБП" в реквизитах адресации не проставлено соответствие измерению регистра сведений "ПравилаАдресации".

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

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

ОтделАудита – тип: СправочникСсылка.Отделы.
РольАудитора – тип: ПеречислениеСсылка.Роли.

Формы БП в нашей конфигурации нет, по этому новые реквизиты у пользователя появятся автоматически.
Опишем, по аналогии с первой точкой действия заполнение реквизитов адресации в событии "ПриСозданииЗадач":

Для наглядного назначения задач сформируем форму списка. В форме списка предусмотрим переключение в режим просмотра задач "По исполнителю". Для этих целей в панели действия формы создадим новую кнопку "ПоИсполнителю" с установленным свойством "Пометка".

В модуле формы опишем две процедуры.

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

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

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

Теперь можно проверять. Для проверки я введу еще одного исполнителя "Каменский", и в регистре сведений задам новое правило адресации: Каменский, отдел ремонта, рядовой сотрудник.
В стартованном БП укажем значения реквизитов "ОтделАудита" – Отдел ремонта, и "РольАудитора" – рядовой сотрудник.

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

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

По тем правилам адресации которые заданы в регистре сведений созданная задача должна отображаться в режиме просмотра "ПоИсполнителю" у двух сотрудников: Каменский и Сидоров. У Иванова, не смотря на то, что в регистре сведений он числится прикрепленным к отделу "Отдел ремонта", задача отображаться не будет, так как роль не соответствует правилам адресации.

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

Причем событие "ПриВыполнении" ("ПередВыполнением") отрабатывает не только у задачи, но и у точки маршрута, которая ее породила!

В нашем примере я именно так и поступлю. Опишу событие "ПриВыполнении" точки действия "ОбработатьДокументы". Событие возникает после одноименного события самой задачи.

Исходя из того, что было описано выше, можно прийти к следующему выводу.
Для точек действия можно назначить параметры адресации при описании маршрута БП, но только в том случае если значения адресации доступны в режиме "Конфигуратор" (предопределенные реквизиты справочников, значения перечислений и т.п.).

Если при создании задачи по точке действия исполнитель или другие параметры адресации известны можно задать их в событии "ПриСозданииЗадач" или "ПередСозданиемЗадач", ориентируясь на реквизиты БП или другие данные.

Точки маршрута с признаком "Групповая" создают столько задач, сколько исполнителей подходит по правилам адресации, причем правила адресации в этом случае трактуются по указанным значениям адресации в точке маршрута, не указанные значения не учитываются вообще.

Точки маршрута без признака "Групповая" создают одну задачу (если в соответствующем событии точки маршрута не прописано обратное), адресация таких задач стандартная.

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


Задачи тесно связаны с бизнес-процессами. При продвижении бизнес-процесса по карте маршрута в точках действия или в точках вложенного бизнес-процесса могут автоматически создаваться задачи. Каждая задача связана с бизнес-процессом и точкой маршрута:

Задачи

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

Помимо реквизитов для связи с бизнес-процессом и точкой маршрута у задач есть реквизит Выполнена типа Булево:

Выполнена

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

Выполнено автоматически устанавливается в Истина при выполнении задачи кнопкой Выполнено или Выполнено, закрыть:

Выполнено

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

В настройках нумерации задачи есть свойство Авто префикс. Если там выбрать Номер бизнес-процесса:

Авто префикс

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

В этом случае номер первой задачи по бизнес-процессу будет совпадать с номером бизнес-процесса, а в дальнейшем будет увеличиваться только вторая часть номера:

Авто префикс

Адресация бизнес-процессов

У каждой задачи должен быть исполнитель. Для определения исполнителя используется система адресации бизнес-процессов.

Данная система включает в себя несколько элементов:

  • Регистр адресации (регистр сведений)
  • Параметр сеанса для определения текущего пользователя
  • Реквизиты адресации
  • Вспомогательные справочники

Для начала нужно создать вспомогательные справочники. Это будет 2 справочника: Пользователи и Роли пользователей:

Адресация бизнес-процессов

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

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

параметр сеанса

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

Процедура УстановкаПараметровСеанса ( ТребуемыеПараметры ) ИмяПользователя = ПользователиИнформационнойБазы . ТекущийПользователь ( ) . Имя ; Пользователь = Справочники . Пользователи . НайтиПоНаименованию ( ИмяПользователя ) ; НовыйПользователь = Справочники . Пользователи . СоздатьЭлемент ( ) ; ПараметрыСеанса . ТекущийПользователь = Пользователь ;

Теперь создадим регистр сведений, который будет использоваться как регистр адресации. Это будет независимый непериодический регистр сведений с двумя измерениями: Пользователь и Роль:

регистр адресации

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

регистр адресации

Теперь нужно выполнить настройки системы адресации. Это делается на закладке Адресация в задаче:

Адресация

Во-первых нужно создать реквизиты адресации.

Добавим 2 реквизита адресации: Пользователь и Роль:

Реквизиты адресации

В свойстве Адресация нужно выбрать регистр сведений, который используется для адресации:

Адресация

В свойствах каждого реквизита адресации нужно связать реквизит с измерением регистра сведений. Связь указывается в свойстве Измерение адресации. Соответственно реквизит Пользователь нужно связать с измерением Пользователь, а реквизит Роль с измерением Роль:

Измерение адресации

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

Основной реквизит адресации

Теперь для точки действия бизнес-процесса нужно заполнить реквизиты адресации. Это делается в свойствах точки в группе Адресация:

Адресация

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

Не предопределенные элементы можно заполнять в обработчике ПриСозданииЗадач у точки действия. У данного обработчика есть параметр ФормируемыеЗадачи, который содержит в себе массив объектов созданных задач.

Например, добавим у бизнес-процесса реквизит Исполнитель типа СправочникСсылка.Пользователи:

бизнес-процесс

В обработчик ПриСозданииЗадач у всех точек действия бизнес-процесса добавим следующий код:

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

У 1С:Документооборот имеются мощные инструменты, которые позволяют управлять задачами и обеспечивать четкий контроль их выполнения. Система дает возможность фиксировать сроки исполнения даже в случае, если имело место перенаправление.

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


Выполнение задач в 1С Документооборот

Один из самых важных пунктов - "Задачи мне". Здесь все перечислено списком.


Контроль за исполнением и отчеты

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


Через виджет "Контроль" можно быстро получить доступ к контрольным поручениям. Здесь же присутствуют и статусы текущих состояний объектов.


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

Постановка задач

Что представляют из себя задачи в системе? Это визуализированные точки, через которые проходит бизнес-процесс. Кроме того, присутствуют механизмы управления ими.


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

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

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


Управление задачами

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


Как в 1С:Документооборот осуществляется управление задачами и поручениями?


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

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


Процессы можно отправлять:

  • по очереди;
  • всем сразу;
  • смешанно.

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

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

В результате согласующие могут принимают соответствующие решения: "Согласовано с замечаниями", "Согласовано" или "Не согласовано". Решения подписываются с помощью электронной подписи.


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


После согласования создается печатная форма. На нее наносятся визы согласующих, комментарии и дата.


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


Поручениям ставятся процессы "Исполнение". Они могут быть настроены произвольно или на основе имеющихся шаблонов.


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



Об использовании шаблонов бизнес-процессов в 1С Документооборот

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

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


Увидеть все запущенные процессы можно в разделе "Управление процессами" и "Совместная работа".

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

Как настраиваются регламентные и фоновые задания в 1С 8?

Развернутую инструкцию на примере загрузки курсов валют Вы найдете далее.

Регламентные задания в древе метаданных

Что такое регламентные и фоновые задания в 1С

Механизм регламентных и фоновых заданий работает в клиент-серверном режиме работы (SQL), благодаря функционалу СУБД . Если у вас файловая БД, то задание тоже можно настроить, но немного по другому принципу.

Настройка фоновых заданий в клиент-серверном режиме работы 1С

Настройка типового задания

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Расписание выполнения задания 1С 8.3

Внимание! Не забудьте отключить блокировку выполнения регламентных и фоновых заданий на уровне СУБД!

Сделать это можно в утилите администрирования клиент-серверного варианта либо при создания новой БД:

Блокировка регламентных заданий

Настройка регламентных заданий в файловом режиме работы 1С

Двухминутное видео, в котором показано, как настроить регламентное задание в конфигураторе 1С:

Другие статьи по 1С:

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

Внимание! Если Вы используете клиент-серверный режим работы (на сервере), Вам необходимо включить отладку на сервере 1С Предприятия.

список точек останова

Запуск отладки в 1С

запуск отладки

Отладка фоновых заданий 1С

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Включение отладки фоновых заданий и внешних соединений

В этом окне Вы можете установить соответствующий флаг.

Установка точки останова (брейкпойнта)

открытие обработчика

Для того чтобы установить точку останова, необходимо найти нужный программный код и кликнуть дважды на поле, слева от поля ввода кода (или нажать кнопку F9):

установка точки остановки

спиоск активных точек останова

Точка останова 1С с условием (синяя)

Например, остановим цикл на строке с номером 25:

точка останова с условием 1с

Неактивная точка останова (серая)

серая точка останова

Точка останова по ошибке

остановка по ошибке

Пошаговое перемещение по программному коду 1С

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

активация отладки

Чтобы перейти с текущего положения курсора к нужному, минуя промежуточные строчки кода, необходимо установить курсор на нужной строке и нажать shift + F10 (Идти до курсора).

Анализ значений в режиме отладки 1С

Посмотреть значения определенных значений можно разными способами:

Отображение значения при наведении курсора

отображение значения переменной курсором

вычисление выражения

Очень полезно использовать вычисление выражения и выполнить запрос, выгрузить в таблицу значений и посмотреть её.

С помощью него Вы можете подробно узнать, откуда была вызвана процедура и с какими параметрами:

стек вызовов

Смотрите также обзорное видео по отладке в 1С:

Другие статьи по 1С:

Читайте также: