Mass Printing of Orders

Hi All,
Like we have Mass Printing of Billing as VF31 and for deliveries it is VL71, what is the T. Code for Mass printing of Orders?
Thanks & Regards,
Vinod

Hi,
You can perform mass printing with the help of LSMW.
For this contact an ABAP guy.
regards,
Siddharth.

Similar Messages

  • Mass printing of order confirmation - output BA00

    Hi, can anyone advise if there's a std transaction code that can perform mass printing of order confirmation from SO with output 'BA00'?
    Thanks
    PP

    Hi there,
    I dont think there isany T-code for mass printing multiple O/p types.
    Rather you can run RSNAST00 in SE38. Give the BA00 in Message type, sales order num in Obj Key. Give the default printer to which you want to print the docs.
    Rather, you can ask your ABAPer to develop a custom transaction calling the RSNAST00 when executed. You can also define the selection inpits like sals orders, message type, Sales org, printer, etc.
    Once the user clicks on execute, system will call RSNAST00 in the background.
    1 question: Whay do you want to mas print the BA00? It wil trigger immediately after saving the sales order provided condition records are maintained right?
    Regards,
    Sivanand.

  • Mass Print Sales Orders

    Hello,
    I need to mass print sales orders.
    Upon trying to use program SD70AV1A using the following settings:
    Output Type                       Z***
    Transmission Medium         1
    Sort order                           01
    Processing mode                1           (I have tried 2 and 3 also)
    Sales Document                 *****
    Sales Organization              ***
    I receive a status saying that there are no messages to be printed.
    I have read that this method will not work if the output type is not already defined in the sales order.
    How can I mass populate the output type in the sales order so I can use this program?
    I have also read that the program RSNAST00 may be used in this instance using output application 'V1' (for sales).
    In trying to use this program I also receive a status saying that there are 0 outputs processed.
    I have tried variations on the object key (Sales order number, Sales order number with leading zeros, sales order number concatenated with item number, sales order number concatenated with item number with leading zeroes) all to no avail.
    What am I doing wrong? How can I mass print sales orders?
    Thanks.
    N.B. Processing them one by one in VA02 works as it should.

    The trouble with using LSMW is that I need the process to be as simple as possible for end users who won't have access to LSMW.
    If it is a standard SAP report that can be used to mass print sales orders, we can always create a custom tcode for it, which would satisfy the requirement for an end user to be able to use it.
    I'd also like to point out that I realise there have been a fair few discussions started and closed on the same topic in this forum but I have not been able to find a solution in any of them that works.
    Message was edited by: Benjamin Allsopp

  • Purchase Order Mass Printing

    Hi Friends
    Is there any transaction to Mass Print Purchase Orders?  We dont want to repeat output, just want to print the hard copy of all purchase orders for a vendor in one go.
    Thanks for any help on this.
    Francis Tony

    Hi Vabhaw
    If the output is already processed, you cannot do it.
    My requirement is, to take hard copy of all purchase orders against a vendor (which is already processed earlier).  I dont want to have repeat output maintained on the PO or repeat output to go to vendor.  Hope my requirement is clear.
    Thanks
    Francis

  • Mass printing of sales items

    Good afternoon,
    I need to mass print sales orders, but the message are assigned to their items. I've seen in other threads that the program SD70AV1A can be used for such. I fill the fields of the initial screen as below:
    Outout type = ZXXX
    Sort order = 01
    Processing mode = 1 (or 2 or 3)
    Sales Document = <sales order number>
    Sales Organization = ZXXX
    The problem is that the system returns a message saying that there are no messages to be printed. Has anyone experienced this error before? Important: If I try to process the message through the VA02 tcode, it works normally.
    Thanks in advance!
    Adriano Cardoso

    Adriano
    When you go in change mode -VA02- it will find and create a new output line which can be processed then.
    When you are trying to run program SD70AV1A, if there is an unprocessed output line, it will execute, otherwise it won't find it.
    So before running the program SD70AV1A, see if you can mass change the orders (VA05 or MASS)  and somehow get an unprocessed output line in them.
    Hope this helps.

  • IW38 mass printing issue.

    Hi Friends
    I am making use of OIDH (User/planning plant/planner group/ shop paper)settings to take print out for maintenance orders.
    When i go for mass printing of order through IW38, for each and every order, system prompts me to select the shop papers whereas the requirement is it should print the shop papers as defined in OIDH.
    Note: I have not selected the setting 'Disp.PrtDlg Box' in default settings in maintenance order.
    TIA.

    Sorry! posted by mistake in wrong forum.

  • Mass display or print Purchase Order History

    Instead of checking your Purchase Order History one at a time, you can now mass display or print them with this customized abap report.
    Mass display or print Purchase Order History
    You can request report by :
    1.  Change date
    2.  User Name
    3.  Purchase Order Number
    4.  Vendor Code
    Written by : SAP Basis, ABAP Programming and Other IMG Stuff
                 http://www.sap-img.com
    REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING
                     LINE-COUNT 065(001)
                     MESSAGE-ID VR.
    TABLES: DD04T,
            CDHDR,
            CDPOS,
            DD03L,
            DD41V,
            T685T,
            VBPA,
            TPART,
            KONVC,
            EKKO.
    SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,
                    XNAME  FOR CDHDR-USERNAME,
                    XEBELN FOR EKKO-EBELN,
                    XLIFNR FOR EKKO-LIFNR.
    SELECTION-SCREEN SKIP.
    TEXT-001 - Sorting Sequence
    SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
    PARAMETERS: SUDATE RADIOBUTTON GROUP R1,
                SNAME  RADIOBUTTON GROUP R1,
                SOBID  RADIOBUTTON GROUP R1.
    SELECTION-SCREEN END OF BLOCK BLK1.
    DATA: WFLAG,
          WCHANGENR LIKE CDHDR-CHANGENR.
    DATA: INDTEXT(60) TYPE C.
    DATA: BEGIN OF ICDHDR OCCURS 50.
            INCLUDE STRUCTURE CDHDR.
    DATA: END OF ICDHDR.
    DATA: BEGIN OF ICDSHW OCCURS 50.
            INCLUDE STRUCTURE CDSHW.
    DATA: END OF ICDSHW.
    DATA: BEGIN OF EKKEY,
            EBELN LIKE EKET-EBELN,
            EBELP LIKE EKET-EBELP,
            ETENR LIKE EKET-ETENR,
          END OF EKKEY.
    DATA: BEGIN OF ITAB OCCURS 50,
            BEGIN OF EKKEY,
              EBELN LIKE EKET-EBELN,
              EBELP LIKE EKET-EBELP,
              ETENR LIKE EKET-ETENR,
            END OF EKKEY,
            CHANGENR LIKE CDHDR-CHANGENR,
            UDATE    LIKE CDHDR-UDATE,
            UTIME    LIKE CDHDR-UTIME,
            USERNAME LIKE CDHDR-USERNAME,
            CHNGIND  LIKE CDSHW-CHNGIND,
            FTEXT    LIKE CDSHW-FTEXT,
            OUTLEN   LIKE CDSHW-OUTLEN,
            F_OLD    LIKE CDSHW-F_OLD,
            F_NEW    LIKE CDSHW-F_NEW,
          END OF ITAB.
    DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.
    FIELD-SYMBOLS: <F_OLD>, <F_NEW>.
    SELECT * FROM EKKO WHERE EBELN IN XEBELN AND
                             LIFNR IN XLIFNR.
      CLEAR CDHDR.
      CLEAR CDPOS.
      CDHDR-OBJECTCLAS = 'EINKBELEG'.
      CDHDR-OBJECTID   = EKKO-EBELN.
      PERFORM GETCHGDOCS.
    ENDSELECT.
    IF SUDATE = 'X'.
      SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP
                   EKKEY-ETENR.
    ELSEIF SNAME = 'X'.
      SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP
                   EKKEY-ETENR.
    ELSE.
      SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.
    ENDIF.
    LOOP AT ITAB.
      CLEAR: INDTEXT, EKKEY.
      CASE ITAB-CHNGIND.
        WHEN 'U'.
            INDTEXT(50) = ITAB-FTEXT.
            INDTEXT+51  = TEXT-020.
            CONDENSE INDTEXT.
        WHEN 'D'.
            INDTEXT = TEXT-021.
        WHEN 'E'.
            INDTEXT(5) = ITAB-FTEXT.
            INDTEXT+51 = TEXT-021.
            CONDENSE INDTEXT.
          WHEN 'I'.
            INDTEXT = TEXT-022.
        ENDCASE.
        RESERVE 4 LINES.
        IF WCHANGENR NE ITAB-CHANGENR.
          WCHANGENR = ITAB-CHANGENR.
          EKKEY = ITAB-EKKEY.
          WRITE:/ ITAB-UDATE UNDER 'Change Date',
                  ITAB-UTIME UNDER 'Time',
                  ITAB-USERNAME UNDER 'User Name',
                  ITAB-EKKEY-EBELN UNDER 'PO No',
                  ITAB-EKKEY-EBELP UNDER 'Item',
                  ITAB-EKKEY-ETENR UNDER 'Sch No',
                  INDTEXT     UNDER 'Changes'.
        ELSEIF ITAB-EKKEY NE EKKEY.
          WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',
                  ITAB-EKKEY-ETENR UNDER 'Sch No',
                  INDTEXT     UNDER 'Changes'.
        ENDIF.
        CASE ITAB-CHNGIND.
          WHEN 'U'.
            ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
            ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO <F_NEW>.
            WRITE: / TEXT-023  UNDER 'Changes',
                     <F_OLD>.
            WRITE: / TEXT-024 UNDER 'Changes',
                     <F_NEW>.
          WHEN 'E'.
            ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
            WRITE: TEXT-023 UNDER 'Changes',
                   <F_OLD>.
        ENDCASE.
        SKIP.
    ENDLOOP.
    TOP-OF-PAGE.
    WRITE:/ SY-DATUM,SY-UZEIT,
           50 'P U R C H A S E  O R D E R   H I S T O R Y',
          120 'Page', SY-PAGNO.
    WRITE: / SY-REPID,
             60 'Purchase Orders Changes'.
    SKIP.
    ULINE.
    IF SUDATE = 'X'.
      WRITE:/001 'Change Date',
             014 'Time',
             024 'User Name',
             038 'PO No',
             050 'Item',
             057 'Sch No',
             065 'Changes'.
    ELSEIF SOBID = 'X'.
      WRITE:/001 'PO No',
             013 'Item',
             020 'Sch No',
             028 'Change Date',
             041 'Time',
             051 'User Name',
             065 'Changes'.
    ELSE.
      WRITE:/001 'User Name',
             015 'Change Date',
             028 'Time',
             038 'PO No',
             050 'Item',
             057 'Sch No',
             065 'Changes'.
    ENDIF.
    ULINE.
    FORM GETCHGDOCS.
      CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
           EXPORTING
                DATE_OF_CHANGE    = CDHDR-UDATE
                OBJECTCLASS       = CDHDR-OBJECTCLAS
                OBJECTID          = CDHDR-OBJECTID
                TIME_OF_CHANGE    = CDHDR-UTIME
                USERNAME          = CDHDR-USERNAME
           TABLES
                I_CDHDR           = ICDHDR
           EXCEPTIONS
                NO_POSITION_FOUND = 1
                OTHERS            = 2.
      CHECK SY-SUBRC EQ 0.
      DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.
      CHECK NOT ICDHDR[] IS INITIAL.
      LOOP AT ICDHDR.
        CHECK ICDHDR-UDATE IN XUDATE.
        CHECK ICDHDR-USERNAME IN XNAME.
        CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
                     EXPORTING  CHANGENUMBER       = ICDHDR-CHANGENR
                     IMPORTING  HEADER             = CDHDR
                     TABLES     EDITPOS            = ICDSHW
                     EXCEPTIONS NO_POSITION_FOUND  = 1
                                OTHERS             = 2.
        CHECK SY-SUBRC EQ 0.
        LOOP AT ICDSHW.
          CHECK ICDSHW-TEXT_CASE EQ SPACE.
          MOVE-CORRESPONDING ICDSHW TO ITAB.
          MOVE-CORRESPONDING ICDHDR TO ITAB.
          MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.
          APPEND ITAB.
        ENDLOOP.
      ENDLOOP.
    ENDFORM.
    END OF PROGRAM

    Hi,
    copied from          http://www.sap-img.com/mm001.htm

  • SAP Printers and Mass Printing of SAP Work Orders

    Good day Experts,
    We have a printer related issue especially mass printing of Work Orders. We have discovered that printing a list
    of work orders takes longer with intervals of 10min up to an hour, as compared to printing smaller list(1-5 etc)
    We are not certain whether this problem originates from the Network or SAP. The problem is not one of uniform nature,
    changes frequently, Sometimes better and sometimes worse.
    Please advise me.
    Thank you.
    Regards,
    Sibusiso

    hi,
    There could be many reason behind this
    1. Logic put to fetch data without key fields
    2. unwanted code
    3. Using System status search
    4. getting data from User status tables such as JCDS
    just check by giving print with one order, even if it results in performance issues, then it requires Fine tuning
    you have to check with developer to removed unwanted code
    regards,
    santosh

  • Mass Printing of Works Orders and Related Documentation

    Hi everyone,
    I have a very peculiar problem, and any pointers in the right direction will be appreciated.
    If this is not the right forum, please point me into the right direction.
    The problem that I have is this:
    I print multiple Works Orders (Plant Maintenance) at a time.
    Linked to these work orders are Equipments etc. and linked to the Equipments, SAP DMS documents. When priting the Work Orders, the sequence of the related information (e.g. documents) are random, i.e. a user will need to sort the prints to match the Work Order with it's relevant documents.
    Essentially, what I need is: print #1 W/O with attached docs, then print #2 W/O with attached docs, then print #3 W/O with attached docs
    Any ideas at what I need to look at?
    You can imagine if I print 400 works orders and all the documents related to it and it in not collated.
    Thanks.

    Can you let me know what transaction / process which you are using to print work orders, In case if you are using any transaction then we will check for user exits / badis so that we may enhance the standard functionality.
    One more suggestion is you can post in the forum: [click here|SAP ERP - Logistics Materials Management (SAP MM);
    Thanks
    Satyasuresh

  • Mass printing of maintenance work orders

    Hello All,
    I am configuring a preventive maintenance functionality where plans will kick out maintenance work orders at set intervals of time. Yesterday, I found about a requirement which requires functionality where a user can select many maintenance work orders and print shop papers for them from one screen. Are any of you aware of such functionality in SAP PM?
    Thank you for your help in advance.

    Alex,
      You should be able to use the List edit transaction iw38 to select and print Multiple Orders simultaneosuly. Once you have selected the orders in the Output screen, use the menu path ORDER > PRINT ORDER.
    Regards
    Narasimhan

  • Custom Report for CO04n Mass Printing

    Hi,
    In CO04n for a given order number, production plant and order type when we click from main menu mass printing->execute. We get a list of outputs together for the order number.
    Object List.
    Job Ticket
    Pick List
    Goods Issue
    Goods receipt
    Confirmation slip.
    I want to create a custom report with order number as input and according to radio button selected the layout should be displayed. Is it possible.
    I know the driver program and form name. How can I develop this custom report.

    Hi ,
    You can develop Custome Report   , but for that 
    you will require  help from your Functional Team  , which will guide you thorug data selection  and processing
    i.e from which table data to be taken what to process .
      in that Report you can  display all details  which you reqired and also add one check box  in alv grid   in order to  select order no  .
      also take one button  on display Grid menu   using PF-status  .
      You have to  go through it step by step .
    Regards
    Deepak.

  • Mass printing of excise invoices

    hi sap gurus,
    i want to go for mass printing of excise invoice in the order of 40-50 invoices.
    is there any report or any transaction code which can help me do mass printing of excise invoices on fortnight basis.
    please do help me on this issue.
    j1ip only enables me to print one excise invoice at a time.
    wat i want is multiple printing of excise invoices.
    regards,
    Siddharth.

    Dear Siddharth
    For information, in j1ip itself, you have the option of giving multiple excise invoices.  Assume you have some 30 excise invoices to be printed out from sl.no.1 to 30, in j1ip, against the field "Excise Invoice", in the first box enter 1 next to "to" tab, enter 30.  If you execute now, you will get bulk print outs.
    Alternatively, you can also select the "Excise Invoice Date" field where also you define "From - To" date.
    thanks
    G. Lakshmipathi

  • Mass printing of spool requests

    Hi,
    Is it possible to program the triggering of the printing of a PDF document contained in a spool request ? ( the goal is to have the possibility for mass printing )
    thanks,
    Rolf

    Hi rolf here is the program to convert to PDF and mail it .
    *& Report  ZSPOOLTOPDFT                                             *
    *& Converts spool request into PDF document and emails it to           *
    *& recipicant.                                                         *
    *& Execution                                                           *
    *& This program can be run in background or online and a spool request *
    *& will still be created                                               *
    report  zspooltopdft                            .
    parameter: p_email1 like somlreci1-receiver
                                        default 'sandeep2jinnagmailcom',
               p_delspl  as checkbox,
               p_online no-display.
    *DATA DECLARATION
    data: gd_recsize type i.
    Spool IDs
    types: begin of t_tbtcp.
            include structure tbtcp.
    types: end of t_tbtcp.
    data: it_tbtcp type standard table of t_tbtcp initial size 0,
          wa_tbtcp type t_tbtcp.
    Job Runtime Parameters
    data: gd_eventid like tbtcm-eventid,
          gd_eventparm like tbtcm-eventparm,
          gd_external_program_active like tbtcm-xpgactive,
          gd_jobcount like tbtcm-jobcount,
          gd_jobname like tbtcm-jobname,
          gd_stepcount like tbtcm-stepcount,
          gd_error    type sy-subrc,
          gd_reciever type sy-subrc.
    data:  w_recsize type i,
           w_spool_nr like sy-spono.
          %_print LIKE pri_params.
    data: gd_subject   like sodocchgi1-obj_descr,
          it_mess_bod like solisti1 occurs 0 with header line,
          it_mess_att like solisti1 occurs 0 with header line,
          gd_sender_type     like soextreci1-adr_typ,
          gd_attachment_desc type so_obj_nam,
          gd_attachment_name type so_obj_des.
    Spool to PDF conversions
    data: gd_spool_nr like tsp01-rqident,
          gd_destination like rlgrap-filename,
          gd_bytecount like tst01-dsize,
          gd_buffer type string.
    Binary store for PDF
    data: begin of it_pdf_output occurs 0.
            include structure tline.
    data: end of it_pdf_output.
    constants: c_dev like  sy-sysid value 'DEV',
               c_no(1)     type c   value ' ',
               c_device(4) type c   value 'LOCL'.
    *START-OF-SELECTION.
    start-of-selection.
    Write statement to represent report output. Spool request is created
    if write statement is executed in background. This could also be an
    ALV grid which would be converted to PDF without any extra effort
      write 'Hello World'.
      new-page.
      commit work.
      new-page print off.
      if p_online = 'X'.
      Processing performed when program calls itself when run online
        gd_spool_nr = sy-spono.
        export gd_spool_nr to memory id 'SPOOLTOPDF'.
        exit.
      endif.
      if sy-batch eq 'X'.
        perform get_job_details.
        perform obtain_spool_id.
      else.
        gd_spool_nr = sy-spono.
    If executed online, it submits a program to perform the write statements
    instructing it to create a spool request, this could be another program
    which just performs the write statements and then exports sy-spono
    to memory. But in this example it calls itself passing X to parameter
    p_online, which takes it down an alternative procesing path.
        submit zspooltopdf2
               with p_online = 'X'
               to sap-spool
               spool parameters   %_print
              archive parameters %_print
               without spool dynpro
               and return.
      endif.
    Get spool id from program called above
      import gd_spool_nr from memory id 'SPOOLTOPDF'.
      perform convert_spool_to_pdf.
      perform process_email.
      if p_delspl eq 'X'.
        perform delete_spool.
      endif.
      if sy-sysid = c_dev.
        wait up to 5 seconds.
        submit rsconn01 with mode   = 'INT'
                        with output = 'X'
                        and return.
      endif.
          FORM obtain_spool_id                                          *
    form obtain_spool_id.
      check not ( gd_jobname is initial ).
      check not ( gd_jobcount is initial ).
      select * from  tbtcp
                     into table it_tbtcp
                     where      jobname     = gd_jobname
                     and        jobcount    = gd_jobcount
                     and        stepcount   = gd_stepcount
                     and        listident   <> '0000000000'
                     order by   jobname
                                jobcount
                                stepcount.
      read table it_tbtcp into wa_tbtcp index 1.
      if sy-subrc = 0.
        message s004(zdd) with gd_spool_nr.
        gd_spool_nr = wa_tbtcp-listident.
        message s004(zdd) with gd_spool_nr.
      else.
        message s005(zdd).
      endif.
    endform.
          FORM get_job_details                                          *
    form get_job_details.
    Get current job details
      call function 'GET_JOB_RUNTIME_INFO'
           importing
                eventid                 = gd_eventid
                eventparm               = gd_eventparm
                external_program_active = gd_external_program_active
                jobcount                = gd_jobcount
                jobname                 = gd_jobname
                stepcount               = gd_stepcount
           exceptions
                no_runtime_info         = 1
                others                  = 2.
    endform.
          FORM convert_spool_to_pdf                                     *
    form convert_spool_to_pdf.
      call function 'CONVERT_ABAPSPOOLJOB_2_PDF'
           exporting
                src_spoolid              = gd_spool_nr
                no_dialog                = c_no
                dst_device               = c_device
           importing
                pdf_bytecount            = gd_bytecount
           tables
                pdf                      = it_pdf_output
           exceptions
                err_no_abap_spooljob     = 1
                err_no_spooljob          = 2
                err_no_permission        = 3
                err_conv_not_possible    = 4
                err_bad_destdevice       = 5
                user_cancelled           = 6
                err_spoolerror           = 7
                err_temseerror           = 8
                err_btcjob_open_failed   = 9
                err_btcjob_submit_failed = 10
                err_btcjob_close_failed  = 11
                others                   = 12.
      check sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings
      loop at it_pdf_output.
        translate it_pdf_output using ' ~'.
        concatenate gd_buffer it_pdf_output into gd_buffer.
      endloop.
      translate gd_buffer using '~ '.
      do.
        it_mess_att = gd_buffer.
        append it_mess_att.
        shift gd_buffer left by 255 places.
        if gd_buffer is initial.
          exit.
        endif.
      enddo.
    endform.
          FORM process_email                                            *
    form process_email.
      describe table it_mess_att lines gd_recsize.
      check gd_recsize > 0.
      perform send_email using p_email1.
    perform send_email using p_email2.
    endform.
          FORM send_email                                               *
    -->  p_email                                                       *
    form send_email using p_email.
      check not ( p_email is initial ).
      refresh it_mess_bod.
    Default subject matter
      gd_subject         = 'Subject'.
      gd_attachment_desc = 'Attachname'.
    CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
      it_mess_bod        = 'Message Body text, line 1'.
      append it_mess_bod.
      it_mess_bod        = 'Message Body text, line 2...'.
      append it_mess_bod.
    If no sender specified - default blank
      if p_sender eq space.
        gd_sender_type  = space.
      else.
        gd_sender_type  = 'INT'.
      endif.
    Send file by email as .xls speadsheet
      perform send_file_as_email_attachment
                                   tables it_mess_bod
                                          it_mess_att
                                    using p_email
                                          'Example .xls documnet attachment'
                                          'PDF'
                                          gd_attachment_name
                                          gd_attachment_desc
                                          p_sender
                                          gd_sender_type
                                 changing gd_error
                                          gd_reciever.
    endform.
          FORM delete_spool                                             *
    form delete_spool.
      data: ld_spool_nr type tsp01_sp0r-rqid_char.
      ld_spool_nr = gd_spool_nr.
      check p_delspl <> c_no.
      call function 'RSPO_R_RDELETE_SPOOLREQ'
           exporting
                spoolid = ld_spool_nr.
    endform.
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
          Send email
    form send_file_as_email_attachment tables it_message
                                              it_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      data: ld_error    type sy-subrc,
            ld_reciever type sy-subrc,
            ld_mtitle like sodocchgi1-obj_descr,
            ld_email like  somlreci1-receiver,
            ld_format type  so_obj_tp ,
            ld_attdescription type  so_obj_nam ,
            ld_attfilename type  so_obj_des ,
            ld_sender_address like  soextreci1-receiver,
            ld_sender_address_type like  soextreci1-adr_typ,
            ld_receiver like  sy-subrc.
    data:   t_packing_list like sopcklsti1 occurs 0 with header line,
            t_contents like solisti1 occurs 0 with header line,
            t_receivers like somlreci1 occurs 0 with header line,
            t_attachment like solisti1 occurs 0 with header line,
            t_object_header like solisti1 occurs 0 with header line,
            w_cnt type i,
            w_sent_all(1) type c,
            w_doc_data like sodocchgi1.
      ld_email   = p_email.
      ld_mtitle = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      clear w_doc_data.
      read table it_attach index w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + strlen( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      clear t_attachment.
      refresh t_attachment.
      t_attachment[] = it_attach[].
    Describe the body of the message
      clear t_packing_list.
      refresh t_packing_list.
      t_packing_list-transf_bin = space.
      t_packing_list-head_start = 1.
      t_packing_list-head_num = 0.
      t_packing_list-body_start = 1.
      describe table it_message lines t_packing_list-body_num.
      t_packing_list-doc_type = 'RAW'.
      append t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      describe table t_attachment lines t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      append t_packing_list.
    Add the recipients email address
      clear t_receivers.
      refresh t_receivers.
      t_receivers-receiver = ld_email.
      t_receivers-rec_type = 'U'.
      t_receivers-com_type = 'INT'.
      t_receivers-notif_del = 'X'.
      t_receivers-notif_ndel = 'X'.
      append t_receivers.
      call function 'SO_DOCUMENT_SEND_API1'
           exporting
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           importing
                sent_to_all                = w_sent_all
           tables
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_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.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      loop at t_receivers.
        ld_receiver = t_receivers-retrn_code.
      endloop.
    endform.

  • Error when printing work order with iw32

    Hello all,
    When i was printing work order using IW32, the order success to be saved but it can't be printed. And i get this error message :
    Express document "Update was terminated" received from author ...
    i check with T-Code SM13, and i found error on
    PM_ORDER_PRINT_CONTROL
    further, i go check to ABAP Short dump, and found the error analysis
    A RAISE statement in the program "SAPLSFES " raised the exception
    condition "CONTROL_FLUSH_ERROR".                                
    Since the exception was not intercepted by a superior program  
    in the hierarchy, processing was terminated.
    have anyone know the OSS or have some experience to solve this problem ? hope you can help me..
    thank you for your attention..
    Regards,
    Anggara Mahardika

    Hi
    Can u let  us know whether u are trying to Save the Print out on to ur Desktop ...  or using GUI_DOWNLOAD Fm in ur program ...
    surya

  • Customizing 'Print Purchase Order' Report

    Hi All,
    We need to customize the 'Print Purchase Orders' report, for communicating the PO to supplier. But the Fax commnds, and the output format we have to change accordingly. Also we need to move the generated output file to another directory.
    Please let me know the recommended customizing procedure for the above.
    Thans,
    Gowri.

    Hi,
    If you want to modify Print PO Report (POXPOPDF), refer to the following document.
    Note: 305307.1 - How To Modify Print PO Report POXPOPDF With Custom Template
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=305307.1
    Regards,
    Hussein

Maybe you are looking for