method ui5_value_formatter. data: lv_pattern type string, lv_anydata type string, lv_part1 type string, lv_part2 type string, wa_usr01 type usr01. * Check for Multiple fields if lv_parts cs ','. split lv_parts at ',' into lv_part1 lv_part2. else. lv_part1 = lv_parts. endif. * Common Any Data Check concatenate 'if (typeof(' lv_part1 ') == "undefined" || ' lv_part1 '=== null || ' lv_part1 '== "") { return; }' into lv_anydata separated by space. * Format String case lv_type. when 'number:Decimals0'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 0,' 'minFractionDigits: 0,' 'groupingEnabled: true,' 'groupingSeparator: " "' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals1Comma'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 1,' 'minFractionDigits: 1,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: ","' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals1Point'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 1,' 'minFractionDigits: 1,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: "."' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals2Comma'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 2,' 'minFractionDigits: 2,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: ","' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals2Point'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 2,' 'minFractionDigits: 2,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: "."' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals3Comma'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 3,' 'minFractionDigits: 3,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: ","' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'number:Decimals3Point'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 3,' 'minFractionDigits: 3,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: "."' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'string:UpperCase'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var formattedText = ' lv_part1 into data_server-ui5_formatter separated by space. concatenate data_server-ui5_formatter '.toUpperCase();' into data_server-ui5_formatter. when 'string:LowerCase'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var formattedText = ' lv_part1 into data_server-ui5_formatter separated by space. concatenate data_server-ui5_formatter '.toLowerCase();' into data_server-ui5_formatter. when 'string:RemoveLeadingZero'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var stringText = ' lv_part1 into data_server-ui5_formatter separated by space. concatenate data_server-ui5_formatter '.toString();' cl_abap_char_utilities=>cr_lf `var formattedText = stringText.replace(/^0+/, '');` into data_server-ui5_formatter. when 'time:HH:mm'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.DateFormat");' cl_abap_char_utilities=>cr_lf 'var oSAPFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "HHmmss"});' cl_abap_char_utilities=>cr_lf 'var oOutFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "HH:mm"});' cl_abap_char_utilities=>cr_lf 'var oDate = oSAPFormat.parse(' lv_part1 ');' cl_abap_char_utilities=>cr_lf 'var formattedText = oOutFormat.format(oDate);' into data_server-ui5_formatter. when 'time:HH:mm:ss'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.DateFormat");' cl_abap_char_utilities=>cr_lf 'var oSAPFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "HHmmss"});' cl_abap_char_utilities=>cr_lf 'var oOutFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "HH:mm:ss"});' cl_abap_char_utilities=>cr_lf 'var oDate = oSAPFormat.parse(' lv_part1 ');' cl_abap_char_utilities=>cr_lf 'var formattedText = oOutFormat.format(oDate);' into data_server-ui5_formatter. when 'time:BrowserSetting'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var formattedText = ' lv_part1 ';' cl_abap_char_utilities=>cr_lf 'var dateVal = new Date();' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCHours(formattedText.substr(0, 2));' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCMinutes(formattedText.substr(2, 2));' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCSeconds(formattedText.substr(4, 2));' cl_abap_char_utilities=>cr_lf 'formattedText = dateVal.toLocaleTimeString();' cl_abap_char_utilities=>cr_lf into data_server-ui5_formatter. when 'number:BrowserSetting'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var formattedText = parseFloat(' lv_part1 ');' cl_abap_char_utilities=>cr_lf 'formattedText = formattedText.toLocaleString();' cl_abap_char_utilities=>cr_lf into data_server-ui5_formatter. when 'number:SAPUserDefault'. * Get User Data select single * from usr01 into wa_usr01 where bname eq sy-uname. * Translate Date defaults case wa_usr01-dcpfm. when 'Y'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 2,' 'minFractionDigits: 2,' 'groupingEnabled: true,' 'groupingSeparator: " ",' 'decimalSeparator: ","' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when 'X'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 2,' 'minFractionDigits: 2,' 'groupingEnabled: true,' 'groupingSeparator: ",",' 'decimalSeparator: "."' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. when others. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.NumberFormat");' cl_abap_char_utilities=>cr_lf 'var oNumberFormat = sap.ui.core.format.NumberFormat.getFloatInstance({' 'maxFractionDigits: 2,' 'minFractionDigits: 2,' 'groupingEnabled: true,' 'groupingSeparator: ".",' 'decimalSeparator: ","' '});' cl_abap_char_utilities=>cr_lf 'var formattedText = oNumberFormat.format(' lv_part1 ');' into data_server-ui5_formatter. endcase. endcase. * Date if lv_type(5) eq 'date:'. lv_pattern = lv_type+5. if lv_type eq 'date:SAPUserDefault'. * Get User Data select single * from usr01 into wa_usr01 where bname eq sy-uname. * Translate Date defaults case wa_usr01-datfm. when '1'. lv_pattern = 'dd.MM.yyyy'. when '2'. lv_pattern = 'MM/dd/yyyy'. when '3'. lv_pattern = 'MM-dd-yyyy'. when '4'. lv_pattern = 'yyyy.MM.dd'. when '5'. lv_pattern = 'yyyy/MM/dd'. when '6'. lv_pattern = 'yyyy-MM-dd'. when '7'. lv_pattern = 'yy.MM.dd'. when '8'. lv_pattern = 'yy/MM/dd'. when '9'. lv_pattern = 'yy-MM-dd'. when others. lv_pattern = 'yyyy/MM/dd'. endcase. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.DateFormat");' cl_abap_char_utilities=>cr_lf 'var oSAPFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "yyyyMMdd"});' cl_abap_char_utilities=>cr_lf 'var oOutFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "' lv_pattern '"});' cl_abap_char_utilities=>cr_lf 'var oDate = oSAPFormat.parse(' lv_part1 ');' cl_abap_char_utilities=>cr_lf 'if (' lv_part1 `=='00000000'){var formattedText = ''} else {var formattedText = oOutFormat.format(oDate);}` into data_server-ui5_formatter. elseif lv_type eq 'date:BrowserSetting'. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'var formattedText = ' lv_part1 ';' cl_abap_char_utilities=>cr_lf 'var dateVal = new Date();' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCFullYear(formattedText.substr(0, 4));' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCMonth(formattedText.substr(4, 2));' cl_abap_char_utilities=>cr_lf 'dateVal.setUTCDate(formattedText.substr(6, 2));' cl_abap_char_utilities=>cr_lf 'formattedText = dateVal.toLocaleDateString();' cl_abap_char_utilities=>cr_lf into data_server-ui5_formatter. else. concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf lv_anydata cl_abap_char_utilities=>cr_lf 'jQuery.sap.require("sap.ui.core.format.DateFormat");' cl_abap_char_utilities=>cr_lf 'var oSAPFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "yyyyMMdd"});' cl_abap_char_utilities=>cr_lf 'var oOutFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({pattern: "' lv_pattern '"});' cl_abap_char_utilities=>cr_lf 'var oDate = oSAPFormat.parse(' lv_part1 ');' cl_abap_char_utilities=>cr_lf 'if (' lv_part1 `=='00000000'){var formattedText = ''} else {var formattedText = oOutFormat.format(oDate);}` into data_server-ui5_formatter. endif. endif. * End concatenate data_server-ui5_formatter cl_abap_char_utilities=>cr_lf 'return formattedText;' into data_server-ui5_formatter. endmethod.