曰元 韓元 台幣等特殊貨幣小數字數轉換

2022-08-17 20:18:11 字數 1959 閱讀 4448

在sap系統內,不同的貨幣的小數的位數有可能不一樣的,比如:日幣和人民幣的就不同。

**:123

45reportztest_currency_convert.

data:l_netwrtypepdecimals2.

l_netwr='1.8'.

write:/'jpy:',l_netwrcurrency'jpy'.

write:/'rmb:',l_netwrcurrency'rmb'.

執行結果:

同樣輸入了1.8,但是輸出的結果卻不同,日幣擴大了100倍,變成了180日元,而rmb還保持原樣,1.8元,想想很合理,日元最小單位是元,而rmb最小是分。

換句話,系統自動給日元加了個轉換因子100,rmb的轉換因子是1.

這個轉換因子學名叫貨幣轉換因子(currency converting factor),是在abap開發中的乙個重要的概念。計算公式如下:

貨幣轉換因子 = 100 × 貨幣的最小單位(小數點後位數,例如,小數點3位,最小單位就是0.001).

當沒有小數點時,貨幣轉換因子就是100 × 1 = 100.

貨幣的小數字數是儲存在表tcurx中的,正常的貨幣都是小數點後2位的,這個是預設的,不儲存在這個表中,也就是凡是在表tcurx中找不到的貨幣的轉換因子都是100 × 0.01 = 1,比如rmb。

在上圖中能看到日元的是沒有小數點,是0,所以日元的轉換因子 = 100 × 1 = 100.

sap提供了乙個函式currency_converting_factor能直接得到貨幣的轉換因子,

上面這個貨幣的轉換過程是sap自動實現的,比如180日元在資料庫中會自動儲存成1.8,但是有個前提就是一定要指定幣種。

資料庫中顯示:

而在螢幕上,讀出來的就是自動轉換後的正確金額。

我們在abap程式設計時要注意指定幣種:

1) write輸出時,指定currency

1write:g_netwrcurrencyvbap-waerk.

2)  screen中指定參考單位

3) alv 中也要在catelog中指定參考貨幣單位,

oo alv中

tcurt:貨幣描述文字

tcurc:貨幣**(currency codes)

以上。

墾丁小吃 一碗150元台幣的芒果冰

新鮮的芒果冰,是冰館的招牌冰品 還沒走近冰館,或許你會被大排長龍的隊伍吸引靠近 但一碗芒果冰要價一百五十元台幣,究竟冰館的魅力何在?十二年前,冰館只是一家五坪大的店鋪,在永康街上賣的是一般的傳統冰品,紅豆冰 綠豆冰。前三年開店,生意不好,於是羅老闆就將自己喜愛吃的芒果大量鋪在冰上,淋上糖水 煉奶,上...

富士康第三季度淨利潤為308億元新台幣 超市場預期

程式設計客棧 www.cppcns.com 11月12日 訊息 今天,全球最大的電子產品代工廠富士康發布三季度財報,季度利潤與去年同期接近持平,超過市場預期,原因是受疫情促使遠端辦公裝置需求強勁。財tvynwfkt報顯示,該公司7月至9月的淨利潤為308億元新台幣 約合10.8億美元 與去年同期30...