@@ -61,6 +61,8 @@ const createCsvStringifier = require('csv-writer').createObjectCsvStringifier;
6161export class Common {
6262
6363 static logger : Logger ;
64+ static csvReadFileDelimiter : ',' | ';' = "," ;
65+ static csvWriteFileDelimiter : ',' | ';' = "," ;
6466
6567 /**
6668 * @static Splits array to multiple chunks by max chunk size
@@ -716,6 +718,7 @@ export class Common {
716718 input = input . replace ( / ^ \uFEFF / , '' ) ;
717719 const records = parse ( input , {
718720 columns : ___columns ,
721+ delimiter : Common . csvReadFileDelimiter ,
719722 skip_empty_lines : true ,
720723 skip_lines_with_error : true ,
721724 cast : ___csvCast
@@ -819,6 +822,7 @@ export class Common {
819822 return ;
820823 }
821824 const csvWriter = createCsvWriter ( {
825+ fieldDelimiter : Common . csvWriteFileDelimiter ,
822826 header : ( columns || Object . keys ( array [ 0 ] ) ) . map ( x => {
823827 return {
824828 id : x ,
@@ -1086,15 +1090,15 @@ export class Common {
10861090 return temp . map ( el => el . trim ( ) ) . filter ( el => el . length > 0 ) ;
10871091 }
10881092
1089- /**
1090- * Extracts QHERE clause from the query string
1091- *
1092- * @static
1093- * @param {string } query The query to process (SELECT Name, a__c FROM Account WHERE b__c = 'test')
1094- * @return {* } {string} Dry WHERE clause string (b__c = 'test')
1095- * @memberof Common
1096- */
1097- public static extractWhereClause ( query : string ) : string {
1093+ /**
1094+ * Extracts QHERE clause from the query string
1095+ *
1096+ * @static
1097+ * @param {string } query The query to process (SELECT Name, a__c FROM Account WHERE b__c = 'test')
1098+ * @return {* } {string} Dry WHERE clause string (b__c = 'test')
1099+ * @memberof Common
1100+ */
1101+ public static extractWhereClause ( query : string ) : string {
10981102 if ( ( query || '' ) . match ( / W H E R E / i) ) {
10991103 return query . match ( / ^ .* ?W H E R E .* ?( .+ ?(? = L I M I T | O F F S E T | G R O U P | O R D E R | $ ) ) / i) [ 1 ] . trim ( ) ;
11001104 }
@@ -1758,17 +1762,17 @@ public static extractWhereClause(query: string): string {
17581762 return entryNames . map ( name => enumType [ name ] as ValType ) ;
17591763 }
17601764
1761- /**
1762- * Creates a time delay
1763- *
1764- * @static
1765- * @param {number } time The delay length in ms
1766- * @return {* } {Promise<void>}
1767- * @memberof Utils
1768- */
1769- static async delayAsync ( time : number ) : Promise < void > {
1770- return new Promise ( resolve => setTimeout ( resolve , time ) ) ;
1771- }
1765+ /**
1766+ * Creates a time delay
1767+ *
1768+ * @static
1769+ * @param {number } time The delay length in ms
1770+ * @return {* } {Promise<void>}
1771+ * @memberof Utils
1772+ */
1773+ static async delayAsync ( time : number ) : Promise < void > {
1774+ return new Promise ( resolve => setTimeout ( resolve , time ) ) ;
1775+ }
17721776
17731777
17741778}
0 commit comments