main();
function main() {
//// == 自動工程コンフィグの参照 / Config Retrieving ==
const excelCsvFileDataNum = configs.get( "File_DataId" ); // (returns Number)
const tableDataNum = configs.get( "Table_DataId" ); // (returns Number)
//// == ワークフローデータの参照 / Data Retrieving ==
const myFiles = engine.findDataByNumber( excelCsvFileDataNum );
// ファイル型データに複数添付されている場合、エラー
if (myFiles !== null && myFiles.size() > 1) {
throw new Error( 'Attachment of multiple files can not be supported.' );
}
const myTable = new com.questetra.bpms.core.model.formdata.ListArray();
// ファイル型データにファイルが1つ添付されている場合
if (myFiles !== null) {
// ファイル型を1行ずつ読み込んで、テーブル型にセット
fileRepository.readFile(myFiles.get(0), "x-UTF-16LE-BOM", function(line) {
const tmpRow = new com.questetra.bpms.core.model.formdata.ListArray.ListRow();
const cellsArray = line.split("\t");
for (let j=0; j < cellsArray.length; j++){
tmpRow.addCol( cellsArray[j] );
}
myTable.addRow( tmpRow );
});
}
//// == ワークフローデータへの代入 / Data Updating ==
// ファイル型データ項目にファイルが1つ添付されている場合はその値、1つも添付されていない場合は空をセット
engine.setDataByNumber( tableDataNum, myTable );
}