AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.04.2010, 10:53   #1  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AlexeyVS Посмотреть сообщение
Я новичок в аксапте, всего пару недель ее изучаю. Сейчас решаю задачу автоматизации документооборота на этой платформе.
-1. во-первых, в Аксапте не документооборот, а управление документами (Document Handling). в стандартном механизме нет маршрутизации и подписи, есть только хранение документов.
0. тот функционал, который в ax2009 называется документобооротом на самом деле всего лишь поток задач (Workflow). Причем в достаточно экспериментальной фазе. Нет параллельных маршрутов, нет многоуровневого утверждения, нет связи с хранением документов.

1. погодите пока. есть слухи, что в следующей версии механизм будет значительно переработан.
2. сейчас механизм сделан так, что он годится только для простого одноуровневого одобрения платежей или затрат. чтобы добиться от него большего, его придется переписать почти полностью.
__________________
полезное на axForum, github, vk, coub.
Старый 05.04.2010, 12:40   #2  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2161 (81) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Цитата:
Сообщение от AlexeyVS Посмотреть сообщение
1. Можно ли в Утверждение добавлять свои результаты (outcomes)? Или пользоваться только тем, что предлагается? Например, в Задачу их можно добавлять.
2. Если Задача создается на несколько пользователей, то у всех этих пользователей появляется кнопка Принять. Причем, если кто-то из пользователей примет Задачу, то для остальных она становится завершенной. Можно ли это обойти? Чтобы задача считалась завершенной, только когда все пользователи, которым она назначена завершат ее.
3. Можно ли писать свои типы Задач или Утверждений?

Буду очень благодарен за ответы. С удовольствием поделюсь своими знаниями
1. Обратите внимание, что в Задачу можно добавлять только определенные типы результатов, т.е. отличий от Утверждений, считай, нет.
2. Идея Задачи - что она атомарна, ее можно выполнить или не выполнить. Поэтому "принять" ее может только один человек. Нужно запустить несколько задач? Настройте их в конфигурации документооборота.
3. Что такое "типы"? Обработка других, не реализованых в стандарте "документов", например, утверждение карточки контрагента? Если ответ да, то можно - нужно программировать.

Цитата:
Сообщение от mazzy Посмотреть сообщение
-1. во-первых, в Аксапте не документооборот, а управление документами (Document Handling). в стандартном механизме нет маршрутизации и подписи, есть только хранение документов.
0. тот функционал, который в ax2009 называется документобооротом на самом деле всего лишь поток задач (Workflow). Причем в достаточно экспериментальной фазе. Нет параллельных маршрутов, нет многоуровневого утверждения, нет связи с хранением документов.

1. погодите пока. есть слухи, что в следующей версии механизм будет значительно переработан.
2. сейчас механизм сделан так, что он годится только для простого одноуровневого одобрения платежей или затрат. чтобы добиться от него большего, его придется переписать почти полностью.
0. можно запустить несколько вспомогательных документооборотов параллельно - это не то, что вы имеете в виду? Многоуровневое утверждение можно попробовать реализовать используя шаги / вспомогательные документообороты и условия шагов / автоматические действия / условия использования конфигурации. Можно пример того, что нельзя?
Насчет экспериментальности, согласен. Причем и стиль реализации местами очень хромает
1. слухи, я так понимаю, были про сам фрейм-ворк обработки (который сча на IIS), который по-хорошему ни программисту, ни консультанту не виден. Хотелось бы верить, что в Аксапте менять свои WF не придется.
2. Опять же, можно пример? Только не ссылку на то, что умеют сторонние решения, а что конкретно не умеет WF AX 2009? =)
__________________
Ivanhoe as is..
Старый 05.04.2010, 13:13   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от 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 "нач.отдела продаж" ушел в отпуск (или заболел). Нужно, чтобы его задачи выполнял заместитель. Причем делегирование должно быть очень контролируемым со стороны администратора системы

НО! вполне допускаю, что я чего-то не знаю. Был бы очень и очень признателен, если бы знающие люди рассказали подробнее (готов выложить статью у себя или почитаю выложенную в любом другом месте).
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: sukhanchik (4), Ivanhoe (3).
Старый 05.04.2010, 14:37   #4  
AlexeyVS is offline
AlexeyVS
Участник
 
103 / 31 (2) +++
Регистрация: 02.04.2010
Вот пара мыслей по сказанному...
1. Обходной лист. Можно реализовать через Утверждение. Напрмер, есть документ "Обходной лист". Запускаем ДО (документооборот) по этому документу. Утверждение состоит из одного шага, но размножено на несколько утверждающих (подписывающих "бегунок"). Соответсвенно, получается, что документ будет утвержден ("бегунок" закрыт), когда все одобрят этот шаг. Порядок - любой. Причем можно настроить условие утверждения (все должны одобрить, один из списка, большинство, процент от всех), плюс можно указать условие окончательного утверждения (типа начальник кадров, который этот документ и запустил)
2. Делегирование. Насколько я знаю, можно настроить условие автоматического делегирования нечто вроде: "С такого-то числа по такое-то число Утверждение направлять моему заму"... как-то так.
За это сообщение автора поблагодарили: Ivanhoe (2).
Старый 05.04.2010, 14:44   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AlexeyVS Посмотреть сообщение
Вот пара мыслей по сказанному...
1. Обходной лист. Можно реализовать через Утверждение. Напрмер, есть документ "Обходной лист". Запускаем ДО (документооборот) по этому документу. Утверждение состоит из одного шага, но размножено на несколько утверждающих (подписывающих "бегунок"). Соответсвенно, получается, что документ будет утвержден ("бегунок" закрыт), когда все одобрят этот шаг. Порядок - любой. Причем можно настроить условие утверждения (все должны одобрить, один из списка, большинство, процент от всех), плюс можно указать условие окончательного утверждения (типа начальник кадров, который этот документ и запустил)
Э-э-э... А как "размножить" в стандартном функционале?
И что делать, если после того, как все подпишут, нужно еще выполнить несколько последовательных шагов (например, несколько документов внутри самого отдела кадров)?

Цитата:
Сообщение от AlexeyVS Посмотреть сообщение
2. Делегирование. Насколько я знаю, можно настроить условие автоматического делегирования нечто вроде: "С такого-то числа по такое-то число Утверждение направлять моему заму"... как-то так.
А где автоматическое делегирование?

И я не спросил это изначально, но как назначить маршрут не к человеку, а к роли? В своем вопросе я писал "(скидка требует одобрения у нач.отдела продаж, сумма требует одобрения у фин.отдела)". Как реализовать если фин.отдел - это несколько человек с одинаковыми полномочиями (одобрить может любой).

Повторюсь, возможно я чего-то не знаю.
__________________
полезное на axForum, github, vk, coub.
Старый 05.04.2010, 14:48   #6  
ALES is offline
ALES
Участник
Злыдни
 
220 / 45 (2) +++
Регистрация: 11.08.2004
Очень хочется независимо от обходного еще и процесс рассчета ЗП запустить или что-то еще по тому же сотруднику.
Старый 05.04.2010, 15:32   #7  
AlexeyVS is offline
AlexeyVS
Участник
 
103 / 31 (2) +++
Регистрация: 02.04.2010
1. "Размножить" можно, назначив группе и написав свой ParticipantProvider (так делал я, возможно есть другой способ)
2. Утверждение от группы можно настроить, указав, что для успешного шага утверждения нужен один из всего списка утверждающих
3. Если после утверждения надо еще что-то, то шаблон воркфло можно настроить, добавив стадии. Например, сначала "бегунок", после него некая задача (подготовка трудовой, как вариант), затем еще что-нибудь.

А весь процесс будет называться "Увольнение"
Старый 05.04.2010, 15:47   #8  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от AlexeyVS Посмотреть сообщение
...и написав свой ParticipantProvider
Ну, началось...
ЕСЛИ "настроить можно" только "написав", ТО это значит в стандартном функционале "настроить" нельзя. Можно только дописать.
Давайте будем все-таки пользоваться человеческой терминологией.

Если можно "дописывать", то все остальное - понятно.
Но тогда, по-моему, проще не "дописывать", а переписать весь этот механизм нафиг без привлечения связки IIS/WF
__________________
полезное на axForum, github, vk, coub.
Старый 05.04.2010, 17:08   #9  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2161 (81) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Цитата:
Сообщение от ALES Посмотреть сообщение
Очень хочется независимо от обходного еще и процесс рассчета ЗП запустить или что-то еще по тому же сотруднику.
С учетом того, что "обработку" документа, который и является основанием WF, нужно в любом случае программировать (для нестандартных WF) - можно и расчет прикрутить, и что угодно. =)
__________________
Ivanhoe as is..
Старый 05.04.2010, 17:43   #10  
ALES is offline
ALES
Участник
Злыдни
 
220 / 45 (2) +++
Регистрация: 11.08.2004
Talking
Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
С учетом того, что "обработку" документа, который и является основанием WF, нужно в любом случае программировать (для нестандартных WF) - можно и расчет прикрутить, и что угодно. =)
Можно =). А для процесса "увольнение" еще и ветку на случай краха IIS закодить.. чтоб уж наверняка...
За это сообщение автора поблагодарили: Ivanhoe (2).
Старый 05.04.2010, 21:45   #11  
AX2009
Гость
 
n/a
Цитата:
Сообщение от mazzy Посмотреть сообщение
-Нет параллельных маршрутов.
Черещ субворкфлоу можно настроить
Старый 06.04.2010, 09:29   #12  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от AX2009 Посмотреть сообщение
Черещ субворкфлоу можно настроить
А разве будет паралельное выполнение в таком случае, а не последовательное?
Старый 06.04.2010, 11:46   #13  
AX2009
Гость
 
n/a
Цитата:
Сообщение от lagr221374 Посмотреть сообщение
А разве будет паралельное выполнение в таком случае, а не последовательное?
зависит от параметра
Миниатюры
Нажмите на изображение для увеличения
Название: parallel subworkflow.png
Просмотров: 369
Размер:	27.9 Кб
ID:	5691  
Старый 06.04.2010, 12:03   #14  
AlexeyVS is offline
AlexeyVS
Участник
 
103 / 31 (2) +++
Регистрация: 02.04.2010
Вот реальный пример.
Есть Утверждение, назначенное группе. При старте процесса оно размножается на всех участников этой группы. Процесс запускает Инициатор (И), в группе 3 адресата (А).
Первый адресат (А1) утверждает. А2 - возвращает, А3 - делегирует А4.
Результат: процесс нахожится в ожидании, НО... Инициатор не может ничего сделать (только просмотреть журнал процесса), для И создается рабочий элемент (возвращенная запись), для А4вообще ничего не создается, его рабочий элемент помечен как завершенный...
В журнале написано, что Шаг 1 - выполнен, Утверждение возвращено.
Старый 06.04.2010, 12:12   #15  
AlexeyVS is offline
AlexeyVS
Участник
 
103 / 31 (2) +++
Регистрация: 02.04.2010
Вот иллюстрация
Миниатюры
Нажмите на изображение для увеличения
Название: approval-1.jpg
Просмотров: 321
Размер:	68.3 Кб
ID:	5692  
Старый 06.04.2010, 12:23   #16  
AlexeyVS is offline
AlexeyVS
Участник
 
103 / 31 (2) +++
Регистрация: 02.04.2010
То есть получается, что все утверждение возвращается Инициатору, если хотя бы один из Адресатов вернул свой элемент
Теги
ax2009, document handling, workflow, документооборот

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
fed: Cost Explorer in DAX2009 Blog bot DAX Blogs 3 24.11.2009 17:32
Отходы по закупке в DAX2009 Starling DAX: Функционал 14 19.11.2009 20:52
Вопросы по OLAP в DAX2009 oleg_e DAX: Функционал 9 10.12.2008 02:02
Апгрейд существующего приложения на DAX2009 petr DAX: Администрирование 3 03.09.2008 18:54
Кто нибудь пытался релизовать ДОКУМЕНТООБОРОТ в Аксапта? edd DAX: Функционал 10 21.07.2003 15:48

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:01.