Оператор WRITE
позволяет указать валюту.Пример:
DATA price TYPE p DECIMALS 2.
price = '3000000'.
WRITE: / price CURRENCY 'USD'.
Обратите внимание, что это не интерпретирует само число, а просто добавляет запятые и точки в определенных позициях в зависимости от указанной валюты.Поэтому, если у вас есть целое число со значением 3000000
, и вы пишете его с валютой USD
, результат будет 30.000,00
.
Я предлагаю вам прочитать справочную информацию F1 на WRITE
оператор, потому что кроме этого есть намного больше опций.
-
Удаление ведущих нулей выполняется с помощью процедуры преобразования.CONVERSION_EXIT_ALPHA_INPUT
добавит ведущие нули, а CONVERSION_EXIT_ALPHA_OUTPUT
удалит их.Можно добавить эти подпрограммы в домен в словаре, поэтому преобразование будет выполнено автоматически.Например, тип MATNR
:
DATA matnr TYPE matnr.
matnr = '0000129'.
WRITE: / matnr.
. Будет выведено 129
, поскольку в домене MATNR
задана процедура преобразования.
В случае типа, который неиметь это, например:
DATA value(7) TYPE n.
value = '0000129'.
WRITE: / value.
Выход будет 0000129
.Вы можете вызвать процедуру CONVERSION_EXIT_ALPHA_OUTPUT
, чтобы получить результат без начальных нулей:
DATA value(7) TYPE n.
value = '0000129'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = value
IMPORTING
output = value.
WRITE: / value.