千位符处理
DATA: ls_usdefaults TYPE usdefaults, lv_num TYPE char10, lv_decimal TYPE char1, "小数点 lv_thousand TYPE char1. "千位符 " 获取用户设置 CALL FUNCTION 'SUSR_USER_READ' EXPORTING user_name = sy-uname IMPORTING user_defaults = ls_usdefaults EXCEPTIONS user_name_not_exists = 1 internal_error = 2 OTHERS = 3. IF sy-subrc NE 0. MESSAGE '获取用户设置错误' TYPE 'E'. ENDIF. CASE ls_usdefaults-dcpfm. WHEN 'X'."十进制计数法设置为 'X' lv_thousand = ','. lv_decimal = '.'. WHEN 'Y'."十进制计数法设置为 'Y' lv_thousand = ' '. lv_decimal = ','. WHEN OTHERS. " 默认值 lv_thousand = '.'. lv_decimal = ','. ENDCASE. lv_num = '1,234.5'."当前用户系统中的数字 "去掉千位符 REPLACE ALL OCCURRENCES OF lv_thousand IN lv_num WITH ''. *"去掉小数点 *REPLACE ALL OCCURRENCES OF lv_decimal IN lv_result WITH '.'. WRITE:lv_num.
定期更文,欢迎关注


浙公网安备 33010602011771号