@@ -12,11 +12,18 @@ export function queryResultToRpgDs(result: QueryResult<any>, source: string = 'N
1212
1313export function columnToRpgFieldName ( column : ColumnMetaData , source : string = 'Name' ) : string {
1414 let name = source === 'Label' ? column . label . toLowerCase ( ) . trim ( ) : column . name . toLowerCase ( ) . trim ( ) ;
15- name = name . replace ( / \u00fc / g, "u" ) ; // ü
16- name = name . replace ( / \u00e4 / g, "a" ) ; // ä
17- name = name . replace ( / \u00e4 / g, "o" ) ; // ö
18- name = name . replace ( / \u00df / g, "s" ) ; // sharp s/Eszett
19- name = name . replace ( / \s + / g, "_" ) . replace ( / [ ^ a - z A - Z 0 - 9 _ ] / g, '' ) . trim ( ) ; // space to underscore and remove non-alphanumeric chars
15+ name = name . replace ( / \u00fc / g, "u" ) // ü -> u
16+ . replace ( / \u00e4 / g, "a" ) // ä -> a
17+ . replace ( / \u00e4 / g, "o" ) // ö -> o
18+ . replace ( / \u00df / g, "s" ) // sharp s/Eszett -> s
19+ . replace ( / \u00e6 / g, "ae" ) // æ -> ae
20+ . replace ( / \u00f8 / g, "oe" ) // ø -> oe
21+ . replace ( / \u00e5 / g, "aa" ) // å -> aa
22+ . replace ( / [ . : ] + $ / g, "" ) // remove trailing "." and ":"
23+ . replace ( / [ . ] / g, "_" ) // "." between words to underscore
24+ . replace ( / \s + / g, "_" ) // remaining whitespaces to underscore
25+ . replace ( / [ ^ a - z A - Z 0 - 9 _ ] / g, '' ) // remove non-alphanumeric chars
26+ . trim ( ) ;
2027 if ( ! isNaN ( + name . charAt ( 0 ) ) ) {
2128 name = `col` + name ;
2229 }
0 commit comments