Skip to Content
0
Former Member
Jul 29, 2005 at 06:15 AM

Problem In Emailing-Sap Scripts

45 Views

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