コンバータ, 複数行文字列 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出力は、更新モードと追記モードがあります。
Capture
See also
https://support.questetra.com/ja/addons/multiline-string-filter-by-text-2021/
https://support.questetra.com/ja/addons/tsv-string-filter-by-text-2021/