1

我试图仅在 FileNet Process Engine 中获取特定工作流程中的所有步骤。但没有运气。我不确定我想要实现的目标是否在 API 中可用,因为我找了好几天但看​​不到它。

这是我的代码 String workflowName = "Sample workflow 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);
           }
       }
4

2 回答 2

0

对于特定工作流的任何实例,它都是相同的静态部分。因此,您应该从工作流定义而不是正在运行的工作流实例中获取它。

您应该从 开始VWWorkflowDefinition,遍历使用获得的每个地图getMaps(),然后从VWMapDefinition使用获得步骤getSteps()

于 2018-04-16T18:06:05.503 回答
0

尝试这个

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。

于 2018-04-16T19:31:16.003 回答