1

在 Workplace Process Designer 的Expression Builder中,我有一个 String[] 类型的附件变量(字符串数组)。我想使用表达式生成器向其中添加一些元素,但我无法确定语法。有人做过吗?甚至可以将元素添加到 Expression Builder 中的现有数组吗?

4

3 回答 3

2

arraytostring 解决方案仅在数组只有一个元素时才有效。使用以下表达式分配附加值:

stringarray[elementcount(stringarray) + 1] = value

预期的“数组越界异常”和数组的大小调整在分配期间处理。

于 2018-04-12T08:26:35.213 回答
1

我最初认为我们不可能不得不求助于自定义 java 组件来完成这项工作,但是我已经运行了一个小实验,应该作为您的案例的解决方法。

假设您有String[] arrayType={"string1, string2"},您可以使用以下表达式作为更新数组的值:

{(arraytostring(arrayType,  " ", " ,", ","))+"string3"}

我所做的是,

  • 首先,我使用arraytostring函数将数组转换为以逗号分隔的字符串,并在末尾留有逗号。我的输出类似于string1,string2,
  • 其次,我将要添加的字符串附加到字符串的末尾,这样我的输出是string1,string2,string3
  • 最后,我使用数组表达式格式 {} 将上面的值分配给我的数组,所以我的最终评估字符串是{string1,string2,string3}

有关数组函数的更多信息,请点击以下链接:

https://www.ibm.com/support/knowledgecenter/SSNW2F_5.2.1/com.ibm.p8.pe.user.doc/bpfe003.htm

于 2016-07-03T11:58:43.827 回答
0

我有一个这样的案例,这就是我所做的:

  1. 我使用 CE-Operation 从附件中获取数组并将其存储在工作流的数组属性中

  2. 然后我用下面的

    {(arraytostring(workflowArray,  " ", " ,", ","))+workflowStringProp}
    
  3. 再次使用 CE-Operation 将附件中的数组设置为 workflowArray。

于 2017-04-26T09:04:21.167 回答