Конкатенация массивов в IBM Filenet P8 Expression Builder?

В построителе выражений для Workplace Process Designer у меня есть переменная вложения типа String[] (массив строк). Я хотел бы добавить к нему некоторые элементы с помощью Expression Builder, но не могу разобраться в синтаксисе. Кто-нибудь делал это? Можно ли даже добавить элементы в существующий массив в Expression Builder?

3 ответа

Решение arraytostring работает, только если в массиве только один элемент. Присвойте дополнительное значение с помощью следующего выражения:

stringarray[elementcount(stringarray) + 1] = value

Ожидаемое исключение "массив из связанной" и изменение размера массива обрабатываются во время присваивания.

Первоначально я думал, что это не возможно, что нам пришлось прибегнуть к использованию собственного компонента 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

У меня был такой случай, вот что я сделал:

  1. Я получаю массив из вложения, используя CE-операцию, и сохраняю свойство массива в рабочем процессе.

  2. Затем я использовал следующее

    {(arraytostring(workflowArray,  " ", " ,", ","))+workflowStringProp}
    
  3. снова используя CE-Operation для установки массива во вложении с помощью workflowArray.

Другие вопросы по тегам