コンバータ, 複数行文字列 to 単一行CSV文字列
コンバータ, 複数行文字列 to 単一行CSV文字列 (Converter, Multiline-String to Singleline-CSV-String)
複数行文字列をCSV文字列に変換します。複数行文字列の各行を、CSVの各セルの値として変換します。もしカンマ文字が含まれる場合、あらかじめ削除されます。改行コードのみの行は空白文字データとして認識されます。
Configs
  • A1: 複数行テキストをセットしてください *#{EL}
  • B1: 単一行CSVが格納される文字列型データ項目を選択してください (更新)
  • B2: 単一行CSVが格納される文字列型データ項目を選択してください (追記)
Script (click to open)
// GraalJS Script (engine type: 2)

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

//// == Config Retrieving / 工程コンフィグの参照 ==
const strMultilineText = configs.get( "StrConfA1" );         /// REQUIRED ///////////////
  if( strMultilineText === "" ){
    throw new Error( "\n AutomatedTask ConfigError:" +
                     " Config {A1: Text} is empty \n" );
  }
const strPocketSinglelineCsv = configs.getObject( "SelectConfB1" ); /// REQUIRED /////////
const strPocketMultilineCsv  = configs.getObject( "SelectConfB2" ); /// REQUIRED /////////


//// == Data Retrieving / ワークフローデータの参照 ==
let strTmp = "";
if( strPocketMultilineCsv !== null ){                       // Pocket defined
  if( engine.findData( strPocketMultilineCsv ) !== null ){  // Data exists
    strTmp = engine.findData( strPocketMultilineCsv );
  }
}


//// == Calculating / 演算 ==

/// Replace `,` to ""
let arrText = strMultilineText.replace(/,/g, '').split( "\n" );

/// Append to Tmp
if( strTmp === "" ){
  strTmp = arrText.join( "," );
}else{
  strTmp = strTmp + "\n" + arrText.join( "," );
}


//// == Data Updating / ワークフローデータへの代入 ==
if( strPocketSinglelineCsv !== null ){
  engine.setData( strPocketSinglelineCsv, arrText.join( "," ) );
}
if( strPocketMultilineCsv !== null ){
  engine.setData( strPocketMultilineCsv,  strTmp );
}

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

/*
Notes:
- When the process arrives, the Text stored in Multiline String data is automatically loaded.
    - Comma-separated values in each row are combined.
    - If the input text contains commas (`,`), they will be deleted in advance.
- The CSV is output as "the simplest comma-separated string".
    - Double quote characters are also preserved unescaped.
- The CSV output has an update mode and an append mode.
    - In the append mode, one CSV line is added.


Notes-ja:
- 案件(プロセス)が到達した際、複数行文字列型データに保存されているテキストが読み込まれます。
    - 各行の値をカンマ区切りで結合されます。
    - 入力テキスト内にカンマ(`,`)が含まれている場合、あらかじめ削除されます。
- 出力されるCSVは「もっともシンプルなカンマ区切り文字列」として出力されます。
    - ダブルクオート文字も、エスケープされていない状態で保持されます。
- CSV出力は、更新モードと追記モードがあります。
    - 追記モードの場合、CSV行が一行追加されます。

*/

Download

2021-11-21 (C) Questetra, Inc. (MIT License)
https://support.questetra.com/ja/addons/converter-multiline-string-to-singleline-csv-string-2021
Addonファイルのインポートは Professional でのみご利用いただけます。
自由改変可能な JavaScript (ECMAScript) コードです。いかなる保証もありません。

Notes

  • 案件(プロセス)が到達した際、複数行文字列型データに保存されているテキストが読み込まれます。
    • 各行の値をカンマ区切りで結合されます。
    • 入力テキスト内にカンマ(,)が含まれている場合、あらかじめ削除されます。
  • 出力されるCSVは「もっともシンプルなカンマ区切り文字列」として出力されます。
    • ダブルクオート文字も、エスケープされていない状態で保持されます。
  • CSV出力は、更新モードと追記モードがあります。
    • 追記モードの場合、CSV行が一行追加されます。

Capture

複数行文字列をCSV文字列に変換します。複数行文字列の各行を、CSVの各セルの値として変換します。もしカンマ文字が含まれる場合、あらかじめ削除されます。改行コードのみの行は空白文字データとして認識されます。
複数行文字列をCSV文字列に変換します。複数行文字列の各行を、CSVの各セルの値として変換します。もしカンマ文字が含まれる場合、あらかじめ削除されます。改行コードのみの行は空白文字データとして認識されます。

See also

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

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