s_ss написал:
Я так понял, что в 46C нет ALL OCCURRENCES, а сам REPLACE есть.
В 46C нет опции 'ALL OCCURRENCES' команды REPLACE.
Вот еще пример из жизни, используемый при суммировании чисел в своем SAPScript-формуляре:
Code:
FORM STRING_2_NUM USING cString LIKE ITCSY-VALUE
CHANGING P_EXVKW_POSWS LIKE WOSI_ISEG-EXVKW_POSWS.
INCLUDE LWOSICST.
DATA: P_STRING_100 TYPE CHAR100,
nSign TYPE N.
P_STRING_100 = cString.
REPLACE '-' WITH SPACE INTO P_STRING_100.
IF SY-SUBRC = 0.
nSign = -1.
ELSE.
nSign = +1.
ENDIF.
CALL FUNCTION 'WOSI_CONVERT_STRING_TO_NUM'
EXPORTING
P_ACTION = c_convert_to_exvkw_posws
P_STRING_100 = P_STRING_100
IMPORTING
* P_ERFMG =
P_EXVKW_POSWS = P_EXVKW_POSWS
* P_SWERT =
* P_VKUMG =
EXCEPTIONS
ERROR_IN_SY_MSG = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
P_EXVKW_POSWS = nSign * P_EXVKW_POSWS.
ENDFORM.