Currency formatting is easy in reports, with the "currency" option in the statement.
But in SAPscript, when no currency reference is set for an amount field, default formatting of two decimal places will occur. This may sometimes be unacceptable -- especially with exceptional currencies like
This can be prevented by setting the correct currency reference, using database structures that have amount fields with currency references. The amount has to be populated in a structure's amount field and proper currency key in the currency reference field and then using the structure's amount field in the layout set rather than using a global variable of type P.
(e.g. Use of KOMK-FKWRT for populating the amount and KOMK-WAERK for holding the corresponding currency key. This will use the currency reference relation defined in the structure KOMK.)
NOTE: This formatting works similarly even for the global variables defined with like
reference to structure's amount field when the amount field's currency reference field is populated
with the required currency key.
Driver Program * Data Declaration DATA: NET_AMOUNT LIKE KOMK- FKWRT.
* Code: KOMK- FKWRT = 234.50. NET_AMOUNT = 987.65. KOMK-WAERK = 'JPY'
Layout &KOMVD-KERT& => The output will be 23450 &NET_AMOUNT& => The output will be 98765
&KOMVD-KERT& would have been printed as 234.50 if the currency key (KOMK-WAERK) were USD and as 23.450 if the currency key (KOMK-WAERK) were TND.
This was first published in October 2005