コンバータ (Table to Excel-CSV FILE)

テーブル型データ項目の値を、Excel 対応の CSV としてファイル型データ項目に格納します。

    A. テーブル型データを選択してくださいデータ項目選択テーブル型必須
    B. 抽出データのカラム ID をセットしてください (例 "0,1,5,3,6")単一行記述必須
    C. ファイル名が格納されている文字列型データを選択してくださいデータ項目選択文字列型(単一行)必須
    D. ファイル型データを選択してください(更新)データ項目選択ファイル型必須
    -設定変数名設定ラベル
    Aconf_DataIdAテーブル型データを選択してください
    Bconf_ColIds抽出データのカラム ID をセットしてください (例 "0,1,5,3,6")
    Cconf_DataIdCファイル名が格納されている文字列型データを選択してください
    Dconf_DataIdDファイル型データを選択してください(更新)
    // Converter from Table to Excel-CSV (ver. 20161122)
    // (c) 2016, Questetra, Inc. (the MIT License)
    
    //// == 自動工程コンフィグの参照 / Config Retrieving ==
    var dataIdA = configs.get( "conf_DataIdA" );
    var colIds = configs.get( "conf_ColIds" ) + "";
    var dataIdC = configs.get( "conf_DataIdC" );
    var dataIdD = configs.get( "conf_DataIdD" );
    
    //// == ワークフローデータの参照 / Data Retrieving ==
    var myTable = data.get( dataIdA );
    // myTable: com.questetra.bpms.core.model.formdata.ListArray
    var fileName = data.get( dataIdC ) + "";
    
    //// == 演算 / Calculating ==
    if( myTable !== null){
      var colIdArray = colIds.split(",");
      var numOfCols = colIdArray.length;
      var numOfRows = myTable.size() - 0; // 行(Tableの高さ)
    
      var myTsv = "";
      for( var i = 0; i < numOfRows; i++ ){
        for( var j = 0; j < numOfCols; j++ ){
          myTsv += myTable.get(i, parseInt( colIdArray[j] ) ) + "";
          if( j != numOfCols - 1 ){
            myTsv += "\t";
          }
        }
        if( i != numOfRows -1 ){
          myTsv += "\n";
        }
      }
    
      var csvFiles = new java.util.ArrayList();
      csvFiles.add(
        new com.questetra.bpms.core.event.scripttask.NewQfile(
          fileName,
          "text/tab-separated-values; charset=x-UTF-16LE-BOM", 
          myTsv
        )
      );
    }
    
    //// == ワークフローデータへの代入 / Data Updating ==
    retVal.put( dataIdD, csvFiles );
    

    • A’: Aで選択したデータ項目に格納されているテーブル情報
    • テーブルA’の各セルの値が、Bで選択したデータ項目に Excel 対応の CSV ファイルとして保存されます
    • カラムの順序変更・フィルタ・重複掲載などの操作も可能です
    • ファイル実体は tab-separated-values (utf-16le-bom) です
    • SJIS版は comma-separated-values です。スマートフォン表示やデータインポートの可用性が高まりますが、Comma情報が欠落します