‎2008 Feb 05 7:19 AM
Hi
After getting output for smartforms i want it in PDF format
How to do this
Help me on this .
Points will be definately rewarded
Thanxs & Regrds
Rajan Mehta
‎2008 Feb 05 7:27 AM
Have a look at the sample code to convert to PDF
*Call the smartform function module
CALL FUNCTION v_fm_name
PARAMETER-TABLE
ptab
EXCEPTION-TABLE
etab.
*Convert to PDF if required
lt_otf] = job_output_info-otfdata[.
IF LINES( lt_otf ) GT 0.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
ARCHIVE_INDEX = ' '
COPYNUMBER = 0
ASCII_BIDI_VIS2LOG = ' '
PDF_DELETE_OTFTAB = ' '
IMPORTING
bin_filesize = v_binfilesize
BIN_FILE =
TABLES
otf = lt_otf
lines = lt_pdf_tab
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
err_bad_otf = 4
OTHERS = 5
.
IF sy-subrc 0.
*Raise exceptions in case OTF is not generated
CASE sy-subrc.
WHEN 1.
RAISE err_max_linewidth.
WHEN 2.
RAISE err_format.
WHEN 3.
RAISE err_conv_not_possible.
WHEN 4.
RAISE err_bad_otf.
WHEN OTHERS.
RAISE unknown_exception.
ENDCASE.
ELSE.
*Download the converted PDF data to your local PC.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize = v_binfilesize
filename = filename
filetype = 'BIN'
APPEND = ' '
WRITE_FIELD_SEPARATOR = ' '
HEADER = '00'
TRUNC_TRAILING_BLANKS = ' '
WRITE_LF = 'X'
COL_SELECT = ' '
COL_SELECT_MASK = ' '
DAT_MODE = ' '
CONFIRM_OVERWRITE = ' '
NO_AUTH_CHECK = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
WRITE_BOM = ' '
TRUNC_TRAILING_BLANKS_EOL = 'X'
WK1_N_FORMAT = ' '
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
IMPORTING
filelength = file_size
TABLES
data_tab = lt_pdf_tab
FIELDNAMES =
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22
.
IF sy-subrc NE 0.
RAISE file_write_error.
ENDIF.
ENDIF.
ENDIF.
This code is to send pdf as a Email
FORM sub_send_mail .
LOOP AT s_pernr.
REFRESH p0105.
PERFORM sub_read_info_type TABLES p0105
USING s_pernr-low
'0105'
pn-begda
pn-endda.
SORT p0105 BY pernr subty endda DESCENDING.
READ TABLE p0105 WITH KEY pernr = s_pernr-low
subty = '0010'
BINARY SEARCH.
IF sy-subrc EQ 0.
wa_receivers-receiver = p0105-usrid_long.
wa_receivers-rec_type = 'U'.
wa_receivers-com_type = 'INT'.
wa_receivers-express = c_x.
wa_receivers-rec_date = sy-datum.
APPEND wa_receivers TO it_receivers.
CLEAR wa_receivers.
ENDIF.
ENDLOOP.
*Preparing the e-mail subject
CLEAR g_mail_subject.
g_mail_subject = 'Spectera Vision'(t35).
CLEAR wa_docu_data.
wa_docu_data-obj_name = 'MESSAGE' .
wa_docu_data-obj_descr = g_mail_subject.
wa_docu_data-no_change = c_x.
wa_docu_data-obj_langu = 'E'.
*Prepare the e-mail message(body)
IF g_subrc EQ 0.
wa_message = text-b01.
ELSE.
wa_message = text-b02.
ENDIF.
APPEND wa_message TO it_message.
DESCRIBE TABLE it_message LINES g_tab_lines.
READ TABLE it_message INTO wa_message
INDEX g_tab_lines.
wa_docu_data-doc_size = ( g_tab_lines - 1 ) * 255 + STRLEN( wa_message ).
CLEAR g_tab_lines.
*
DESCRIBE TABLE it_objcont LINES g_tab_lines.
*
CLEAR wa_pack_list-transf_bin.
*
wa_pack_list-head_start = 1.
wa_pack_list-head_num = 0.
wa_pack_list-body_start = 1.
wa_pack_list-body_num = g_tab_lines.
wa_pack_list-doc_type = 'TXT'.
APPEND wa_pack_list TO it_pack_list.
CLEAR wa_pack_list.
*
wa_pack_list-transf_bin = c_x.
wa_pack_list-head_start = 1.
wa_pack_list-head_num = 1.
wa_pack_list-body_start = 1.
wa_pack_list-body_num = g_tab_lines.
wa_pack_list-doc_type = 'TXT'.
wa_pack_list-obj_name = 'ATTACHMENT'.
wa_pack_list-obj_descr = text-b03.
wa_pack_list-doc_size = g_tab_lines * 255.
*
APPEND wa_pack_list TO it_pack_list.
CLEAR wa_pack_list.
wa_objconth = 'ATTACH'.
*
APPEND wa_objconth TO it_objconth.
CLEAR wa_objconth.
*Function Module to send an email attachment
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = wa_docu_data
put_in_outbox = c_x
commit_work = c_x
TABLES
packing_list = it_pack_list
object_header = it_objconth
contents_bin = it_objcont
contents_txt = it_message
receivers = it_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
OTHERS = 99
.
IF sy-subrc EQ 0.
MESSAGE i167(37) WITH 'E-mail sent successfully'(i39).
ELSE.
MESSAGE i167(37) WITH 'Error while sending E-mail'(i40).
ENDIF.
ENDFORM. " sub_send_mail
Reward points if useful.
‎2008 Feb 05 7:22 AM
Hi
check this link
http://saptechnical.com/Tutorials/Smartforms/OTF2PDF.htm
Use the FM CONVERT_OTF_2_PDF
Reward if helpful
Gaurav J.
Edited by: Gaurav Juneja on Feb 5, 2008 8:22 AM
‎2008 Feb 05 7:23 AM
‎2008 Feb 05 7:24 AM
Hi,
RSTXPDFT4 is used to download your form into pdf format.you can give spool number and the path where you want to save that pdf file (on local drive) give as input in RSTXPDFT4 Program.
‎2008 Feb 05 7:27 AM
Have a look at the sample code to convert to PDF
*Call the smartform function module
CALL FUNCTION v_fm_name
PARAMETER-TABLE
ptab
EXCEPTION-TABLE
etab.
*Convert to PDF if required
lt_otf] = job_output_info-otfdata[.
IF LINES( lt_otf ) GT 0.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
ARCHIVE_INDEX = ' '
COPYNUMBER = 0
ASCII_BIDI_VIS2LOG = ' '
PDF_DELETE_OTFTAB = ' '
IMPORTING
bin_filesize = v_binfilesize
BIN_FILE =
TABLES
otf = lt_otf
lines = lt_pdf_tab
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
err_bad_otf = 4
OTHERS = 5
.
IF sy-subrc 0.
*Raise exceptions in case OTF is not generated
CASE sy-subrc.
WHEN 1.
RAISE err_max_linewidth.
WHEN 2.
RAISE err_format.
WHEN 3.
RAISE err_conv_not_possible.
WHEN 4.
RAISE err_bad_otf.
WHEN OTHERS.
RAISE unknown_exception.
ENDCASE.
ELSE.
*Download the converted PDF data to your local PC.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize = v_binfilesize
filename = filename
filetype = 'BIN'
APPEND = ' '
WRITE_FIELD_SEPARATOR = ' '
HEADER = '00'
TRUNC_TRAILING_BLANKS = ' '
WRITE_LF = 'X'
COL_SELECT = ' '
COL_SELECT_MASK = ' '
DAT_MODE = ' '
CONFIRM_OVERWRITE = ' '
NO_AUTH_CHECK = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
WRITE_BOM = ' '
TRUNC_TRAILING_BLANKS_EOL = 'X'
WK1_N_FORMAT = ' '
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
IMPORTING
filelength = file_size
TABLES
data_tab = lt_pdf_tab
FIELDNAMES =
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22
.
IF sy-subrc NE 0.
RAISE file_write_error.
ENDIF.
ENDIF.
ENDIF.
This code is to send pdf as a Email
FORM sub_send_mail .
LOOP AT s_pernr.
REFRESH p0105.
PERFORM sub_read_info_type TABLES p0105
USING s_pernr-low
'0105'
pn-begda
pn-endda.
SORT p0105 BY pernr subty endda DESCENDING.
READ TABLE p0105 WITH KEY pernr = s_pernr-low
subty = '0010'
BINARY SEARCH.
IF sy-subrc EQ 0.
wa_receivers-receiver = p0105-usrid_long.
wa_receivers-rec_type = 'U'.
wa_receivers-com_type = 'INT'.
wa_receivers-express = c_x.
wa_receivers-rec_date = sy-datum.
APPEND wa_receivers TO it_receivers.
CLEAR wa_receivers.
ENDIF.
ENDLOOP.
*Preparing the e-mail subject
CLEAR g_mail_subject.
g_mail_subject = 'Spectera Vision'(t35).
CLEAR wa_docu_data.
wa_docu_data-obj_name = 'MESSAGE' .
wa_docu_data-obj_descr = g_mail_subject.
wa_docu_data-no_change = c_x.
wa_docu_data-obj_langu = 'E'.
*Prepare the e-mail message(body)
IF g_subrc EQ 0.
wa_message = text-b01.
ELSE.
wa_message = text-b02.
ENDIF.
APPEND wa_message TO it_message.
DESCRIBE TABLE it_message LINES g_tab_lines.
READ TABLE it_message INTO wa_message
INDEX g_tab_lines.
wa_docu_data-doc_size = ( g_tab_lines - 1 ) * 255 + STRLEN( wa_message ).
CLEAR g_tab_lines.
*
DESCRIBE TABLE it_objcont LINES g_tab_lines.
*
CLEAR wa_pack_list-transf_bin.
*
wa_pack_list-head_start = 1.
wa_pack_list-head_num = 0.
wa_pack_list-body_start = 1.
wa_pack_list-body_num = g_tab_lines.
wa_pack_list-doc_type = 'TXT'.
APPEND wa_pack_list TO it_pack_list.
CLEAR wa_pack_list.
*
wa_pack_list-transf_bin = c_x.
wa_pack_list-head_start = 1.
wa_pack_list-head_num = 1.
wa_pack_list-body_start = 1.
wa_pack_list-body_num = g_tab_lines.
wa_pack_list-doc_type = 'TXT'.
wa_pack_list-obj_name = 'ATTACHMENT'.
wa_pack_list-obj_descr = text-b03.
wa_pack_list-doc_size = g_tab_lines * 255.
*
APPEND wa_pack_list TO it_pack_list.
CLEAR wa_pack_list.
wa_objconth = 'ATTACH'.
*
APPEND wa_objconth TO it_objconth.
CLEAR wa_objconth.
*Function Module to send an email attachment
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = wa_docu_data
put_in_outbox = c_x
commit_work = c_x
TABLES
packing_list = it_pack_list
object_header = it_objconth
contents_bin = it_objcont
contents_txt = it_message
receivers = it_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
OTHERS = 99
.
IF sy-subrc EQ 0.
MESSAGE i167(37) WITH 'E-mail sent successfully'(i39).
ELSE.
MESSAGE i167(37) WITH 'Error while sending E-mail'(i40).
ENDIF.
ENDFORM. " sub_send_mail
Reward points if useful.
‎2008 Feb 05 7:36 AM
hi,
check this one.
FUNCTION ZSENDPDF_BASSO.
*"----
""Local Interface:
*" IMPORTING
*" VALUE(OBJECTGUID) TYPE DNOS_BOR_KEY-GUID OPTIONAL
*" VALUE(PARTNERNO) TYPE CRMT_PARTNER_NO OPTIONAL
*"----
tables: crmd_orderadm_i,crmd_schedlin,crmd_order_index.
data: i_lines TYPE tline OCCURS 0 WITH HEADER LINE.
DATA: tb_pdf LIKE tline OCCURS 0.
DATA: tb_pdf255 TYPE so_text255 OCCURS 0.
DATA: lw_subject TYPE so_obj_des.
DATA: lwa_body TYPE solisti1.
DATA: ltb_body TYPE TABLE OF solisti1.
DATA: lw_filename TYPE char100.
DATA: ltb_recipients TYPE TABLE OF somlreci1.
DATA: lwa_recipients TYPE somlreci1.
data addrnumber type but000-addrcomm.
data email type adr6-smtp_addr.
data email1 type SOMLRECI1-RECEIVER.
data p_guid type CRMT_OBJECT_GUID.
p_guid = OBJECTGUID.
*parameters: p_guid type crmd_order_index-guid.
data:
fm_name TYPE RS38L_FNAM, "Smart Forms: FM Name
*sf_name TYPE TDSFNAME
*value 'YOUR_FORM_NAME', "Smart Forms: Form Name
P_OUTPUT_OPTIONS TYPE SSFCOMPOP,
P_JOB_OUTPUT_INFO TYPE SSFCRESCL,
P_CONTROL_PARAMETERS TYPE SSFCTRLOP,
P_LANGUAGE TYPE SFLANGU value 'E',
P_E_DEVTYPE TYPE RSPOPTYPE.
data:
P_BIN_FILESIZE TYPE I,
P_BIN_FILE TYPE XSTRING,
P_OTF type table of ITCOO,
P_DOCS type table of DOCS,
P_LINES type table of TLINE,
name type string,
path type string,
fullpath type string,
filter type string,
guiobj type ref to cl_gui_frontend_services,
uact type i,
filename(128).
*"----
GET SMARTFORM FUNCTION MODULE NAME ---
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZBASO_CREATION'
IMPORTING
FM_NAME = fm_name
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
*OTHERS = 3
.
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
EXPORTING
I_LANGUAGE = P_LANGUAGE
I_APPLICATION = 'SAPDEFAULT'
IMPORTING
E_DEVTYPE = P_E_DEVTYPE.
P_OUTPUT_OPTIONS-XSFCMODE = 'X'.
P_OUTPUT_OPTIONS-XSF = SPACE.
P_OUTPUT_OPTIONS-XDFCMODE = 'X'.
P_OUTPUT_OPTIONS-XDF = SPACE.
P_OUTPUT_OPTIONS-TDPRINTER = P_E_DEVTYPE.
P_CONTROL_PARAMETERS-NO_DIALOG = 'X'.
P_CONTROL_PARAMETERS-GETOTF = 'X'.
*
****...................................PRINTING.........................
*CALL FUNCTION fm_name
*EXPORTING
*CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
*OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
(....) <--- your form import parameters
*IMPORTING
*JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO.
*
*IF SY-SUBRC <> 0.
*MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.
CALL FUNCTION fm_name "'/1BCDWB/SF00000019'
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
USER_SETTINGS = 'X'
*I_GUID = '4344382C5A9B77438A20F480E833CDF8'
I_GUID = p_guid
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
.
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_OTF[] = P_JOB_OUTPUT_INFO-OTFDATA.
****...................................CONVERT TO PDF...............
CALL FUNCTION 'CONVERT_OTF_2_PDF'
IMPORTING
BIN_FILESIZE = P_BIN_FILESIZE
TABLES
OTF = P_OTF
DOCTAB_ARCHIVE = P_DOCS
LINES = P_LINES
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE = 1
ERR_OTF_MC_NOENDMARKER = 2
OTHERS = 3.
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
Change the PDF format from 132 to 255.
CALL FUNCTION 'SX_TABLE_LINE_WIDTH_CHANGE'
EXPORTING
line_width_src = 134
line_width_dst = 255.............................
transfer_bin = 'X'
TABLES
content_in = P_LINES
content_out = tb_pdf255
EXCEPTIONS
err_line_width_src_too_long = 1
err_line_width_dst_too_long = 2
err_conv_failed = 3
OTHERS = 4
.
lw_subject = '<Subject>'.
lwa_body-line = 'This is the email body - Line1'.
APPEND lwa_body TO ltb_body.
lwa_body-line = 'This is the email body - Line2'.
APPEND lwa_body TO ltb_body.
*lwa_body-line = 'This is the email body - Line3'.
*APPEND lwa_body TO ltb_body.
*lwa_body-line = 'This is the email body - Line4'.
*APPEND lwa_body TO ltb_body.
lw_filename = '<File Name>'.
*RECIPIENTS
lwa_recipients-rec_type = 'B'.
lwa_recipients-express = 'X'.
lwa_recipients-receiver = 'SAPUSER'.
lwa_recipients-copy = ''.
APPEND lwa_recipients TO ltb_recipients.
*RECIPIENTS
*lwa_recipients-rec_type = 'U'.
*lwa_recipients-express = 'X'.
*lwa_recipients-receiver = '<email-id1>'.
*lwa_recipients-copy = ''.
*APPEND lwa_recipients TO ltb_recipients.
RECIPIENTS
lwa_recipients-rec_type = 'U'.
lwa_recipients-express = 'X'.
lwa_recipients-receiver = <email-id2>.
lwa_recipients-copy = ''.
APPEND lwa_recipients TO ltb_recipients.
Sends the PDF by email.
PERFORM f_send_pdf_by_email
TABLES
tb_pdf255
ltb_body
ltb_recipients
USING
lw_subject
lw_filename.
*
ENDFUNCTION.
FORM f_send_pdf_by_email
TABLES
ptb_pdf255 STRUCTURE solisti1
ptb_body STRUCTURE solisti1
ptb_recipients STRUCTURE somlreci1
USING
pw_subject TYPE so_obj_des
pw_filename TYPE char100.
*-DATA DECLARATION----
Variables y tablas internas.
DATA: BEGIN OF ltb_objbin OCCURS 0.
INCLUDE STRUCTURE solisti1.
DATA: END OF ltb_objbin.
DATA: lwa_doc_chng LIKE sodocchgi1,
lw_tab_lines LIKE sy-tabix,
ltb_objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
ltb_objpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.
*-MAIN PROCESSING SECTION----
clear: ltb_objbin, ltb_objtxt, ltb_objpack, lwa_doc_chng.
refresh: ltb_objbin, ltb_objtxt, ltb_objpack.
Control Data
lwa_doc_chng-obj_name = 'URGENT'.
lwa_doc_chng-sensitivty = 'P'.
lwa_doc_chng-no_change = 'X'.
lwa_doc_chng-priority = '1'.
lwa_doc_chng-obj_prio = '1'.
lwa_doc_chng-obj_langu = sy-langu.
lwa_doc_chng-no_change = 'X'.
Email Subject
lwa_doc_chng-obj_descr = pw_subject.
Email Body
ltb_objtxt] = ptb_body[.
CLEAR ltb_objtxt.
DESCRIBE TABLE ltb_objtxt LINES lw_tab_lines.
IF lw_tab_lines GT 0.
READ TABLE ltb_objtxt INDEX lw_tab_lines.
lwa_doc_chng-doc_size =
( lw_tab_lines - 1 ) * 255 + STRLEN( ltb_objtxt ).
CLEAR ltb_objpack-transf_bin.
ltb_objpack-body_start = 1.
ltb_objpack-body_num = lw_tab_lines.
ltb_objpack-doc_type = 'RAW'.
APPEND ltb_objpack.
ENDIF.
Attachment
Move the binary attachment to other internal table.
ltb_objbin] = ptb_pdf255[.
ltb_objpack-transf_bin = 'X'.
ltb_objpack-body_start = 1.
Get the number of lines in the Attachment (PDF FILE)
DESCRIBE TABLE ltb_objbin LINES lw_tab_lines.
ltb_objpack-body_num = lw_tab_lines.
ltb_objpack-doc_type = 'PDF'.
ltb_objpack-obj_descr = pw_filename.
ltb_objpack-obj_name = pw_filename.
ltb_objpack-doc_size = lw_tab_lines * 255.
APPEND ltb_objpack.
Call the function to send the PDF file by email
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = lwa_doc_chng
put_in_outbox = 'X'
TABLES
packing_list = ltb_objpack
contents_bin = ltb_objbin
contents_txt = ltb_objtxt
receivers = ptb_recipients
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
CASE sy-subrc.
WHEN 0.
WHEN 1. RAISE too_many_receivers.
WHEN 2. RAISE document_not_sent .
WHEN 3. RAISE document_type_not_exist.
WHEN 4. RAISE operation_no_authorization.
WHEN 5. RAISE parameter_error.
WHEN 7. RAISE enqueue_error .
WHEN OTHERS. RAISE x_error.
ENDCASE.
COMMIT WORK.
ENDFORM.