コンバータ(テキストファイル to 文字型データ)
文字型データ項目の値を、ファイル型データ項目に格納されているテキストファイルの内容で、上書きします。
2020-11-17 (C) Questetra, Inc. (MIT License)
Configs
  • C1: 対象のテキストファイルが格納されているファイル型データ項目 *
  • C2: テキストを保存する文字型データ項目 *
Script
main();
function main() {
  //// == Config Retrieving / 工程コンフィグの参照 ==
  const textFileDataNum = configs.get("File_DataId");
  const stringDataNum = configs.get("String_DataId");

  //// == Data Retrieving / ワークフローデータの参照 ==
  const myFiles = engine.findDataByNumber(textFileDataNum);
  // java.util.ArrayList
  
  //// == Data Updating / ワークフローデータへの代入 ==
  updateData(stringDataNum, myFiles);
}

/**
 * ファイルの内容を文字型データ項目に上書き出力
 * @param {String} stringDataNum 保存先文字型データ項目の番号
 * @param {java.util.ArrayList} myFiles ファイル型データの配列
 */
function updateData(stringDataNum, myFiles) {
  // ファイル型データに複数添付されている場合、エラー
  if (myFiles !== null && myFiles.size() > 1) {
    throw new Error("Attachment of multiple files can not be supported.");
  }

  let myFileText = "";
  // ファイル型データにファイルが1つ添付されている場合
  if (myFiles !== null) {
    fileRepository.readFile(myFiles.get(0), "UTF-8", function (line) {
      myFileText += line + "\n";
    });
  }
  // com.questetra.bpms.core.event.scripttask.FileRepositoryWrapper

  //// == Data Updating / ワークフローデータへの代入 ==
  // ファイル型データ項目にファイルが1つ添付されている場合はその値、1つも添付されていない場合は空をセット
  engine.setDataByNumber(stringDataNum, myFileText);
}

Download

Capture

See also

%d人のブロガーが「いいね」をつけました。