IE2017

Согласование (подсистема). Для любого справочника и документа в 1С. Встраивается в любые конфигурации

Обработки - Обработка документов

Подсистема для согласования в 1С. Для настройки нового согласования не требуется программировать, все делается в режиме исполнения. Открытый код. Бизнес-процессы. Документооборот. Проект выложен на GitHub.

Адрес проекта на GitHub

https://github.com/BlizD/BPS

Подсистема подходит для тех, кому

  • надоело, что люди то и дело бегают по кабинетам, только ради подписей;
  • необходимо видеть: кто, когда и как согласовал тот или иной объект в базе 1С;
  • требуется сократить время согласования (договора, заявки на расходования денежных средств или чего-либо еще).

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

Существуют следующие статусы:

  • “Не утверждено”,
  • “В процессе согласования”,
  • “Утверждено”,
  • “Отменено”,
  • “Возвращено на доработку”.

При создании задач рецензентам не указывается конкретный пользователь, а заполняется только РольАдресации + ПодразделениеАдресации. Допустим, что согласовать должен

Роль адресации

Подразделение адресации

Бухгалтер

Бухгалтерия

Тогда задача будет создана для Бухгалтера из Бухгалтерии. А конкретных пользователей необходимо указать в регистре «Регистр адресации»

Пользователь

Роль адресации

Подразделение адресации

Петрова Мария Ивановна

Бухгалтер

Бухгалтерия

Казимирова Валентина Захаровна

Бухгалтер

Бухгалтерия

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

Преимущества

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

Видео

  • Настройка нового согласования

  • обзор подсистемы согласования

  • как встроить подсистему в типовую конфигурацию

  • как настроить учетную запись для отправки уведомлений:

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

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

Пример 1

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

  • всегда согласовывать с «Руководителем по закупкам»;
  • если контрагент/партнер относится к группе поставщиков, тогда необходимо согласовать с «Бухгалтером поставщиков»;
  • если контрагент/партнер относится к группе покупателей, тогда необходимо согласовать с «Бухгалтером покупателей»;
  • если сумма заявки больше 10000, тогда согласовывать с коммерческим директором;
  • если сумма заявки больше 50000, тогда согласовывать с финансовым директором;
  • если сумма заявки больше 100000, тогда согласовывать с генеральным директором.

Пример 2

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

  • если контрагент/партнер относится к группе поставщиков, тогда необходимо согласовать с «Бухгалтером поставщиков»;
  • если контрагент/партнер относится к группе покупателей, тогда необходимо согласовать с «Бухгалтером покупателей»;
  • всегда согласовывать с юристом;
  • если договор в условных единицах, тогда согласовать с коммерческим директором;

 

Часто задаваемые вопросы (FAQ)

Вопрос: можно ли встроить подсистему в нетиповую конфигурацию?

Ответ: да, можно,  для этого необходимо, чтобы в конечной конфигурации было следующее:

  • Справочник.Пользователи;
  • Параметр сеанса «ТекущийПользователь»;
  • У конфигурации должно стоять или свойство «Управляемое приложение» или свойство «Управляемое и обычное приложения», т.к. все формы управляемые.

Вопрос: можно ли вызывать форму «Статусы согласований» прямо из элемента справочника или документа?

Ответ: да, можно. Если у Вас используются управляемые формы тогда необходимо:

  • зайти в конфигуратор;
  • найти общую команду «бпсСтатусСогласования»;
  • нажать правую кнопку мыши выбрать свойство;
  • в свойстве “Тип параметра команды” указать составной тип данных и выбрать нужный объект.

Скрин №1

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

  • взять из поставки обработку «бпсСтатусСогласования.epf»;
  • нажать «Сервис – Дополнительные печатные формы и обработки – Печатные формы»
  • нажать добавить, далее указать обработку;
  • в табличную часть добавить те объекты, для которых должна вызываться данная обработка;
  • теперь по кнопке печать будет доступен вызов этой обработки.

Если у Вас используются обычные формы и конфигурация не типовая, тогда необходимо в каждую форму элемента справочника/документа необходимо вручную вставить код, пример кода можно посмотреть в обработке «ПримерКодаДляДобавленияКнопкиВОбычнуюФорму.epf»(из поставки).

Вопрос: можно ли указать статус допустим «Оплачено» для документа?

Ответ: да, можно, для этого необходимо:

  • зайти в справочник «Статусы объектов» и добавить элемент с наименованием «Оплачено» записать и закрыть;
  • далее открыть обработку «Статусы согласований» нажать на кнопку «Установить статус» и выбрать статус “Оплачено”.

Роли

  • (БПС) Пользователь – необходимо указать для всех пользователей;
  • (БПС) Редактирование регистра адресации – право необходимо для редактирования регистра “Регистр адресации”;
  • (БПС) Редактирование документа регистрация статуса объектов – право необходимо для того, чтобы можно было вручную указывать статус для объекта 1с;
  • (БПС) Полные права – доступ ко всем объектам подсистемы согласования, а также необходима для настройки согласования.

Что происходит автоматически

  • уведомления рассылаются с помощью регламента (раз в минуту);

Что планируется добавить в будущем, если подсистема будет пользоваться успехом

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

Разработка ведется на Bitbucket (пока закрытый репозитарий), основной функционал подсистемы покрыт тестами с помощью xUnitFor1c (//infostart.ru/public/418168/).

Тестирование переноса в типовые конфигурации

Тестирование производилось на платформе: 8.3.8.1652

Конфигурация

Релиз

Результаты тестирования

Комментарий

УПП 1.3

1.3.51.1

Успешно

УТ 11

11.2.3.143

Успешно

Необходимо дополнительно внести код в модуль БизнесПроцессыИЗадачиСобытия.ЗаписатьВСписокБизнесПроцессов см. видео https://youtu.be/Mq0Bv66ywys, а также см. ниже

Бухгалтерия предприятия 3.0 3.0.43.239 Успешно
Консолидация ред. 2.1 2.1.3.1 Успешно
Комплексная автоматизация 2.0 2.0.3.169 Успешно Необходимо дополнительно внести код в модуль БизнесПроцессыИЗадачиСобытия.ЗаписатьВСписокБизнесПроцессов.См. ниже куда необходимо внести.
ЗУП ред. 2.5 2.5.101.2 Успешно
Розница 2.2 2.2.4.33 Успешно Необходимо дополнительно внести код в модуль БизнесПроцессыИЗадачиСобытия.ЗаписатьВСписокБизнесПроцессов.См. ниже куда необходимо внести.
Бухгалтерия строительной организации 2.0.66.23 Успешно

Для конфигураций УТ 11, Комплексная автоматизация 2.0, Розница 2.2 после того как перенесли подсистему в конфигурацию

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

//+ БПС_Согласование 2016-07-27
Если ТипЗнч(Источник) = Тип("БизнесПроцессОбъект.бпсСогласование") Тогда
	Возврат;
Конецесли;
//- БПС_Согласование 2016-07-27

Обновление от 01.06.2017

Выпуск релиза 1.0.0.013

Изменения

  •  Добавлен реквизит "Не увеличивать номер очереди"  в справочник "Предметы согласований". Это позволяет создавать задачи по согласованию для нескольких ролей сразу.;

Пример:

Обновление от 27.04.2017

Выпуск релиза 1.0.0.012

Изменения

  • Исправлена работа в клиент серверном варианте работы;

Проверены следующие конфигурации: 
- Бухгалтерия строительной организации релиз 2.0.66.23 

Обновление от 06.01.2017

Выпуск релиза 1.0.0.010

В обработке "Статусы согласований":

  • реализована возможность установить статус для выделенных объектов.

Обновление от 15.11.2016

Проект выложени на GitHub

https://github.com/BlizD/BPS

Обновление от 25.09.2016

Выпущена версия "1.0.0.009" изменения:

  • Добавлена возможность указать свойство "Запретить использование объекта БД пока он не согласован" в справочник "Тип объекта БД".

  • Исправлены роли подсистемы "Согласования", чтобы корректно обновлялись вспомогательные данные в конфигурациях где используются БСП.

Обновление от 26.08.2016

Добавил видео обзор подсистемы согласования

Проверены следующие конфигурации: 
- Бухгалтерия предприятия 3.0 релиз 3.0.43.239 
- Консолидация ред. 2.1 релиз 2.1.3.1 
- Комплексная автоматизация 2.0 релиз 2.0.3.169

Скачать файлы

Наименование Файл Версия Размер
BPS_1.0.0.013
.zip 2,27Mb
01.06.17
77
.zip 1.0.0.013 2,27Mb 77 Скачать

См. также

Комментарии
1. Антон Иванов (BlizD) 212 26.08.16 12:09 Сейчас в теме
Добавил видео обзор подсистемы согласования
2. Антон Иванов (BlizD) 212 28.08.16 12:26 Сейчас в теме
Проверены следующие конфигурации:

- Бухгалтерия предприятия 3.0 релиз 3.0.43.239
- Консолидация ред. 2.1 релиз 2.1.3.1
- Комплексная автоматизация 2.0 релиз 2.0.3.169


3. С К (kraynev-navi) 202 30.08.16 09:49 Сейчас в теме
+ за хорошее документирование и видеоряд.
Второе видео по настройке часть 2. При согласовании на 2:12 согласующий не видит Объект БД который он согласует (Объект не найден). Либо либо неудачный пример и что-то не так с правами Бахшиева, либо что-то еще..
4. Антон Иванов (BlizD) 212 30.08.16 09:57 Сейчас в теме
(3) kraynev-navi,
Добрый день.

Да, Вы, правы.
Просто у Бахшиева не были указаны права на документ "Заявка на расход денежных средств".
Будет время исправлю видео.

Спасибо, что сообщили.
5. Сергей Д (dddxddd) 21.09.16 16:10 Сейчас в теме
>запрет использования элемента справочника пока он не согласован
особо ценно чтобы номенклатуру и поставщиков не плодили по 100500 шт за день...
6. Антон Иванов (BlizD) 212 21.09.16 16:55 Сейчас в теме
(5) dddxddd,
Добрый день.

Постараюсь в ближайшее время добавить такую возможность.
7. Антон Иванов (BlizD) 212 25.09.16 17:26 Сейчас в теме
(5)

Обновление от 25.09.2016

Выпущена версия "1.0.0.009" изменения:

  • Добавлена возможность указать свойство "Запретить использование объекта БД пока он не согласован" в справочник "Тип объекта БД".(ссылка на скриншот)
  • Исправлены роли подсистемы "Согласования", чтобы корректно обновлялись вспомогательные данные в конфигурациях где используются БСП
8. Антон Иванов (BlizD) 212 06.10.16 08:40 Сейчас в теме
Добрый день

Изменена стоимость подсистемы с 3 SM до 1 SM.

Хорошего настроения и удачного дня!
9. Антон Иванов (BlizD) 212 15.11.16 20:51 Сейчас в теме
Обновление от 15.11.2016

Проект выложен на GitHub

https://github.com/BlizD/BPS
10. Илья Брыляков (brylig) 18.11.16 11:33 Сейчас в теме
Добрый день!
Поставил подсистему на УНФ 1.6.5.28. Возникло несколько вопросов:
1. Кроме раздела "Согласование" появился еще и раздел "Прочее (не переносить)". В нем на панели навигации есть три пункта - "Договоры контрагентов", "Заявка на оплату" и "Контрагенты". Подозреваю, что надо было более тонко настраивать параметры слияния конфигураций, хотя все делал строго по видеоинструкции.
2. Сломалась форма карточки пользователя в соответствующем справочнике. Теперь там нет параметров аутентификации в информационной базе. На скрине слева сломанная форма, справа - рабочая (иконку согласования поменял я сам).

3. В условиях согласования для справочников (если конкретно, то "Контрагенты") очень ограничен выбор реквизитов для контроля. В частности, нет доступа к дополнительным реквизитам справочника.

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

Для возможности его проведения я должен предусмотреть действие "Разблокировать объект БД" "При завершении если согласовано". При этом документ становится доступным для произвольного редактирования и повторного проведения без всякого дополнительного согласования. Как все-таки сделать так, чтобы после согласования документ возможно было провести, но нельзя редактировать, а редактирование становилось бы возможным только после отмены действующего согласования и требовало бы нового согласования перед повторным проведением.
11. Антон Иванов (BlizD) 212 18.11.16 12:49 Сейчас в теме
(10) brylig,
Добрый день, Илья.

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

Это признаки того, что подсистема перенесена не верно, т.е. были перенесены еще служебные объекты:
http://f6.s.qip.ru/m9euvvHg.png

После того как в конфигурации сделали "Конфигурация - Сравнить объединить с конфигурации из файла" выбрали файл CF

Необходимо снять галочку со свойств, остальные галки не трогать.
http://f3.s.qip.ru/m9euvvHi.png

Необходимо сделать заново перенос подсистемы в вашу конфигурацию.

По остальным пунктам записал, как появится свободное время, обработаю их и отпишусь Вам.
12. Илья Брыляков (brylig) 19.11.16 01:26 Сейчас в теме
13. Антон Иванов (BlizD) 212 27.11.16 11:56 Сейчас в теме
Добрый день, Илья.

(10)
В условиях согласования для справочников (если конкретно, то "Контрагенты") очень ограничен выбор реквизитов для контроля. В частности, нет доступа к дополнительным реквизитам справочника.


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

Ну и самое главное - так и не разобрался в настройках предмета согласования в части действий. Если делать все по инструкции, то после согласования я не могу провести документ, так как он заблокирован.
Для возможности его проведения я должен предусмотреть действие "Разблокировать объект БД" "При завершении если согласовано". При этом документ становится доступным для произвольного редактирования и повторного проведения без всякого дополнительного согласования. Как все-таки сделать так, чтобы после согласования документ возможно было провести, но нельзя редактировать, а редактирование становилось бы возможным только после отмены действующего согласования и требовало бы нового согласования перед повторным проведением.


Да, Вы, правы такая возможность полезна, записал в доработки, как будет реализована напишу.
14. Илья Брыляков (brylig) 27.11.16 17:57 Сейчас в теме
15. Юрий Терленко (AloneCorsar) 19.12.16 11:23 Сейчас в теме
Доброе время суток!
Встроил подсистему настроил для справочника Номенклатура.
В результате вся номенклатура в системе приняла статус "Не Согласована" и соответственно недоступна для использования в документах.
Попробовал изменить статус номенклатуры в закладке "Статусы согласований", по одной позиции меняется, групповая обработка не работает.
Справочник "Номенклатура" содержит около 80000 позиций, и изменение статуса по одной позиции очень трудоемко. Неплохо было бы или при первичном заполнении данных выставить статус "Согласовано", либо дать возможность группового изменения реквизита.
16. Антон Иванов (BlizD) 212 19.12.16 21:50 Сейчас в теме
(15) Добрый вечер, Юрий.
Добавил в задачи
https://github.com/BlizD/BPS/issues/3
17. Юрий Терленко (AloneCorsar) 20.12.16 10:03 Сейчас в теме
18. Павел Нежданов (Nezhdanov) 28.12.16 14:42 Сейчас в теме
Добрый день. А для КА 2.0.3.67 подойдет данная система?
19. Антон Иванов (BlizD) 212 28.12.16 17:07 Сейчас в теме
(18)Добрый день, Павел.

Тестировал для
- Комплексная автоматизация 2.0 релиз 2.0.3.169

думаю для КА 2.0.3.67 тоже подойдет.
20. Антон Иванов (BlizD) 212 06.01.17 21:14 Сейчас в теме
Выпуск релиза 1.0.0.010

В обработке "Статусы согласований":

- реализована возможность установить статус для выделенных объектов.

(15) Виктор, теперь можно выделить список элементов, и нажать "Установить статус" для выделенных объектов будет установлен выбранный статус.
21. Максим Костиков (mkostya) 23 31.01.17 18:41 Сейчас в теме
А почему так происходит?
Прикрепленные файлы:
22. Антон Иванов (BlizD) 212 31.01.17 19:12 Сейчас в теме
(21) Максим,
Это сообщение говорит о том что динамический список почему то получил более 1 записи для документа заявка на расход дс.
Подскажите в какой момент выдается ошибка?
Есть ли возможность скинуть дт с примером ошибки?
23. Баир Сафштейн (b-real) 07.02.17 06:55 Сейчас в теме
Здравствуйте!
Розница 2.2. также требует внесения изменений в общий модуль "БизнесПроцессыИЗадачиСобытия", как и УТ 11
24. Антон Иванов (BlizD) 212 07.02.17 08:46 Сейчас в теме
(23)
Здравствуйте!
Розница 2.2. также требует внесения изменений в общий модуль "БизнесПроцессыИЗадачиСобытия", как и УТ 11

Добрый день, Баир.

Спасибо, сейчас добавлю в описание.
Можете указать точную версию Розницы 2.2 ?
25. Баир Сафштейн (b-real) 07.02.17 09:19 Сейчас в теме
26. Ирина Сухих (KoIIIka42) 31 20.04.17 11:39 Сейчас в теме
Добрый день! Для Бухгалтерии 2.0 пойдет?
27. Антон Иванов (BlizD) 212 20.04.17 12:22 Сейчас в теме
(26)
Добрый день! Для Бухгалтерии 2.0 пойдет?

Добрый день, Ирина.

Да, подойдет.
28. Антон Иванов (BlizD) 212 27.04.17 20:03 Сейчас в теме
Обновление от 27.04.2017

Выпуск релиза 1.0.0.012

Изменения

Исправлена работа в клиент серверном варианте работы;
Проверены следующие конфигурации:
- Бухгалтерия строительной организации релиз 2.0.66.23
29. Антон Иванов (BlizD) 212 01.06.17 14:35 Сейчас в теме
Обновление от 01.06.2017

Выпуск релиза 1.0.0.013

Изменения

Добавлен реквизит "Не увеличивать номер очереди" в справочник "Предметы согласований". Это позволяет создавать задачи по согласованию для нескольких ролей сразу.;
Пример:
30. Самвел Карибжанов (user764633) 02.06.17 09:11 Сейчас в теме
День добрый!

Уточните, пожалуйста, есть ли возможность, или такая возможность планируется, для запроса уточнения от участника согласования к инициатору?
И второй момент, можно ли будет настроить группы согласующих с возможностью параллельного и последовательного согласования документа?
Например, группа 1 имеет признак "Параллельное согласование", следовательно всем пользователям данной группы будет одновременная рассылка на э. я., что необходимо принять участие в согласовании документа.
Или так:
Группа 2 имеет признак "Последовательное согласование", т. е. уведомление о необходимости принятия участия в процессе согласования документа придет на э. я. сначала только первому пользователю группы, и только после его согласования второму и т. д.
31. Сергей Дацун (serdacik) 03.07.17 12:08 Сейчас в теме
Добрый день.
Планируется ли проведение согласованного документа, так как несогласованный документ провести нельзя.
А так если документ получил статус "Утвержден" он бы автоматически провелся.
Спасибо.
32. Антон Иванов (BlizD) 212 03.07.17 12:26 Сейчас в теме
(30)
Добрый день, Самвел.

Прошу прощения видимо пропустил это сообщение.

День добрый!
Уточните, пожалуйста, есть ли возможность, или такая возможность планируется, для запроса уточнения от участника согласования к инициатору?
И второй момент, можно ли будет настроить группы согласующих с возможностью параллельного и последовательного согласования документа?
Например, группа 1 имеет признак "Параллельное согласование", следовательно всем пользователям данной группы будет одновременная рассылка на э. я., что необходимо принять участие в согласовании документа.
Или так:
Группа 2 имеет признак "Последовательное согласование", т. е. уведомление о необходимости принятия участия в процессе согласования документа придет на э. я. сначала только первому пользователю группы, и только после его согласования второму и т. д.


Возможно изменения сделанные в 13 релизе как раз то, что Вам нужно.
Выпуск релиза 1.0.0.013
Изменения
Добавлен реквизит "Не увеличивать номер очереди" в справочник "Предметы согласований". Это позволяет создавать задачи по согласованию для нескольких ролей сразу.;


Что касается

Уточните, пожалуйста, есть ли возможность, или такая возможность планируется, для запроса уточнения от участника согласования к инициатору?


Пока такая возможность не планируется.
Пожелание записал.
33. Антон Иванов (BlizD) 212 03.07.17 12:30 Сейчас в теме
(31)
Добрый день.
Планируется ли проведение согласованного документа, так как несогласованный документ провести нельзя.
А так если документ получил статус "Утвержден" он бы автоматически провелся.
Спасибо.


Добрый день, Сергей.

Автоматического проведения документа при установке статуса "Утвержден" такое не планируется делать.
Пожелание записал, если что-то измениться по этому поводу сообщу.
34. Сергей Дацун (serdacik) 03.07.17 12:37 Сейчас в теме
35. Сергей Дацун (serdacik) 03.07.17 13:42 Сейчас в теме
Было бы неплохо иметь возможность после "утверждения" автоматически создавать "на основании" другого документа
например - "Заявка на расходование средств" --> "Платежное поручение исходящее"
Заранее спасибо.
Оставьте свое сообщение