コンバータ (TSV to Excel-CSV FILE) (Converter (TSV to Excel-CSV FILE))
文字型データ項目に格納されたタブ区切りテキスト(TSV)が、Excel 対応の CSV ファイルとしてファイル型データ項目に保存されます。
Configs
  • A: TSVデータが格納されている文字列型データを選択してください *
  • B: 抽出データのカラム ID をセットしてください (例 “0,1,5,3,6”) *
  • C: ファイル名が格納されている文字列型データを選択してください *
  • D: ファイル型データを選択してください(追加) *
Script (click to open)
// GraalJS Script (engine type: 2)
// (c) 2021, Questetra, Inc. (the MIT License)

//////// START "main()" ////////
main();
function main(){

//// == Config Retrieving / 工程コンフィグの参照 ==
const dataIdA   = configs.get( "conf_DataIdA" ) + "";
const dataIdC   = configs.get( "conf_DataIdC" ) + "";
const dataIdD   = configs.get( "conf_DataIdD" ) + "";
const colIds    = configs.get( "conf_ColIds" )  + "";
const arrColIds = colIds.split(",");
// 'java.lang.String' (String Obj) to javascript primitive 'string'


//// == Data Retrieving / ワークフローデータの参照 ==
let   myTsv     = engine.findDataByNumber( dataIdA );
if(   myTsv   !== null ){ myTsv += ""; }else{
  throw new Error( "Source TSV data is NULL" );
}
const arrMyTsv  = myTsv.split("\n");

let   fileName  = engine.findDataByNumber( dataIdC ) + ""; // NULL to "null"
let   myFiles   = engine.findDataByNumber( dataIdD ); // java.util.ArrayList
if( myFiles === null ){ myFiles = new java.util.ArrayList(); }


//// == Calculating / 演算 ==
let   newTsv    = "";
for( let i = 0; i < arrMyTsv.length; i++){
  let arrCellValues = arrMyTsv[i].split("\t");
  for( let j = 0; j < arrColIds.length; j++ ){
    newTsv += arrCellValues[ parseInt( arrColIds[j] ) ];
    if( j != arrColIds.length - 1 ){
      newTsv += "\t";
    }
  }
  if( i != arrMyTsv.length -1 ){
    newTsv += "\n";
  }
}

myFiles.add(
  new com.questetra.bpms.core.event.scripttask.NewQfile(
    fileName,
    "text/tab-separated-values; charset=x-UTF-16LE-BOM",
    newTsv
  )
);


//// == Data Updating / ワークフローデータへの代入 ==
engine.setDataByNumber( dataIdD, myFiles );

} //////// END "main()" ////////

Download

2021-07-06 (C) Questetra, Inc. (MIT License)
https://support.questetra.com/ja/addons/converter-tsvtoexcelcsv-2021/
Addonファイルのインポートは Professional でのみご利用いただけます

Notes

  • カラムの順序変更・フィルタ・重複掲載などの操作も可能です
  • ファイル実体は tab-separated-values (utf-16le-bom) です

Capture

See also

2017-04-03 第529話:PayPal業務のサブルーチン化

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