Могу ли я получить шаги только внутри рабочего процесса?
Я пытаюсь получить все шаги внутри определенного рабочего процесса ТОЛЬКО в FileNet Process Engine. Но не повезло, получая это. Я не уверен, что то, что я пытаюсь достичь, доступно в API, потому что я искал несколько дней, но не могу этого увидеть.
Вот мой код String workflowName = "Пример рабочего процесса 1";
String[] workClassNames = myPESession.fetchWorkClassNames(true);
for (int i = 0; i < workClassNames.length; i++) {
System.out.println(workClassNames[i]);
}
// Launch Workflow VWStepElement
VWStepElement stepElement = myPESession.createWorkflow(workflowName);
System.out.println(stepElement.getWorkflowName());
System.out.println(stepElement.getSubject());
System.out.println(stepElement.getComment());
System.out.println(stepElement.getStepDescription());
System.out.println("Parameters");
String[] a = stepElement.getParameterNames();
for (int i = 0; i < a.length; i++)
{
if (a[i] != null)
{
Object _parameterValue = stepElement.getParameterValue(a[i]);
System.out.println("\t" + a[i] + "=" + _parameterValue);
}
}
2 ответа
Это статическая часть, которая одинакова для любого экземпляра определенного рабочего процесса. Таким образом, вы должны получить его из определения рабочего процесса, а не из запущенного экземпляра рабочего процесса.
Вы должны начать с VWWorkflowDefinition
итерация по каждой карте, полученной с помощью getMaps()
а затем получить шаги из VWMapDefinition
с помощью getSteps()
,
Попробуй это
VWWorkflowDefinition defn = peSession.fetchWorkflowDefinition(workSpaceId, workflowIdentifier, convert);
VWMapDefinition vwMapDefinition = defn.getMap(workflowname);
VWMapNode[] mapNode = vwMapDefinition.getSteps()//Gets all of the steps contained in this map.
затем выполните итерацию mapNode.