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);
}