小币别转换函数——ZCURRENCY_CONVERTING_FACTOR

SAP的小币别金额在数据库表里是缩小100倍数。
为了在自定义程序得到正确的显示金额,这里自定义了一个函数,取所有币别的转换系数。

  DATA: lt_tcurc  LIKE TABLE OF tcurc,
        lv_factor TYPE p DECIMALS 3.

  SELECT * INTO TABLE lt_tcurc FROM tcurc.

  LOOP AT lt_tcurc INTO DATA(ls_tcurc).

    CALL FUNCTION 'CURRENCY_CONVERTING_FACTOR'
      EXPORTING
        currency          = ls_tcurc-waers
      IMPORTING
        factor            = lv_factor
      EXCEPTIONS
        too_many_decimals = 1
        OTHERS            = 2.

    et_result[] = VALUE #( BASE et_result[] (
      waers = ls_tcurc-waers
      factor = lv_factor
    ) ).
  ENDLOOP.

  SORT et_result BY waers.

 

posted @ 2025-05-06 17:54  鲸与海  阅读(82)  评论(3)    收藏  举报