Regarding Printing output of SAPSCRIPT Program using Transaction IW22

Hi All,
I am having a issue with sending <b>SAP Script output to printer</b>, We are not able to print the output.
Transaction code we are making use to see the print preview is <b>IW22</b>.
When we are pressing <b>Print/Fax</b> button in IW22 it is generating spool but when we close the SAP connection it is not getting printed in Printer.
Can anybody solve this issue.
Thanks in advance.
Thanks & Regards,
Rayeezuddin.

Hi all,
Yes i checked <b>Print Immediately</b> & <b>generate spool request</b> options and i deselected <b>Delete spool</b> option, Still i am not able to get the print & though i am able to generate spool & view print preview.
Please try to solve my issue.
If any further information required i am ready to provide.
Thanks & Regards,
Rayeez.

Similar Messages

  • How to know what CBO programs uses transaction codes

    Hello Everyone,
    How to know what CBO programs uses transaction codes?
    Thanks for the help!

    Hi,
    Please clarify your question ....
    for e.g. give program name

  • Printer output in SCMA(Schedule Manager) Transaction

    Hi!
    When starting a job in SCMA you never get the question if you want  the spool list to be printed or not. Is there a possibility to maintain this from somewhere else?
    Can anybody help!! Thanks a ton in advance.
    Regards,
    Sanjeev Kumar

    Hi Sanjeev,
    Just try this option out and see if it works:
    1. Select a Job from the tasklist.
    2. Instead of scheduling th job through a right-click (context-menu), just select the job and go to Menu option Environment--> Schedule With Job Wizard.
    3. In one of the screens of this wizard, you can see the option "Print Parameters". I guess you can ste the required options here.
    Hope this information helps.
    Regards,
    Anand Mandalika.
    P.S: I wonder why this option of providing the print parameters does not appear when you do not use the Wizard.

  • Diff in alignment of PDF & printer output of script

    I have a output in sapscript  when used  PDF output i get proper

    Sorry friends remaining part was deleted by mistake. it is as below
    The output which is i get when i take a print from printer or preview is proper. But when i use win 2 pdf i get the output with alignment out. If i adjust that then printer alignment goes wrong. can anyone suggest.

  • Printing sapscript label using zebra printer

    Hi,
    Can anybody please help me regarding "printing sapscript label using zebra printer"?
    i hav set the following print default settings in the transaction mb90:
    output device :
    NO01
    device type: YZZX_ZEB
    but when i try to print ,i am getting error message stating that "the respective sapscript form is not active ".
    i hav also attached my print program for ur easy reference.
    ====================================================================*
    FORM open_form_slv.
    *'  Description:
    *'  Add information for the SAP spooler
    *'  Change the name of the standard customized form for Zebra print
    *'  Last Change Vers Programmer   Reason
    *1
      DATA: BEGIN OF print_infos.
              INCLUDE STRUCTURE itcpo.
      DATA: END OF print_infos.
      DATA: form_name(16) TYPE c, char1(1) TYPE c, ind_beg TYPE i.
      PERFORM itcpo_fuellen.
      MOVE-CORRESPONDING itcpo TO print_infos.
      WRITE sy-datum USING EDIT MASK '__.__.____'
                                               TO print_infos-tdcovtitle+1.
      WRITE sy-uzeit USING EDIT MASK '__:__:__'
                                              TO print_infos-tdcovtitle+12.
      CONCATENATE itcpo-tddest sy-uname ' PO'(001) ekpo-ebeln ' Doc.No'(002)
                                           mseg-mblnr print_infos-tdcovtitle
                              INTO print_infos-tdcovtitle SEPARATED BY space.
    form name from the table YZZM_GR_LABEL
      IF NOT g_fonam IS INITIAL.
        tnapr-fonam = g_fonam.
      ENDIF.
    if the used printer is a Zebra label printer, then the customized
    layout set name ???_???_XXX will be changed to ???_???_ZP
      SELECT SINGLE * FROM  tsp03d WHERE  padest  = nast-ldest.
      IF tsp03d-patype = 'YZZX_ZEB'.
        ind_beg := 15.
        WHILE ind_beg > -1.
          char1 := tnapr-fonam+ind_beg.     " substr(tnapr-fonam,ind_beg,1)
          IF char1 = '_'.
            form_name := tnapr-fonam(ind_beg).
            CONCATENATE form_name '_ZP' INTO tnapr-fonam.
            EXIT.
          ENDIF.
          ind_beg := ind_beg - 1.
        ENDWHILE.
      ENDIF.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          device   = 'PRINTER'
          language = language
          OPTIONS  = print_infos
          form     = tnapr-fonam
          dialog   = ' '.
      x_open := x.
      IF mseg-weanz = 0. mseg-weanz = 1. ENDIF.
      IF syst-tcode <> 'MB90'  AND  NOT g_flag_popup IS INITIAL.
    check for requirement of printing label and ask for gr-quantities (popup)
        SELECT SINGLE * FROM yzzm_gr_quantity WHERE ebeln = mseg-ebeln.
        CLEAR yzzm_gr_quantity-no_popup.
      ELSE.
    and ask not for gr-quantities
        IF syst-tcode = 'MB90'.
          yzzm_gr_quantity-erfmg := mseg-menge.
        ELSE.
          yzzm_gr_quantity-erfmg := mseg-menge / mseg-weanz.
        ENDIF.
        yzzm_gr_quantity-no_popup := x.
      ENDIF.
    determination inspection lot number
      CLEAR qals-prueflos.
      SELECT SINGLE * FROM qals WHERE mblnr = mseg-mblnr
                           AND zeile = mseg-zeile
                           AND mjahr = mseg-mjahr.
    determination vendor batch
      CLEAR mch1-licha.
      SELECT SINGLE * FROM mch1 INTO mch1 WHERE matnr = mseg-matnr
                                            AND charg = mseg-charg.
    ENDFORM.                    "open_form_label
    =================================================================== *
    FORM we01_print_slv.
    *'  Description:
    *'  print out of hazardous symbol
    *'  controls the Zebra printer
    *'  Last Change Vers Programmer   Reason
    *****26.09.2007 Starts
      DATA: l_objky TYPE nast-objky,"Object key
            l_vstat TYPE nast-vstat. "Processing status of message
    *****26.09.2007 Starts
      TABLES: mgef, t300.
      FIELD-SYMBOLS: .
      DATA: aux_index LIKE sy-index.
      DATA: count_haz_sym, position TYPE n, zw TYPE p DECIMALS 1.
      DATA: aux_value(5) TYPE c.
      DATA: txt(10) TYPE c, pos(5) TYPE c.
      t001w-werks = r_werks.
      t001w-name1 = r_name1.
      PERFORM read_address.
    *2
      SELECT SINGLE * FROM ekpo WHERE ebeln = mseg-ebeln
                                  AND ebelp = mseg-ebelp.
      CLEAR mara-stoff.
      SELECT SINGLE stoff INTO mara-stoff FROM mara WHERE matnr = mseg-matnr.
      IF NOT mara-stoff IS INITIAL.
        CLEAR t300.
        SELECT SINGLE * FROM t300 WHERE lgnum = mseg-lgnum.
        IF NOT sy-subrc IS INITIAL.
      for plants without warehouses try to use the country code
          CASE mseg-werks.
            WHEN 'BUP'.
              t300-regkz := 'US '.
          ENDCASE.
        ENDIF.
        CLEAR mgef.
        SELECT SINGLE * FROM mgef WHERE stoff = mara-stoff
                                  AND   regkz = t300-regkz.
      ENDIF.
    in case of more then one label, use for each a new output window
    (not only for the first)
      IF g_count > 1.
        CALL FUNCTION 'CONTROL_FORM'
          EXPORTING
            command = 'NEW-WINDOW'.
      ENDIF.
    Ausgabe Gefahrstoffsysmbole        Neustadt,  V.Hilgert  14.07.98
    *For output type YNL7, the hazardous warning symbol has to be printed at  the bottom of the label.So label is called before that.
      IF tnapr-kschl = 'YNL7'.
        CALL FUNCTION 'WRITE_FORM'
          EXPORTING
            element = 'LABEL'.
      ENDIF.
      count_haz_sym = 0. position = 0.
      WHILE count_haz_sym  = 'XN'.
    For output type YNL7, the width of the standard text is small.
          IF tnapr-kschl = 'YNL7'.
            zw = position * '0.2' + '0.1'. pos = zw.
          ELSE.
            zw = position * '1.3' + '0.1'. pos = zw.
          ENDIF.
          IF tsp03d-patype = 'YZZX_ZEB'. " device type for ZEBRA label priter
            aux_value := count_haz_sym.
          ELSE.
            aux_value := pos.              " HP/Kyocera or other laser printer
          ENDIF.
          CALL FUNCTION 'TEXT_SYMBOL_SETVALUE'
            EXPORTING
              name   = '&XPOS&'
              value  = aux_value
            EXCEPTIONS
              OTHERS = 1.
          CALL FUNCTION 'WRITE_FORM'
            EXPORTING
              element   =
              window    = 'MAIN'
            EXCEPTIONS
              element   = 1
              function  = 2
              type      = 3
              unopened  = 4
              unstarted = 5
              window    = 6
              OTHERS    = 7.
          IF sy-subrc = 0.
    *Varying the position for YNL7
            IF tnapr-kschl = 'YNL7'.
              position = position + 2.
            ELSE.
              position = position + 1.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDWHILE.
      IF NOT mseg-vfdat IS INITIAL.
        am07m-mhtxt = text-105.
      ENDIF.
      IF NOT am07m-mhdat IS INITIAL.
        am07m-mhztx = text-106.
      ENDIF.
      IF ekko-bsart = 'UB'.
        am07m-litxt = text-101.
        am07m-libzg = ekko-reswk.
      ELSE.
        am07m-litxt = text-100.
        am07m-libzg = ekko-lifnr.
      ENDIF.
      belpos-mblnr = mkpf-mblnr.
      belpos-zeile = mseg-zeile.
      CONDENSE belpos NO-GAPS.
      am07m-belpos = belpos.
      IF t156-shkzg = h.
        am07m-hdlne = text-020.
      ELSE.
        am07m-hdlne = text-010.
      ENDIF.
    Ausgabe der Etiketten mit den ind. Mengen
      IF NOT g_flag_popup IS INITIAL.
        SELECT SINGLE * FROM yzzm_gr_quantity WHERE ebeln = mseg-ebeln
                                              AND   weanz = g_count.
      ELSE.
    * print the number of labels is handeled by the Zebra printer
    IF tsp03d-patype = 'YZZX_ZEB'. " device type for Zebra label prts
    g_lbls_tot := mseg-weanz - g_count + 1.
    g_break_print := x.
    ENDIF.
    ENDIF.
    mseg-erfmg := yzzm_gr_quantity-erfmg.*
    ********26.09.2007 Starts
    CONCATENATE mseg-mblnr mseg-mjahr mseg-zeile INTO l_objky.
    SELECT SINGLE vstat INTO l_vstat FROM nast WHERE kappl = 'ME' AND
    objky = l_objky AND
    kschl = 'YNL7'.
    ********26.09.2007 Ends
    CALL FUNCTION 'TEXT_SYMBOL_SETVALUE'
    EXPORTING
    name = '&nummer&'
    value = g_count.
    IF tnapr-kschl <> 'YNL7'.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    element = 'LABEL'.
    else.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'BAR_CODE'
    EXCEPTIONS
    ELEMENT = 1
    FUNCTION = 2
    TYPE = 3
    UNOPENED = 4
    UNSTARTED = 5
    WINDOW = 6
    BAD_PAGEFORMAT_FOR_PRINT = 7
    SPOOL_ERROR = 8
    CODEPAGE = 9
    OTHERS = 10.
    IF sy-subrc <> 0. MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
         ENDIF.
      ENDIF.
    ENDFORM.                    "GR_label_print
    *&      Form  lesen
          text
         -->OBJKY      text
    FORM lesen USING objky.
      nast_key = objky.
      CLEAR retco.
      SELECT SINGLE * FROM mkpf WHERE mblnr = nast_key-mblnr
                                AND   mjahr = nast_key-mjahr.
      SELECT SINGLE * FROM mseg WHERE mblnr = mkpf-mblnr
                                AND   zeile = nast_key-zeile
                                AND   mjahr = mkpf-mjahr.
      IF sy-subrc NE 0.
        retco = sy-subrc.
        EXIT.
      ENDIF.
      PERFORM tab156_lesen.
      xskkz = t156-rstyp.
      PERFORM tab001w_lesen.
      IF NOT mseg-evers IS INITIAL.         "Versandvorschriften lesen.
        PERFORM t027_lesen.
      ENDIF.
      PERFORM bestellung_lesen.
      IF NOT ekpo-knttp IS INITIAL AND NOT
             ekpo-weunb IS INITIAL.
        PERFORM kontierung_lesen.           "für multikontierte Bestellungen
      ENDIF.
      IF NOT mseg-ematn IS INITIAL.
        PERFORM lesen_htn.
      ELSE.                                                     "111277/PH
        CLEAR am07m-mfrpn.                                      "111277/PH
      ENDIF.
      IF mseg-matnr IS INITIAL.
        mseg-menge = mseg-bpmng.
        mseg-meins = mseg-bprme.
        PERFORM bestelltext_lesen.
        CLEAR mabdr.
      ELSE.
        PERFORM material_lesen.
      ENDIF.
      PERFORM tab024_lesen.
      PERFORM t064b_lesen.
      PERFORM ladr_lesen.
    ENDFORM.                    "lesen
    Lesen für WE-Schein Fert.Auftrag -
    FORM lesen_wf USING objky.
      nast_key = objky.
      CLEAR retco.
      SELECT SINGLE * FROM mkpf WHERE mblnr = nast_key-mblnr
                                AND   mjahr = nast_key-mjahr.
      SELECT SINGLE * FROM mseg WHERE mblnr = mkpf-mblnr
                                AND   zeile = nast_key-zeile
                                AND   mjahr = mkpf-mjahr.
      IF sy-subrc NE 0.
        retco = sy-subrc.
        EXIT.
      ENDIF.
      PERFORM tab156_lesen.
      xskkz = t156-rstyp.
      PERFORM tab001w_lesen.
      PERFORM auftrag_lesen.
      IF NOT mseg-matnr IS INITIAL.
        PERFORM material_lesen.
      ELSE.
        mseg-menge = mseg-erfmg.
        mseg-meins = mseg-erfme.
      ENDIF.
      PERFORM tab024d_lesen.
      PERFORM t064b_lesen.
      PERFORM ladr_lesen.
    ENDFORM.                    "lesen_wf
    Lesen für Warenausgang -
    FORM lesen_wa USING objky.
      nast_key = objky.
      CLEAR retco.
      SELECT SINGLE * FROM mkpf WHERE mblnr = nast_key-mblnr
                                AND   mjahr = nast_key-mjahr.
      SELECT SINGLE * FROM mseg WHERE mblnr = mkpf-mblnr
                                AND   zeile = nast_key-zeile
                                AND   mjahr = mkpf-mjahr.
      IF sy-subrc NE 0.
        retco = sy-subrc.
        EXIT.
      ENDIF.
      PERFORM tab156_lesen.
      xskkz = t156-rstyp.
      PERFORM tab001w_lesen.
      IF NOT mseg-matnr IS INITIAL.
        PERFORM material_lesen.
      ENDIF.
      PERFORM ladr_lesen.
    ENDFORM.                    "lesen_wa
    Druck Vorbereiten -
    FORM open_form.
      PERFORM itcpo_fuellen.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          device   = 'PRINTER'
          language = language
          OPTIONS  = itcpo
          dialog   = ' '.
      PERFORM lesen_t159p.
      x_open = x.
    ENDFORM.                    "open_form
    Druck Vorbereiten Sammelscheine -
    FORM open_form_sammel.
      PERFORM lesen_t159p.
      PERFORM itcpo_fuellen.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          device   = 'PRINTER'
          language = language
          OPTIONS  = itcpo
          form     = tnapr-fonam
          dialog   = ' '.
      x_open = x.
    ENDFORM.                    "open_form_sammel
    Druck schließen -
    FORM close_form.
      CHECK NOT x_open IS INITIAL.
      CALL FUNCTION 'CLOSE_FORM'.
      CLEAR x_open.
    ENDFORM.                    "close_form
    Hilfsfelder versorgen für Sammelscheindruck -
    FORM helpdata1.
       *mkpf = mkpf.
       *mseg-lgort = mseg-lgort.
       *ladr = ladr.
      save_mkpf = *mkpf-usnam.
      save_mblnr = *mkpf-mblnr.
      save_budat = *mkpf-budat.
      save_cpudt = *mkpf-cpudt.
      save_ematn = *mseg-ematn.
      save_lgort = *mseg-lgort.
      save_ladr = *ladr.
       *t001w = t001w.
      save_werks = *t001w-werks.
      save_name1 = *t001w-name1.
       *ekko = ekko.
       *am07m = am07m.
      save_lifnr = *ekko-lifnr.
      save_ebeln = *ekko-ebeln.
      save_ekgrp = *ekko-ekgrp.
      save_linam = *am07m-name1.
      save_lina2 = *am07m-name2.
       *t024 = t024.
      save_eknam = *t024-eknam.
      save_ektel = *t024-ektel.
       *mkpf-usnam = old_mkpf.
       *mkpf-mblnr = old_mblnr.
       *mkpf-cpudt = old_cpudt.
       *mkpf-budat = old_budat.
       *mseg-ematn = old_ematn.
       *mseg-lgort = old_lgort.
       *ladr = old_ladr.
       *t001w-werks = old_werks.
       *t001w-name1 = old_name1.
       *t024-eknam = old_eknam.
       *t024-ektel = old_ektel.
       *ekko-lifnr = old_lifnr.
       *ekko-ebeln = old_ebeln.
       *ekko-ekgrp = old_ekgrp.
       *am07m-name1 = old_linam.
       *am07m-name2 = old_lina2.
      save_lfa1  = lfa1.
      IF NOT old_lfa1 IS INITIAL.
        lfa1  = old_lfa1.
      ENDIF.
    ENDFORM.                                                    "helpdata1
    --- Versorgung der Hilfsfelder vor CLOSE_FORM bei Sammelscheindruck --
    FORM helpdata2.
      old_lfa1 = save_lfa1.
      lfa1     = save_lfa1.
      old_mkpf = save_mkpf.
      old_lgort = save_lgort.
      old_ladr = save_ladr.
      old_budat = save_budat.
      old_cpudt = save_cpudt.
      old_werks = save_werks.
      old_name1 = save_name1.
      old_mblnr = save_mblnr.
      old_lifnr = save_lifnr.
      old_linam = save_linam.
      old_lina2 = save_lina2.
      old_ebeln = save_ebeln.
      old_ekgrp = save_ekgrp.
      old_eknam = save_eknam.
      old_ektel = save_ektel.
      old_ematn = save_ematn.
       *mkpf-usnam = save_mkpf.
       *mkpf-mblnr = save_mblnr.
       *mkpf-budat = save_budat.
       *mkpf-cpudt = save_cpudt.
       *mseg-ematn = save_ematn.
       *mseg-lgort = save_lgort.
       *ladr = save_ladr.
       *t001w-werks = save_werks.
       *t001w-name1 = save_name1.
       *t024-eknam  = save_eknam.
       *t024-ektel  = save_ektel.
       *ekko-lifnr  = save_lifnr.
       *ekko-ebeln  = save_ebeln.
       *ekko-ekgrp  = save_ekgrp.
       *am07m-name1 = save_linam.
       *am07m-name2 = save_lina2.
    ENDFORM.                                                    "helpdata2
    Form Lesen Warenausgang Lohnbearbeiter -
    FORM lesen_wlb USING objky.
      nast_key = objky.
      CLEAR retco.
      SELECT SINGLE * FROM mkpf WHERE mblnr = nast_key-mblnr
                                AND   mjahr = nast_key-mjahr.
      SELECT SINGLE * FROM mseg WHERE mblnr = mkpf-mblnr
                                AND   zeile = nast_key-zeile
                                AND   mjahr = mkpf-mjahr.
      IF sy-subrc NE 0.
        retco = sy-subrc.
        EXIT.
      ENDIF.
      PERFORM tab156_lesen.
      xskkz = t156-rstyp.
      PERFORM tab001w_lesen.
      IF NOT mseg-matnr IS INITIAL.
        PERFORM material_lesen.
      ENDIF.
      ON CHANGE OF mseg-lifnr.
        PERFORM read_address.
      ENDON.
    ENDFORM.                    "lesen_wlb
    *eject
    Fuellen der ITCPO -
    FORM itcpo_fuellen.
      IF xscreen NE space.
    *- Testausgabe auf Bildschirm -
        itcpo-tdpreview = 'X'.
        itcpo-tdnoprint = 'X'.
      ELSE.
        CLEAR: itcpo-tdpreview,
               itcpo-tdnoprint.
      ENDIF.
      MOVE-CORRESPONDING nast TO itcpo.
      itcpo-tdcover   = nast-tdocover.
      itcpo-tddest    = nast-ldest.
      itcpo-tddataset = nast-dsnam.
      itcpo-tdsuffix1 = nast-dsuf1.
      itcpo-tdsuffix2 = nast-dsuf2.
      itcpo-tdimmed   = nast-dimme.
      itcpo-tddelete  = nast-delet.
      itcpo-tdcopies  = nast-anzal.
      itcpo-tdprogram = sy-repid.
    ITCPO-TDTELELAND = US_COUNTRY.
      itcpo-tdsenddate = nast-vsdat.
      itcpo-tdsendtime = nast-vsura.
      itcpo-tdnewid   = x.
    ENDFORM.                    "itcpo_fuellen
    *eject.
    ------------ FORM lesen der Lagerortadr. ---------------------------*
    FORM ladr_lesen.
      DATA:    BEGIN OF addr_sel.
              INCLUDE STRUCTURE addr1_sel.
      DATA:    END OF addr_sel.
      CLEAR ladr.
      SELECT SINGLE * FROM twlad WHERE werks = mseg-werks
                           AND  lgort = mseg-lgort
                           AND  lfdnr = '001'.
      IF NOT twlad-adrnr IS INITIAL AND sy-subrc IS INITIAL.
        MOVE twlad-adrnr TO addr_sel-addrnumber.
      ENDIF.
      CALL FUNCTION 'ADDR_GET'
        EXPORTING
          address_selection = addr_sel
        IMPORTING
          sadr              = ladr
        EXCEPTIONS
          OTHERS            = 1.
    ENDFORM.                    "ladr_lesen
    **&      Form  REPRINT
          text
    *FORM reprint.
    TABLES : nase.
    DATA  : x TYPE string.
    IF nase-vermo = 2.
       x = 'REPRINT'.
    ENDIF.
    *ENDFORM.                    "REPRINT
    Kindly do the needful.
    Thanks in advance
    Regards
    Swarna

    Hi Swarna,
    CALL FUNCTION 'OPEN_FORM'
    EXPORTING
    device = 'PRINTER'
    language = language
    OPTIONS = print_infos
    <b>form = tnapr-fonam</b>
    dialog = ' '.
    x_open := x.
    I thing its not a good way to pass the Form name to the Parameter.
    Try like,
    data : temp_form like tnapr-fonam.
    <b>form = temp_form</b>
    Thanks.

  • Printing tab in Bar Code using SAPScript

    Hi,
    We are trying to print information from multiple fields in Bar code (using Code128 symbology) on our Utility Invoices, printing of which is done using SAPScript.
    Our objective is that when accepting payment using FPCJ transaction, the Cash Desk Operator will use a Bar Code Scanner and import relevant invoice data into multiple fields.
    However, for that to happen, it is necesary to print tab feeds between data of contiguous fields using Bar code.
    We have tried printing tab feeds in Bar Code using hexadecimal '09'. But it has not helped. Can anybody suggest how one can print tab feeds in Bar Code using SAPScript?
    Thanks in advance,
    Arijit Mitra

    Hi
    See the doc related to BARCODE printing and do accordingly
    To Create a Bar code prefix:
    1) Go to T-code - SPAD -> Full Administration -> Click on Device Type -> Double click the device for which you wish to create the print control -> Click on Print Control tab ->Click on change mode -> Click the plus sign to add a row or prefix say SBP99 (Prefix must start with SBP) -> save you changes , it will ask for request -> create request and save
    2) Now when you go to SE73 if you enter SBP00 for you device it will add the newly created Prefix
    Create a character format C1.Assign a barcode to the character format.Check the check box for the barcode.
    The place where you are using the field value use like this
    <C1> &itab-field& </C1>.
    You will get the field value in the form of barcode.
    Which barcode printer are you using ? Can you download this file and see.
    http://www.servopack.de/Files/HB/ZPLcommands.pdf.
    It will give an idea about barcode commands.
    Check this link:
    http://www.sap-img.com/abap/questions-about-bar-code-printing-in-sap.htm
    Check this link:
    http://help.sap.com/saphelp_nw04/helpdata/en/d9/4a94c851ea11d189570000e829fbbd/content.htm
    Detailed information about SAP Barcodes
    A barcode solution consists of the following:
    - a barcode printer
    - a barcode reader
    - a mobile data collection application/program
    A barcode label is a special symbology to represent human readable information such as a material number or batch number
    in machine readable format.
    There are different symbologies for different applications and different industries. Luckily, you need not worry to much about that as the logistics supply chain has mostly standardized on 3 of 9 and 128 barcode symbologies - which all barcode readers support and which SAP support natively in it's printing protocols.
    You can print barcodes from SAP by modifying an existing output form.
    Behind every output form is a print program that collects all the data and then pass it to the form. The form contains the layout as well as the font, line and paragraph formats. These forms are designed using SAPScript (a very easy but frustratingly simplistic form format language) or SmartForms that is more of a graphical form design tool.
    Barcodes are nothing more than a font definition and is part of the style sheet associated with a particular SAPScript form. The most important aspect is to place a parameter in the line of the form that points to the data element that you want to represent as barcode on the form, i.e. material number. Next you need to set the font for that parameter value to one of the supported barcode symbologies.
    Reward points if useful
    Regards
    Anji

  • Printing Purchase Order from ME9F using custom program and smartform

    I was able to use my custom program which calls a smartform to print purchase orders from transaction ME9F. I did this using transaction NACE.
    However, when I call "Output Message" from ME9F, the output always fails (shown by an 'X' icon after the checkbox). When I try to put back the standard program in NACE, it does not show an 'X' but a check which indicates that the printing was successful.
    Do you know why this happens? What did I miss?
    Here's my call to my smartform from my custom driver program:
        " Change Smartform ZP_MMSF_P01_PURCHASE_ORDER
        " to internal Function module name
        CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
            EXPORTING
                FORMNAME   = 'ZP_MMSF_P01_PURCHASE_ORDER'
            IMPORTING
                FM_NAME    = fmname
        wa_cparam-no_dialog = 'X'.
        wa_output-tddest = 'LOCL'. "or 'LP01'.  "Spool: Output device
        CALL FUNCTION fmname
            EXPORTING
                control_parameters         = wa_cparam
                output_options             = wa_output
                i_data                     = i_data
                wa_lookup                  = wa_data_lookup
                goods_amt                  = goods_amt
                discount_amt               = discount_amt
                vat                        = vat
                total_amt                  = total_amt
                total_amt_inwords          = total_amt_inwords

    Vijaya,
    I have this problem though,
    Whenever I try to provide values for CONTROL_PARAMETERS and OUTPUT_OPTIONS to the sapscript call in your code, the PO printing (even the preview) does not proceed. I do this because I wanted to suppress the printer dialog.
    here is a fragment of the code:
    " code I added
    LS_COMPOSER_PARAM-tddest = 'LOCL'. "or 'LP01'.  "Spool: Output device
    LS_COMPOSER_PARAM-bcs_langu = sy-langu.
    LS_CONTROL_PARAM-preview = 'X'.
    LS_CONTROL_PARAM-no_open = 'X'.
    LS_CONTROL_PARAM-no_close = 'X'.
    LS_CONTROL_PARAM-device = 'PRINTER'.
    LS_CONTROL_PARAM-no_dialog = 'X'.
    DO NAST_ANZAL TIMES.
    *--In case of repetition only one time archiving
    * if sy-index > 1 and nast-tdarmod = 3.
    * nast_tdarmod = nast-tdarmod.
    * nast-tdarmod = 1.
    * ls_composer_param-tdarmod = 1.
    * endif.
    IF SY-INDEX NE 1 AND REPEAT IS INITIAL.
    REPEAT = 'X'.
    ENDIF.
    CALL FUNCTION LF_FM_NAME
    EXPORTING
    ARCHIVE_INDEX = TOA_DARA
    ARCHIVE_PARAMETERS = ARC_PARAMS
    CONTROL_PARAMETERS = LS_CONTROL_PARAM
    MAIL_RECIPIENT = LS_RECIPIENT
    MAIL_SENDER = LS_SENDER
    OUTPUT_OPTIONS = LS_COMPOSER_PARAM
    USER_SETTINGS = SPACE
    IS_NAST = NAST
    IS_REPEAT = REPEAT
    I tried to trace it to the function module generated by smartform. The error propagates this way: From the function module, there is a call to function SSFCOMP_PROCESS_DOCUMENT. Then inside that function, there is a perform operation to tr_ssfcomp_process_doc
    perform tr_ssfcomp_process_doc using startpage docstruc
                                           header.
    Inside that form, it calls the macro tr_active which checks the value of ssfcstat-trlevel (tracelevel) against c_trlevel_document. In the macro, if ssfcstat-trlevel is less than c_trlevel_document, the smartform will fail. c_trlevel_document is 15 and ssfcstat-trlevel is 0, and so the smartform fails.
    (you can see the macro tr_active in include LSTXBCMAC and the form tr_ssfcomp_process_doc is in the include LSTXBCFTR)
    When I do not put values in CONTROL_PARAMETERS and OUTPUT_OPTIONS, everything is ok.
    Do you know why this happens?
    Thanks in advance!
    Edit: I have found out about transaction SFTRACE, but this is disabled.
    Kyle

  • Develop a form and print program using VBAP, VBAK, MRKT.

    I have 2 tables VBAK [fields: VBELN, ERDAT, ERNAM, AUDAT, VBTYP, VKORG] and VBAP [Fields: POSNR, MATNR, CHARG, WAERK] and In output(form) i need the following fields,
    Output table:
    -VBELN
    -ERDAT
    -VKORG
    -POSNR
    -MATNR
    -MAKTX <- this field is from table MAKT. (I need the Material descriptions too for all the materials.)
    Form Layout should have Header, Logo (SAP ENJOY), Main, Footer.
    Problem is that i need footer only after the End of Complete data in Main Window, thats is footer should be placed only in last window. How should i do that ?
    Logic which i thot to make the print program is : First declare an internal table itab1 with VBAP, VBAP using the above fields from two tables and fetch the product based on matnr.
    declare one internal table itab2 and select the records from the table makt by checking the condition itab1 is not initial.
    sample code.
    IF ITAB1 IS NOT INITIAL.
    SELECT FIELD LIST FROM MAKT INTO TABLE ITAB2 WHERE MATNR EQ ITAB1-MATNR.
    ENDIF.
    hope this shuld work. ?????

    Hi
    see the sample script program and do accordingly
    *& Report  ZTEST12121
    *& SAPScripts Example 1
    REPORT  ztest12121.
    *DATABASE TABLES
    TABLES: ekko,ekpo,lfa1.
    *INTERNAL TABLES AND STRUCTURES
    DATA i_ekko LIKE ekko.
    DATA i_ekpo LIKE ekpo OCCURS 0 WITH HEADER LINE.
    DATA i_lfa1 LIKE lfa1.
    *PARAMETERS
    PARAMETERS: p_ebeln LIKE ekko-ebeln.
    *VARIABLES
    DATA MAT TYPE STRING VALUE 'MAT NO'.
    DATA iTe TYPE STRING VALUE 'ITEM NO'.
    DATA QTY TYPE STRING VALUE 'QTY'.
    DATA UOM TYPE STRING VALUE 'UOM'.
    DATA NET TYPE STRING VALUE 'NET PRICE'.
    Data var type integer value 0.
    *DATABASE SELECTS
    *Header data
    SELECT SINGLE * FROM ekko INTO i_ekko WHERE ekko~ebeln = p_ebeln.
    IF sy-subrc = 0.
    *Item Data
      SELECT * FROM ekpo INTO  TABLE i_ekpo WHERE ekpo~ebeln = p_ebeln.
      IF sy-subrc NE 0.
        WRITE 'PURCHASE DOCUMENT ITEM DATA ERROR'.
      ELSE.
    *Vendor Details
        SELECT SINGLE * FROM lfa1 INTO i_lfa1 WHERE lfa1~lifnr = i_ekko-lifnr.
        IF sy-subrc NE 0.
          WRITE 'VENDOR DOCUMENT ITEM DATA ERROR'.
        ENDIF.
      ENDIF.
    ELSE.
      WRITE 'THIS PURCHASE DOCUMENT NUMBER DOESNOT EXISTS'.
    ENDIF.
    CALL FUNCTION 'OPEN_FORM'
    EXPORTING
      APPLICATION                       = 'TX'
      ARCHIVE_INDEX                     =
      ARCHIVE_PARAMS                    =
      DEVICE                            = 'PRINTER'
      DIALOG                            = 'X'
        form                              = 'ZSCRIPT_1'
        language                          = sy-langu
      OPTIONS                           =
      MAIL_SENDER                       =
      MAIL_RECIPIENT                    =
      MAIL_APPL_OBJECT                  =
      RAW_DATA_INTERFACE                = '*'
      SPONUMIV                          =
    IMPORTING
      LANGUAGE                          =
      NEW_ARCHIVE_PARAMS                =
      RESULT                            =
    EXCEPTIONS
      CANCELED                          = 1
      DEVICE                            = 2
      FORM                              = 3
      OPTIONS                           = 4
      UNCLOSED                          = 5
      MAIL_OPTIONS                      = 6
      ARCHIVE_ERROR                     = 7
      INVALID_FAX_NUMBER                = 8
      MORE_PARAMS_NEEDED_IN_BATCH       = 9
      SPOOL_ERROR                       = 10
      CODEPAGE                          = 11
      OTHERS                            = 12
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
       ELEMENT                        = 'OFFICEAD'
       FUNCTION                       = 'SET'
       TYPE                           = 'BODY'
       WINDOW                         = 'OFFICEAD'
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
       ELEMENT                        = 'PODET'
       FUNCTION                       = 'SET'
       TYPE                           = 'BODY'
       WINDOW                         = 'PODET'
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
       ELEMENT                        = 'TOP'
       FUNCTION                       = 'SET'
       TYPE                           = 'TOP'
       WINDOW                         = 'MAIN'
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    LOOP AT I_EKPO.
    var = i_ekpo-netpr * i_ekpo-menge.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
       ELEMENT                        = 'BODY'
       FUNCTION                       = 'SET'
       TYPE                           = 'BODY'
       WINDOW                         = 'MAIN'
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDLOOP.
    CALL FUNCTION 'CLOSE_FORM'
    IMPORTING
      RESULT                         =
      RDI_RESULT                     =
    TABLES
      OTFDATA                        =
    EXCEPTIONS
      UNOPENED                       = 1
      BAD_PAGEFORMAT_FOR_PRINT       = 2
      SEND_ERROR                     = 3
      SPOOL_ERROR                    = 4
      CODEPAGE                       = 5
      OTHERS                         = 6
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Structure of a print program
    OPEN_FORM function
    CLOSE_FORM function
    WRITE_FORM
    START_FORM function
    END_FORM function
    CONTROL_FORM function
    The print program is used to print forms. The program retieves the necesary data from datbase tables, defines the order of in which text elements are printed, chooses a form for printing and selects an output device and print options.
    Function modules in a printprogram:
    • When you print a form you must used the staments OPEN_FORM and CLOSE_FORM. To combine forms into a single spool request use START_FORM and END_FORM.
    • To print textelements in a form use WRITE_FORM. The order in which the textelements are printed, is determined by the order of the WRITE_FORM statements. Note: for printing lines in the body, you can also use the WRITE_FORM_LINES function module.
    • To transfer control command to a form use CONTROL_FORM.
    Structure of a print program
    Read data
    Tables: xxx.
    SELECT *
    FROM xxx.
    Open form printing - Must be called before working with any of the other form function modules.
    Must be ended with function module CLOSE FORM
    call function 'OPEN_FORM'.....
    To begin several indentical forms containing different data within a single spool request, begin each form using START_FORM, and end it using END_FORM
    call funtion 'START_FORM'.....
    Write text elements to a window of the form
    call function 'WRITE_FORM'.....
    Ends spool request started with START_FORM
    call funtion 'END_FORM'.....
    Closes form printing
    call function 'CLOSE_FORM'...
    OPEN_FORM function
    Syntax:
    CALL FUNCTION 'OPEN_FORM'
    EXPORTING
    APPLICATION = 'TX'
    ARCHIVE_INDEX =
    ARCHIVE_PARAMS =
    DEVICE = 'PRINTER'
    DIALOG = 'X'
    FORM = ' '
    LANGUAGE = SY-LANGU
    OPTIONS =
    MAIL_SENDER =
    MAIL_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
    INVALID_FAX_NUMBER = 8
    MORE_PARAMS_NEEDED_IN_BATCH = 9
    SPOOL_ERROR = 10
    OTHERS = 11
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Some important parameters:
    FORM Name of the form
    DEVICE • PRINTER : Print output using spool
    • TELEFAX: Fax output
    • SCREEN: Output to screen
    OPTIONS Used to control attrubutes for printing or faxing (Number of copies, immediate output....
    The input for the parameter is structure ITCPO.
    CLOSE_FORM function
    CALL FUNCTION 'CLOSE_FORM'
    IMPORTING
    RESULT =
    RDI_RESULT =
    TABLES
    OTFDATA =
    EXCEPTIONS
    UNOPENED = 1
    BAD_PAGEFORMAT_FOR_PRINT = 2
    SEND_ERROR = 3
    SPOOL_ERROR = 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.
    Paramerters:
    RESULT Returns status information and print/fax parameters after the form has been printed. RESULT is of structure ITCPP.
    WRITE_FORM function
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = ' '
    FUNCTION = 'SET'
    TYPE = 'BODY'
    WINDOW = 'MAIN'
    IMPORTING
    PENDING_LINES =
    EXCEPTIONS
    ELEMENT = 1
    FUNCTION = 2
    TYPE = 3
    UNOPENED = 4
    UNSTARTED = 5
    WINDOW = 6
    BAD_PAGEFORMAT_FOR_PRINT = 7
    SPOOL_ERROR = 8
    OTHERS = 9
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Some important parameters:
    ELEMENT Specifies which textelement is printed
    WINDOW Specifies which window is printed
    TYPE Specifies the output area of the main window. This can be:
    • TOP - Used for headers
    • BODY
    • BOTTOM - Used for footers
    FUNCTION Specifies whether text is to be appended, replaced or added
    Example of how to use the WRITE_FORM function module together with a script.
    Form layout of the MAIN window
    /E INTRODUCTION
    Dear Customer
    /E ITEM_HEADER
    IH Carrier, Departure
    /E ITEM_LINE
    IL &SBOOK-CARRID&, &SPFLI-DEPTIME&
    /E CLOSING_REMARK
    The print program
    Writing INTRODUCTION
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'INTRODUCTION'
    FUNCTION = 'SET'
    TYPE = 'BODY'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8
    Writing ITEM_HEADER
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'ITEM_HEADER'
    FUNCTION = 'SET'
    TYPE = 'BODY'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8
    Set ITEM_HEADER into TOP area of main window for subsequent pages
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'ITEM_HEADER'
    FUNCTION = 'SET'
    TYPE = 'TOP'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8
    Write ITEM_LINE
    LOOP AT .....
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'ITEM_LINE'
    FUNCTION = 'SET'
    TYPE = 'BODY'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8.
    ENDLOOP.
    Delete ITEM_HEADER from TOP area of main window
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'ITEM_HEADER'
    FUNCTION = 'DELETE'
    TYPE = 'TOP'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8
    Print CLOSING_REMARK
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    ELEMENT = 'CLOSING_REMARK'
    FUNCTION = 'SET'
    TYPE = 'BODY'
    WINDOW = 'MAIN'
    EXCEPTIONS
    OTHERS = 8
    START_FORM function
    CALL FUNCTION 'START_FORM'
    EXPORTING
    ARCHIVE_INDEX =
    FORM = ' '
    LANGUAGE = ' '
    STARTPAGE = ' '
    PROGRAM = ' '
    MAIL_APPL_OBJECT =
    IMPORTING
    LANGUAGE =
    EXCEPTIONS
    FORM = 1
    FORMAT = 2
    UNENDED = 3
    UNOPENED = 4
    UNUSED = 5
    SPOOL_ERROR = 6
    OTHERS = 7
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    END_FORM function
    CALL FUNCTION 'END_FORM'
    IMPORTING
    RESULT =
    EXCEPTIONS
    UNOPENED = 1
    BAD_PAGEFORMAT_FOR_PRINT = 2
    SPOOL_ERROR = 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.
    ENDIF.
    CONTROL_FORM function
    The CONTROL_FORM function module alows you to create SapScript control statements from within an APAB program.
    Syntax:
    CALL FUNCTION 'CONTROL_FORM'
    EXPORTING
    command =
    EXCEPTIONS
    UNOPENED = 1
    UNSTARTED = 2
    OTHERS = 3
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Example:
    Protecting the text element ITEM_LINE
    CALL FUNCTION 'CONTROL_FORM'
    EXPORTING
    COMMAND = 'PROTECT'.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    TEXELEMENT = 'ITEM_LINE'.
    CALL FUNCTION 'CONTROL_FORM'
    EXPORTING
    COMMAND = 'ENDPROTECT'.
    Regards
    Anji

  • How to know which Smart-Form is being used for Purchase Order print output

    Hi Gurus ,
    How to find which Smart-Form and and methods/program being used for Purchase Order print output in SRM  ?
    In ECC we have tcode NACE where we can check all the details.Is there something similar in SRM ?
    Please help.
    Regards,
    Saurav

    There is no similar transaction in SRM for your purpose. Usually if the customers customize the smartforms, they would choose to use their own form by implementing BADI BBP_OUTPUT_CHANGE_SF. Take a look into your system and see if this BADI is implemented. If so, debug it (by pressing "Print Preview" for a PO for example) and find out what form it is using. Or, if the BADI is not implemented, by default, the system uses form BBP_PO.

  • Unable to Print Output Of Request Using FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'

    Dear Experts,
    My Requirement is to have Debug of Concurrent Program using FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'&lt;some text&gt;'):
    i have Following code
    IF lb_reservation_completed THEN
    fnd_file.put_line(fnd_file.output ,'');
    fnd_file.put_line(fnd_file.output,'RESERVATION COMPLETED');
    COMMIT;
    ELSE
    fnd_file.put_line(fnd_file.output ,'');
    fnd_file.put_line(fnd_file.output ,'RESERVATION REVERTED BACK SINCE COMPLETE QUANTITY OF BOM ITEMS ARE NOT AVAILABLE');
    ROLLBACK;
    END IF;
    the text in red does not get printed even if conditions lb_reservation_completed is false
    however the transaction is rolled back, and the requirement of My object is to print this statement for Debugging purpose.
    and text in Blue gets printed everytime .
    i tried by removing Rollback , it did not work.
    any Suggestion are welcome.
    Thanks in advance
    Abdul Rahman
    Edited by: Abdul Rahman Gerab on Nov 24, 2008 2:13 AM

    Dear Sir,
    thanks for your message, this time we coded it explicitly to
    IF lb_reservation_completed = TRUE THEN
    COMMIT;
    ELSIF lb_reservation_completed = FALSE THEN
    ROLLBACK;
    END IF;
    and it gave this error
    **Starts**24-NOV-2008 15:54:50
    ORACLE error 20100 in FDPSTP
    Cause: FDPSTP failed due to ORA-20100: File o0026657.tmp creation for FND_FILE failed.
    You will find more information on the cause of the error in request log.
    ORA-06512: at "APPS.FND_FILE", line 396
    ORA-06512
    one more question, i have this complete IF clause in a loop.
    Does Having Rollback in LOOP play this kind of error.
    lemme try by keeping commit and rollback outside loop
    will update now .
    thanks again for your message, if you have any suggestion please do inform.

  • Disable print output when using bapi BAPI_GOODSMVT_CREATE

    Hello,
    I am using BAPI BAPI_GOODSMVT_CREATE to post material documents in our programs.
    I wish to prevent the print output of the documents created by the BAPI.
    Meaning - when the user post good movement using MIGO, there will be a printout of the movement, but if the movement is created using BAPI_GOODSMVT_CREATE, no output will be printed.
    I have tried sending blank values in fields VER_GR_GI_SLIP & VER_GR_GI_SLIPX in GOODSMVT_HEADER structure, but to no avail.
    Is there a way to disable printing ONLY when using the BAPI?
    Thank you very much.

    Hi,
    We cant restrict the print preview or print out of the material document. Once the condition record has maintianed for the material document, it ll applicable for all the material doc . It would be manual Gr or BAPI GR.
    In your case Print is coming automatically or user is taking the print !!
    Regards,
    Dhanush.

  • How to send the ALV GRID output to spool by using the print button in std t

    How to send the ALV GRID output to spool by using the print button in standard tool bar.
    We have created a button in the va02 transaction.  If user click on the button the new screen will be display on that screen we are populating the alv grid output using the oops concept.  But i am unable to send the output to spool using the print button in the standard tool bar.
    I am able to display the Print parameter dialog box but i am not able to send it to spool.
    Kindly help.
    Thanks In Advance.
    G.V.Ramana

    Hi Shaik,
    There is not properties button in my print screen.
    MODULE user_command_0900 INPUT.
        WHEN 'EXCEL'.
          PERFORM excel_download.                              
        WHEN 'PRI'.
          PERFORM print_output.
    form Print_output.
    CALL FUNCTION 'RSPO_LIST_LAYOUT_FITS'
               EXPORTING
                    columns        = 80
                    device         = 'ANY '
                    lines          = 65
                    maxpenality    = 1999
               TABLES
                    layouts        = lt_layouts1
               EXCEPTIONS
                    unknown_device = 1
                    OTHERS         = 2.
          IF sy-subrc = 0.
            LOOP AT lt_layouts1.
              IF lt_layouts1-penality < 1000        AND
                 lt_layouts1-penality < l_min_penality.
                l_layout       = lt_layouts1-layout.
                l_min_penality = lt_layouts1-penality.
              ENDIF.
            ENDLOOP.
            IF NOT l_layout IS INITIAL.
              CALL FUNCTION 'GET_PRINT_PARAMETERS'
                   EXPORTING
                        mode                   = 'CURRENT'
                        line_size              = 80             "#EC *
                new_list_id            = l_new_list_id
                        no_dialog              = l_no_dialog
                        layout                 = l_layout
                   IMPORTING
                        out_archive_parameters = rs_arc_params
                        out_parameters         = rs_pri_params
                        valid                  = l_valid
                   EXCEPTIONS
                        archive_info_not_found = 1
                        invalid_print_params   = 2
                        invalid_archive_params = 3
                        OTHERS                 = 4.
              IF sy-subrc NE 0.                                 " INS SLIN
              ENDIF.                                            " INS SLIN
              IF rs_pri_params-linsz LT 80 OR
                 rs_pri_params-linsz LT gt_stack-s_lprint-width.
                gt_stack-print_line_break = 'X'.
              ELSE.
                CLEAR gt_stack-print_line_break.
              ENDIF.
              IF l_valid NE 'X'.
                rs_pri_params = ls_pri_params_sav.
                rs_arc_params = ls_arc_params_sav.
              ENDIF.
            ENDIF.
          ENDIF.
    endform.                    " Print_output
        CALL METHOD gv_cost_tot_alv_grand->set_table_for_first_display
                EXPORTING
                   is_layout         = gs_layout_cost_tot_grand
                CHANGING
                   it_fieldcatalog   = gt_fcat_cost_tot_grand[]
                   it_outtab         = gt_cost_tot_grand[].
    Please check my code

  • Printing Barcode on sample lables using sapscripts.

    Hi SCRIPT GURU's,
      The problem i am facing is 'I am able to view the Barcode in printpreview but when i try to print its not appearing on the PrintOut.
    The output device i am using is LOCAL with SWIN as device type.
      Thanks in Advance.
    Regards
    Satish

    hi satish,
    The problem with your printing of BARCODE is that the LOCAL printer which you want to use must have an installed SIMM card which comes along with here is athe printer.
    and also for each barcode there is a different barcode type sequence which has to be installed when this SIMM is inserted. please verify with your vendor or with your service provider whether this Hardware solution is installed or not.
    An Alternative solution as suggested is also to use a file called BARCODE.dll which has to be installed to your windows system32 directory
    Some of the vendors provide free demo versions of this BARCODE.dll file.
    i) www.tec-it.com
    ii)www.e-bizco.com
    But these are all third party softwares which require license for commercial purposes.
    Anyways the longlasting solution to your problem can be to install the appropriate SIMM card, if not vailable as of now, and upgrade the drivers of the printer.
    and also you should note to have the barcode type installed which is a sequence of alphanumeric characters.
    Hope this solves your problem in due course.
    Venugopal.T

  • Display Program output in PDF format using Webdynpro

    Hi all,
    I have a requirement which is as follows:
    I need to create Webdynpro with ABAP application which should internally call a program.
    There will be selection screen for the program but that should not be shown and program should be executed for default values if none of the selection criteria are entered.
    Output of the report should be shown in PDF format in a popup.
    Please suggest me how to go about this.
    Thanks in advance.
    Regards
    Vasu G

    Hello VAsu,
    I dont think we can call a program or transaction from webdynpro abap. Instead you can develop a webdynpro screen and internally you do all the process whatever you want to do in a RFC and call it.
    Refer this for more clarification:
    Re: Web Dynpro ABAP call transaction in the foreground
    Regards
    Nizamudeen SM

  • How can I run external console program, printing output to JTextPane?

    How can I run external console program, printing output to JTextPane?
    I have a console app. written in C++ and I would like to run in it from java swing app. and I would like to see its output in a JTextPane.

    I have used this article
    http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
    to successfully pipe output from jboss batch files to a JTextPane.

Maybe you are looking for

  • How to un-check everything in a Multi-selection list box in SP2013?

    When a radio button is selected/un-selected, i would like to clear all the checkboxes that were checked in a MSLB.  I created a rule for the condition but in the action, how to create this uncheck action? Thank you

  • Route not determing automatically at sales order level for some sales order

    Dear All , Route not determing automatically at sales order level  for some sales orders.We are using automatic route determination without wt group,eventhough we have configured the required settings I have checked all the forums but didn't find any

  • Color change in Sales Order

    Hello Expert, One of the user has a strange problem. His sales order document shows different color on screen than other options like AR Invoice or Quotation, it comes in pink color. I am trying to find way to bring back to default but unable to find

  • Process Composer - Mapping from a unbounded node

    Hello I´m following the documentation Workflow Pattern Coverage in SAP NetWeaver BPM 7.11 (http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/8026f177-f32f-2c10-b7b0-9cc31d92984d) to create a Process Composer with a "While" Loop. According to pag

  • Recording audio from another source

    I have several minidiscs with files that I would like to record into Garage Band (in real time). I thought I could accomplish this by simply connecting the MD to my MacBook using an analog mini plug. I've tried to do this, and have come up empty. And