Модуль (конфигурация) согласования документов (на Бизнес-процессах).



Минимальная рабочая конфигурация, реализующая задачу согласования документов. Может быть, в неких типовых конфигурациях данная задача уже реализована – не знаю, это мое «детище» (мой велосипед) :).
Думаю, в любом случае, полезно посмотреть тем, кто возится с «Бизнес-процессами».
Для полноценной работы необходима публикация на Web-сервере

Задача

Разработка модуля (части конфигурации), отвечающего за согласование документов.

Процесс согласование может происходить в несколько этапов. На каждом этапе возможно параллельное согласование несколькими сотрудниками. Если все сотрудники этапа согласовывают документ – документ переходит на следующий этап согласования. Если хотя бы один не согласовывает – процесс согласования завершается. Количество сотрудников каждого этапа и количество этапов  заранее не определено (для каждого документа может быть индивидуально).

Модуль должен быть реализован на «управляемых формах»  (для работы через браузер, например Internet Exploer – IE ). Должна быть реализована возможность рассылки по почте ссылок рецензентам на документ, который необходимо согласовать. При переходе из письма на ссылку, должна открывать форма, позволяющая выполнить согласование.

Релиз программы 1С  — 8.2.15.289

Пароль у пользователя «Администратор» отсутсвует.

 

Общие сведения

Модуль разработан в виде отдельной (работоспособной) конфигурации и имеет «зачатки» всех необходимых механизмов. Но, при интеграции модуля в рабочую конфигурацию необходимо не только перенести в рабочую базу объекты метаданных модуля, но и доработать его в соответствии с конкретными требованиями (например, в модуле не реализована автоматическая рассылка писем, а только создан «демонстративный» механизм такой возможности). Т.е. в данном модуля приведены только минимально необходимые объекты и механизмы.

Процесс согласования реализован при помощи механизма Бизнес-процессы. Каждый бизнес-процесс это согласование одного релиза документа. Если при выполнении согласования кто-то из рецензентов отклонил документ, то для выполнения повторного согласования (после устранения замечаний в документе) необходимо запускать новый бизнес-процесс.

 

Объекты модуля

1. Документ «Некий документ» — прообраз документа подлежащего согласованию.

2.  Константа «АдресСайта» — адрес расположения конфигурации на web-сервере. Необходима для формирования ссылки перехода на согласование из письма.

3. Справочник «Сотрудники» — список сотрудников организации, которые могут выступать в качестве согласующих документа. Для возможности отправки сотрудникам уведомлений о необходимости согласования документов, у них должен быть заполнен реквизит “E-mail»

4. Справочник “СхемаСогласования» — список заранее подготовленных шаблонов согласования. Хотя каждое согласование может происходить по своему собственному маршруту, в данном справочнике можно хранить «заготовки».

Справочник имеет две табличные части «Этап» и «СоставЭтапа».

В табличной части «Этап» определяются этапы согласования документов.

В табличной части «СоставЭтапа» приводится список сотрудников, согласующих на определенном этапе. Каждая строка Табличной части «СоставЭтапа» подчинена определенной строке «Этап».

Предусмотрена возможность через стандартный механизм «ввод на основании» создание по образцу элемента справочника СхемаСогласования нового процесса согласования документа.

5. Бизнес-процесс «Согласование». Регламентирует согласование отдельно взятого документа. Может быть введен на основании элемента справочника «СхемаСогласования» (при этом возможна редактирование этапов и составов). Имеет структуру сходную со справочником «СхемаСогласования».

6. Задачи «Согласование». Назначенные рецензентам этапа согласования документа. Имеет две команды:

Команда «СформироватьСсылку» — выводит в окно сообщений ссылку на данную задачу (которую можно вбить в адрес IE)

Команда «ОтправитьПочту» — отправляет почту адресату с вложенной ссылкой. В текущей версии отправка почты осуществляется через объект «Почта».

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

 

Заключение.

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

7 Comments

  1. Craig

    При создании ошибка

    {Задача.Согласование.МодульМенеджера(4)}: Поле объекта не обнаружено (Ключ)

    ЗадачаСсылка = Параметры.Ключ;

    Reply
  2. Ягг

    (1) Craig, вообще-то в ручную создавать отдельно задачу смысла нет — создается бизнес-процесс (а он уже создает задачи).Но ошибка действительно есть. Поэтому в модуль менеджера перед ЗадачаСсылка = Параметры.Ключ нужно добавить проверку

      Если НЕ Параметры.Свойство(«Ключ») Тогда
    СтандартнаяОбработка = ложь;
    возврат;
    КонецЕсли;
    

    Этой же проверкой и блокируется «ручное» создание задачи (будет вываливаться предупреждение о неопределенности формы — документ согласования и бизнес-процесс не определенны).

    ЗЫ. Незнаю, нужно ли «перезаливать» конфу на сайт, или подождать других замечаний. Пока оставлю как есть.

    Reply
  3. Гость

    При добавлении новой задачи вылетает «Неизвестный идентификатор формы». Причем даже не указывается где ошибка в конфигурации.

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

    Reply
  4. helene_mn

    (3) Гость, Можно убрать галочку у Автозаполнения командной панели формы Задачи.

    Если нужны кнопки (редактирование, удаление и т.д.) — добавить их из Стандартных.

    Reply
  5. link_l

    Конфигурация помогла разобраться с реализацией бизнес процесса согласования, автору + 🙂

    Reply
  6. ketr

    Интересно, возможно ли её прикрутить к УПП 1.3 для реализации механизма согласования определенных типов документов?

    Reply
  7. ketr

    (6) ketr, Прикрутил) Норм

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *