前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matinal:SAP 里的汇率转换

matinal:SAP 里的汇率转换

作者头像
matinal
发布2024-05-26 18:21:54
990
发布2024-05-26 18:21:54
举报
文章被收录于专栏:SAP TechnicalSAP Technical

货币汇率转换Demo 一、说明

汇率维护在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本位币

比如,公司代码本位币为人民币,那么1USD=6.5CNY为直接汇率,0.15385USD=1人民币为间接汇率。中国采用直接标价法,即美元/人民币报价。 ————————————————

代码实现

代码语言:javascript
复制
*&---------------------------------------------------------------------*
*& 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.
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档