Sending SAPScript by mail

Hi all,
I am working on zprogram in that I am calling SAPScript in that I have to send that script via mail to users in that I had used following function module  CALL FUNCTION 'CONVERT_COMM_TYPE_DATA' and I had set the  recipient e-mail address
as LW_COMM_VALUES-ADSMTP-SMTP_ADDR = 'email address '   for that I have to declare
LW_COMM_VALUES TYPE SZADR_COMM_VALUES
LW_SENDER TYPE SWOTOBJID
LW_RECIPIENT TYPE SWOTOBJID
LW_SNAST TYPE SNAST but the problem is that  TYPE SZADR_COMM_VALUES is showing unknown type and another question is that weather this method will work or not ?
Thans
Rsatalkar

Using another FM 'SO_NEW_DOCUMENT_ATT_SEND_API1'  to send mail

Similar Messages

  • Requirement of sending Sapscript through mail and fax

    I need help in code for sending sapscript through email or fax as the data is maintained in customer master table . If anybody has done so please help. I do not want to use CONVERT_OTF function and SO...API1 function.

    Check the following code it may help u.
    ***INCLUDE RVADOPFO .
    DATA: LVS_ITCPO         TYPE   ITCPO,
          LVF_DEVICE(30)    TYPE   C,
          LVF_DIALOG(1)     TYPE   C   VALUE ' ',
          LVS_RECIPIENT     LIKE   SWOTOBJID,
          LVS_SENDER        LIKE   SWOTOBJID,
          LVS_SNAST         TYPE   SNAST,
          LVF_PROGRAM       LIKE   SY-REPID,
          LVS_COMM_TYPE     TYPE   AD_COMM,
          LVS_COMM_VALUES   TYPE   SZADR_COMM_VALUES.
    reset return code
      RETCODE = 0.
    if there is a communication strategy used ...
      IF NOT NAST-TCODE IS INITIAL AND NAST-NACHA EQ '5'.
      ... use stratagy to get communication type
        CALL FUNCTION 'ADDR_GET_NEXT_COMM_TYPE'
             EXPORTING
                  STRATEGY           = NAST-TCODE
                ADDRESS_TYPE       =
                ADDRESS_NUMBER     = VBDKA-ADRNR
                PERSON_NUMBER      = VBDKA-ADRNP
                  ADDRESS_NUMBER     = ADDR_KEY-ADDRNUMBER
                  PERSON_NUMBER      = ADDR_KEY-PERSNUMBER
             IMPORTING
                  COMM_TYPE          = LVS_COMM_TYPE
                  COMM_VALUES        = LVS_COMM_VALUES
           TABLES
                STRATEGY_TABLE     =
             EXCEPTIONS
                  ADDRESS_NOT_EXIST  = 1
                  PERSON_NOT_EXIST   = 2
                  NO_COMM_TYPE_FOUND = 3
                  INTERNAL_ERROR     = 4
                  PARAMETER_ERROR    = 5
                  OTHERS             = 6.
        IF SY-SUBRC <> 0.
          retcode = sy-subrc.
          SYST-MSGTY = 'E'.
          perform protocol_update.
        ENDIF.
      ENDIF.
    convert communication data
      MOVE-CORRESPONDING NAST TO LVS_SNAST.
      MOVE SY-REPID           TO LVF_PROGRAM.
      CALL FUNCTION 'CONVERT_COMM_TYPE_DATA'
           EXPORTING
                PI_COMM_TYPE              = LVS_COMM_TYPE
                PI_COMM_VALUES            = LVS_COMM_VALUES
                PI_SCREEN                 = US_SCREEN
              PI_NEWID                  =
                PI_COUNTRY                = US_COUNTRY
                PI_REPID                  = LVF_PROGRAM
                PI_SNAST                  = LVS_SNAST
           IMPORTING
                PE_ITCPO                  = LVS_ITCPO
                PE_DEVICE                 = LVF_DEVICE
                PE_MAIL_RECIPIENT         = LVS_RECIPIENT
                PE_MAIL_SENDER            = LVS_SENDER
           EXCEPTIONS
                COMM_TYPE_NOT_SUPPORTED   = 1
                RECIPIENT_CREATION_FAILED = 2
                SENDER_CREATION_FAILED    = 3
                OTHERS                    = 4.
      IF SY-SUBRC <> 0.
        RETCODE = SY-SUBRC.
        SYST-MSGTY = 'E'.
        PERFORM PROTOCOL_UPDATE.
      ENDIF.
      check retcode eq 0.
    if there is no communication type
      IF  LVS_COMM_TYPE IS INITIAL.
      set device
        CASE NAST-NACHA.
          WHEN '1'.
            LVF_DEVICE = 'PRINTER'.
          WHEN '2'.
            LVF_DEVICE = 'TELEFAX'.
            LVS_ITCPO-TDTELENUM = NAST-TELFX.
            IF NAST-TLAND IS INITIAL.
              LVS_ITCPO-TDTELELAND = US_COUNTRY.
            ELSE.
              LVS_ITCPO-TDTELELAND = NAST-TLAND.
            ENDIF.
            LVS_ITCPO-TDSENDDATE = NAST-VSDAT.
            LVS_ITCPO-TDSENDTIME = NAST-VSURA.
            LVS_ITCPO-TDFAXUSER  = NAST-USNAM.
          WHEN '3'.
            LVF_DEVICE = 'TELETEX'.
            LVS_ITCPO-TDTELENUM = NAST-TELTX.
            IF NAST-TLAND IS INITIAL.
              LVS_ITCPO-TDTELELAND = US_COUNTRY.
            ELSE.
              LVS_ITCPO-TDTELELAND = NAST-TLAND.
            ENDIF.
            LVS_ITCPO-TDSENDDATE = NAST-VSDAT.
            LVS_ITCPO-TDSENDTIME = NAST-VSURA.
         WHEN '4'.
            LVF_DEVICE = 'TELEX'.
            LVS_ITCPO-TDTELENUM = NAST-TELX1.
            IF NAST-TLAND IS INITIAL.
              LVS_ITCPO-TDTELELAND = US_COUNTRY.
            ELSE.
              LVS_ITCPO-TDTELELAND = NAST-TLAND.
            ENDIF.
            LVS_ITCPO-TDSENDDATE = NAST-VSDAT.
            LVS_ITCPO-TDSENDTIME = NAST-VSURA.
          WHEN OTHERS.
            LVF_DEVICE = 'PRINTER'.
        ENDCASE.
      ENDIF.
    fill structure itcpo
      ITCPO = LVS_ITCPO.
    open form
      CALL FUNCTION 'OPEN_FORM'
           EXPORTING
              APPLICATION        = 'TX'
                ARCHIVE_INDEX      = TOA_DARA
                ARCHIVE_PARAMS     = ARC_PARAMS
                DEVICE             = LVF_DEVICE
                DIALOG             = ' '
                FORM               = TNAPR-FONAM
                LANGUAGE           = NAST-SPRAS
                OPTIONS            = LVS_ITCPO
                MAIL_SENDER        = LVS_SENDER
                MAIL_RECIPIENT     = LVS_RECIPIENT
              MAIL_APPL_OBJECT   = ' '
              RAW_DATA_INTERFACE = '*'
         IMPORTING
              LANGUAGE           =
              NEW_ARCHIVE_PARAMS =
              RESULT             =
           EXCEPTIONS
                CANCELED           = 1
                DEVICE             = 2
                FORM               = 3
                OPTIONS            = 4
                UNCLOSED           = 5
                MAIL_OPTIONS       = 6
                ARCHIVE_ERROR      = 7
                OTHERS             = 8.
      IF SY-SUBRC NE 0.
        CASE SY-SUBRC.
          WHEN 7.
            RETCODE = SY-SUBRC.
            SYST-MSGID = 'VN'.
            SYST-MSGNO = '096'.
            SYST-MSGTY = 'E'.
            SYST-MSGV1 = NAST-KSCHL.
            SYST-MSGV2 = NAST-KAPPL.
            PERFORM PROTOCOL_UPDATE.
          WHEN OTHERS.
            RETCODE = SY-SUBRC.
            PERFORM PROTOCOL_UPDATE.
        ENDCASE.
      ENDIF.
      SET COUNTRY US_COUNTRY.
    Regards

  • Corrupt file attachment when sending sapscript form by mail

    i have requirment to send sapscript through mail but when open my attachment it is giving file is corrupted.let me know where i am wrong
    i am specifying the code here
    CALL FUNCTION 'CONVERT_OTF'
       EXPORTING
         format                      = 'PDF'
    *     MAX_LINEWIDTH               = 132
    *     ARCHIVE_INDEX               = ' '
    *     COPYNUMBER                  = 0
    *     ASCII_BIDI_VIS2LOG          = ' '
    *     PDF_DELETE_OTFTAB           = ' '
    *     PDF_USERNAME                = ' '
       IMPORTING
         bin_filesize                = binfilesize
    *     BIN_FILE                    =
        TABLES
          otf                         = datab[]
          lines                       = pdftab[]
       EXCEPTIONS
         ERR_MAX_LINEWIDTH           = 1
         ERR_FORMAT                  = 2
         ERR_CONV_NOT_POSSIBLE       = 3
         ERR_BAD_OTF                 = 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.
      REFRESH it_pdf[].
      CALL FUNCTION 'SX_TABLE_LINE_WIDTH_CHANGE'
        EXPORTING
          line_width_dst              = '255'
        TABLES
          content_in                  = pdftab[]
          content_out                 = it_pdf[]
        EXCEPTIONS
          err_line_width_src_too_long = 1
          err_line_width_dst_too_long = 2
          err_conv_failed             = 3
          OTHERS                      = 4.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        "Subject of the mail.
        w_document_data-obj_name  = 'MAIL_TO_HEAD'.
        w_document_data-obj_descr = 'Regarding Mail Program by SAP ABAP'.
        "Body of the mail
        w_body_msg = 'This is body of mail msg.'.
        APPEND w_body_msg TO i_body_msg.
        CLEAR  w_body_msg.
        "Write Packing List for Body
        DESCRIBE TABLE i_body_msg LINES g_tab_lines.
        w_packing_list-head_start = 1.
        w_packing_list-head_num   = 0.
        w_packing_list-body_start = 1.
        w_packing_list-body_num   = g_tab_lines.
        w_packing_list-doc_type   = 'RAW'.
        APPEND w_packing_list TO i_packing_list.
        CLEAR  w_packing_list.
        "Write Packing List for Attachment
        w_packing_list-transf_bin = 'X'.
        w_packing_list-head_start = 1.
        w_packing_list-head_num   = 0.
        w_packing_list-body_start = 1.
        DESCRIBE TABLE it_pdf LINES w_packing_list-body_num.
        w_packing_list-doc_type   = 'PDF'.
        w_packing_list-obj_descr  = 'PDF Attachment'.
        w_packing_list-obj_name   = 'PDF_ATTACHMENT'.
        w_packing_list-doc_size   = w_packing_list-body_num * 255.
        APPEND w_packing_list TO i_packing_list.
        CLEAR  w_packing_list.
        "Fill the document data and get size of attachment
        w_document_data-obj_langu  = sy-langu.
        READ TABLE i_body_msg INTO w_body_msg INDEX g_tab_lines.
        w_document_data-doc_size = ( g_tab_lines - 1 ) * 255 + STRLEN( w_body_msg ).
        "Receivers List.
        w_receivers-rec_type   = 'U'."Internet address
        w_receivers-receiver   = p_mail.
        w_receivers-com_type   = 'INT'.
        w_receivers-notif_del  = 'X'.
        w_receivers-notif_ndel = 'X'.
        APPEND w_receivers TO i_receivers .
        CLEAR:w_receivers.
        "Function module to send mail to Recipients
        CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
          EXPORTING
            document_data              = w_document_data
            put_in_outbox              = 'X'
            commit_work                = 'X'
          IMPORTING
            sent_to_all                = g_sent_to_all
          TABLES
            packing_list               = i_packing_list
            contents_bin               = it_pdf
            contents_txt               = i_body_msg
            receivers                  = i_receivers
          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.
        else.
          MESSAGE 'Mail Successfully Sent' type 'S'.
        ENDIF.
    Edited by: sam_ins123524 on Oct 8, 2010 9:31 AM
    Edited by: sam_ins123524 on Oct 8, 2010 9:33 AM
    Moderator message: subject corrected for you, please use a more descriptive one next time, also use code tags.
    Edited by: Thomas Zloch on Oct 8, 2010 10:51 AM

    Hi,
    Once you get otf data, Use FM 'SX_OBJECT_CONVERT_OTF_PDF' to convert it to PDF. Then use CONTENT_BIN to send mail.
    Refer below code:
    * Converting OTF data to single line
      LOOP AT I_OTF INTO WA_OTF.
        CONCATENATE WA_OTF-TDPRINTCOM WA_OTF-TDPRINTPAR INTO WA_PDF.
        MOVE WA_PDF TO WA_CONTENT_TXT.
        APPEND WA_CONTENT_TXT TO I_CONTENT_TXT.
        CLEAR: WA_CONTENT_TXT.
      ENDLOOP.
    * Converting to PDF Format
      CALL FUNCTION 'SX_OBJECT_CONVERT_OTF_PDF'
        EXPORTING
          FORMAT_SRC      = C_OTF
          FORMAT_DST      = C_PDF
          DEVTYPE         = C_PRINTER
        CHANGING
          TRANSFER_BIN    = WA_TRANSFER_BIN
          CONTENT_TXT     = I_CONTENT_TXT
          CONTENT_BIN     = I_CONTENT_BIN
          OBJHEAD         = WA_OBJHEAD
          LEN             = V_LEN_IN.
    *- Send mail
        CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
          EXPORTING
            DOCUMENT_DATA                    = L_WA_DOCUMENT_DATA
          TABLES
            OBJECT_CONTENT                   = I_CONTENT_BIN
            RECEIVERS                        = L_I_RECEIVERS.

  • Sending sapscript form to an external mail

    i need to send sapscript form to an external mail like for example a yahoo mail from SAP. i need an ABAP code that performs this function. its urgent, please

    1) REPORT PROGRAM  - RSTXPDFT4 ,
    FIRST GENERATE SPOOL REQUEST THEN DOWNLOAD SAPSCRIPT TO PDF FILE ON LOCAL PC.
    2) copy this code to send this downloaded form to external mail -
    *& Report  ZGILL_SENDMAIL_PDF                                          *
    REPORT  ZGILL_SENDMAIL_PDF                      .
    INCLUDE ZGILL_INCMAIL.  "SEE BELOW FOR INCLUDE PROGRAM CODE.
    * DATA
    DATA : itab LIKE tline OCCURS 0 WITH HEADER LINE.
    DATA : file_name TYPE string.
    data : path like PCFILE-PATH.
    data : extension(5) type c.
    data : name(100) type c.
    * SELECTION SCREEN
    PARAMETERS : receiver TYPE somlreci1-receiver lower case DEFAULT '[email protected]'.
    PARAMETERS : p_file LIKE rlgrap-filename
    OBLIGATORY DEFAULT 'C:TEMPSALARY_SLIP1.PDF'.
    * AT SELECTION SCREEN
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    CLEAR p_file.
    CALL FUNCTION 'F4_FILENAME'
    IMPORTING
    file_name = p_file.
    * START-OF-SELECTION
    START-OF-SELECTION.
    PERFORM ml_customize USING 'Tst' 'Testing'.
    PERFORM ml_addrecp USING receiver 'U'.
    PERFORM upl.
    PERFORM doconv TABLES itab objbin.
    PERFORM ml_prepare USING 'X' extension name.
    PERFORM ml_dosend.
    SUBMIT rsconn01
    WITH mode EQ 'INT'
    AND RETURN.
    * FORM
    FORM upl.
    file_name = p_file.
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
    filename = file_name
    filetype = 'BIN'
    TABLES
    data_tab = itab
    EXCEPTIONS
    file_open_error = 1
    file_read_error = 2
    no_batch = 3
    gui_refuse_filetransfer = 4
    invalid_type = 5
    no_authority = 6
    unknown_error = 7
    bad_data_format = 8
    header_not_allowed = 9
    separator_not_allowed = 10
    header_too_long = 11
    unknown_dp_error = 12
    access_denied = 13
    dp_out_of_memory = 14
    disk_full = 15
    dp_timeout = 16
    OTHERS = 17.
    path = file_name.
    CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
    EXPORTING
    complete_filename = path
    * CHECK_DOS_FORMAT =
    IMPORTING
    * DRIVE =
    EXTENSION = extension
    NAME = name
    * NAME_WITH_EXT =
    * PATH =
    EXCEPTIONS
    INVALID_DRIVE = 1
    INVALID_EXTENSION = 2
    INVALID_NAME = 3
    INVALID_PATH = 4
    OTHERS = 5
    ENDFORM. "upl
    **********************iNCLUDE pROGRAM*********************************************
    *&  Include           ZGILL_INCMAIL                                    *
    * Data
    DATA: docdata LIKE sodocchgi1,
    objpack LIKE sopcklsti1 OCCURS 1 WITH HEADER LINE,
    objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE,
    objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
    objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE,
    objhex LIKE solix OCCURS 10 WITH HEADER LINE,
    reclist LIKE somlreci1 OCCURS 1 WITH HEADER LINE.
    DATA: tab_lines TYPE i,
    doc_size TYPE i,
    att_type LIKE soodk-objtp.
    DATA: listobject LIKE abaplist OCCURS 1 WITH HEADER LINE.
    * FORM
    FORM ml_customize USING objname objdesc.
    *----------- Clear Variables
    CLEAR docdata.
    REFRESH objpack.
    CLEAR objpack.
    REFRESH objhead.
    REFRESH objtxt.
    CLEAR objtxt.
    REFRESH objbin.
    CLEAR objbin.
    REFRESH objhex.
    CLEAR objhex.
    REFRESH reclist.
    CLEAR reclist.
    REFRESH listobject.
    CLEAR listobject.
    CLEAR tab_lines.
    CLEAR doc_size.
    CLEAR att_type.
    *--------- Set Variables
    docdata-obj_name = objname.
    docdata-obj_descr = objdesc.
    ENDFORM. "ml_customize
    * FORM
    FORM ml_addrecp USING preceiver prec_type.
    CLEAR reclist.
    reclist-receiver = preceiver.
    reclist-rec_type = prec_type.
    APPEND reclist.
    ENDFORM. "ml_customize
    * FORM
    FORM ml_addtxt USING ptxt.
    CLEAR objtxt.
    objtxt = ptxt.
    APPEND objtxt.
    ENDFORM. "ml_customize
    * FORM
    FORM ml_prepare USING bypassmemory whatatt_type whatname.
    IF bypassmemory = ''.
    *--------- Fetch List From Memory
    CALL FUNCTION 'LIST_FROM_MEMORY'
    TABLES
    listobject = listobject
    EXCEPTIONS
    OTHERS = 1.
    IF sy-subrc <> 0.
    MESSAGE ID '61' TYPE 'E' NUMBER '731'
    WITH 'LIST_FROM_MEMORY'.
    ENDIF.
    CALL FUNCTION 'TABLE_COMPRESS'
    * IMPORTING
    * COMPRESSED_SIZE =
    TABLES
    in = listobject
    out = objbin
    EXCEPTIONS
    OTHERS = 1
    IF sy-subrc <> 0.
    MESSAGE ID '61' TYPE 'E' NUMBER '731'
    WITH 'TABLE_COMPRESS'.
    ENDIF.
    ENDIF.
    * Header Data
    * Already Done Thru FM
    * Main Text
    * Already Done Thru FM
    * Packing Info For Text Data
    DESCRIBE TABLE objtxt LINES tab_lines.
    READ TABLE objtxt INDEX tab_lines.
    docdata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
    CLEAR objpack-transf_bin.
    objpack-head_start = 1.
    objpack-head_num = 0.
    objpack-body_start = 1.
    objpack-body_num = tab_lines.
    objpack-doc_type = 'TXT'.
    APPEND objpack.
    * Packing Info Attachment
    att_type = whatatt_type..
    DESCRIBE TABLE objbin LINES tab_lines.
    READ TABLE objbin INDEX tab_lines.
    objpack-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objbin ).
    objpack-transf_bin = 'X'.
    objpack-head_start = 1.
    objpack-head_num = 0.
    objpack-body_start = 1.
    objpack-body_num = tab_lines.
    objpack-doc_type = att_type.
    objpack-obj_name = 'ATTACHMENT'.
    objpack-obj_descr = whatname.
    APPEND objpack.
    * Receiver List
    * Already done thru fm
    ENDFORM. "ml_prepare
    * FORM
    FORM ml_dosend.
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
    EXPORTING
    document_data = docdata
    put_in_outbox = 'X'
    commit_work = 'X' "used from rel. 6.10
    * IMPORTING
    * SENT_TO_ALL =
    * NEW_OBJECT_ID =
    TABLES
    packing_list = objpack
    object_header = objhead
    contents_bin = objbin
    contents_txt = objtxt
    * CONTENTS_HEX = objhex
    * 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 'SO' TYPE 'S' NUMBER '023'
    WITH docdata-obj_name.
    ENDIF.
    ENDFORM. "ml_customize
    * FORM
    FORM ml_spooltopdf USING whatspoolid.
    DATA : pdf LIKE tline OCCURS 0 WITH HEADER LINE.
    *-------------- Call Function
    CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
    EXPORTING
    src_spoolid = whatspoolid
    TABLES
    pdf = pdf
    EXCEPTIONS
    err_no_otf_spooljob = 1
    OTHERS = 12.
    *------------- Convert
    PERFORM doconv TABLES pdf objbin.
    ENDFORM. "ml_spooltopdf
    * FORM
    FORM doconv TABLES
    mypdf STRUCTURE tline
    outbin STRUCTURE solisti1.
    *-------- Data
    DATA : pos TYPE i.
    DATA : len TYPE i.
    *------------ Loop And Put Data
    LOOP AT mypdf.
    pos = 255 - len.
    IF pos > 134. "length of pdf_table
    pos = 134.
    ENDIF.
    outbin+len = mypdf(pos).
    len = len + pos.
    IF len = 255. "length of out (contents_bin)
    APPEND outbin.
    CLEAR: outbin, len.
    IF pos < 134.
    outbin = mypdf+pos.
    len = 134 - pos.
    ENDIF.
    ENDIF.
    ENDLOOP.
    IF len > 0.
    APPEND outbin.
    ENDIF.
    ENDFORM. "doconv
    ***********************INCLUDE END*********************************

  • Generating a PDF from a OTF (imported from CLOSE_FORM) and send it by mail.

    Hello!
    I have a problem.
    I'll try to explain it toy you.
    I have a SapScript that the user has the option to send it to the printer or have a Print Preview. I need to send it by mail in PDF format.
    If the user select PRINT, a spool id is created, I can get the OTF, generate the PDF and send it by mail. Everything OK with that.
    The problem is if the user select PRINT PREVIEW I don't get a spool id. So, what I did is to get the OTF from the CLOSE_FORM MF and generate de PDF from there. I tried several FM to generate the PDF but for sure I'm doing something wrong, because or the PDF is corrupted or I have a problem with the parameters in the SO_NEW_DOCUMENT_ATT_SEND_API1 FM.
    So, what I need it: Generate a PDF from a OTF imported from CLOSE_FORM FM and send it by mail.
    Examples or the FM I can use are welcome.
    I tried to do search here, but I couldn't find anything that may help me..
    So, please... Show me the light!!!
    Thanks!!!
    Bettina

    Part 3
    * Send Report
      clear:    maildata, mailtxt, mailbin, mailpack, mailhead, mailrec.
      refresh:  mailtxt, mailbin, mailpack, mailhead, mailrec.
    * Creation of the document to be sent File Name
      maildata-obj_name = 'REPORT'.
    * Mail Subject
      maildata-obj_descr = 'Your Report'.
      describe table mailtxt lines tab_lines.
      read table mailtxt index tab_lines.
      maildata-doc_size = ( tab_lines - 1 ) * 255 + strlen( mailtxt ).
    * Creation of the entry for the compressed document
      clear mailpack-transf_bin.
      mailpack-head_start = 1.
      mailpack-head_num = 0.
      mailpack-body_start = 1.
      mailpack-body_num = tab_lines.
      mailpack-doc_type = 'RAW'.
      append mailpack.
    * Creation of the document attachment
      loop at solisti1.
        move-corresponding solisti1 to mailbin.
        append mailbin.
      endloop.
      describe table mailbin lines tab_lines.
      mailhead = 'REPORT.OTF'.
      append mailhead.
    ** Creation of the entry for the compressed attachment
      mailpack-transf_bin = 'X'.
      mailpack-head_start = 1.
      mailpack-head_num = 1.
      mailpack-body_start = 1.
      mailpack-body_num = tab_lines.
      mailpack-doc_type = 'OTF'.
      mailpack-obj_name = 'ATTACHMENT'.
      mailpack-obj_descr = 'Some Report'.
      mailpack-doc_size = tab_lines * 255.
      append mailpack.
      mailrec-receiver = lv_email_address.  "<-- a valid email address
      mailrec-rec_type  = 'U'.
      append mailrec.
    * Sending the document
      call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
           exporting
                document_data              = maildata
                put_in_outbox              = 'X'
           tables
                packing_list               = mailpack
                object_header              = mailhead
                contents_bin               = mailbin
                contents_txt               = mailtxt
                receivers                  = mailrec
           exceptions
                too_many_receivers         = 1
                document_not_sent          = 2
                operation_no_authorization = 4
                others                     = 99.
    Regards,
    Rich Heilman

  • Sending SAPSCRIPT through email

    Hi
    I want to send sapscript to the external email address.
    Can anybody explain me how todo that.
    Thanks

    Hi subsar,
    1. First we have to
       execute the sapscript
       thru our program.
    2. Then we need to use
       READ_OTF_FROM_MEMORY
       to FETCH the sapscript
      information into internal table.
    3. The using FM
    'SO_NEW_DOCUMENT_ATT_SEND_API1'
      we can attach the intenal table (2)
      above, and send mail as attachment.
    4. SEE F1 help on this FM
       (if uare doing for the first time)
    5. Morever, SCOT settings
       are required (take help of basis team)
    regards,
    amit m.

  • Where to set sending of e-mails for dunning documents

    Hello
    Does anyone knows where to set sending of e-mails for dunning documents. They are being printed out but e-mail is not being sent.
    Generalyy e-mail sending(trx scot) is set.
    I guess it is pure Fi settinng to send e-mail as well. Could anyoune help
    Thank you a lot in advance
    Jan

    Hi Jan,
    Please refer SAP note
    1042992 - Dunning by mail w/ SAPscript: Introductory text w/ attachmnt
    Also refer SCN document
    SAP FI Dunning Procedure customization and Functionality
    Refer section
    Activate the dunning via E-mail (To receive letter by mail)
    Dunning letter output can be in two forms.
    1)        Email
      Manual Print out
    H         Hope this helps.
                  Regards,
                 Deepak Kori

  • Sending sapscript form by email

    dear experts
    i want to send  sapscript forms by email from sap. how is it done. is there any configuration that needs to be done

    Hello,
    I have done in case where we are sending to an external mail id.
    Check the code it may help u.
    REPORT Z_SCRIPT .
    DATA: itcpo LIKE itcpo,
          tab_lines LIKE sy-tabix.
    Variables for EMAIL functionality
    DATA: maildata   LIKE sodocchgi1.
    DATA: mailpack   LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.
    DATA: mailhead   LIKE solisti1 OCCURS 1 WITH HEADER LINE.
    DATA: mailbin    LIKE solisti1 OCCURS 10 WITH HEADER LINE.
    DATA: mailtxt    LIKE solisti1 OCCURS 10 WITH HEADER LINE.
    DATA: mailrec    LIKE somlrec90 OCCURS 0  WITH HEADER LINE.
    DATA: solisti1   LIKE solisti1 OCCURS 0 WITH HEADER LINE.
    PERFORM send_form_via_email.
          FORM  SEND_FORM_VIA_EMAIL                                      *
    FORM  send_form_via_email.
      CLEAR:    maildata, mailtxt, mailbin, mailpack, mailhead, mailrec.
      REFRESH:  mailtxt, mailbin, mailpack, mailhead, mailrec.
    Creation of the document to be sent File Name
      maildata-obj_name = 'TEST'.
    Mail Subject
      maildata-obj_descr = 'Subject'.
    Mail Contents
      mailtxt-line = 'Here is your file'.
      APPEND mailtxt.
    Prepare Packing List
      PERFORM prepare_packing_list.
    Set recipient - email address here!!!
      mailrec-receiver = '[email protected]'.
      mailrec-rec_type  = 'U'.
      APPEND mailrec.
    Sending the document
      CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
           EXPORTING
                document_data              = maildata
                put_in_outbox              = ' '
           TABLES
                packing_list               = mailpack
                object_header              = mailhead
                contents_bin               = mailbin
                contents_txt               = mailtxt
                receivers                  = mailrec
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                operation_no_authorization = 4
                OTHERS                     = 99.
    ENDFORM.
         Form  PREPARE_PACKING_LIST
    FORM prepare_packing_list.
      CLEAR:    mailpack, mailbin, mailhead.
      REFRESH:  mailpack, mailbin, mailhead.
      DESCRIBE TABLE mailtxt LINES tab_lines.
      READ TABLE mailtxt INDEX tab_lines.
      maildata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( mailtxt ).
    Creation of the entry for the compressed document
      CLEAR mailpack-transf_bin.
      mailpack-head_start = 1.
      mailpack-head_num = 0.
      mailpack-body_start = 1.
      mailpack-body_num = tab_lines.
      mailpack-doc_type = 'RAW'.
      APPEND mailpack.
    Creation of the document attachment
    This form gets the OTF code from the SAPscript form.
    If you already have your OTF code, I believe that you may
    be able to skip this form.  just do the following code, looping thru
    your SOLISTI1 and updating MAILBIN.
      PERFORM get_otf_code.
      LOOP AT solisti1.
        MOVE-CORRESPONDING solisti1 TO mailbin.
        APPEND mailbin.
      ENDLOOP.
      DESCRIBE TABLE mailbin LINES tab_lines.
      mailhead = 'TEST.OTF'.
      APPEND mailhead.
    Creation of the entry for the compressed attachment
      mailpack-transf_bin = 'X'.
      mailpack-head_start = 1.
      mailpack-head_num = 1.
      mailpack-body_start = 1.
      mailpack-body_num = tab_lines.
      mailpack-doc_type = 'OTF'.
      mailpack-obj_name = 'TEST'.
      mailpack-obj_descr = 'Subject'.
      mailpack-doc_size = tab_lines * 255.
      APPEND mailpack.
    ENDFORM.
         Form  GET_OTF_CODE
    FORM  get_otf_code.
      DATA: BEGIN OF otf OCCURS 0.
              INCLUDE STRUCTURE itcoo .
      DATA: END OF otf.
      DATA: itcpo LIKE itcpo.
      DATA: itcpp LIKE itcpp.
      CLEAR itcpo.
      itcpo-tdgetotf = 'X'.
    Start writing OTF code
      CALL FUNCTION 'OPEN_FORM'
           EXPORTING
                form     = 'Z08V3_COLLI'
                language = sy-langu
                options  = itcpo
                dialog   = ' '
           EXCEPTIONS
                OTHERS   = 1.
      CALL FUNCTION 'START_FORM'
           EXCEPTIONS
                error_message = 01
                OTHERS        = 02.
      CALL FUNCTION 'WRITE_FORM'
           EXPORTING
                window        = 'MAIN'
           EXCEPTIONS
                error_message = 01
                OTHERS        = 02.
    Close up Form and get OTF code
      CALL FUNCTION 'END_FORM'
           EXCEPTIONS
                error_message = 01
                OTHERS        = 02.
      MOVE-CORRESPONDING itcpo TO itcpp.
      CALL FUNCTION 'CLOSE_FORM'
           IMPORTING
                result  = itcpp
           TABLES
                otfdata = otf
           EXCEPTIONS
                OTHERS  = 1.
    Move OTF code to structure SOLI form email
      CLEAR solisti1. REFRESH solisti1.
      LOOP AT otf.
        solisti1-line = otf.
        APPEND solisti1.
      ENDLOOP.
    ENDFORM.
    I am sending to [email protected].
    So proceed in similar manner and let me know if u face any problem.
    Regards

  • User two cannot send email from mail app.  (send icon just spins)

    userone can login, use Mail to send and receive.
    user two login and may receive, but not send email in Mail app
    icon next to send paper airplane in folders window just spins.
    able to send email thru facebook, etc.
    also, recently did TDM backup into this iMac of G5 HD.
    how do I access address book data from backup

    resolved part one: played around with mail preferences of user two to match prefs in user one
    still do not know about access to TDM saved addressbook data.

  • Cannot send Email with Mail since updated to 10.7.2, they stay in my Send Box...

    Since I updated, I cannot send Email through Mail, it works with Thunderbird though.

    Just FYI, I've had the same problem for months now. I have been accessing my hotmail via the web, but decided to try the OS X Mail app.  I could get emails into the account with no problem but couldn't send.  I read all the blog and support entries and have tried everything they recommended, like changing my computer name to one word, without success.  Then last night, it just so happened that my broadband provider had to change out my wireless modem.  As soon as he plugged in the new one, some emails that had been in my outbasket for a month went through instantly and all of a sudden my Mail, both incoming and outgoing now work.  So I think people need to look at their router settings for the a solution to the problem. 

  • TS3899 Tried all the tips on line. Every time I try to send an e-mail, it gives me this message, "A copy has been placed in your Outbox. Sending the message content to the server failed" Any help in how to resolve would be appreciated

    I went through all the steps to try to resolve getting the message in a box every time i try to send an e-mail. What next ?
    Message is " A copy has been placed in your
                        Outbox. Sending the message content to the server failed."
    Any assistance would be greatly appreciated. My internet works fine as I can send e-mails from my Yahoo account on my MAC no problem.
    Address is fine etc.

    How long has it been going on? I've had my yahoo mess up and if i wait a bit it resolves itself. Yahoo is doing something with their servers and it messes with your mail if your mail happens to be on one of those servers.

  • Keyboard shortcut for sending messages on Mail suddenly stops working

    I've created a keyboard shortcut (Command + Return) specifically for sending manssages on Mail. When I open Mail, this keyboard shortcut works perfectly but suddenly it stops working.
    If I close and reopen Mail, the keyboard shortcut starts to work again, but for a while.
    I'm using OS X 10.9.1 and Mail 7.1 (1827).

    Howdy Guilherme
    Give this a try if you haven't already.
    System Preferences
    Keyboard
    Shortcuts
    At the bottom of the left panel go to:
    App Shortcuts
    If Mail.app isn't there, add it.
    Under it add Send.
    Now choose your key combo i.e.
    ⌘↵
    Worked for me mail Version 7.1 (1827) running OS X 10.9.1.

  • Can you send encrypted e-mails using SO_NEW_DOCUMENT_ATT_SEND_API1

    We use SO_NEW_DOCUMENT_ATT_SEND_API1 to send e-mails to employees for various notifications.  The e-mails go out through SCOT and are sent to our lotus notes.
    We have a project being implemented, where the data we are sending in the note is kind of sensitive, so we'd like to see if we could send the e-mail as encrypted.   Does anyone know if there is some parameter we can set upon sending that would encrypt the text in the e-mail for sending?

    FORM pssword_prot_encryptpdf .
      DATA: BEGIN OF command_list OCCURS 0.
              INCLUDE STRUCTURE sxpgcolist.
      DATA: END OF command_list .
      DATA: BEGIN OF exec_protocol OCCURS 0.
              INCLUDE STRUCTURE btcxpm.
      DATA: END OF exec_protocol.
      DATA: status LIKE btcxp3-exitstat,
      commandname LIKE sxpgcolist-name VALUE 'ZTEST',
      sel_no LIKE sy-tabix.
    * GET LIST OF EXTERNAL COMMANDS
      CALL FUNCTION 'SXPG_COMMAND_LIST_GET'
        EXPORTING
          commandname     = commandname
          operatingsystem = sy-opsys
        TABLES
          command_list    = command_list
        EXCEPTIONS
          OTHERS          = 1.
      CALL FUNCTION 'SXPG_COMMAND_CHECK'
        EXPORTING
          commandname                = command_list-name
          operatingsystem            = sy-opsys
        EXCEPTIONS
          no_permission              = 1
          command_not_found          = 2
          parameters_too_long        = 3
          security_risk              = 4
          wrong_check_call_interface = 5
          x_error                    = 6
          too_many_parameters        = 7
          parameter_expected         = 8
          illegal_command            = 9
          communication_failure      = 10
          system_failure             = 11
          OTHERS                     = 12.
      CLEAR command_list.
      REFRESH command_list.
      DATA: v_dir_input      TYPE sxpgcolist-parameters.
      DATA: v_dir_input1      TYPE sxpgcolist-parameters.
      break developer.
      command_list-name = 'ZTEST'.
      command_list-opsystem = 'Windows NT'.
      CONCATENATE   'd:\pdf\' main_dtl-vbeln '.PDF' INTO name.
      CONCATENATE 'cmd /c d:\pdf\encryptpdf.exe' '-i' name  '-o ' name  '-u'  hdr-password INTO v_dir_input SEPARATED BY space .
      READ TABLE command_list INDEX sel_no.
      break developer.
      CONCATENATE command_list-opcommand v_dir_input INTO command_list-opcommand SEPARATED BY space.
    * CHECK AUTHORIZATION
      command_list-addpar = 'X'.
      APPEND command_list.
      CONSTANTS: c_extcom    TYPE sxpgcolist-name VALUE 'ZTEST',
                 c_oper      TYPE syopsys VALUE 'Windows NT'.
      DATA: t_result         TYPE STANDARD TABLE OF btcxpm.
      v_dir_input  =  command_list-opcommand.
      CALL FUNCTION 'SXPG_COMMAND_EXECUTE'
        EXPORTING
          commandname                   = c_extcom
          additional_parameters         = v_dir_input
          operatingsystem               = c_oper
        TABLES
          exec_protocol                 = t_result
        EXCEPTIONS
          no_permission                 = 1
          command_not_found             = 2
          parameters_too_long           = 3
          security_risk                 = 4
          wrong_check_call_interface    = 5
          program_start_error           = 6
          program_termination_error     = 7
          x_error                       = 8
          parameter_expected            = 9
          too_many_parameters           = 10
          illegal_command               = 11
          wrong_asynchronous_parameters = 12
          cant_enq_tbtco_entry          = 13
          jobcount_generation_error     = 14
          OTHERS                        = 15.
    ENDFORM.                    " PSSWORD_PROT

  • HT3228 I set up my work e-mail on iphone.  When I try to send an e-mail, an error code says "Cannot Send Mail", "recipient rejected by server because it does not allow relaying".  What does this mean and how do I correct it?

    I set up my work e-mail account on my iphone 4S.  When I try to send an e-mail message from my phone, an error message occurs "Cannot Send Mail" - "recipient was rejected by the server because it does not allow relaying".  What does this mean and how do I correct it?

    Get the correct mail server settings from your IT department.

  • I am being asked to verify my Apple ID.  When I enter the password I get the message it is wrong.  It says the e-mail address is already verified for another Apple ID and then it says it is sending an e-mail to my e-mail account that I then never receive.

    I am being asked to verify my Apple ID.  When I enter the password I get the message it is wrong.  It says the e-mail address is already verified for another Apple ID and then it says it is sending an e-mail to my e-mail account that I then never receive.  How do I resolve this?

    This is most likely caused by an iCloud sign up (which forces you to use an email address as Apple ID).
    Here's the workaround fix I found after some online research:
    https://discussions.apple.com/thread/3656336

Maybe you are looking for