2013-05-06 2 views
0

Моя цель - добавить настраиваемое поле в рабочий процесс, который отслеживает входные данные во время шагов рабочего процесса как свойство bpm: comment.Как добавить пользовательское поле отслеживания в Alfresco Activiti Workflow

Так я пытался добавить простое пользовательское поле свойства в ВРМ-модель:

<type name="bpm:task"> 
     <parent>cm:content</parent> 
      <properties> 
      <property name="bpm:test_field"> 
        <type>d:text</type> 
       </property> 
... 

Затем я добавил «контроль фильтра поля» в bootstrap.xml Alfresco и рабочим столом основной ступенчатое регулирование потока показывает мой новое поле.

К сожалению, поле не отображает ввод истории.

Задача наследуется при каждом поле, но ничего не будет историзировать.

Я не понимал, почему ... может кто-нибудь мне помочь?

спасибо!

+0

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

+0

да это! благодаря! –

ответ

0

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

+0

Я попытался скопировать bpm: комментарий к моей пользовательской задаче без какого-либо результата ... на самом деле не знаю, на данный момент ... –

+0

Что значит «скопировать bpm: комментарий к вашей пользовательской задаче»? Я не понимаю, что я боюсь .. –

+0

Извините, я имею в виду, что в моем потоке (который является простой копией задачи aditocity activit) я попытался добавить: execute.setVariable ('bpm_test_field', task.getVariable (' bpm_comment ') ToString()). Я положил это точно под оператором WorkflowDueDate (который должен выполнять ту же работу, но не работает) ... –

0

Посмотрите, есть ли свойства рабочих свойств и свойства заданий двух типов свойств. Объект рабочего процесса - это сквозной рабочий процесс, а область действия переменной задачи ограничена только задачей. Мы можем скопировать значение из одного в другое, как описано ниже.

<task name="yourtask" swimlane="assignee"> 
      <event type="task-create"> 
      <script> 
       if (bpm_workflowDueDate != void) taskInstance.dueDate = bpm_workflowDueDate; 
      </script> 
      </event> 
     </task> 

Свойства задачи будут наследоваться в том случае, если текущая задача наследует задачу, у которой есть пользовательское свойство.

+0

Я пробовал много способов без какого-либо результата (void дает мне ошибку, и я использую «undefined»). –

+0

В каком xml находится swimlane? Я забыл сказать, что добавил свойство в базовый bpm.model и попытался изменить bpmn сейчас ... вот так: execute.setVariable ('bpm_test_field', task.getVariable ('bpm_test_field'). ToString()); спасибо –

+0

... ничего не смирилось? –

Смежные вопросы