Program name if no output type for dunning smartform

Hello Experts,
I want to know if smart form is not associated with any output type then how can I know which program is calling the smartform. I checked out in TNAPR with the smartform parameter value and system did not returns any hits. It means smartform is not associated with any output message type.
I am working with a dunning smart form where I need to make some changes, Transaction F150 displays the form print preview(One can also print from the transaction), But I have no idea which program is actually calling the smartform.
Secondly I made some changes in the text element but when through F150 I again viewed the form display, some thing I deleted from the text element still appearing in the preint preview. Could anyone throw some light on this and guide me.
secondly how to put breakpoint in the smartform, Normally in abap report you just press ctrl+shift and f12 but in breakpoint it is not applied.
Thanks,
Mark

FI Forms will not save under TNAPR table
FI Form names and Program Try to use below tables :
Tables : T001F or TTXFP
There is no output types for FI Forms,
Check the below link :
http://help.sap.com/saphelp_erp2004/helpdata/en/15/8c2239c2af4a04e10000000a11405a/frameset.htm
Path for see form name and print program - Dunning
path for configuration is :
SPRO
FInancial Accounting->Contract Accounts Receivable and Payable->Business Transactions->Dunning Notices.
Just goto SMARTFORMS Transaction -> use smartform name -> execute smartform -> it will go SE37 -> click on display -> here you can set up break point.
or you can use print program to setup debugging.
Now run F150 Transaction -> here you are able to see debugging mode
Thanks
Seshu

Similar Messages

  • How to make use of communication method in output type for new smartform?

    Hi all,
    My requirement, send the smartform to the carrier by fax/email/print based on the output condition records created.
    Here are the things that I had done.
    1) created a ZSMARTFORMS - smartforms
    2) created a ZPRINTPROGRAM - print program
    3) created a ZTCFRT - transaction code
    3) created an ZFRT  - output type
    I am stuck here. What are the next steps ? I want when I run transaction code: ZTCFRT, this print program ZPRINTPROGRAM will call this  ZSMARTFORMS smartforms and send/fax/print to the carrier.
    It would be great that someone can share the steps with me.
    Thanks!

    Hi,
    Have you written any code in your program or just Created it?
    If you have only created it, then you need to call some functions in your PRINT Program and these are:
    Below is just an example:
      CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
        EXPORTING
          formname           = i_formname
        IMPORTING
          fm_name            = i_fm_name
        EXCEPTIONS
          no_form            = 1
          no_function_module = 2
          OTHERS             = 3.
        CALL FUNCTION i_fm_name
          EXPORTING
            control_parameters = control_parameters
            output_options     = output_options
            user_settings      = space
            vbeln              = p_vbeln
          TABLES
            it_vbak            = it_vbak
          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.
    After calling second function, system execution will reach to the SMARTFORM (which you have created). There in smartform you can do whatever you want.
    for more details:
    http://help.sap.com/saphelp_nw04/helpdata/EN/a5/de6838abce021ae10000009b38f842/content.htm
    also see:
    help.sap.com/printdocu/core/Print46c/en/data/.../BCSRVSCRSF.pdf
    For any query, revert back.
    Regards,
    Vishal

  • Creation of OUTPUT Types for a smartform.

    Hi
    Please give me complete step by step process of output type cretion and configuration of a smartform.
    I have the idea that it is created from NACE.  But when I am creating the same..I am coming accross tabs like General DATA,Default Values,Time, etc. I want to know the exact meanings of each .
    And what to be filled in each case.
    Can any one provide me any documents or link for the same., with detailed description..

    Hi
    Instead of creating a new one, you can copy the existing standard output type and then configure the smartform.
    To copy the existing output type...Just select the application and then choose output types button. Now, just enter the change mode...then select one output type and click copy button... Keep the values as it is,change the name and save it.
    Regards,
    Vishwa.

  • Is there a way to change the output type for Email Remittance Program?

    Hello,
    We are trying to implement Separate Remittance Program.The seeded output type is PDF( I have checked the output type for send separate remittance concurrent program) however the
    email which we receive looks like a regular email I mean with a normal text .  Is there a way to get the output in different type like excel,attachment,pdf.
    Any inputs would be highly appreciated.
    Thanks,
    Sushma

    Currently there is a bug raised
    Bug 8208646 : R12 UNABLE TO SEND SEPARATE REMITTANCE ADVICE AS EMAIL ATTACHMENT IN PDF.
    If you want to customize this process you need to create data definition,new rtf template and bursting program to send pdf as attachment.

  • New Output Type for E-MAIL - What Programs to use

    Hi ,
    I am Configuring a new Output Type for E-mail Invoices. Based on the Billing Indicator on the Customer Master the New output type for E-mail should be determined and send an e-mail. To test this i have setup a new output type and used the below parameters:
    Program : RSNASTSO
    Form Routine: SAPOFFICE_AUFRUF
    PDF/SmartForm Form: SAPOFFICE_AUFRUF_VX
    Form Type: PDF
    I have the e-mail address in the general data of both Bill to and Sold TO. The partner Function for this output type is BP.
    When i created an Invoice i got the below error, I have highlighted the line with astericks which are showing up as error.
    Processing log for program RSNASTSO routine SAPOFFICE_AUFRUF   
    Function module SO_NAME_CONVERT with return code    
    Text 220V30900018667                    ZRD3E0500000425 ID STAM language E not found
    **No address exists     - Error**
    **Error while copying recipient object    - Error**
    **Specify at least one recipient        - Error**    
    Message object FOL29000000000004SCR33000000000044 created or sent        
    At this point i just want to be able to send an invoice via e-mail using standard program. I am looking to confirm if i am using the correct parameters. Any help will be greatly appreciated.
    Thanks,
    Irfan.

    Hi ,
    You can ty using the function module SO_NEW_DOCUMENT_ATT_SEND_API1
    here you will to also pass the logic that the PDF should be sent to a email recipient as per mentione din the bill to party function module
    Thanks
    Prashant

  • Output type for the managed codes cut letter is hard coded

    Hello,
    Very Good afternoon!
    I have a requirement to create new Output Types for a Smart Form.
    The already existing Output types are hard coded as shown Below :
    CONSTANTS : c_kschl_order LIKE nast-kschl
                             VALUE 'ZUS0',
                c_kschl_order1 LIKE nast-kschl
                             VALUE 'ZUS1',
    Now they do not want to use ZUS1. Insted they wnat to use New Output Types.
    u2022 Remove ZUS1 as we no longer use this one.
    u2022     Add ZAU0
    u2022     Add ZNZ0
    u2022     Add ZJP0
    u2022     Add ZCN0
    u2022     Add ZKR0
    How to add these Output types without Hardcoding as shown ABove.
    Any Suggestions will be appreciated.....
    For reference..I will paste the code of the Program here.
    Here is the code  :
                     PROGRAM DECLARATION
    PROGRAM ID           Z_RVADOR01_SALES_CUT_LETTER
    TABLES: vbak,    "Sales Document: Header Data
           vbap,    "Sales Document: Item Data
           vbpa,    "Sales Document: Partner
           vbep,    "Sales Document: Schedule Line Data
           kna1,    "General Data in Customer Master
           MARA,    "Material Master
            KOMK,                          "Communicationarea for conditions
            KOMP,                          "Communicationarea for conditions
            KOMVD,                         "Communicationarea for conditions
            VBCO3,                         "Communicationarea for view
            VBDKA,                         "Headerview
            VBDPA,                         "Itemview
            VBDPAU,                        "Subitemnumbers
            CONF_OUT,                      "Configuration data
            SADR,                          "Addresses
            TVAG,                          "Reason for rejection
            VEDKA,                         "Servicecontract head data
            VEDPA,                         "Servicecontract position data
            VEDKN,                         "Servicecontract head notice data
            VEDPN,                         "Servicecontract pos. notice data
            RISERLS,                       "Serialnumbers
            KOMSER,                        "Serialnumbers for print
            TVBUR,                         "Sales office
            TVKO,                          "Sales organisation
            ADRS,                          "Communicationarea for Address
            FPLTDR,                        "billing schedules
            WTAD_ADDIS_IN_SO_PRINT,        "additional
            WTAD_BUYING_PRINT_EXTRA_TEXT,  "texts belonging to additional
            adrc,
            adr6,
            t247.
    INCLUDE RVADTABL.
    INCLUDE RVDIREKT.
    INCLUDE VEDADATA.
    data for access to central address maintenance
    INCLUDE SDZAVDAT.
    TYPE-POOLS: ADDI.
    DATA PRICE_PRINT_MODE(1) TYPE C.       "Print-mode
    DATA: RETCODE   LIKE SY-SUBRC.         "Returncode
    DATA: REPEAT(1) TYPE C.
    DATA: XSCREEN(1) TYPE C.               "Output on printer or screen
    DATA: BEGIN OF STEU,                   "Controldata for output
            VDKEX(1) TYPE C,
            VDPEX(1) TYPE C,
            KBKEX(1) TYPE C,
            KBPEX(1) TYPE C,
          END OF STEU.
    DATA: BEGIN OF TVBDPA OCCURS 0.        "Internal table for items
            INCLUDE STRUCTURE VBDPA.
    DATA: END OF TVBDPA.
    DATA: BEGIN OF TKOMV OCCURS 50.
            INCLUDE STRUCTURE KOMV.
    DATA: END OF TKOMV.
    DATA: BEGIN OF TKOMVD OCCURS 50.
            INCLUDE STRUCTURE KOMVD.
    DATA: END OF TKOMVD.
    DATA: BEGIN OF TVBDPAU OCCURS 5.
            INCLUDE STRUCTURE VBDPAU.
    DATA: END   OF TVBDPAU.
    DATA: BEGIN OF TKOMCON OCCURS 50.
            INCLUDE STRUCTURE CONF_OUT.
    DATA: END   OF TKOMCON.
    DATA: BEGIN OF TKOMSERVH OCCURS 1.
            INCLUDE STRUCTURE VEDKA.
    DATA: END   OF TKOMSERVH.
    DATA: BEGIN OF TKOMSERVP OCCURS 5.
            INCLUDE STRUCTURE VEDPA.
    DATA: END   OF TKOMSERVP.
    DATA: BEGIN OF TKOMSERVHN OCCURS 5.
            INCLUDE STRUCTURE VEDKN.
    DATA: END   OF TKOMSERVHN.
    DATA: BEGIN OF TKOMSERVPN OCCURS 5.
            INCLUDE STRUCTURE VEDPN.
    DATA: END   OF TKOMSERVPN.
    DATA: BEGIN OF TKOMSER OCCURS 5.
            INCLUDE STRUCTURE RISERLS.
    DATA: END   OF TKOMSER.
    DATA: BEGIN OF TKOMSER_PRINT OCCURS 5.
            INCLUDE STRUCTURE KOMSER.
    DATA: END   OF TKOMSER_PRINT.
    DATA: BEGIN OF TFPLTDR OCCURS 5.
            INCLUDE STRUCTURE FPLTDR.
    DATA: END   OF TFPLTDR.
    DATA: TADDI_PRINT TYPE ADDI_SO_PRINT_ITAB WITH HEADER LINE.
    TYPES:BEGIN OF ty_orders ,
         xblnr    LIKE  mkpf-xblnr,       "delivery number
         erfmg    LIKE  mseg-erfmg,       "goods issue quantity
         custname LIKE  kna1-name1,       "customer name
         bstnk    LIKE  vbak-bstnk,       "purchase order number
         ean11    LIKE  vbap-ean11,       "upc
         kdmat    LIKE  vbap-kdmat,       "customer material code
         arktx    LIKE  vbap-arktx,       "description
         csrno    LIKE  kna1-kunnr,       "customer service rep number
         spras    LIKE  kna1-spras,       "customer language key
         csrname  LIKE  kna1-name1,       "customer service rep name
         csremail LIKE  adr6-smtp_addr,   "csr email
         csrphone LIKE  kna1-telf1,       "csr telephone
         csrext   LIKE  adrc-tel_extens,  "csr extension
         csrfax   LIKE  kna1-telfx,       "csr fax
         total    LIKE  lips-lfimg,       "cut quantity
         ldate(18)    TYPE c,
       END OF ty_orders.
    CONSTANTS: c_kschl_order LIKE nast-kschl
                             VALUE 'ZUS0',
                c_kschl_order1 LIKE nast-kschl
                             VALUE 'ZUS1',            c_parvw_shipto LIKE vbpa-parvw
                             VALUE 'WE',
                c_parvw_csr    LIKE vbpa-parvw
                             VALUE 'ZS',
                 c_eng(1)       TYPE c VALUE 'E',
                 c_sep(1)       TYPE c VALUE '/',
                 c_sale(25) type c VALUE 'Sales Order'.
    DATA: WA_VBAK TYPE VBAK,
          tbl_ord TYPE ty_orders OCCURS 0 WITH HEADER LINE,
          w_csrname(30)  TYPE c,
         w_csrno(30)    TYPE c,
         w_email    LIKE adr6-smtp_addr,
         f_shipto_found     TYPE c,
         w_custname(30) TYPE c,
         w_month(2),
         w_ldate(18),
         w_total LIKE lips-lfimg,
         w_lines        TYPE i VALUE 0,
         f_mail(1)  TYPE c,
         cnt_1          TYPE i VALUE 0,
         cnt_2          TYPE i VALUE 0,
         tbl_otf     LIKE itcoo OCCURS 0 WITH HEADER LINE,
         w_type(25)     TYPE c,
         st_doc_data   LIKE sodocchgi1,
         tbl_objtxt    LIKE solisti1 OCCURS 10 WITH HEADER LINE,
         tbl_line      LIKE tline OCCURS 0 WITH HEADER LINE,
         tbl_attach    LIKE solisti1 OCCURS 10 WITH HEADER LINE,
         tbl_objhead   LIKE solisti1 OCCURS 10 WITH HEADER LINE,
         tbl_proc_para LIKE soparai1 OCCURS 10 WITH HEADER LINE,
         tbl_maillist  LIKE somlreci1 OCCURS 10 WITH HEADER LINE,
         tbl_pack_list LIKE sopcklsti1 OCCURS 10 WITH HEADER LINE,
         tbl_cpo      LIKE itcpo OCCURS 0 WITH HEADER LINE,"SAPscript output
                                                                " interface
         tbl_cpp LIKE itcpp OCCURS 0 WITH HEADER LINE,"SAPscript output
                                                       " parameters
         tbl_smtp  TYPE szadr_adsmtp_line OCCURS 0 WITH HEADER LINE,
         tbl_cdhdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
         tbl_cdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
         wrk_lines LIKE sy-tabix,
         hltlines   TYPE i,
         off1       TYPE p,
         fle1(2)    TYPE p,
         fle2(2)    TYPE p,
         htabix     LIKE sy-tabix,
         hfeld(500) TYPE c.
    FORM ENTRY USING RETURN_CODE US_SCREEN.
    if sy-tcode = 'VA01'.
      IF nast-kschl = c_kschl_order.
      SELECT SINGLE * FROM VBAK INTO WA_VBAK WHERE vbeln = nast-objky.
      IF SY-SUBRC = 0.
      CLEAR RETCODE.
      XSCREEN = US_SCREEN.
      PERFORM PROCESSING USING us_screen.
      IF RETCODE NE 0.
        RETURN_CODE = 1.
      ELSE.
        RETURN_CODE = 0.
      ENDIF.
       ELSE.
          retcode = sy-subrc.
          syst-msgid = 'ZVERROR'.
          syst-msgno = '000'.
          syst-msgty = 'E'.
          syst-msgv1 = NAST-KSCHL.
         syst-msgv1 = 'Sales Order cut letter
                       for this order already issued'.
         syst-msgv2 = ' '.
          PERFORM protocol_update.
        ENDIF.
    ELSE.
        CLEAR retcode.
        xscreen = us_screen.
        PERFORM processing USING us_screen.
        IF retcode NE 0.
          return_code = 1.
        ELSE.
          return_code = 0.
        ENDIF.
      ENDIF.
    endif.
    ENDFORM.
          FORM PROCESSING                                               *
    FORM PROCESSING USING proc_screen.
    CASE nast-kschl.
        WHEN c_kschl_order.
          PERFORM get_orders.
          CHECK retcode = 0.
          PERFORM openform USING proc_screen vbak-landtx.
          CHECK retcode = 0.
          PERFORM layout.
          CHECK retcode = 0.
          CHECK proc_screen NE 'X'.
          w_type = c_sale.
          PERFORM send_email USING proc_screen.
      WHEN c_kschl_order1.
         PERFORM get_orders.
         CHECK retcode = 0.
         CHECK proc_screen NE 'X'.
         w_type = c_sale.
         PERFORM send_email USING proc_screen.
       WHEN OTHERS.
          retcode = 1.
          syst-msgid = 'E0'.
          syst-msgno = '430'.
          syst-msgty = 'E'.
          PERFORM protocol_update.
      ENDCASE.
      IF retcode EQ 0.
        syst-msgid = '69'.
        syst-msgno = '254'.
        syst-msgty = 'S'.
        syst-msgv1 = nast-kschl.
        PERFORM protocol_update.
      ELSE.
        syst-msgid = 'CKCC'.
        syst-msgno = '036'.
        syst-msgty = 'E'.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.
          FORM PROTOCOL_UPDATE                                          *
          The messages are collected for the processing protocol.       *
    FORM PROTOCOL_UPDATE.
      IF xscreen EQ space.
        CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
           EXPORTING
                MSG_ARBGB = SYST-MSGID
                MSG_NR    = SYST-MSGNO
                MSG_TY    = SYST-MSGTY
                MSG_V1    = SYST-MSGV1
                MSG_V2    = SYST-MSGV2
                MSG_V3    = SYST-MSGV3
                MSG_V4    = SYST-MSGV4
           EXCEPTIONS
                OTHERS    = 1.
       ELSE.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
       ENDIF.
    ENDFORM.
    *&      Form  get_orders
          text
    -->  p1        text
    <--  p2        text
    FORM get_orders.
    DATA : f_csr_found        TYPE c.
    SELECT SINGLE vbeln vkorg vdatu bstnk kunnr
        FROM   vbak
        INTO  (vbak-vbeln,vbak-vkorg,vbak-vdatu,vbak-bstnk,vbak-kunnr)
        WHERE vbeln EQ nast-objky.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'VN'.
        syst-msgno = '203'.
        syst-msgty = 'E'.
        syst-msgv1 = 'VBAK'.
        syst-msgv2 = sy-subrc.
        PERFORM protocol_update.
      ENDIF.
      SELECT vbeln posnr matnr pmatn arktx abgru kdmat werks
      FROM vbap
      INTO (vbap-vbeln,vbap-posnr,vbap-matnr,vbap-pmatn,
    vbap-arktx,vbap-abgru,vbap-kdmat,vbap-werks)
      WHERE vbeln = vbak-vbeln
      AND abgru NE space "select items havng Rejection Reason
      and PSTYV NE 'ZHDR'.
    to check whether the reason for rejection was picked from the
    managed codes tables
    data: war_abgru type abgru,
          w_exist type c.
    clear : war_abgru, w_exist.
      select single abgru  from ZMAT_REJ002
                    into war_abgru
                    where vkorg = vbak-vkorg
                    and kunnr <> vbak-kunnr
                    and MATNR = vbap-matnr
                    and datef <= vbak-vdatu
                    and datet >= vbak-vdatu.
       if sy-subrc <> 0.
             select single abgru from ZMAT_REJ003
                              into war_abgru
                              where vkorg = vbak-vkorg
                              and kunnr <> vbak-kunnr
                              and MATNR = vbap-matnr
                              and datef <= vbak-vdatu
                              and datet >= vbak-vdatu.
             if sy-subrc <> 0.
                    select single abgru from ZMAT_REJ001
                              into war_abgru
                              where vkorg = vbak-vkorg
                              and werks <> vbap-werks
                              and matnr = vbap-matnr
                              and datef <= vbak-vdatu
                              and datet >= vbak-vdatu.
                    if sy-subrc <> 0.
                         select single abgru from ZMAT_REJ004
                                             into war_abgru
                                             where vkorg = vbak-vkorg
                                             and matnr = vbap-matnr
                                             and datef >= vbak-vdatu
                                             and datet <= vbak-vdatu.
                         if sy-subrc <> 0.
                         else.
                         w_exist = 'X'.
                         endif.
                   else.
                   w_exist = 'X'.
                   endif.
             else.
             w_exist = 'X'.
             endif.
       else.
       w_exist = 'X'.
       endif.
    if w_exist = 'X'.
    end for check from managed codes table
    *to find the quantity fields
        SELECT SINGLE wmeng bmeng
        FROM vbep
        INTO (vbep-wmeng,vbep-bmeng)
        WHERE vbeln EQ vbap-vbeln
        AND   posnr EQ vbap-posnr.
    *to get info about the customer
        SELECT SINGLE kunnr
        FROM vbpa
        INTO vbpa-kunnr
        WHERE  vbeln EQ vbak-vbeln
        AND    parvw EQ c_parvw_shipto.
         IF sy-subrc EQ 0.
          f_shipto_found = 'X'.
          SELECT SINGLE name1 spras
            FROM kna1
            INTO (kna1-name1,kna1-spras)
            WHERE kunnr EQ vbpa-kunnr.
          IF sy-subrc EQ 0.
            w_custname = kna1-name1.
            CLEAR kna1-name1.
          ENDIF.
         ENDIF.
         SELECT SINGLE kunnr
        FROM vbpa
        INTO vbpa-kunnr
        WHERE vbeln EQ vbak-vbeln
        AND   parvw EQ c_parvw_csr.
        IF SY-SUBRC EQ 0.
         f_csr_found = 'X'.
          SELECT SINGLE kunnr name1 name2 adrnr
           FROM kna1
           INTO (kna1-kunnr,kna1-name1,kna1-name2,
                 kna1-adrnr)
           WHERE  kunnr EQ vbpa-kunnr.
          IF sy-subrc EQ 0.
            w_csrno = kna1-kunnr.
            w_csrname = kna1-name1.
            CLEAR kna1-name1.
               SELECT SINGLE tel_number tel_extens fax_number
                 FROM adrc
                 INTO (adrc-tel_number,adrc-tel_extens,
       adrc-fax_number)
                 WHERE addrnumber EQ kna1-adrnr.
            CLEAR: adr6, w_email.
            SELECT SINGLE * FROM adr6 WHERE addrnumber = kna1-adrnr.
            IF sy-subrc = 0.
              w_email = adr6-smtp_addr.
            ENDIF.
          ENDIF.
        ENDIF.
    *to get the date format in french
        IF kna1-spras NE c_eng.
          w_month = sy-datum+4(2).
          SELECT SINGLE ltx
            FROM t247
            INTO t247-ltx
            WHERE spras EQ kna1-spras
            AND mnr EQ w_month.
          CONCATENATE sy-datum+6(2)
                      t247-ltx
                      sy-datum+0(4)
                      INTO w_ldate
                      SEPARATED BY space.
          ELSE.
          CONCATENATE sy-datum+4(2)
                      sy-datum+6(2)
                      sy-datum+0(4)
                      INTO w_ldate
                      SEPARATED BY c_sep.
        ENDIF.
        w_total = vbep-wmeng - vbep-bmeng.
         IF w_total GT 0.
         PERFORM fill_orders.
        ELSE.
          IF vbap-abgru NE space.
            w_total = vbep-wmeng.
            PERFORM fill_orders.
          ENDIF.
        ENDIF.
        CLEAR vbap.
        endif.           " check for w_exist for Managed Codes entry
    ENDSELECT.
    IF tbl_ord[] IS INITIAL.
        retcode = 1.
        syst-msgid = 'FZ'.
        syst-msgno = '027'.
        syst-msgty = 'E'.
        PERFORM protocol_update.
      ENDIF.
      IF f_csr_found IS INITIAL.
        syst-msgid = '8B'.
        syst-msgno = '127'.
        syst-msgty = 'W'.
        syst-msgv1 = c_parvw_csr.
        PERFORM protocol_update.
      ENDIF.
      IF f_shipto_found IS INITIAL.
        syst-msgid = '8B'.
        syst-msgno = '127'.
        syst-msgty = 'W'.
        syst-msgv1 = c_parvw_shipto.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " get_orders
    *&      Form  layout
          text
    -->  p1        text
    <--  p2        text
    FORM layout.
    SORT tbl_ord BY bstnk kdmat.
      LOOP AT tbl_ord.
        AT FIRST.
          PERFORM writeform_text.
        ENDAT.
        PERFORM writeform.
        AT LAST.
          PERFORM writeform_footer.
        ENDAT.
      ENDLOOP.
      CLEAR : cnt_1,cnt_2.
      PERFORM closeform.
    ENDFORM.                    " layout
    *&      Form  openform
          text
    FORM openform USING us_screen us_country.
    DESCRIBE TABLE tbl_ord LINES w_lines.
      IF w_lines EQ 0.
        retcode    = '1'.
        syst-msgid = 'FE'.
        syst-msgno = '078'.
        syst-msgty = 'E'.
        PERFORM protocol_update.
      ENDIF.
      CHECK retcode EQ 0.
    INCLUDE zrvadopfo.
    ENDFORM.                    " openform
    *&      Form  send_email
          text
         -->P_PROC_SCREEN  text
    FORM send_email USING    PROC_SCREEN.
    f_mail = 'X'.
      PERFORM openform USING proc_screen vbak-landtx.
      LOOP AT tbl_ord.
        AT FIRST.
          PERFORM writeform_text.
        ENDAT.
        PERFORM writeform.
        AT LAST.
          PERFORM writeform_footer.
        ENDAT.
      ENDLOOP.
      CLEAR cnt_2.
      PERFORM closeform.
      CALL FUNCTION 'CONVERT_OTF'
           EXPORTING
                format                = 'PDF'  "'ASCII'
           IMPORTING
                bin_filesize          = st_doc_data-doc_size
           TABLES
                otf                   = tbl_otf
                lines                 = tbl_line
           EXCEPTIONS                                           "DEVK912166
                err_max_linewidth     = 1
                err_format            = 2
                err_conv_not_possible = 3
                OTHERS                = 4.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'OA'.                                      "DEVK912166
        syst-msgno = '186'.                                     "DEVK912166
        syst-msgty = 'E'.                                       "DEVK912166
        PERFORM protocol_update.
      ENDIF.
      REFRESH tbl_objtxt.
      CLEAR tbl_objtxt.
      CLEAR tbl_proc_para.
      REFRESH tbl_proc_para.
      CLEAR tbl_maillist.
      REFRESH tbl_maillist.
      CLEAR tbl_pack_list.
      REFRESH tbl_pack_list.
      st_doc_data-obj_name   = 'Sales Order Cut Letter'.
      st_doc_data-obj_langu   = 'E'.                            "DEVK905849
      st_doc_data-sensitivty  = 'F'.                            "DEVK905849
      st_doc_data-obj_prio    =  1.                             "DEVK905849
      CONCATENATE w_type 'Cut Letter' INTO          "#EC NOTEXT
                                  st_doc_data-obj_descr  SEPARATED BY space.
      DATA w_line(3) TYPE c.
      PERFORM format_pdf.                                       "DEVK905849
      concatenate VBAK-VBELN '.PDF' into tbl_objhead.
    tbl_objhead = 'Sales Order Cut Letter.PDF'.
      APPEND tbl_objhead.
           "DEVK905849
      CLEAR wrk_lines.
      DESCRIBE TABLE tbl_attach LINES wrk_lines.
    fields needed for email
      tbl_maillist-com_type = 'INT'.
      tbl_maillist-receiver =  w_email.
      tbl_maillist-rec_type = 'U'.
      APPEND tbl_maillist.
    send email
      CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
                                      STARTING NEW TASK 'MAIL'
           EXPORTING
                document_data              = st_doc_data
                document_type              = 'PDF'
                COMMIT_WORK                = 'X'    " added after ECC6.0 upgrade
           TABLES
                object_header              = tbl_objhead
                object_content             = tbl_objtxt
                receivers                  = tbl_maillist
           EXCEPTIONS                                           "DEVK912166
                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 NE 0.
        retcode = sy-subrc.
        syst-msgid = 'ZA_G'.                                    "DEVK912166
        syst-msgno = '922'.                                     "DEVK912166
        syst-msgty = 'E'.                                       "DEVK912166
        syst-msgv1 = sy-subrc.                                  "DEVK912166
        syst-msgv2 = tbl_smtp-adsmtp-smtp_addr.                 "DEVK912166
        PERFORM protocol_update.
        syst-msgid = 'VW'.
        syst-msgno = '001'.
        syst-msgty = 'E'.
        syst-msgv1 = 'Print successful:email Recepient Invalid'."#EC NOTEXT
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " send_email
    *&      Form  fill_orders
          text
    -->  p1        text
    <--  p2        text
    FORM fill_orders.
    tbl_ord-bstnk    = vbak-bstnk.
      tbl_ord-kdmat    = vbap-kdmat.
      tbl_ord-xblnr    = vbak-vbeln.
      tbl_ord-ean11    = vbap-pmatn.
      tbl_ord-arktx    = vbap-arktx.
      tbl_ord-csrno    = w_csrno .
      tbl_ord-csremail = w_email.
      tbl_ord-spras    = kna1-spras .
      tbl_ord-csrphone = adrc-tel_number.
      tbl_ord-csrfax   = adrc-fax_number.
      tbl_ord-csrext   = adrc-tel_extens.
      tbl_ord-total    = w_total.
      tbl_ord-custname = w_custname.
      tbl_ord-csrname  = w_csrname .
      tbl_ord-ldate    = w_ldate.
      APPEND tbl_ord.
      CLEAR tbl_ord.
      CLEAR w_total.
      CLEAR w_ldate.
    ENDFORM.                    " fill_orders
    *&      Form  writeform_text
          text
    -->  p1        text
    <--  p2        text
    FORM writeform_text.
    CALL FUNCTION 'WRITE_FORM'
           EXPORTING
                element = 'WTEXT'
                window  = 'WINDOW2'
           EXCEPTIONS
                element = 1
                window  = 2.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'EBR'.
        syst-msgno = '056'.
        syst-msgty = 'E'.
        syst-msgv1 = 'WTEXT'.
        syst-msgv2 = 'WINDOW2'.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " writeform_text
    *&      Form  writeform
          text
    -->  p1        text
    <--  p2        text
    FORM writeform.
    CALL FUNCTION 'WRITE_FORM'
           EXPORTING
                element = 'EMAIN'
                window  = 'MAIN'
           EXCEPTIONS
                element = 1
                window  = 2.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'EBR'.
        syst-msgno = '056'.
        syst-msgty = 'E'.
        syst-msgv1 = 'WTEXT'.
        syst-msgv2 = 'WINDOW2'.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " writeform
    *&      Form  writeform_footer
          text
    -->  p1        text
    <--  p2        text
    FORM writeform_footer.
    IF nast-spras = 'N'.
        CALL FUNCTION 'WRITE_FORM'
             EXPORTING
                  element = 'FOOTER'
                  window  = 'MAIN'
             EXCEPTIONS
                  element = 1
                  window  = 2.
      ENDIF.
      CALL FUNCTION 'WRITE_FORM'
           EXPORTING
                element = 'WFOOTER'
                window  = 'WINDOW12'
           EXCEPTIONS
                element = 1
                window  = 2.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'EBR'.
        syst-msgno = '056'.
        syst-msgty = 'E'.
        syst-msgv1 = 'WFOOTER'.
        syst-msgv2 = 'WINDOW12'.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " writeform_footer
    *&      Form  closeform
          text
    -->  p1        text
    <--  p2        text
    FORM closeform.
    CALL FUNCTION 'CLOSE_FORM'
           TABLES
                otfdata                  = tbl_otf
           EXCEPTIONS
                unopened                 = 1
                bad_pageformat_for_print = 2
                OTHERS                   = 3.
      IF sy-subrc NE 0.
        retcode = sy-subrc.
        syst-msgid = 'PS'.
        syst-msgno = '005'.
        syst-msgty = 'E'.
        PERFORM protocol_update.
      ENDIF.
    ENDFORM.                    " closeform
    *&      Form  format_pdf
          text
    -->  p1        text
    <--  p2        text
    FORM format_pdf.
    FIELD-SYMBOLS <fs>.
      DESCRIBE TABLE tbl_line    LINES  hltlines.
    DESCRIBE FIELD tbl_line    LENGTH fle1 IN BYTE MODE . Defect#1579-
    DESCRIBE FIELD tbl_objtxt  LENGTH fle2 IN BYTE MODE . Defect#1579-
    Start of Defect#1579+
      DESCRIBE FIELD tbl_line    LENGTH fle1 IN CHARACTER MODE.
      DESCRIBE FIELD tbl_objtxt  LENGTH fle2 IN CHARACTER MODE.
    End of Defect#1579+
      CLEAR   tbl_objtxt.
      REFRESH tbl_objtxt.
      LOOP AT tbl_line.
        htabix = sy-tabix.
        MOVE tbl_line TO hfeld+off1.
        IF htabix = hltlines.
          fle1 = strlen( tbl_line ).
        ENDIF.
        off1 = off1 + fle1.
        IF off1 GE fle2.
          CLEAR tbl_objtxt.
          tbl_objtxt = hfeld(fle2).
          APPEND tbl_objtxt.
          SHIFT hfeld BY fle2 PLACES.
          off1 = off1 - fle2.
        ENDIF.
        IF htabix = hltlines.
          IF off1 GT 0.
            CLEAR tbl_objtxt.
            tbl_objtxt = hfeld(off1).
            APPEND tbl_objtxt.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " format_pdf
    ANy Suggestion or help will be appreciated!
    Regards,
    Kittu
    Edited by: Kittu on Jun 30, 2008 12:32 PM

    Hello Julie Waller,
    Very Good evening!
    Thank you very much for your response!
    Sometimes...I miss the basic things and start concentarcting on typical ways to fix the issue. ....which will only make my issue critical. 
    Hello Sathya,
    Thank you for your response!
    POints are rewarded..
    Have a great day ahead!
    Regards,
    Kittu

  • Regarding Creation of Output types for SAP SCRIPTS

    Hi All,
    I want to create new output types for my SAP Script.
    What is the procedure for creating new <b>Z - Output Type</b>.
    Like <b>ZA01 for Sales Order</b>.
    What is the procedure can any body help me in this regard.
    It is not to use <b>ZA01</b> in <b>NACE</b> & connect Print Program & Layout set against Form Entry.
    It is for creation of <b>ZA01 Output</b> Type itself.
    If anybody knows the procedure please post the steps.
    Also please mention will there be any diffrence in creation from <b>Module to Module</b> (or) <b>Transaction (Vs) Transaction</b>. Just like <b>Sales Order (Vs) Purchase Order (Vs) Production Order</b>.
    Thanks in advance.
    Thanks & Regards,
    Rayeez.

    hi Shaik,
    Steps for output type:
    Go to NACE Transaction
    Select V1 - Sales.
    Click Output type
    In edit mode , click on new entries.
    Give output type as ZA01 with some descp.
    Then enter  , then u need to give the Access seq. as 0010
    Rest proprties are more and less similar to the BA00 standard output type in V1 only.
    After that u need to give the processing routines.
    In that u need to give the Program name
    followed by Form routine name
    In this way u can create the output from NACE tran.
    Let me know if u want anything else.
    Cheers
    Rewrd points, if found helpful

  • Need to configure output type for adobe form

    Hello All,
    I need to configure output type for Adobe Form thru NACE. What would be print program and how do I call my form from that program? and, what would be the FORM routine for that form in NACE?
    I'm little confused, Pls I need your help.
    Thanks in advance,
    Chandra

    Hi,
    Just before few weeks we did this task.
    Say for example if you want to print PO details through ADOBE form instead of normal sapscript layout or standard MEDRUCK, you can follow the following steps.
    1. Design the form in SFP tcode, by passing the necessary inputs through form interface.
    2. Then use tcode tcode NACE and select EF as application and click output types button on the          application tool bar. Select NEU output type and double click processing routines on left side.
    3. Then, in the right side of the screen we can see the calling program and the form (may be sapscript or smartform) whatever used.
    4. For form names we have two options in NACE tcode.
    One is Form and the otherone is PDF/Smartform Form. If you are using adobe form give your form name under PDF/Smartform and also select PDF under the type option in the same screen.
    This worked perfectly for us. But pass the required parameters to the form from the routine used in standard program.
    If any queries please post it.

  • Output Type for Form 16

    Hi,
    I want to know the output type for Form 16, from where i can find it..
    Thanks

    Hi P ,
    have u seen the program of that Form 16? Run the program itself , it will give defalut  output types.
    i think its the Form name not the output type.
    regards
    Prabhu

  • Output type for HU physical inventory process

    Hi All,
    During a HU physical inventory process we print the physical inventory
    document (the list) by transaction HUINV02.
    The customer would like to make a few changes in the layout.
    we didnt find the standard form and also not the output type.
    is anybody know if there is a form or output type for this list?
    Thanks,
    Sharon.

    Ok.
    I think you need to create a new output type for this. Because even I did not find it anywhere in NACE.
    Here is the print program: RM07IDRU.
    As you already have the form name, you can create the output type.
    Vishwa.

  • Regarding output type for billing doc

    i have one billing doc. i want to find out type for that billing doc. through that i need to find the program name and form name.
    i have lot of out put types. In that how to find the out put for my requirement

    HI pavan,
    It is not a good idea to check with the Program name or Layout set name without knowing the OUtput types because, Billing docu number can work with multiple Output types...you never know it. So in your case to check TNAPR table would be the best option...but again it is never recomended to go ahead without knowing the output type.
    And for one Output type there will be only one smart form/ script form and a Zprogram will be configured.
    It is not possible to configure multiple Smart forms for a same Output type.
    You can use single smart form in Multiple Output types but not single output type for diff Smart forms.
    Try to either know the smart form/script from name or the Zprogram so that you can search it in TNAPR table or by using Where used list icon.
    Regards,
    Kittu

  • Default Output Type for Sales Order Header

    Hi Guru
    I created 2 output types for hardcopy printout and for mail.
    I want both should be selected as default when a sales order is created. (using NACE)
    Output will be manually from VA02 -> issue output to. Here I must get 2 output types.
    As of now, this is manual process. 
    Please help.
    sunil Kolambkar.

    Hi Sunil,
    For this you need to maintain condition record for output type. for the sales order type, [V V11].
    Do the output determination in the same way as Pricing procedure determination.
    OUTPUT DETERMINATION:
    SPRO- IMG- Basic Functions- Output Control- Output Determination- Output Det using Cond Tech- Output Det for Sales Documents & output det for billing documents.
    Create Condition Table: select the field Sales Doc Type from field catalog & Save
    Maintain Access Sequence: 4-digits code & description.
    Assign condition table to access sequence. Select Accesses line item and Go To Fields. Fields will display the fields we have selected in the condition table i.e. sales doc type.
    Maintain Output Types:
    AF00: Inquiry
    AN00: Quotation
    BA00: Order Confirmation
    LD00: Delivery
    Select BA00 & Copy & Rename. Give the same 4-digit code as given to acc seq.
    You Can Maintain:
    Languages of Output
    Partners (to whom we want to send output)
    Print Program- print specification
    Sap Script- layout
    Assign Output Types to Partner Functions: go to new entries & assign your output type to partner functions.
    Maintain Output Determination Procedure: V10000 (Standard Procedure). Go to new entries & create your own 6-digit code with descp. Select the procedure & go to Control Data. Here mention the output type i.e. cond type & leave requirement and manual only columns as blank.
    Determination Rule: link the 6-digit procedure code to doc types.
    Create Condition Records: VV11. Select document type and click on Communication. Mention partner function, medium, time. Output device: LP01, Spool request Name: SD_003, Suffix 2: order_confir & flag on print immediately.
    Once you press enter you will come across 2 key combinations:
    Sales organisation/ Customer Number: fill SO, Customer No, Partner Function Abbreviation, Partner to whom the output should be sent, time, medium, language. {It contains: Sales Orgn, Customer, Partner Function (The abbreviated form of the name that identifies the Partner) (During output determination, the system determines the recipient of the output from the master record for the specified partner function. In this field, you can explicitly specify a recipient that will override the standard partner. There must also be a master record for the partner that is specified explicitly.), Medium, Time & Language.}
    Order Type: Document Type, Partner Function (abbreviation), Partner, Medium, Time & Language.
    Hope this would be helpful.
    Regds,
    Rupali

  • OUTPUT types for F.27

    hi all,
    i have to maintain the company name for F.27 in form, can anyone please tell me the output types for the same? OR is there any method by which i can check that which output type is being called by seeing output?
    regards saurabh.
    Edited by: saurabh srivastava on Dec 22, 2008 7:14 AM

    Hello Saurabh,
    The form which gets triggered from F.27 is a correspondence form. Goto SPRO & search for "Define Form Names for Correspondence Print".
    Here you give the company code, the program name & the form name. You can consult your functional consultant for details. He can definitely help you.
    Hope this helps.
    BR,
    Suhas
    Edited by: Suhas Saha on Dec 22, 2008 7:48 AM

  • Output type for goods receipt

    Hi guys,
    Can any one lemme know what is the output  type we can use for goods receipt- for generating a  goods receipt smartform output?
    and can u also lemme know the standard print program also.
    if u have written any zprint program plz send it ASAP.
    thanks n regards,
    Bhargava.

    u can see the output types for Goods Receipt in Transaction NACE. Application M1
    Output type        Name
    CHKL     Count List ( Program RTCHECKL, form RT_CHECK_LIST)
    GRPL     Pallet Sticker ( Pro RTCHECKL, form RT_PALLET_LABEL)
    The Form names mentioned are SAPSCRIPTS not smartforms.
    Also Bhargava, chk out with ur Consultant wat output type suits ur requirement coz there r multiple options as u can see for urself in NACE under Applications M1/ME.
    Hope it helps.
    Regards,
    Bikash
    Message was edited by: Bikash  Agarwal
    Message was edited by: Bikash  Agarwal

  • How to know the printprogram and output type for perticular standard script

    how to know the print program and output type for perticular standard script and wt the proceure we will fallow to modifie the standard script..if possible u have any sample code plz share with me.....

    Hi Phani,
    To know the print program and output type for a standard script we have a table called TNAPR. So just you go to SE11 and provide the table name as TNAPR and choose display option.Then go with display entries option and in selection screen you have to provide the form name for whic you want to know the print program and output type.
    To modify a standard script first of all you have to copy the standard form for which you need modifications into Zform. Once you done this you can modify the layout set as per your requirement.Then what ever the modifications you have done in layout set for that you need to populate the data.For this you also need to do some modifications to the print program.so you have to options like directly you can modify the print program as per your requirement and other one is you can create a subroutine and do coding in that subroutine. Then you need call this subroutine in the Script Form.like this you can do modifications to the standard script........................... Reward me if its helpful..........
    Thanks & Regards.
    Laxman.P
    B'lore.

Maybe you are looking for

  • Valuation and account assignment

    Hi, during MIRO system generates the following error, I cannot understand what is the problem: Acct determination for Tax exchange rate differences with keys   not defined  in ch/acts PDCA                                                              

  • Allocation from cost center to profit center

    Hi, Is there any way we would allocate expenses booked on a cost center to a profit center?

  • How do I find out what updates have been installed

    Is there a way to search my macbook air and find out what application updates have been installed?

  • Purchase requisition idoc

    hello gurus, i know there are idoc types for purchase requisition create / change. But I am not able to understand how do i trigger that idoc from sap. I dont see any output / message types in purchase requisition ME51. Is it not from message control

  • Error Creating Document Set in a Custom Sandboxed Action

    I created a custom workflow sandboxed action, and one of the lines is required to create a new document set in a document library. The code works when i run it in a console application. The document set is created successfully.  However, it doesn't i