date
The DATA: lv_date the TYPE DATS.
The CALL the FUNCTION ' DATE_CHECK_PLAUSIBILITY ' EXPORTING DATE = lv_date the EXCEPTIONS plausibility_check_failed = . 1 the OTHERS = 2 . The IF SY-SUBRC NE of 0. The " if it returns non-zero, then the date is not valid = gv_error ' X- ' gs_data-msgtp =. ' E ' . Light-gs_data = icon_red_light. gs_data-MSG = ' date format error ' . Error_flag = ' X- ' . ENDIF . the CALLFUNCTION 'CONVERT_DATE_TO_EXTERNAL' EXPORTING date_internal = lv_date IMPORTING date_external = gs_data-datbi EXCEPTIONS date_internal_is_invalid = 1 OTHERS = 2.
Money
http://blog.sina.com.cn/s/blog_5d3b01030100tv1b.html
https://blog.csdn.net/zhongguomao/article/details/80298971
DATA l_internal_amount TYPE bseg-dmbtr. DATA lc LIKE t001-waers . lc = 'CNY'. CLEAR:l_internal_amount. l_internal_amount = gs_excel-kbetr. CALL FUNCTION 'BAPI_CURRENCY_CONV_TO_EXTERNAL' EXPORTING currency = lc amount_internal = l_internal_amount IMPORTING amount_external = l_internal_amount. gs_data-kbetr = l_internal_amount.
The amount of negative sign problem
CONVERSION_EXIT_Z001_INPUT reducing the amount of negative sign function (decimal 2)
CONVERSION_EXIT_Z001_OUTPUT advance amount minus function (decimal 2)
Number of negative CONVERSION_EXIT_Z002_INPUT reduction function (decimal 3)
Uppercase characters converted amount
FUNCTION z_numeric_to_chinese. *"---------------------------------------------------------------------- *"*"本地接口: *" IMPORTING *" VALUE(IV_MONEY) TYPE BF_DMBTR *" EXPORTING *" VALUE(EV_MONEY) TYPE STRING *" EXCEPTIONS *" WRONG_MONEY *"---------------------------------------------------------------------- iv_money = abs( iv_money ). DATA: scr(30) TYPE c, res(60) TYPE c,fen(2) TYPE c . DATA: len TYPE i, c1 TYPE i, c2 TYPE i, c3 TYPE i, c4 TYPE i. DATA: d1(1) TYPE c, d2(1) TYPE c, d3 TYPE i. DATA: digit(2) TYPE c, weight(2) TYPE c. DATA: rule1(20) TYPE c VALUE '零壹贰叁肆伍陆柒捌玖'. DATA: rule2(30 ) the TYPE C of VALUE ' bisector pickup element picking Wan Bai Bai 1,000 thousand billion pickup Bai 1,000 Wan ' . SCR = iv_money * 100 . CONDENSE SCR NO- the GAPS. The IF SCR = ' 0 ' . RES = ' Nil ' . The ELSE . len = strlen (SCR). C1 = 0 . D1 = ' 0 ' . the CLEAR RES. the DO len the TIMES . C1= c1 + 1. c2 = len - c1. d2 = scr+c2(1) . IF d2 = '0'. d3 = 0. ELSE. d3 = d2. ENDIF. digit = rule1+d3(1) . c3 = ( c1 - 1 ) . weight = rule2+c3(1) . IF d2 = '0'. IF c1 = 3. digit = ''. ELSEIF c1 = 7. digit = ''. IF len > 10 . c4 = len - 10. IF scr+c4(4) = '0000'. weight = ''. ENDIF. ENDIF. ELSEIF c1 = 11. digit = ''. ELSEIF d1 = '0'. digit = ''. weight = ''. ELSE. weight = ''. ENDIF. ENDIF. CONCATENATE digit weight res INTO res . d1 = d2. ENDDO. ENDIF. len = strlen( res ) - 1. fen = res+len(1). IF fen <> '分' . CONCATENATE res '整' INTO ev_money. ELSE. ev_money = res. ENDIF. ENDFUNCTION.