Fork-join, как передать назначенным исполнителям разный набор свойств?

 Имеется модель процесса в которой описано несколько свойств, скажем свойство1...свойство4. Каким образом можно используя "вилку" передать (или сделать видными), скажем, свойство1 и свойство2 процесса для первой назначенной персоны, и свойство3,свойство4 для второй? Во время join назначенная персона должна получить, соответственно, весь набор свойств процесса.
Используется движок jbpm. Заранее спасибо! 

Комментарии

 Забыл добавить - оба поднабора свойств описаны каждый в отдельном аспекте.
fufler аватар
 Добавляете аспект1 и аспект2 для первого таска внутри форка, аспект3 и аспект4  — для второго. Для таска после джоина добавляете все 4 аспекта.
Тут начальник управления ИТ отправляет заявку на выполнение, скриптом происходит поиск начальников отделов: 
<task name="astWfItRequest:itDirectorConsider" swimlane="itDirector" />
    <transition name="approve" to="departmentFork">
        <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
            <runas>admin</runas>
            <script>
                &lt;import resource="/Company Home/Data Dictionary/Scripts/astItRequest.js"&gt;
                getExecutorList();
            </script>
        </action>
    </transition>
    <transition name="reject" to="revise"/>
 
Вот модель для этой задачи:  
<type name="astWfItRequest:itDirectorConsider"> 
  <parent>bpm:workflowTask</parent>
    <mandatory-aspects>
     <aspect>astItRequest:requestProperties</aspect>
     <aspect>astItRequest:accessProperties</aspect>
     <aspect>astItRequest:permissionProperties</aspect>
     <aspect>astItRequest:equipmentList</aspect>
   </mandatory-aspects>
</type>
 
Тут срабатывает форк, при этом свойства всех 4х аспектов отправляются обоим начальникам отделов (а хотелось бы 1-3 для одного и 1,4 для второго):  
<node name="departmentFork">
    <action class="org.alfresco.repo.workflow.jbpm.ForEachFork">
        <foreach>#{departmentassignees}</foreach>
        <var>nextexecutor</var>
    </action>
    <transition name="toExecution" to="execution"/>
 </node>
 
Тут выполняется непосредственно задача:  
<task-node name="execution">
    <task name="astWfItRequest:executionTask">
        <assignment actor-id="#{nextexecutor}"/>
        <event type="task-create">
            <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
                ...
            </action>
        </event>    
    </task>
    <transition name="toItDirectorJoin" to="itDirectorJoin">
        <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
         ....
        </action>
     </transition>
</task-node>[/code]
 
Вот джоин:
<join name="itDirectorJoin">
     <transition name="toITDdrector" to="itDirectorAdoption">
</join>
 
Примерно так, получается что через форк начальникам отделов отправляются все аспекты, а хотелось бы разграничить. Поправьте пожалуйста в коде, как бы это реализовать.
fufler аватар
А где описание типа для astWfItRequest:executionTask?

P.S. Я бы рекомендовал переходить на Activiti, пора бы уже.
P.P.S. Про работу с орг. структурой посмотрите вот эту презенташку, там есть назначения по ролям.
 Спасибо, сделал как вы сказали - работает!