Check this post : https://blogs.sap.com/2019/09/25/how-to-merge-multiple-pdf-forms-into-single-one-and-write-in-application-server/
Convert 2 digits ISO language (LAISO) to 1 digit SAP language key (SPRAS) and reverse:
CONVERSION_EXIT_ISOLA_INPUT Convert 2 digits ISO Lang ==> 1 digit lang. key CONVERSION_EXIT_ISOLA_OUTPUT Convert 1 digit lang. Key ==> 2 digits ISO Lang.
Transaction KO03.
✔ Change some parameteres in the form ouput parameters :
lst_outparms-device = 'MAIL'. " Format for mail sending
lst_outparms-nodialog = 'X'. " Do not display PDF
lst_outparms-getpdf = 'X'. " and get PDF source.
✔ Retrieve the PDF code in form ouput structure of your form function :
/1bcdwb/formoutput = ls_formoutput
✔ Convert PDF code in xstring to binary :
" DATA lt_att_content_hex TYPE solix_tab. " Table type for mail attachment.
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
buffer = ls_formoutput-pdf
* APPEND_TO_TABLE = ' '
* IMPORTING
* OUTPUT_LENGTH =
TABLES
binary_tab = lt_att_content_hex.
✔ Use the table lt_att_content_hex to send the PDF by mail, check post : Send mail using BCS class
Several possibilities.
Use FM TH_IN_UPDATE_TASK:
DATA : lv_in_updtask TYPE sy-subrc.
CALL FUNCTION 'TH_IN_UPDATE_TASK'
IMPORTING in_update_task = lv_in_updtask.
" lv_in_updtask = 1 if running in update task,
" else, lv_in_updtask = 0.
Use class CL_SYSTEM_TRANSACTION_STATE:
IF CL_SYSTEM_TRANSACTION_STATE=>GET_IN_UPDATE_TASK( ) EQ 0 .
" Code when not running in update task...
ENDIF.
Search tag: update process
In transaction code input field : /$sync
(to be done in transaction SESSION_MANAGER).
This re-init all buffers, useful when developping ALV layouts.
Use with caution as it will decrease SAP response time after refreshing the buffers.
Search tag : clear buffer, cache
Sometimes when compilling class, this error appears.
Fully specification for a table means declare:
✔️ the type of internal table (default STANDARD),
✔️ the key (default WITH DEFAULT KEY).
TYPES ti_table TYPE STANDARD TABLE OF ts_structure WITH DEFAULT KEY.
Search tag: classe, Les paramètres RETURNING doivent être entièrement catégorisés.