Problem in Sap Script while printing

HI,
This report calling when I print billing document .this report getting data and call some sap script form but it prints 20 pages in place of only one page. Please
Guide me to finding the exact problem.the code is below..
REPORT zsd_excinv LINE-SIZE 110 LINE-COUNT 100 MESSAGE-ID vn.
TABLES: vbco3,           "Keyfelder Vertriebsbeleg: Dokumentendruck
        tvko,            "Verkaufsorganisation
        sadr,            "Adressen
        komk,            "Communicationarea for conditions
        komp,            "Communicationarea for conditions
        komvd,           "Communicationarea for conditions
        vbdkr,           "Druck Rechnung: Kopfdaten
        vbdpr,           "Druck Rechnung: Positionsdaten
        conf_out,        "Configuration data
        vbpla,           "Druck Packliste   : allgemeine Daten
        vbplk,           "Druck Packliste   : Versandelementkopfdaten
        vbplp,           "Druck Packliste   : Versandelementinhaltsdaten
        vbpls.           "Druck Packliste   : Summendaten Verpackung
TABLES : j_1iexchdr, j_1iexcdtl, vbrk,eikp,j_1imocust,likp,
         j_1iregset, itcpp,kna1, t001w.
*PARAMETER : p_grp LIKE j_1iexchdr-exgrp.
*SELECT-OPTIONS : so_num FOR j_1iexchdr-exnum.
*PARAMETERS : p_num LIKE j_1iexchdr-exnum.
DATA : wa_j_1iexchdr TYPE j_1iexchdr,
       it_j_1iexchdr TYPE TABLE OF j_1iexchdr.
DATA : wa_j_1iexcdtl TYPE j_1iexcdtl,
       it_j_1iexcdtl TYPE TABLE OF j_1iexcdtl.
DATA : wa_vbrk TYPE vbrk,
       wa_vbrp TYPE vbrp,
       wa_lips TYPE lips,
       wa_j_1iregset TYPE j_1iregset,
       wa_j_1iwrkcus TYPE j_1iwrkcus,
       wa_j_cust TYPE j_1imocust,
       it_vbrp TYPE TABLE OF vbrp.
DATA : BEGIN OF wa_header,
         exnum TYPE j_1iexchdr-exnum ,
         exdat TYPE j_1iexchdr-exdat ,
         exccd TYPE j_1iregset-j_1iexccd,
         excrg TYPE j_1iregset-j_1iexcrg,
         excd1 TYPE j_1iregset-j_1iexcdi,
         bstnk_vf TYPE vbrk-bstnk_vf,
         zterm TYPE vbrk-zterm,
         iever TYPE eikp-iever,
         btgew TYPE likp-btgew,
         chapid TYPE j_1iexcdtl-chapid,
         traid TYPE likp-traid,
         rdoc TYPE j_1iexchdr-rdoc,
         maktx TYPE j_1iexcdtl-maktx,
         meins  TYPE likp-gewei,
      END OF wa_header.
*DATA : BEGIN OF wa_header,
        exnum TYPE j_1iexchdr-exnum ,
        exdat TYPE j_1iexchdr-exdat ,
        exccd TYPE j_1iregset-j_1iexccd,
        excrg TYPE j_1iregset-j_1iexcrg,
        excd1 TYPE j_1iregset-j_1iexcdi,
        bstnk_vf TYPE vbrk-bstnk_vf,
        zterm TYPE vbrk-zterm,
        iever TYPE eikp-iever,
        btgew TYPE likp-btgew,
        ntgew TYPE likp-ntgew,
        chapid TYPE j_1iexcdtl-chapid,
        traid TYPE likp-traid,
        rdoc TYPE j_1iexchdr-rdoc,
        maktx TYPE j_1iexcdtl-maktx,
        meins  TYPE likp-gewei,
     END OF wa_header.
*DATA : BEGIN OF wa_detail,
       zeile TYPE j_1iexcdtl-zeile,
       matnr TYPE j_1iexcdtl-matnr,
       maktx TYPE j_1iexcdtl-maktx,
       menge TYPE j_1iexcdtl-menge,
       rate TYPE konv-kbetr,
       amount TYPE konv-kwert,
       fob TYPE konv-kwert,
        meins  TYPE j_1iexcdtl-meins,
*END OF wa_detail.
*DATA : BEGIN OF wa_duties,
      zpr0 TYPE konv-kbetr,
      jadc TYPE konv-kbetr,
      st1 TYPE konv-kwert,
      jexp TYPE konv-kbetr,
      jecs TYPE konv-kbetr,
      st2 TYPE konv-kwert,
      jetc TYPE konv-kbetr,
      st3 TYPE konv-kwert,
      jsad TYPE konv-kbetr,
      st4 TYPE konv-kwert,
      st5 TYPE konv-kwert,
      vat TYPE konv-kbetr,
      st6 TYPE konv-kwert,
      zint TYPE konv-kbetr,
      jead TYPE konv-kbetr,
      zect TYPE konv-kbetr,
      zsad TYPE konv-kbetr,
      vat_per TYPE konv-kbetr,
      vat_val TYPE konv-kwert,
      total TYPE konv-kwert,
      remtime TYPE j_1iexchdr-remtime,
      exdat TYPE j_1iexchdr-exdat,
*END OF wa_duties.
*DATA : wa_t618t TYPE t618t.
*DATA : in_words  TYPE spell,
      word TYPE spell-word,
      decword TYPE spell-decword,
      gv_plant_adrnr TYPE t001w-adrnr,
      lv_iever TYPE eikp-iever,
      lv_btgew TYPE likp-btgew,
      lv_ntgew TYPE likp-ntgew,
      lv_traid TYPE likp-traid,
      lv_regid TYPE j_1iregset-j_1iregid,
      gv_cust_adrnr TYPE kna1-adrnr,
      gv_ecsduty TYPE konv-kbetr,
      gv_tot_cen_amt TYPE konv-kwert,
      gv_zterm TYPE tvzbt-vtext,
      gv_tot_amt TYPE konv-kwert,
      lv_ins TYPE konv-kbetr,
      lv_fre TYPE konv-kbetr.
*CONSTANTS : c_ecs TYPE j_1iexcdtl-ecsrate VALUE '0.368'.
*SELECT-OPTIONS : so_num FOR j_1iexchdr-exnum.
DATA : BEGIN OF wa_detail,
        zeile TYPE j_1iexcdtl-zeile,
        matnr TYPE j_1iexcdtl-matnr,
        maktx TYPE j_1iexcdtl-maktx,
        menge TYPE j_1iexcdtl-menge,
        rate TYPE konv-kbetr,
        amount TYPE konv-kwert,
        fob TYPE konv-kwert,
        meins  TYPE j_1iexcdtl-meins,
END OF wa_detail.
DATA : BEGIN OF wa_duties,
       zpr0 TYPE konv-kwert,
       jadc TYPE konv-kwert,
       st1 TYPE konv-kwert,
       jexp TYPE konv-kwert,
       jecs TYPE konv-kwert,
       st2 TYPE konv-kwert,
       jetc TYPE konv-kwert,
       st3 TYPE konv-kwert,
       jsad TYPE konv-kwert,
       st4 TYPE konv-kwert,
       st5 TYPE konv-kwert,
       vat TYPE konv-kwert,
       st6 TYPE konv-kwert,
       zint TYPE konv-kwert,
       jead TYPE konv-kwert,
       jeap TYPE konv-kwert,
       jeap_per TYPE konv-kbetr,
       zect TYPE konv-kwert,
       zect_per TYPE konv-kbetr,
       zecs TYPE konv-kwert,
       zsad TYPE konv-kwert,
       vat_per TYPE konv-kwert,
       vat_val TYPE konv-kwert,
       zlst_per TYPE konv-kwert,
       zlst_val TYPE konv-kwert,
       zcst_per TYPE konv-kwert,
       zcst_val TYPE konv-kwert,
       zeap TYPE konv-kwert,
       zeap_per TYPE konv-kbetr,
       total TYPE konv-kwert,
       remtime TYPE j_1iexchdr-remtime,
       exdat TYPE j_1iexchdr-exdat,
END OF wa_duties.
DATA : wa_t618t TYPE t618t.
DATA : temp    TYPE konv-kwert VALUE 0,
       cen_amt TYPE konv-kbetr VALUE 0.
DATA : in_words  TYPE spell,
       word TYPE spell-word,
       decword TYPE spell-decword,
       gv_plant_adrnr TYPE t001w-adrnr,
       lv_iever TYPE eikp-iever,
       lv_btgew TYPE likp-btgew,
       lv_traid TYPE likp-traid,
       lv_regid TYPE j_1iregset-j_1iregid,
       gv_cust_adrnr TYPE kna1-adrnr,
       gv_ecsduty TYPE konv-kbetr,
       gv_tot_cen_amt TYPE konv-kwert,
       gv_zterm TYPE tvzbt-vtext,
       gv_tot_amt TYPE konv-kwert,
       gv_amount TYPE konv-kwert,
       lv_ins TYPE konv-kbetr,
       lv_fre TYPE konv-kbetr.
CONSTANTS : c_ecs TYPE j_1iexcdtl-ecsrate VALUE '0.368',
            rdocyr TYPE j_1iexchdr-docyr VALUE 2006.
DATA : wa_t685t TYPE t685t.
DATA : gv_zint TYPE t685t-vtext,
       gv_vat TYPE t685t-vtext,
       gv_zect TYPE t685t-vtext,
       gv_jetc TYPE t685t-vtext,
       gv_jeap TYPE t685t-vtext,
       gv_jecs TYPE t685t-vtext,
       gv_zlst TYPE t685t-vtext,
       gv_zcst TYPE t685t-vtext,
       gv_zeap TYPE t685t-vtext,
       gv_jadc TYPE t685t-vtext.
INCLUDE rvadtabl.
DATA: BEGIN OF lvbplk OCCURS 0.
        INCLUDE STRUCTURE vbplk.   "Packlistenkopf
DATA: END OF lvbplk.
DATA: BEGIN OF lvbplp OCCURS 0.
        INCLUDE STRUCTURE vbplp.   "Packlistenposition
DATA: END OF lvbplp.
DATA: BEGIN OF lvbpls OCCURS 0.
        INCLUDE STRUCTURE vbpls.   "Packlistenstruktur
DATA: END OF lvbpls.
DATA: BEGIN OF tvbdpr OCCURS 0.        "Rechnungspositionen
        INCLUDE STRUCTURE vbdpr.
DATA: END OF tvbdpr.
DATA: BEGIN OF tvbplp OCCURS 10.       "Packlistenposition
        INCLUDE STRUCTURE vbplp.
DATA: END OF tvbplp.
DATA: BEGIN OF tkomv OCCURS 50.
        INCLUDE STRUCTURE komv.        "Kommunikation
DATA: END OF tkomv.
DATA: BEGIN OF tkomvd OCCURS 50.
        INCLUDE STRUCTURE komvd.       "Kommunikation
DATA: END OF tkomvd.
DATA: BEGIN OF *tkomvd OCCURS 50.
        INCLUDE STRUCTURE komvd.
DATA: END OF *tkomvd.
DATA: BEGIN OF hkomvd OCCURS 50.
        INCLUDE STRUCTURE komvd.
DATA: END OF hkomvd.
DATA: BEGIN OF tkomcon OCCURS 50.
        INCLUDE STRUCTURE conf_out.
DATA: END   OF tkomcon.
DATA: retcode   LIKE sy-subrc.         "Returncode
DATA: repeat(1) TYPE c.
DATA: xscreen(1) TYPE c.               "Output on printer or screen
DATA: pr_kappl(01)   TYPE c VALUE 'V'. "Application für Preisfindung
DATA: print_mwskz.                     "Mehrwertsteuer-Kz drucken
data for access to central address maintenance
INCLUDE sdzavdat.
      FORM ENTRY                                                    *
      Einstieg für Nachrichtensteuerung                             *
-->  RETURN_CODE                                                   *
-->  US_SCREEN                                                     *
FORM entry USING return_code us_screen.
  CLEAR retcode.
  xscreen = us_screen.
Formular öffnen, aufbereiten und schließen
  PERFORM formular_invoice USING us_screen.
  CASE retcode.
    WHEN 0.
      return_code = 0.
    WHEN 3.
      return_code = 3.
    WHEN OTHERS.
      return_code = 1.
  ENDCASE.
ENDFORM.                    "ENTRY
      FORM FORMULAR_INVOICE                                         *
      Formular abarbeiten                                           *
FORM formular_invoice USING proc_screen.
Werte aufbauen
  PERFORM get_data.
Beleg unvollständig
  IF vbdkr-uvall NE space OR
     vbdkr-uvals NE space OR
     vbdkr-uvprs NE space.
    IF proc_screen = space.
      retcode = 3.
      IF vbdkr-uvall NE space OR vbdkr-uvals NE space.
        syst-msgno = '201'.
        syst-msgid = 'VN'.
        syst-msgty = 'I'.
        PERFORM protocol_update.
      ENDIF.
      IF vbdkr-uvprs NE space.
        syst-msgno = '200'.
        syst-msgid = 'VN'.
        syst-msgty = 'I'.
        PERFORM protocol_update.
      ENDIF.
    ELSE.
      IF vbdkr-uvall NE space OR vbdkr-uvals NE space.
        MESSAGE i201.
      ENDIF.
      IF vbdkr-uvprs NE space.
        MESSAGE i200.
      ENDIF.
    ENDIF.
  ENDIF.
  CHECK retcode = 0.
SAP-SCRIPT STEUERUNG festlegen
  PERFORM form_open USING proc_screen vbdkr-land1.
  CHECK retcode = 0.
Formular aufbereiten
  PERFORM sd_invoice_suppl.
  CHECK retcode = 0.
Formular schließen
  PERFORM form_close.
  CHECK retcode = 0.
ENDFORM.                    "FORMULAR_INVOICE
      FORM GET_DATA                                                 *
      Daten besorgen                                                *
FORM get_data.
PERFORM vbdkr_data.    "Rechnungskopf und -liste
PERFORM vbpla_data.    "Packliste
ENDFORM.                    "GET_DATA
      FORM FORM_OPEN                                                *
      Formular öffnen                                               *
-->  US_SCREEN  Output on screen                                   *
                 ' ' = printer                                      *
                 'X' = screen                                       *
-->  US_COUNTRY County for telecommunication and SET COUNTRY       *
FORM form_open USING us_screen us_country.
  DATA: xdevice(8) TYPE c.
  SET LANGUAGE nast-spras.
  CLEAR itcpo.
  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.
  IF us_screen NE space.
    itcpo-tdpreview = 'X'.
    itcpo-tdnoprint = 'X'.
  ENDIF.
  IF sy-tcode EQ 'J1IP'.
    itcpo-tdpreview = 'X'.
  ENDIF.
  CASE nast-nacha.
    WHEN '1'.
      xdevice = 'PRINTER'.
    WHEN '2'.
      xdevice = 'TELEFAX'.
      itcpo-tdtelenum = nast-telfx.
      IF nast-tland IS INITIAL.
        itcpo-tdteleland = us_country.
      ELSE.
        itcpo-tdteleland = nast-tland.
      ENDIF.
    WHEN '3'.
      xdevice = 'TELETEX'.
      itcpo-tdtelenum = nast-teltx.
      IF nast-tland IS INITIAL.
        itcpo-tdteleland = us_country.
      ELSE.
        itcpo-tdteleland = nast-tland.
      ENDIF.
    WHEN '4'.
      xdevice = 'TELEX'.
      itcpo-tdtelenum = nast-telx1.
      IF nast-tland IS INITIAL.
        itcpo-tdteleland = us_country.
      ELSE.
        itcpo-tdteleland = nast-tland.
      ENDIF.
    WHEN OTHERS.
      xdevice = 'PRINTER'.
  ENDCASE.
  CALL FUNCTION 'OPEN_FORM'
    EXPORTING
      form           = tnapr-fonam
      language       = nast-spras
      OPTIONS        = itcpo
      archive_index  = toa_dara
      archive_params = arc_params
      device         = xdevice
      dialog         = ' '
    EXCEPTIONS
      OTHERS         = 1.
  IF sy-subrc NE 0.
    retcode = sy-subrc.
    PERFORM protocol_update.
  ENDIF.
  SET COUNTRY us_country.
ENDFORM.                    "FORM_OPEN
      FORM FORM_CLOSE                                               *
      Formular schließen                                            *
FORM form_close.
  CALL FUNCTION 'CLOSE_FORM'           "...Ende Formulardruck
       EXCEPTIONS OTHERS = 1.
  IF sy-subrc NE 0.
    retcode = 1.
    PERFORM protocol_update.
  ENDIF.
  SET COUNTRY space.
  SET LANGUAGE space.
ENDFORM.                    "FORM_CLOSE
      FORM SD_INVOICE_SUPPL                                         *
      Rechnung aufbereiten                                          *
FORM sd_invoice_suppl.
  CLEAR : wa_j_1iexchdr, wa_j_1iexcdtl, wa_lips,  wa_duties,
          gv_tot_amt.
get data from excise header
  SELECT * FROM j_1iexchdr INTO TABLE it_j_1iexchdr
  WHERE exgrp = '31'
  AND rdoc = nast-objky
  AND trntyp = 'DLFC'
  AND lifnr = space
  AND docyr = rdocyr.
AND exdat IN so_dat.
  SORT it_j_1iexchdr BY exdat exnum.
  READ TABLE it_j_1iexchdr INTO wa_j_1iexchdr INDEX 1.
  SELECT * FROM j_1iexcdtl INTO TABLE it_j_1iexcdtl
  FOR ALL ENTRIES IN it_j_1iexchdr
  WHERE exnum = it_j_1iexchdr-exnum
  AND trntyp = 'DLFC'
  AND docno = it_j_1iexchdr-docno.
  SORT it_j_1iexcdtl BY exdat exnum.
LOOP AT it_j_1iexchdr INTO wa_j_1iexchdr.
*open form
PERFORM open_form USING  'ZSD_EXCINV' 1
                          'printer'  'X'.
  MOVE : wa_j_1iexchdr-exnum TO wa_header-exnum,
        wa_j_1iexchdr-exdat TO wa_header-exdat,
        wa_j_1iexchdr-rdoc TO wa_header-rdoc.
get plant details
  SELECT SINGLE * FROM j_1iwrkcus INTO wa_j_1iwrkcus
  WHERE j_1iwerks = wa_j_1iexchdr-werks.
  SELECT SINGLE * FROM j_1iregset INTO wa_j_1iregset
  WHERE j_1iregid = wa_j_1iwrkcus-j_1iregid.
  SELECT adrnr INTO gv_plant_adrnr FROM t001w
  WHERE werks = wa_j_1iexchdr-werks.
  ENDSELECT.
  MOVE : wa_j_1iregset-j_1iexccd TO wa_header-exccd,
         wa_j_1iregset-j_1iexcrg TO wa_header-excrg,
         wa_j_1iregset-j_1iexcdi TO wa_header-excd1.
get order no. from vbrk
  SELECT * INTO wa_vbrk FROM vbrk
  WHERE vbeln = wa_j_1iexchdr-rdoc.
  ENDSELECT .
  MOVE : wa_vbrk-bstnk_vf TO wa_header-bstnk_vf,
   wa_vbrk-zterm TO wa_header-zterm.
  SELECT vtext FROM tvzbt INTO gv_zterm
   WHERE zterm = wa_vbrk-zterm
   AND   spras = 'EN'.
  ENDSELECT.
get nature of removal
  SELECT iever INTO lv_iever FROM eikp
  WHERE refnr = wa_vbrk-vbeln.
  ENDSELECT.
  SELECT SINGLE * FROM t618t INTO wa_t618t
  WHERE expvz = lv_iever
  AND   spras = 'E'.
   MOVE : lv_iever TO wa_header-iever.
*get consignment weight.
  SELECT SINGLE * FROM vbrp INTO wa_vbrp
  WHERE vbeln = wa_vbrk-vbeln.
  READ TABLE it_j_1iexcdtl INDEX 1 INTO wa_j_1iexcdtl.
  SELECT btgew traid gewei INTO (lv_btgew, lv_traid, wa_header-meins) FROM likp
  WHERE vbeln = wa_j_1iexcdtl-rdoc1.
  ENDSELECT.
  MOVE : lv_btgew TO wa_header-btgew,
         lv_traid TO wa_header-traid.
          lv_weight to wa_header-meins.
*get chapter id
  READ TABLE it_j_1iexcdtl INTO wa_j_1iexcdtl WITH KEY exnum = wa_j_1iexchdr-exnum .
  IF sy-subrc = 0.
    MOVE : wa_j_1iexcdtl-chapid TO wa_header-chapid,
           wa_j_1iexcdtl-maktx TO wa_header-maktx.
  ENDIF.
*get customer details.
  SELECT adrnr FROM kna1 INTO gv_cust_adrnr
  WHERE kunnr = wa_j_1iexchdr-kunag.
  ENDSELECT.
  SELECT SINGLE * FROM j_1imocust INTO wa_j_cust
  WHERE kunnr = wa_j_1iexchdr-kunag.
*write invoice header details
  PERFORM write_form  USING '' 'APPEND' 'BODY' 'LOCCODE' .
*get data from excise details.
  LOOP AT it_j_1iexcdtl INTO wa_j_1iexcdtl.
    MOVE : wa_j_1iexcdtl-zeile TO wa_detail-zeile,
           wa_j_1iexcdtl-matnr TO wa_detail-matnr,
           wa_j_1iexcdtl-maktx TO wa_detail-maktx,
           wa_j_1iexcdtl-menge TO wa_detail-menge,
           wa_j_1iexcdtl-meins TO wa_detail-meins.
    SELECT  SINGLE * FROM vbrp INTO  wa_vbrp
        WHERE vbeln = wa_vbrk-vbeln
        AND   matnr = wa_j_1iexcdtl-matnr.
    SELECT kbetr kwert  FROM konv
    INTO (wa_detail-rate, wa_detail-amount)
    WHERE knumv = wa_vbrk-knumv
    AND   kposn = wa_vbrp-posnr
    AND  kschl  = 'ZPR0'.
    ENDSELECT.
    SELECT kwert  FROM konv
    INTO lv_ins
    WHERE knumv = wa_vbrk-knumv
    AND   kposn = wa_vbrp-posnr
    AND  kschl  = 'ZINS'.
    ENDSELECT.
    SELECT kwert  FROM konv
    INTO lv_fre
    WHERE knumv = wa_vbrk-knumv
    AND   kposn = wa_vbrp-posnr
    AND  kschl  = 'ZFRE'.
    ENDSELECT.
     wa_detail-fob = wa_detail-amount + lv_ins + lv_fre.
    gv_tot_amt = gv_tot_amt + wa_detail-amount.
   gv_amount  =   gv_amount + wa_detail-amount.
write item details
    PERFORM write_form  USING 'LINE_ITEMS' 'SET' 'BODY' 'MAIN' .
  ENDLOOP.
**get insurance .
SELECT kwert INTO lv_ins FROM konv
WHERE knumv = wa_vbrk-knumv
AND  kschl = 'ZINS'.
ENDSELECT.
**get freight .
SELECT kwert INTO lv_fre FROM konv
WHERE knumv = wa_vbrk-knumv
AND  kschl = 'ZFRE'.
ENDSELECT.
**get net value .
   MOVE wa_vbrk-netwr TO wa_costs-grandtot.
**calculate netvalue(fobvalue)
   wa_costs-fobval = wa_costs-grandtot + wa_costs-insurance + wa_costs-freight.
gv_tot_amt = gv_tot_amt + lv_ins + lv_fre.
*get values for different condition types.
SELECT kbetr INTO wa_duties-zpr0  FROM konv
WHERE knumv = wa_vbrk-knumv
AND   kposn = wa_vbrp-posnr
AND  kschl  = 'ZPR0'.
ENDSELECT.
  SELECT kwert  INTO wa_duties-jadc FROM konv
  WHERE knumv = wa_vbrk-knumv
   AND   kposn = wa_vbrp-posnr
  AND  kschl  = 'JADC'.
    temp = temp + wa_duties-jadc.
    CLEAR : wa_duties-jadc.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jadc.
  CLEAR : temp.
   wa_duties-st1 = wa_duties-zpr0 + wa_duties-jadc.
  SELECT kwert  INTO wa_duties-jexp FROM konv
   WHERE knumv = wa_vbrk-knumv
    AND   kposn = wa_vbrp-posnr
   AND  kschl  = 'JEXP'.
    temp = temp + wa_duties-jexp.
    CLEAR : wa_duties-jexp.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jexp.
  CLEAR : temp.
  SELECT kwert  INTO wa_duties-jecs FROM konv
    WHERE knumv = wa_vbrk-knumv
   AND   kposn = wa_vbrp-posnr
    AND  kschl  = 'JECS'.
    temp = temp + wa_duties-jecs.
    CLEAR : wa_duties-jecs.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jecs.
  CLEAR : temp.
  wa_duties-st3 =  gv_tot_amt + wa_j_1iexchdr-exbed + wa_j_1iexchdr-ecs.
  SELECT kwert  INTO wa_duties-jetc FROM konv
        WHERE knumv = wa_vbrk-knumv
         AND   kposn = wa_vbrp-posnr
        AND  kschl  = 'JETC'.
    temp = temp + wa_duties-jetc.
    CLEAR : wa_duties-jetc.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jetc.
  CLEAR : temp.
   wa_duties-st3 =  wa_duties-zpr0 + wa_duties-st2 + wa_duties-jetc.
  SELECT kwert  INTO wa_duties-jsad FROM konv
  WHERE knumv = wa_vbrk-knumv
   AND   kposn = wa_vbrp-posnr
  AND  kschl  = 'JSAD'.
    temp = temp + wa_duties-jsad.
    CLEAR : wa_duties-jsad.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jsad.
  CLEAR : temp.
  SELECT kbetr kwert  INTO (wa_duties-jeap_per, wa_duties-jeap) FROM konv
  WHERE knumv = wa_vbrk-knumv
   AND   kposn = wa_vbrp-posnr
  AND  kschl  = 'JEAP'.
    temp = temp + wa_duties-jeap.
    CLEAR : wa_duties-jeap.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jeap.
  CLEAR : temp.
  wa_duties-jeap_per = wa_duties-jeap_per / 10.
  SELECT kbetr kwert INTO (wa_duties-zeap_per, wa_duties-zeap) FROM konv
  WHERE knumv = wa_vbrk-knumv
   AND   kposn = wa_vbrp-posnr
  AND  kschl  = 'ZEAP'.
    temp = temp + wa_duties-zeap.
    CLEAR : wa_duties-zeap.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zeap.
  CLEAR : temp.
  wa_duties-zeap_per = wa_duties-zeap_per / 10.
         (st2jetcjsad)
   wa_duties-st4 =   wa_duties-st2 + wa_duties-jetc + wa_duties-jsad.
         (zpr0+st4)
   wa_duties-st5 =   wa_duties-zpr0 + wa_duties-st4 .
   SELECT kbetr  INTO wa_duties-vat FROM konv
         WHERE knumv = wa_vbrk-knumv
         AND   kposn = wa_vbrp-posnr
         AND  kschl  = 'VAT'.
   ENDSELECT.
  SELECT kbetr kwert INTO (wa_duties-vat_per, wa_duties-vat_val) FROM konv
        WHERE knumv = wa_vbrk-knumv
       AND   kposn = wa_vbrp-posnr
        AND  kschl  = 'ZVAT'.
    temp = temp + wa_duties-vat_val.
    CLEAR : wa_duties-vat_val.
  ENDSELECT.
  MOVE  : temp TO wa_duties-vat_val.
  CLEAR : temp.
  wa_duties-vat_per = wa_duties-vat_per / 10.
  SELECT kbetr kwert INTO (wa_duties-zcst_per, wa_duties-zcst_val) FROM konv
       WHERE knumv = wa_vbrk-knumv
       AND   kposn = wa_vbrp-posnr
       AND  kschl  = 'ZCST'.
    temp = temp + wa_duties-zcst_val.
    CLEAR : wa_duties-zcst_val.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zcst_val.
  CLEAR : temp.
  wa_duties-zcst_per = wa_duties-zcst_per / 10.
  SELECT kbetr kwert INTO (wa_duties-zlst_per, wa_duties-zlst_val) FROM konv
        WHERE knumv = wa_vbrk-knumv
       AND   kposn = wa_vbrp-posnr
        AND  kschl  = 'ZLST'.
    temp = temp + wa_duties-zlst_val.
    CLEAR : wa_duties-zlst_val.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zlst_val.
  CLEAR : temp.
  wa_duties-zlst_per = wa_duties-zlst_per / 10.
         (st5+vat)
   wa_duties-st6 =   wa_duties-vat_val + wa_duties-st5 .
  SELECT kwert  INTO wa_duties-zint FROM konv
        WHERE knumv = wa_vbrk-knumv
         AND   kposn = wa_vbrp-posnr
        AND  kschl  = 'ZINT'.
    temp = temp + wa_duties-zint.
    CLEAR : wa_duties-zint.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zint.
  CLEAR : temp.
  SELECT kwert  INTO wa_duties-jead FROM konv
           WHERE knumv = wa_vbrk-knumv
           AND   kposn = wa_vbrp-posnr
           AND  kschl  = 'JEAD'.
    temp = temp + wa_duties-jead.
    CLEAR : wa_duties-jead.
  ENDSELECT.
  MOVE  : temp TO wa_duties-jead.
  CLEAR : temp.
  SELECT kbetr kwert  INTO (wa_duties-zect_per, wa_duties-zect) FROM konv
        WHERE knumv = wa_vbrk-knumv
         AND   kposn = wa_vbrp-posnr
        AND  kschl  = 'ZECT'.
    temp = temp + wa_duties-zect.
    CLEAR : wa_duties-zect.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zect.
  CLEAR : temp.
  wa_duties-zect_per = wa_duties-zect_per / 10.
  SELECT kwert  INTO wa_duties-zsad FROM konv
    WHERE knumv = wa_vbrk-knumv
     AND   kposn = wa_vbrp-posnr
    AND  kschl  = 'ZSAD'.
    temp = temp + wa_duties-zsad.
    CLEAR : wa_duties-zsad.
  ENDSELECT.
  MOVE  : temp TO wa_duties-zsad.
  CLEAR : temp.
  IF wa_vbrk-kalsm = 'ZINSCR'.
    wa_duties-total = gv_tot_amt
                   + wa_duties-jexp
                   + wa_duties-jecs
                   + wa_duties-zlst_val
                   + wa_duties-zint
                 + wa_duties-jead
                   + wa_duties-vat_val
                   + wa_duties-zcst_val.
                 + wa_duties-jecs
                 + wa_duties-zeap
                 + wa_duties-zecs
                 + wa_duties-zsad
                 + wa_duties-jadc.
  ELSEIF wa_vbrk-kalsm = 'ZINFAC'.
    wa_duties-total = gv_tot_amt
                   + wa_duties-jexp
                   + wa_duties-jecs
                   + wa_duties-zlst_val
                   + wa_duties-zint
                   + wa_duties-jeap
                   + wa_duties-vat_val
                   + wa_duties-zcst_val
                 + wa_duties-jecs
                   + wa_duties-zeap
                   + wa_duties-zect.
                 + wa_duties-zsad
                 + wa_duties-jadc.
  ENDIF.
Get Condition descriptions.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZVAT' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_vat.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZVAT' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_vat.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZLST' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_zlst.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZCST' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_zcst.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZECT' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_zect.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'ZEAP' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_zeap.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'JETC' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_jetc.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'JEAP' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_jeap.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'JECS' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_jecs.
  CLEAR wa_t685t.
  SELECT SINGLE * FROM t685t INTO wa_t685t
  WHERE kschl = 'JADC' AND spras = 'EN'.
  MOVE wa_t685t-vtext TO gv_jadc.
  CLEAR wa_t685t.
   gv_ecsduty = wa_j_1iexchdr-exbed * ( c_ecs / 100 ).
  cen_amt = wa_duties-jexp + wa_duties-jeap.
  gv_tot_cen_amt = cen_amt + wa_duties-jecs.
  MOVE wa_j_1iexchdr-remtime TO wa_duties-remtime.
  MOVE wa_j_1iexchdr-exdat TO wa_duties-exdat.
Convert amount to words.
  CALL FUNCTION 'SPELL_AMOUNT'
    EXPORTING
      amount    = wa_duties-total
      currency  = 'INR '
      filler    = space
      language  = sy-langu
    IMPORTING
      in_words  = in_words
    EXCEPTIONS
      not_found = 1
      too_large = 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.
  MOVE : in_words-word TO word,
       in_words-decword TO decword.
write  duty details
  IF wa_vbrk-kalsm = 'ZINSCR'.
    PERFORM write_form USING 'ZINSCR' 'APPEND' 'BODY' 'GRANDTOT' .
  ELSEIF  wa_vbrk-kalsm = 'ZINFAC'.
    PERFORM write_form USING 'ZINFAC' 'APPEND' 'BODY' 'GRANDTOT' .
  ENDIF.
*close form
   PERFORM close_form.
ENDLOOP.
ENDFORM.                    "SD_INVOICE_SUPPL
      FORM FORM_TITLE_PRINT                                         *
      Formulartitel entsprenchend des Feldes VBTYP drucken          *
FORM form_title_print.
  CASE vbdkr-vbtyp.
    WHEN 'M'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
         element = 'TITLE_M'
          window  = 'HEADER'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN 'N'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_N'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN 'O'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_O'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN 'P'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_P'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN 'S'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_S'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN 'U'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_U'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
    WHEN OTHERS.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'TITLE_M'
          window  = 'TITLE'
        EXCEPTIONS
          element = 1
          window  = 2.
      IF sy-subrc NE 0.
        PERFORM protocol_update.
      ENDIF.
  ENDCASE.
  IF repeat NE space.
    CALL FUNCTION 'WRITE_FORM'
      EXPORTING
        element = 'REPEAT'
        window  = 'REPEAT'
      EXCEPTIONS
        element = 1
        window  = 2.
    IF sy-subrc NE 0.
      PERFORM protocol_update.
    ENDIF.
  ENDIF.
ENDFORM.                    "FORM_TITLE_PRINT
      FORM REFERENCE_NUMBER                                         *
      Referenznummer ausgeben                                       *
FORM reference_number.
  CHECK vbdkr-vbtyp CA 'MUN'.
  CALL FUNCTION 'WRITE_FORM'
    EXPORTING
      window = 'INVOICE'
    EXCEPTIONS
      window = 2.
  IF sy-subrc NE 0.
    PERFORM protocol_update.
  ENDIF.
ENDFORM.                    "REFERENCE_NUMBER
      FORM HEADER_TEXT_PRINT                                        *
      Kopftexte ausgeben                                            *
FORM header_text_print.
  CALL FUNCTION 'WRITE_FORM'
    EXPORTING
      element = 'HEADER_TEXT'
    EXCEPTIONS
      element = 1
      window  = 2.
  IF sy-subrc NE 0.
    PERFORM protocol_update.
  ENDIF.
ENDFORM.                    "HEADER_TEXT_PRINT
      FORM ITEM_PRINT                                               *
      Rechnungsposition ausgeben                                    *
FORM item_print.
Kopieren LVBPLP für direkt Zugriff
  LOOP AT lvbplp.
    MOVE-CORRESPONDING lvbplp TO tvbplp.
    APPEND tvbplp.
  ENDLOOP.
  LOOP AT tvbdpr.
    vbdpr = tvbdpr.
    IF tvbdpr-charg IS INITIAL.
      PERFORM get_item_prices.
      PERFORM get_item_characteristics.
      CALL FUNCTION 'CONTROL_FORM'
        EXPORTING
          command = 'PROTECT'.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'ITEM_LINE'.
      PERFORM item_price_print.
      PERFORM item_characteristics_print.
      CALL FUNCTION 'CONTROL_FORM'
        EXPORTING
          command = 'ENDPROTECT'.
      PERFORM different_consignee.
      PERFORM different_order_no.
      PERFORM different_delivery_no.
      PERFORM different_extern_no.
      PERFORM different_purchase_order_no.
      PERFORM item_packing_print.
    ELSE.
      IF NOT tvbdpr-fkimg IS INITIAL.
        PERFORM get_item_prices.
        PERFORM item_price_print.
      ENDIF.
    ENDIF.
  ENDLOOP.
ENDFORM.                    "ITEM_PRINT
      FORM ITEM_PACKING_PRINT                                       *
      Verpackung zu einer Position ausgeben                         *
FORM item_packing_print.
  DATA: count LIKE sy-index.
  DATA: BEGIN OF hvbplp OCCURS 0,
          stufe     TYPE i.
          INCLUDE STRUCTURE vbplp.
  DATA: END OF hvbplp.
  DATA: vs_element LIKE vbplp-venum.
  CLEAR   hvbplp.
  REFRESH hvbplp.
Aufbau Versandelementstruktur für Ausgabe
  LOOP AT tvbplp WHERE vbeln = vbdkr-vbeln AND posnr = tvbdpr-posnr.
    hvbplp-stufe = 1.
    MOVE-CORRESPONDING tvbplp  TO hvbplp.
    APPEND hvbplp.
    vs_element = tvbplp-venum.
    IF vs_element EQ ' '. EXIT. ENDIF.         "unverpackt
    CLEAR lvbplk.
    WHILE lvbplk-kzobe NE 'X'.       "nicht oberstes VS-Ele
      suchen übergeordnetes Versandelement
      LOOP AT lvbplp WHERE unvel = vs_element.
        hvbplp-stufe = hvbplp-stufe + 1.
        MOVE-CORRESPONDING lvbplp  TO hvbplp.
        APPEND hvbplp.
        EXIT.
      ENDLOOP.
      vs_element = lvbplp-venum.
      lesen übergeordnetes Versandelement
      READ TABLE lvbplk WITH KEY vs_element.
      IF sy-subrc NE 0.
        EXIT.
      ENDIF.
    ENDWHILE.
  ENDLOOP.
  SORT hvbplp BY stufe venum.
  CLEAR vbplp.
  LOOP AT hvbplp.
    lesen Versandelement
    CLEAR vbplk.
    CLEAR vbpls.
    IF hvbplp-venum EQ ' '.

Hi,
SAPScript addresses are formated by postal standards...irrespective of the data populated....
In line
/: ADDRESS PARAGRAPH LZ
change to
/: ADDRESS DELIVERY PARAGRAPH LZ
that should bring the street into the address
Regards
Stu

Similar Messages

  • Problem in sap script check printing with EPSON FX890 printer

    Hi
    I am trying to print a check through F-58 using a script.
    We have a new EPSON FX890 dot matrix printer, But when I fire a check the the formatting of the check is not proper. The alignment is never the same as given in the SAP script. this could a problem with the printer set up and configuration in SAP. Could anybody please give me some inputs on what needs to be done. its Urgent. Can anybody give me what needs to be done and also guide me with Print control commands in SAP scripts
    Thanks,

    Hi,
    Here is some steps you should follow for scripts printout.
    1. Validate the drivers used in SAP (Tcode SPAD)
    2. Are you printing through a print server or directly to the printer
    3. If it is througha print server like windows, you should validate to have the right driver installed for that printer.
    4. Validate on the printer the default setting. If the script doesn't sent the proper font or setup, it will print using the last setup sent to the printer.
    So if somebody used work and print a specific document with different setting, some time the setting stays for the SAP report.
    To validate the setup of the printer, just turn off and on the printer before sending the SAP form. That should help to see if the setup has been changed by another program.
    I hope those simple steps will help to solve your problem.
    Reward if helpfull...
    Cheers,
    Rakesh.

  • Problem with sap script while transporting from dev to quality server

    Hi experts,
    In dev server i am getting correct output in sap script.But when it is transporting to quality server alignment is different.Printer name is same both in dev and quality.Please give an answer for this query.
    Thanks
    suresh

    Hi Suresh,
    This could be a problem with the Sapscript buffers. Try running the report RSTXDELL on the system to clear the Sapscript buffers?
    To do this you can use RSTXDELL report with default settings except it is better to have * instead of the current client number in the Client field.
    After this, create a new spool and see if the problem is resolved?
    Regards,
    Aidan

  • Printing problem for SAP Script

    Dear Friends,
    I am facing strange problem for SAP Script. In the billing document output the sold to party and ship to party address are displaying. When user print the billing document on laser printer it print the Country for Sold to and Ship to. But when it print the same billing document on normal printer (other than laser) the Sold to country not printing.
    The print preview of billing document in SAP  correctly display country for Sold-to and Ship-to.
    I have recently make changes in the SAP Script form (Address window) to display country for Ship-to which was never displayed before. I have added FROMCOUNTRY option after COUNTRY in address window. COUNTRY will be Ship-to and FROMCOUNTRY will be VBDKR-SLAND.
    Can any one help me to solve this problem.
    Regards
    Nilesh Shete

    Used custom address print option instead of using ADDRESS

  • Quantity field conversion problem in SAP script

    Hi experts,
    I have problem with sap script quantity field conversion.
    In purchase order the actual value of field( MDPM-ERFMG) is 3,500.
    But in Print preview it is showing only 3.5
    Any one Please help me in this problem
    thanks in advance
    murali

    Hello,
    check this:
    Number of Decimal Places
    A program symbol of one of the data types DEC, QUAN, and FLTP can contain decimal place data. Use the option below to override the Dictionary definition for the number of decimal places for the formatting of this symbol value.
    Syntax
    &symbol(.N)&
    The EKPO-MENGE field contains the value 1234.56. The Dictionary definition specifies 3 decimal places and an output length of 17.
    &EKPO-MENGE& -> 1,234.560
    &EKPO-MENGE(.1) -> 1,234.6
    &EKPO-MENGE&(.4) -> 1,234.5600
    &EKPO-MENGE&(.0) -> 1,235
    REgards,
    Vasanth

  • Sap script text printing issue..

    Hi,
    I have a SAP script with a text symbol say &abc& defined in the SAP script main window.
    From the print program I want to pass some text to this text symbol.
    In the print program I have an internal table with lines of text, sometime it can have just one line of
    text CHAR512 length or it can have multiple lines of char512 length text.
    Now how do I pass these lines to the text symbol &abc& ?
    I tried to do the following, but it does not help...
    DATA l_data TYPE STRING.
    loop thru the internal table
    concatenate l_data with text got from internal table
    endloop
    CALL FUNCTION 'TEXT_SYMBOL_SETVALUE'
        EXPORTING
          name   = '&abc&'
          value  = l_data
        EXCEPTIONS
          OTHERS = 0.
    I debugged and saw that l_data has most of the text (not all) but the sap script's printed output
    has only few text.
    what should I do to get all the text displayed on the printed output ?
    thnks

    Hi Vivek,
        Including two work area next to each other should not be a problem because i am doing the same thing. Check whether the length of field of work area one is over lapping the field of other work area.
    Note: Reward points if helpful.
    Cheers,
    Shafiq

  • Problem with SAP Script FAX output

    Hi Friends,
    I have problem with SAP Script Fax output.
    After I issued output using the messge type, the print preview format shows me correct alignments and the right data. But when I go to List display using the menu bar functions from the print preview screen, the list is showing me the right data, but all the alignments at the main window went wrong.
    How do I rectify this problem? I need correct alignments in both form display and list display.

    Hi Sasidhar,
    Have you tried with different fax machine.
    Regards,
    Atish

  • Invoice List SAP script - Problem with SAP script functionality

    Hello Friends,
    I am working on SAP script - Invoice List SD_INVOICE_LIST. The invoice list contains the underlying billing documents. As per the standard functionality, in the line items, its printing the underlying billing documents with the net value. My requirement is to dig these line items into another level, meaning, I need to display the line items of billing documents  as well(like material, material description, quantity, net price and net value of that item etc).
    The billing linte item informatin is stored in VBRP table and the VBRP structure is not at all defined in the print program of SD_INVOICE_LIST (I.E.RVADIL01). Change of standard SAP program is not an option for me here.
    In the external subroutine we can fetch these line items for each billing document in the invoice list. However, my question here is how to take these line items back to the sap script and print them in SAP script (We can print one line item but how to loop these fetched lines and print them on SAP script. Any help in this regard would be greatly appreciated.
    I think there is no standard smart form exist for the invoice list. Please also let me know if there is any standard smart form available for INVOICE List.
    Thanks in advanace for any help in this regard.
    Best regards,
    Siva

    Hi
    As you cannot change the standard, you will have to see if there are any enhancements provided in the print program. if not you have to copy into a custom one and do changes accordingly.
    Thanks,
    Venkatesh

  • Transport.of SAP script form , printer def and device type is not enaugh

    I transported the SAP script form , printer definition and device types of a thermal printer.
    On original system the printout is ok but on target system not. What should I do?

    Thank you for your fast answer
    As the matther of fact I am technical person. I think Output type belongs to application. However the difference is visible in  se71 ->Utilities->Printing test -> output device ->print preview.
    As I wrote I transpored corresponding. SAP script form , printer def and device type

  • SAP Script: Barcode printing in Local Win. Printer

    Hi All,
    In SAP Script, I have used Barcode format to print a Number.
    When I issue the Print output by selecting the Configured SAP network printer, The barcodes are properly printed.
    but When i select the "Local windows printer" (which has barcode printing facility) option i.e Device type: SAPWIN, the Barcodes are not getting printed.
    I have Specified that Network printer as my Default Windows printer, but still when we give "Local printer" the Barcodes does not print.
    But for the same network printer when i select it from the List of SAP printers, the barcodes are printed.
    Please suggest why barcodes are not getting printed when we give "local windows printer" as the Print device.
    Does the same issue also happens for Smart forms?
    Midhun.

    Please only post your question once.
    SAP Script: Barcode printing in "Local windows printer"
    Regards,
    Nick

  • Problem in SAP Script Printing

    Hi All,
    We are having a very strange problem while passing the data in SAP Script.Actually we are doing the Script of Payment Advice(FI/CO),but while calling the Function Module 'RSPO_RID_SPOOLREQ_LIST' in the driver program the values are lost.I have debugged it but right after the execution of 'RSPO_RID_SPOOLREQ_LIST' when the spool is generated, the variables are lost with the data they contain!!!As a result nothing are coming in Payment Advice Script.
    Can anyone plz help me out!!!
    Thx in advance.
    Regds.
    Atrai.

    Hi,
    You have to ensure that its called only in case of print and not otherwise and may be this piece of code helps:
            check tab_ausgabe-spoolnr ne space.
            refresh up_list.
            up_list-id = tab_ausgabe-spoolnr.
            append up_list.
            call function 'RSPO_RID_SPOOLREQ_LIST'
                 exporting
                      id_list = up_list[]
                 exceptions
                      others  = 0.
    Regards,
    Satya

  • Problem in Sap script for Check printing

    Hi all,
      I have problem in Check printing for FI Module. In Tcode f-58 i am taking the printout of checks. For my user they want to move the main window in upwards, but the sap script <b>F110_PRENUM_CHCK</b> not allowing to move upwards. how to do this, its urgent. plz
    point wil be sure.
    Gowri

    Hi
    Copy the script F110_prenum_chek to some ZCHECK and do the changes.
    Why you can't change the MAIN window towards up?
    You can changes ths ize of it by adjusting the setting of it .
    generally we use some pre printed stationary for this in which all the line item data with doc numbers is printed on top and the check will be in bottom
    and in check we just print the few fields in the right positions.
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • Printing problem in Sap script using J1IP

    Using a Zprogram & script for Excise Invoice printing using J1IP. The value of a field gets double while printing but it appears correct in Print Preview of the same.
    Moreover, the value prints correctly if some other login is used on the same machine.
    What could be the reason. Kindly advise as not able to resolve this issue.
    thanks
    anu

    Hi Kumar,
    Sometimes it is to do with printer settings. I hope you are checking Output for both PRD and DEV on same printer.
    Sachin

  • PROTECT-ENDPROTECT problem in SAP Script

    In SAP Script MAIN Window I have 10 different elements to print differet stuff related with each delivery line item.
    Like Material Number
    Material Description
    Long text [Has formatted text and I am reading that text and printed in some format some lines under material number and some under materail desc.]
    and other information required by client.
    Loop at Delivery item table.
    CALL FUNCTION 'CONTROL_FORM'
           EXPORTING
                command = 'PROTECT'.
    Print differnt elements.
    Loop at lond text internal table.
    print in proper format as I mentioned.
    endloop.
      CALL FUNCTION 'CONTROL_FORM'
           EXPORTING
                command = 'ENDPROTECT'.
    ENDLOOP.
    My problem is PROTECT ENDPROTECT is not working properly.
    It is printing only 1 item with other info on first page as there are enough space left to print minimum three items with details.
    on next page it is priting only 3-4 items as there are enough sapce to ptint at lease 10 items with details.
    The only good thing is it is not spliting the Item details and other text.[Main window on next page has bigger size]
    Any idea why PROTECT - ENDPOTECT not behaving properly.
    Thanks
    Aman
    Message was edited by: Amandeep  Singh

    Hello,
    Try to do like, Put PROTECT and ENDPROTECT in the SAPScript itself.
    Like
    Element 1
    Protect
    ..matnr....
    element 2
    ...desc....
    element 3 (long text)
    ...text
    ....text
    element 4
    endprotect
    call the element 4 in the loop statment, whenever required.
    Hope it will work.
    Regards,
    Naimesh.

  • Problem in Smart form while printing it in POLISH language

    Hi All,
    I am facing a problem in SMARTFORM and SAP SCRIPT.
    I have developed a form in EN language and converted that in POLISH language using SE63 . When the form is printed in the POLISH language "#" is coming for some special characters of POLISH Language . ( e.g. 'Length' should get printed as 'D&#321;UGO&#346;&#262;' ' but it is coming as 'D#UGO##'')
    Please tell me how to handle these special characters in POLISH Language.
    Thanks

    Hi,
    To solve this Basis need to create a new output device type which supports Latin-2 character set (Device type to I2HP4) or change the existing one to support Latin-2 character set.
    Thanks
    Edited by: dipesh kothari on May 6, 2008 5:33 PM
    Edited by: dipesh kothari on May 6, 2008 5:34 PM

Maybe you are looking for

  • Considering installing windows 7 on my workstation - is it compatible with CS3?

    I'm considering upgrading from Vista to Windows7 on my workstation.  Does anyone know if the Master Collection CS3 is compatible with Windo ws 7?  I suspect it is, but i'd rather hear from someone who is using it, because after i upgrade, i cannot go

  • Monitoring problem-Please help

    Hey everyone, I'm trying to figure out how to monitor audio in Audition CS6.  I'm using a Mac and just upgraded from Soundtrack Pro.  I easlly monitored my audio though my headphones while using Soundtrack.  My setup consists of my mic going to my us

  • Mac os x version 10.5.8 safari not working

    mac os x version 10.5.8 safari not working Process:         Safari [665] Path:            /Applications/Safari.app/Contents/MacOS/Safari Identifier:      com.apple.Safari Version:         5.0.6 (5533.22.3) Build Info:      WebBrowser-75332203~3 Code

  • Anyone ever heard of Amex sending customers an email solicitation

    I've gotten two emails for the PRG 50k offer. Then I got a snail mail offer. 

  • Microphone doesn't work.

    So i thought i would update my sound driver. So i came to the website here and DL a realtek sound driver and now my microphone doesn't work. When i go to the 'Recording' Tab in my sound section of Control Panel, it just says "No Audio Devices are Ins