05.04.2010, 10:16 | #1 |
Участник
|
Документооборот DAX2009
День добрый, коллеги!
Я новичок в аксапте, всего пару недель ее изучаю. Сейчас решаю задачу автоматизации документооборота на этой платформе. Кто-нибудь сталкивался? Есть успешно работающие решения? Мне пока удалось по документации разобраться, что есть два механизма для решения - Задача и Утверждение. Появилось несколько вопросов по этим механизмам. 1. Можно ли в Утверждение добавлять свои результаты (outcomes)? Или пользоваться только тем, что предлагается? Например, в Задачу их можно добавлять. 2. Если Задача создается на несколько пользователей, то у всех этих пользователей появляется кнопка Принять. Причем, если кто-то из пользователей примет Задачу, то для остальных она становится завершенной. Можно ли это обойти? Чтобы задача считалась завершенной, только когда все пользователи, которым она назначена завершат ее. 3. Можно ли писать свои типы Задач или Утверждений? Буду очень благодарен за ответы. С удовольствием поделюсь своими знаниями |
|
05.04.2010, 10:36 | #2 |
Гость
|
1. нет. Пользуйтесь тем что есть.
2. в параметрах шага бизнес-правила на закладке "назначение" есть политика одобрения - наверное это то что вам надо. 3 кто ж вам запретит. С нетерпением ждем, когда начнете делиться знаниями по данной теме. |
|
05.04.2010, 10:53 | #3 |
Участник
|
Цитата:
0. тот функционал, который в ax2009 называется документобооротом на самом деле всего лишь поток задач (Workflow). Причем в достаточно экспериментальной фазе. Нет параллельных маршрутов, нет многоуровневого утверждения, нет связи с хранением документов. 1. погодите пока. есть слухи, что в следующей версии механизм будет значительно переработан. 2. сейчас механизм сделан так, что он годится только для простого одноуровневого одобрения платежей или затрат. чтобы добиться от него большего, его придется переписать почти полностью. |
|
05.04.2010, 12:40 | #4 |
Участник
|
Цитата:
Сообщение от AlexeyVS
1. Можно ли в Утверждение добавлять свои результаты (outcomes)? Или пользоваться только тем, что предлагается? Например, в Задачу их можно добавлять.
2. Если Задача создается на несколько пользователей, то у всех этих пользователей появляется кнопка Принять. Причем, если кто-то из пользователей примет Задачу, то для остальных она становится завершенной. Можно ли это обойти? Чтобы задача считалась завершенной, только когда все пользователи, которым она назначена завершат ее. 3. Можно ли писать свои типы Задач или Утверждений? Буду очень благодарен за ответы. С удовольствием поделюсь своими знаниями 2. Идея Задачи - что она атомарна, ее можно выполнить или не выполнить. Поэтому "принять" ее может только один человек. Нужно запустить несколько задач? Настройте их в конфигурации документооборота. 3. Что такое "типы"? Обработка других, не реализованых в стандарте "документов", например, утверждение карточки контрагента? Если ответ да, то можно - нужно программировать. Цитата:
Сообщение от mazzy
-1. во-первых, в Аксапте не документооборот, а управление документами (Document Handling). в стандартном механизме нет маршрутизации и подписи, есть только хранение документов.
0. тот функционал, который в ax2009 называется документобооротом на самом деле всего лишь поток задач (Workflow). Причем в достаточно экспериментальной фазе. Нет параллельных маршрутов, нет многоуровневого утверждения, нет связи с хранением документов. 1. погодите пока. есть слухи, что в следующей версии механизм будет значительно переработан. 2. сейчас механизм сделан так, что он годится только для простого одноуровневого одобрения платежей или затрат. чтобы добиться от него большего, его придется переписать почти полностью. Насчет экспериментальности, согласен. Причем и стиль реализации местами очень хромает 1. слухи, я так понимаю, были про сам фрейм-ворк обработки (который сча на IIS), который по-хорошему ни программисту, ни консультанту не виден. Хотелось бы верить, что в Аксапте менять свои WF не придется. 2. Опять же, можно пример? Только не ссылку на то, что умеют сторонние решения, а что конкретно не умеет WF AX 2009? =)
__________________
Ivanhoe as is.. |
|
05.04.2010, 13:13 | #5 |
Участник
|
Цитата:
Сообщение от Ivanhoe
0. можно запустить несколько вспомогательных документооборотов параллельно - это не то, что вы имеете в виду?
... Многоуровневое утверждение можно попробовать реализовать используя шаги / вспомогательные документообороты и условия шагов / автоматические действия / условия использования конфигурации. Можно пример того, что нельзя? ... 2. Опять же, можно пример? Только не ссылку на то, что умеют сторонние решения, а что конкретно не умеет WF AX 2009? =) Кроме того, будет проблема с условными маршрутами в такой реализации - получается, что нельзя создавать полный экземляр маршрута сразу. Придется создавать каждый экземпляр маршрута придется создавать частями по мере прохождения. Не рекламы для, а в качестве примера о чем люди думали при реализации документооборота http://navision.mazzy.ru/lib/docflownav/, http://navision.mazzy.ru/lib/docflownav2/, http://navision.mazzy.ru/lib/docflownav3/ При таком примере придется начинать не сложный маршрут, а кучу "вспомогательных документооборотов". А в дальнейшем эту кучу непонятно как анализировать. Какие прошли по одной ветке? Какие прошли по другой ветке? Какие не прошли до конца? Какие отложены? Какова средняя длина маршрута? В общем, идея с кучей лично мне категорически не нравится. Хотя согласен с тем, что вывернутся можно и при помощи кучи - "в гамаке и стоя". Типичные примеры, которые, на мой взгляд, реализуются сейчас через жопу: 1. то, что нарисовано на рисунке: большая продажа в кредит со скидкой (скидка требует одобрения у нач.отдела продаж, сумма требует одобрения у фин.отдела) 2. обходной лист при увольнении: кадровик начинает процесс, сотрудник должен получить несколько подписей в любом порядке (параллельные процессы), после появления всех подписей в отделе кадров выполняется несколько последовательных шагов. (или как вариант: то, что нарисовано на рисунке, но с возможностью параллельного одобрения скидки и суммы) 3. делегирование: в примере 1 "нач.отдела продаж" ушел в отпуск (или заболел). Нужно, чтобы его задачи выполнял заместитель. Причем делегирование должно быть очень контролируемым со стороны администратора системы НО! вполне допускаю, что я чего-то не знаю. Был бы очень и очень признателен, если бы знающие люди рассказали подробнее (готов выложить статью у себя или почитаю выложенную в любом другом месте). |
|
|
За это сообщение автора поблагодарили: sukhanchik (4), Ivanhoe (3). |
05.04.2010, 14:37 | #6 |
Участник
|
Вот пара мыслей по сказанному...
1. Обходной лист. Можно реализовать через Утверждение. Напрмер, есть документ "Обходной лист". Запускаем ДО (документооборот) по этому документу. Утверждение состоит из одного шага, но размножено на несколько утверждающих (подписывающих "бегунок"). Соответсвенно, получается, что документ будет утвержден ("бегунок" закрыт), когда все одобрят этот шаг. Порядок - любой. Причем можно настроить условие утверждения (все должны одобрить, один из списка, большинство, процент от всех), плюс можно указать условие окончательного утверждения (типа начальник кадров, который этот документ и запустил) 2. Делегирование. Насколько я знаю, можно настроить условие автоматического делегирования нечто вроде: "С такого-то числа по такое-то число Утверждение направлять моему заму"... как-то так. |
|
|
За это сообщение автора поблагодарили: Ivanhoe (2). |
05.04.2010, 14:44 | #7 |
Участник
|
Цитата:
Сообщение от AlexeyVS
Вот пара мыслей по сказанному...
1. Обходной лист. Можно реализовать через Утверждение. Напрмер, есть документ "Обходной лист". Запускаем ДО (документооборот) по этому документу. Утверждение состоит из одного шага, но размножено на несколько утверждающих (подписывающих "бегунок"). Соответсвенно, получается, что документ будет утвержден ("бегунок" закрыт), когда все одобрят этот шаг. Порядок - любой. Причем можно настроить условие утверждения (все должны одобрить, один из списка, большинство, процент от всех), плюс можно указать условие окончательного утверждения (типа начальник кадров, который этот документ и запустил) И что делать, если после того, как все подпишут, нужно еще выполнить несколько последовательных шагов (например, несколько документов внутри самого отдела кадров)? Цитата:
И я не спросил это изначально, но как назначить маршрут не к человеку, а к роли? В своем вопросе я писал "(скидка требует одобрения у нач.отдела продаж, сумма требует одобрения у фин.отдела)". Как реализовать если фин.отдел - это несколько человек с одинаковыми полномочиями (одобрить может любой). Повторюсь, возможно я чего-то не знаю. |
|
05.04.2010, 14:48 | #8 |
Участник
|
Очень хочется независимо от обходного еще и процесс рассчета ЗП запустить или что-то еще по тому же сотруднику.
|
|
05.04.2010, 15:32 | #9 |
Участник
|
1. "Размножить" можно, назначив группе и написав свой ParticipantProvider (так делал я, возможно есть другой способ)
2. Утверждение от группы можно настроить, указав, что для успешного шага утверждения нужен один из всего списка утверждающих 3. Если после утверждения надо еще что-то, то шаблон воркфло можно настроить, добавив стадии. Например, сначала "бегунок", после него некая задача (подготовка трудовой, как вариант), затем еще что-нибудь. А весь процесс будет называться "Увольнение" |
|
05.04.2010, 15:47 | #10 |
Участник
|
Ну, началось...
ЕСЛИ "настроить можно" только "написав", ТО это значит в стандартном функционале "настроить" нельзя. Можно только дописать. Давайте будем все-таки пользоваться человеческой терминологией. Если можно "дописывать", то все остальное - понятно. Но тогда, по-моему, проще не "дописывать", а переписать весь этот механизм нафиг без привлечения связки IIS/WF |
|
05.04.2010, 16:00 | #11 |
Участник
|
Но там же можно выбрать в Назначении группу. Думаю так тоже размножит. Просто мне надо назначать на основе некоего динамического списка, который задает пользователь.
Насчет дописать - это переопределить пару методов стандартнного класса WorkflowWorkitemParticipantProvider. По-моему вполне неплохой подход. Насчет автоделегирования - можно настроить в меню Сервис - Параметры - закладка Делегирование и выбрать конфигурацию рабочего процесса. Я еще практически ничего не смыслю ни в программинге аксапты ни в ее настройке, поэтому пишу о том, что успел попробовать. Возможно, мои решения не совсем правильные и могут быть реализованы другим путем или проще. |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
05.04.2010, 16:36 | #12 |
Участник
|
|
|
05.04.2010, 17:04 | #13 |
Участник
|
Насчет "размножить" исполнителей, действительно - используйте группу пользователей (это и будет - роль). Есть более сложный "размножитель" - который понимает оргструктуру. Т.е. писать свого "провайдера" нужно при совсем уж сложном подборе исполнителей.
Насчет склада - действительно, нет в стандарте, но написание нового WF с нуля занимает 4-6 часов, если иметь опыт - то и того быстрее. Если есть уже готовое универсальное решение, написанное сбоку, то понятно что WF проиграет (надеюсь, пока). Но если ничего нет - то мне кажется логичным использовать то, что есть. Насчет делегирования - ответственный сотрудник может и вручную "делегировать" кому-то, и автоматически (как написали выше, с учетом дат и "модулей" / процессов, т.е. в разных процессах заместители могут быть разные). Из примеров mazzy: 1. беру паузу, сейчас нету времени вникать, чуть позже отвечу. 2. Параллельный процесс - как написал AlexeyVS делаем Утверждением, с вариантом завершения "Все утверждающие", последовательные задачи в отделе кадров - делаем как Задачи, добавляем по вкусу нужное количество (обратите внимание, добавлять Утверждения и Задачи в шаблон (Template) не обязательно - их можно добавлять опционально при настройке конфигурации). Вполне удобно. 3. Про делегирование уже написал.
__________________
Ivanhoe as is.. |
|
05.04.2010, 17:08 | #14 |
Участник
|
С учетом того, что "обработку" документа, который и является основанием WF, нужно в любом случае программировать (для нестандартных WF) - можно и расчет прикрутить, и что угодно. =)
__________________
Ivanhoe as is.. |
|
05.04.2010, 17:43 | #15 |
Участник
|
Можно =). А для процесса "увольнение" еще и ветку на случай краха IIS закодить.. чтоб уж наверняка...
|
|
|
За это сообщение автора поблагодарили: Ivanhoe (2). |
05.04.2010, 17:50 | #16 |
Участник
|
Пример mazzy №1. Продажа со скидками.
В стандарте нет такого WF, нет соответствующих признаков у заказа на продажу (разрешена скидка, разрешена сумма, разрешена отгрузка). 1.Для реализации необходимо попрограммировать: 1.1. Добавить статус "Статус WF" в заказ на продажу. 1.2. Разработать Шаблон. 1.3. Разработать Утверждение. 1.4. Разработать Задачу. 2. Настроить документооборот. В связи с тем, что нужна доработка - стоит продолжать разбор примера, или считаем, что WF в Аксапте "плохой" и ничего не умеет?
__________________
Ivanhoe as is.. |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
05.04.2010, 17:51 | #17 |
Участник
|
Не забудьте еще обучить кадровика и заготовить шаблоны приказов, на случай краха Аксапты
__________________
Ivanhoe as is.. |
|
05.04.2010, 17:56 | #18 |
Участник
|
Цитата:
Если честно... То, да. Я так и считаю. |
|
05.04.2010, 17:59 | #19 |
Участник
|
Угу, и запускать процедуру увольнения автоматически при достижении каких-либо критических параметров...
|
|
05.04.2010, 21:45 | #20 |
Гость
|
|
|