Hi,
I am Encountering a problem while i am using the FM :SO_NEW_DOCUMENT_ATT_SEND_API1.
The error which Populates is of Exception Type 2.(Document Cannot be Sent)..
My Code Is:
CALL FUNCTION 'SX_OBJECT_CONVERT_OTF_PDF'
EXPORTING
FORMAT_SRC = 'OTF'
FORMAT_DST = 'PDF'
DEVTYPE = 'FILE'
FUNCPARA =
LEN_IN = LEN_IN
IMPORTING
LEN_OUT = LEN_OUT
TABLES
CONTENT_IN = OTFDATA2
CONTENT_OUT = PDFDATA
EXCEPTIONS
ERR_CONV_FAILED = 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.
objtxt = 'REGARDS-YAMINI.A'.
APPEND objtxt.
doc_chng-obj_name = 'SAP SCRIPT'.
doc_chng-obj_descr = 'SAPSCRIPT OUTPUT'.
DESCRIBE TABLE objtxt LINES tablines.
READ TABLE objtxt INDEX tablines.
doc_chng-doc_size = ( tablines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tablines.
objpack-doc_type = 'RAW'.
APPEND objpack.
DESCRIBE TABLE pdfdata LINES tablines.
READ TABLE pdfdata INDEX tablines.
objpack-doc_size = ( tablines - 1 ) * 255 + STRLEN( pdfdata ).
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tablines.
objpack-doc_type = 'PDF'.
objpack-obj_name = 'ATTACH'.
objpack-obj_descr = 'DOCUMENT'.
APPEND objpack.
reclist-receiver = sy-uname.
reclist-rec_type = 'U'.
reclist-express = 'X'.
APPEND reclist.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = doc_chng
put_in_outbox = 'X'
IMPORTING
SENT_TO_ALL =
NEW_OBJECT_ID =
TABLES
packing_list = objpack
object_header = objhead
contents_bin = pdfdata
contents_txt = objtxt
CONTENTS_HEX =
OBJECT_PARA =
OBJECT_PARB =
receivers = reclist
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
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CASE sy-subrc.
WHEN 0.
LOOP AT reclist.
IF reclist-receiver = space.
name = reclist-rec_id.
ELSE.
name = reclist-receiver.
ENDIF.
IF reclist-retrn_code = 0.
WRITE: / name, ': succesfully sent'.
ELSE.
WRITE: / name, ': error occured'.
ENDIF.
ENDLOOP.
WHEN 1.
WRITE: / 'Too many receivers specified !'.
WHEN 2.
WRITE: / 'No receiver got the document !'.
WHEN 4.
WRITE: / 'Missing send authority !'.
WHEN OTHERS.
WRITE: / 'Unexpected error occurred !'.
ENDCASE.
Which part is Wrong in my code..
Kindly Clarify
Regards
Yamini.A