*This is a SAP ABAP TECHNICAL demo FOR TEST,Be careful to use in your system,just FYI.Addition of Entry in Table of Exchange Rates
*If you have any solution,Please feel free to talk with your IT team/SAP ABAP professional guys.Addition of Entry in Table of Exchange Rates
*The API method makes it possible to write an entry in the exchange rate
*table. The system carries out an authorization check for maintenance of
*exchange rate tables.
*INCLUDE BAPI_TEXT_SET_COMMIT OBJECT DOKU ID TX
*Example
*INCLUDE BAPI_TEXT_CURR_EXAMPLE OBJECT DOKU ID TX
*
REPORT ZDEMO_BAPI_EXCHANGERATE_CREATE.
PARAMETERS SAMPLE AS CHECKBOX.
INITIALIZATION.
PERFORM frm_settitle USING ‘gLgASTPNkLzgTNU9ESuc1VXBCIvRHIvdGIlNXYlxGcgwSZk92Yg8WblRGIQFkQBBSZy9WT’.
START-OF-SELECTION.
BREAK-POINT..
**********************************************************************
*******Defination of Work Area Structrue [Import]-[EXCH_RATE ] . “”BAPI exchange rate table
**********************************************************************
DATA: LS_EXCH_RATE TYPE BAPI1093_0 . “”BAPI exchange rate table
LS_EXCH_RATE-RATE_TYPE = ‘CHAR4’. “Exchange Rate Type
LS_EXCH_RATE-FROM_CURR = ‘CUKY5’. “From currency
LS_EXCH_RATE-TO_CURRNCY = ‘CUKY5’. “To-currency
LS_EXCH_RATE-VALID_FROM = ‘20241208’. “Saved From
LS_EXCH_RATE-EXCH_RATE = ‘DEC9’. “Direct quoted exchange rate
LS_EXCH_RATE-FROM_FACTOR = ‘DEC9’. “Ratio (from)
LS_EXCH_RATE-TO_FACTOR = ‘DEC9’. “Ratio (to)
LS_EXCH_RATE-EXCH_RATE_V = ‘DEC9’. “Indirect quoted exchange rate
LS_EXCH_RATE-FROM_FACTOR_V = ‘DEC9’. “Ratio (from)
LS_EXCH_RATE-TO_FACTOR_V = ‘DEC9’. “Ratio (to)
DATA: LV_UPD_ALLOW TYPE BAPI1093_2-UPD_ALLOW .”Option,Default Value =SPACE,
DATA: LV_CHG_FIXED TYPE BAPI1093_2-CHG_FIXED .”Option,Default Value =SPACE,
DATA: LV_DEV_ALLOW TYPE BAPI1093_2-DEV_ALLOW .”Option,Default Value =’000′,
**********************************************************************
*******Defination of Work Area Structrue [Export]-[RETURN ] . “”Return Parameter
**********************************************************************
DATA: LS_RETURN TYPE BAPIRET2 . “”Return Parameter
DATA: LV_RATE_TYPE TYPE BAPI1093_0-RATE_TYPE .”Obligatory
DATA: LV_FROM_CURR TYPE BAPI1093_0-FROM_CURR .”Obligatory
DATA: LV_TO_CURRNCY TYPE BAPI1093_0-TO_CURRNCY .”Obligatory
**********************************************************************
*******CallUp The Function Now. .
**********************************************************************
CALL FUNCTION ‘BAPI_EXCHANGERATE_CREATE’
EXPORTING
EXCH_RATE = LS_EXCH_RATE
* UPD_ALLOW = ”
* CHG_FIXED = ”
* DEV_ALLOW = ‘000’
IMPORTING
RETURN = LS_RETURN
RATE_TYPE = LV_RATE_TYPE
FROM_CURR = LV_FROM_CURR
TO_CURRNCY = LV_TO_CURRNCY
EXCEPTIONS
OTHERS = 1
.
BREAK-POINT…
IF sy-subrc <> 0.
*Implement suitable error handling here
ENDIF.
FORM frm_settitle USING uv_old .
DATA lv_ret_s TYPE c LENGTH 200.
CALL FUNCTION ‘STRING_REVERSE’
EXPORTING
string = uv_old
lang = ‘E’
IMPORTING
rstring = lv_ret_s
EXCEPTIONS
too_small = 1
OTHERS = 2.
DATA lv_astring TYPE string.
lv_astring = lv_ret_s.
DATA lv_xs TYPE xstring.
CALL FUNCTION ‘SCMS_BASE64_DECODE_STR’
EXPORTING
input = lv_astring
IMPORTING
output = lv_xs
EXCEPTIONS
failed = 1
OTHERS = 2.
IF sy-subrc <> 0.
RETURN.
ENDIF.
DATA lt_str TYPE STANDARD TABLE OF solix.
DATA lv_i TYPE i.
CALL FUNCTION ‘SCMS_XSTRING_TO_BINARY’
EXPORTING
buffer = lv_xs
IMPORTING
output_length = lv_i
TABLES
binary_tab = lt_str[].
CHECK NOT lt_str[] IS INITIAL.
DATA lv_long TYPE string.
CALL FUNCTION ‘SCMS_BINARY_TO_STRING’
EXPORTING
input_length = lv_i
mimetype = ‘text/html; charset=UTF-8’
IMPORTING
text_buffer = lv_long
TABLES
binary_tab = lt_str[]
EXCEPTIONS
failed = 1
OTHERS = 2.
sy-title = lv_long.
ENDFORM.
If you have problem, please fell free to contact.Thanks.
This post is come from www.hot583.com, you can share/use it with the post original link for free.
But pay attention of any risk yourself.
http://www.hot583.com/category/sap_tech/sap_bapi/
微信原文《The End》