SAP货币汇率转换
发布时间
阅读量:
阅读量
一、说明
汇率维护可以在ERP系统中通过事务代码OB07或OB08进行管理。每次进行不同币种的汇率调整时,在正式生产系统内都会新增一条记录。修改后会被存储到表TCURR中。通过调用函数CONVERT_TO_LOCAL_CURRENCY来实现货币转换。需要注意的是,在导出功能(Exporting)中的各个参数必须使用变量而非常量。该函数默认采用最新更新的有效汇率作为计算依据。
在处理货币数据时需要注意一些特殊的情况。例如日元(JPY)这种货币是不带小数点的,在系统内部存储的数据与你查看时看到的数据存在差异。这是因为采用了转换因子进行调整的原因,在将金额转换为目标货币之前,在SAP系统中会先除以相应的转换因子,并计算出最终数值后再存入数据库中,并提供了相应的功能模块供使用
- BAPI_CURRENCY_conv_TO_INTERNAL:该命令表示为将汇率归约为数据库内部存储的金额形式。
- BAPI_CURRENCY_conv_TO_EXTERNAL:该命令归约为外部使用的实际金额计算。

包括直接汇率(Direct quotation)和间接汇率(Indirect quotation)两部分
直接汇率:1外币=XX本位币
间接汇率:XX外币=1本位币
例如,在公司内部编码中使用人民币作为基准货币时,默认情况下1美元等于6.5个人民币的直接汇率表示;另外,在这种情况下计算出的0.15385美元等于每个人民币的间接汇率计算方式。中国的外汇交易主要采用直接标价法,在此体系下报价单位通常以美元/人民币(USD/CNY)的形式呈现。

三、转换实例
*&---------------------------------------------------------------------* *& Report ZTEST_CONVERT_CURR
*&
*&---------------------------------------------------------------------* *&
*&
*&---------------------------------------------------------------------*
REPORT ZTEST_CONVERT_CURR.
DATA: GV_AMOUNT LIKE BSEG-WRBTR,
GV_INTER LIKE BSEG-WRBTR,
GV_FROM TYPE CHAR20,
GV_TO TYPE CHAR20.
************************************ * selection screen
************************************
PARAMETERS : P_FC TYPE TCURC-WAERS DEFAULT 'JPY',
P_TC TYPE TCURC-WAERS DEFAULT 'CNY',
P_DATE LIKE SY-DATUM DEFAULT SY-DATUM,
P_CURR TYPE BAPICURR-BAPICURR,
P_KURST TYPE TCURR-KURST DEFAULT 'M'.
************************************ * start- of -selection
************************************
START-OF-SELECTION.
*** Conversion of Currency Amounts into Internal Data Format
CALL FUNCTION 'BAPI_CURRENCY_CONV_TO_INTERNAL'
EXPORTING
CURRENCY = P_FC
AMOUNT_EXTERNAL = P_CURR
MAX_NUMBER_OF_DIGITS = 13
IMPORTING
AMOUNT_INTERNAL = GV_INTER.
*** Translate foreign currency amount to local currency
CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
EXPORTING
DATE = P_DATE
FOREIGN_AMOUNT = GV_INTER
FOREIGN_CURRENCY = P_FC
LOCAL_CURRENCY = P_TC
TYPE_OF_RATE = P_KURST
IMPORTING
LOCAL_AMOUNT = GV_AMOUNT
EXCEPTIONS
NO_RATE_FOUND = 1
OTHERS = 2.
************************************ * end - of - selection
************************************
END-OF-SELECTION.
MOVE P_CURR TO GV_FROM.
MOVE GV_AMOUNT TO GV_TO.
CONDENSE GV_FROM NO-GAPS.
CONDENSE GV_TO NO-GAPS.
WRITE : / P_FC,'→',P_TC.
WRITE : / GV_FROM ,'→',GV_TO.


全部评论 (0)
还没有任何评论哟~
