Script doubt

Hi
i used the following two satements in main window of my script.
/: BOX FRAME 10 TW
Page &PAGE& of &SAPSCRIPT-FORMPAGES&
I get abox and a message in page 1 of 5 onl;y in my first page.
I want this to to be extended for all pages i.e  i need abox and a message saying page 2 of 5 in second page.
can anyone help me regarding this.
AND WHAT THE SYMBOLS MEAN , I AM CONFUSED AS TO WHICH ONE I NEED TO USE SYMBOLS MEAN *,/:,/e etc

Hi, I HAVE TRIED WITH THIS CODE TOO
I DISPLAYS THE DATE AFTER EVERY RECORD AND THAT TOO IN ONLY FIRST PAGE.
/E DATA
/: if &prev& EQ &page& .
page &page& of &sapscript-formpages&
/: &prev& = &prev& + 1 .
/: endif .
&ITAB-MATNR&,,,,&ITAB-KOSTL&
I WANT SOME THING LIKE THIS
FIRST PAGE
PAGE 1 OF 5
123 456
234 567
SECOND PAGE
PAGE 2 OF 5
345 567
334 788
SECOND PAGE
PAGE 3 OF 5
345 888
222 999
LOOP AT ITAB.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
   ELEMENT                        = 'DATA'
   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.
ENDLOOP.

Similar Messages

  • Where do i post java script doubts?

    Where do i post java script doubts?

    JavaScript has nothing to with Java at all, so if you are searching for a sub-forum of this forum to post JavaScript questions then I can't help you.
    You will need to google for a JavaScript forum, maybe someone around here knows of a good one.

  • Scripts doubts

    1) How do we put a break point in particular text element in scripts?
    2) How do we check code for include statement in smart forms?
    3) How can we transport the standard text from one server to another server?
    4) What are the mandatory commands in scripts to call the main window?
    5) Difference between form pages and job pages?
    6) How can we assign the paragraph and character format to standard text?

    Hi,
    1) How do we put a break point in particular text element in scripts?
    Keep syntax like this break-point<>
    where ever you want to put break point.
    2) How do we check code for include statement in smart forms?
    3) How can we transport the standard text from one server to another server?
    Using RSTXTRAN - Transfer of SAPscriptTexts to a Correction
    4) What are the mandatory commands in scripts to call the main window?
    The SAPscript control commands are described in the following sections.
    The Syntax of Control Commands
    Explicit Page Break: NEW-PAGE
    Preventing Page Breaks: PROTECT
    Next Main Window: NEW-WINDOW
    Assigning a Value to a Text Symbol: DEFINE
    Formatting Date Fields: SET DATE MASK
    Formatting Time Fields: SET TIME MASK
    Country-Dependent Formatting: SET COUNTRY
    Position of the Leading Sign: SET SIGN
    Initializing Numbered Paragraphs: RESET
    Including Other Texts: INCLUDE
    Changing the Style: STYLE
    Formatting Addresses: ADDRESS
    Setting a Header Text in the Main Window: TOP
    Setting a Footer Text in the Main Window: BOTTOM
    Conditional Text: IF
    The CASE command
    Calling ABAP/4 Subroutines: PERFORM
    Inserting Print Controls: PRINT-CONTROL
    Boxes, Lines, Shading: BOX, POSITION, SIZE
    Hexadecimal Data: HEX, ENDHEX
    5) Difference between form pages and job pages?
    Difference is form pages means it shows only how many pages containing form .
    jobpages shows how many pages are in printing queue.
    6) How can we assign the paragraph and character format to standard text?
    In sap text editor
    <p1> &'Delivery for 'PEKKO-WEMPF&
    Keep left hand side of the editor before text starting .
    here p1 is the paragraph format.
    Reward points.

  • Build script doubts

    Hi,
    I have two questions. I hope someone answers them.
    1. What is the difference between Ant Buildfile and Workshop Ant scripts? They both appear in the File->Export menu.
    2. If I create my application EAR using File->Export->Other->Ear file with Pre-JSP compilation and if I create another EAR file using the workshop ant scripts (in the console, but same machine), should the structure of the generated EAR files be EXACTLY the same?
    Thanks!!
    Aditya

    Aditya,
    1. What is the difference between Ant Buildfile and Workshop Ant scripts? They both appear in the File->Export menu.
    Ant Build file eclipse based build file which need to include all required files to package your application and where as Workshop Ant Build file will generated with support of all the internal workshop jar using maven ant and workshop-lib folder accessing all jar files to package your application.
    2. If I create my application EAR using File->Export->Other->Ear file with Pre-JSP compilation and if I create another EAR file using the workshop ant scripts (in the console, but same machine), should the structure of the generated EAR files be EXACTLY the same?
    Both are not really same but package structuring will be same. When we use Pre-JSP compilation option it ask to pre-compile the jsp first and then package the EAR by default it would be unchecked. So mostly when users click Pre-JSP compilation EAR or normal EAR without Pre-compiling JSP it will package the EAR in same structure file at required location.
    Regards,
    Kal.

  • Script doubts

    New to Script,
    How to display page numbers like 1 of 2, 2 of 3?
    How to change the font (bold & size) of header text? or form header
    Please provide code for those text elements...
    Thanks

    Hi,
    For pages ....
    /: &PAGE& of &SAPSCRIPT-FORMPAGES&
    FOr Bold and size, you need to use the Paragraph format, in the paragraph format you need to select the BOLD radio button, and for size increage the Font size in the paragraph format, and use that paragraph format in the script .
    Regards
    Sudheer

  • Sap script doubt

    hi all,
    i have problem with the print program.in this it is printing the from in pre printed format.
    but as comapny's pre printed format has been changed so
    they are not willing to carry it on.
    so they have given me a format to design the form .
    i have designed the form and assined my from name in the
    print program but i was not able to see output ie my form
    which i have designed.
    my form name is zinv.
    so for this i am sending my print prog so what changes i have to make in it so that i can see my form after executing it.
    plz give me the solution.
    REPORT ZSI-01 LINE-SIZE 132.
    PROGRAM NAME : ZINVOICE                    AUTHOR       : SATYA      *
    START DATE   : 11-04-98                    END DATE     :            *
    REQUEST NO   :                             REQUESTED BY : SELVAM     *
    CHANGE DATE  : 12.05.98                    CHANGED BY   :            *
    OBJECTIVE    :INVOICE PRINTING ON LAYOUT SET.                        *
                  LAYOUT SET ZINVOICE                                    *
                  PF-STATUS 100.                                         *
    changed and transfered on 16.04.99 REQUESTED BY SELVAM.              *
    THIS IS THE LATEST VERSION OF INVOICE PROG CHANGES MADE BY raghu     *
               ON 16/04/99                                               *
      RECENT COPY WITH  SECOND SALES & TAX EMPTED REQ SELVAM 24/6/98     *
      copy with form sale req by selvam 27/07/98                         *
    PRINT-CONTROL FUNCTION 'CI015'.
    *TRANSPARETN TABLES
    TABLES : KOMK.
    TABLES : KOMV.
    TABLES : KOMP.
    TABLES : KNVK.
    TABLES : OBJK.
    TABLES : SER01.
    TABLES : T001W.
    TABLES : MKPF.
    TABLES : KONV .
    TABLES : LIKP.
    TABLES : VBFA .                                             "
    TABLES : VBAK .     "Header table for the invoice document
    TABLES : VBAP .     "Line item table for the invoice document
    TABLES : KNA1 .     "Customer master table for the customer details
    TABLES : MARA .                        "Material master table
    TABLES : ITCPO.     "SYSTEM TABLE FOR LAYOUT SETS COMMUNICATION
    TABLES : ITCPP.     "SYSTEM TABLE FOR LAYOUT SETS COMMUNICATION
    TABLES : VBRK.      "HEADER TABLE FOR BILLING DOCUMENT
    TABLES : VBRP.                         "LINE ITEM FOR BILLING DOCUMENT
    TABLES : VBPA.                         "PARTNER FOR SALES DOCUMENT
    TABLES : KNB1.
    TABLES : LIPS.
    TABLES : TVM1T.
    TABLES : SADR.
    *INTERNAL TABLES
    DATA : BEGIN OF INV_TAB OCCURS 0.
    DATA : BILLNO LIKE VBRP-VBELN.
    DATA : END OF INV_TAB.
    DATA : BEGIN OF I_TAB OCCURS 0.
    DATA : SDNO LIKE LIKP-VBELN.
    DATA : INVO LIKE VBRK-VBELN.
    DATA : ORNO LIKE VBAK-VBELN.
    DATA : END OF I_TAB.
    *FOR READ PRICE
    DATA: BEGIN OF TKOMV OCCURS 0.
            INCLUDE STRUCTURE KOMV.
    DATA: END OF TKOMV.
    DATA: BEGIN OF TKOMVD OCCURS 0.
            INCLUDE STRUCTURE KOMVD.
    DATA: END OF TKOMVD.
    DATA : BEGIN OF CTYPE OCCURS 0.
    DATA :SIGN(1).
    DATA :OPTIONS(2).
    DATA :LOW(4).
    DATA :HIGH(4).
    DATA : END OF CTYPE.
    *header data
    DATA : BEGIN OF HEAD_TAB.
    DATA : DOCNO LIKE VBRK-VBELN.
    DATA : SALOF LIKE VBRK-VKORG.
    DATA : DOCDT LIKE VBRK-FKDAT.
    DATA : PLANT LIKE LIKP-WERKS.
    DATA : PNAM1 LIKE T001W-NAME1.
    DATA : PNAM2 LIKE T001W-NAME2.
    DATA : PNAM3 LIKE T001W-NAME1.
    DATA : PNAM4 LIKE T001W-NAME2.
    DATA : PNAM5 LIKE T001W-PSTLZ.
    DATA : PCSTNO(35).
    DATA : PLSTNO(35).
    *DATA : POREF LIKE VBAK-BSTNK.
    DATA : POREF(30).
    DATA : PODAT LIKE VBAK-BSTDK.
    DATA : CCODE LIKE KNA1-KUNNR.
    DATA : CPERSON LIKE KNVK-NAME1.
    DATA : TPHONE LIKE VBPA-PARNR.
    DATA : SALESOR LIKE VBAK-AUFNR.
    DATA : BILLCUR LIKE VBAK-WAERK.
    DATA : CARNAME(35).
    DATA : SPSHIPI(40).
    DATA : SPCARIN(40).
    DATA : LRNO(20).
    DATA : LRDT(20).
    DATA : MODEPAY(20).
    DATA : CSTNO(30).
    DATA : LSTNO(30).
    DATA : STAMT TYPE P DECIMALS 2.        "SUB TOTAL
    DATA : STAXAMT TYPE P DECIMALS 2.      "SALES TAX AMOUNT
    DATA : FCHRG TYPE P DECIMALS 2.
    DATA : OCHRG LIKE VBRP-NETWR.
    DATA : AMOUNTINWORDS(150).
    DATA : GTOTAL TYPE P DECIMALS 2.
    DATA : FROMDATE(10).
    DATA : ENDDATE(10).
    DATA : END OF HEAD_TAB.
    DATA : B_PRNCTR TYPE I VALUE 0 .
    *sold to party
    DATA : BEGIN OF SOLDP_TAB.
    DATA : NAME LIKE KNA1-NAME1.
    DATA : ADD1 LIKE KNA1-NAME2.
    DATA : ADD2 LIKE KNA1-NAME3.
    DATA : ADD3 LIKE KNA1-ORT01.
    DATA : ADD4 LIKE KNA1-PSTLZ.
    DATA : ADD5 LIKE KNA1-REGIO.
    DATA : ADD6 LIKE KNA1-NAME4.
    DATA : END OF SOLDP_TAB.
    DATA : B_SURCHARG VALUE 'N'.
    ship to party
    DATA : BEGIN OF SHIPP_TAB.
    DATA : NAME LIKE KNA1-NAME1.
    DATA : ADD1 LIKE KNA1-NAME2.
    DATA : ADD2 LIKE KNA1-NAME3.
    DATA : ADD3 LIKE KNA1-ORT01.
    DATA : ADD4 LIKE KNA1-PSTLZ.
    DATA : ADD5 LIKE KNA1-REGIO.
    DATA : ADD6 LIKE KNA1-NAME4.
    DATA : END OF SHIPP_TAB.
    LINE ITEMS
    DATA : BEGIN OF LINE_TAB OCCURS 0.
    DATA : B_LONO(4).
    DATA : CFAMOUNT LIKE VBRK-NETWR.
    DATA : SLNO(4).
    DATA : PRODCODE(6).
    DATA : SERNO(20).
    DATA : DESC(40).
    DATA : UOM(4).
    DATA : QTY(5).
    DATA : RATE TYPE P DECIMALS 2.
    DATA : AMOUNT TYPE P DECIMALS 2.
    DATA : STAX(5).
    DATA : OTAX(5).
    DATA : B_TAXAMOUNT_LINE LIKE VBRP-NETWR.
    DATA : POSNR LIKE VBRP-POSNR .         "     ADDED BY ANIL
    DATA : END OF LINE_TAB.
    *serial Nos
    DATA : BEGIN OF SER_TAB OCCURS 0.
    DATA : SERNO(20).
    DATA : SLNO(4).
    DATA : END OF SER_TAB.
    *structure for carried forward.
    DATA : BEGIN OF SUBTOT.
    DATA : B_SUBTOTAL LIKE VBRK-NETWR.
    DATA : END OF SUBTOT.
    *STRUCTURE for layout set
    DATA : BEGIN OF SERALIGN.
    DATA : TEXT(10).
    DATA : B_SL1 LIKE SER_TAB-SERNO.
    DATA : B_SL2 LIKE SER_TAB-SERNO.
    DATA : B_SL3 LIKE SER_TAB-SERNO.
    DATA : END OF SERALIGN.
    *VARIABLES
    DATA : B_DIVIDE LIKE VBRP-NETWR.
    DATA : B_PRNUCOMM LIKE SY-UCOMM.
    DATA : B_NEWPAGE.
    DATA : B_INVRATE LIKE VBRP-NETWR.
    DATA : B_INVSTAX LIKE VBRP-NETWR.
    DATA : B_TAX(4),B_TOT(4).
    DATA : B_DIFFCOUNT TYPE I.
    DATA : B_COUNTOFRECORDS TYPE I.
    DATA : B_TOTALINDICATOR(256).
    DATA : B_TEMP(25).
    DATA : B_TEMP1(25).
    DATA : B_AMOUNTSTRING1(36).
    DATA : B_AMOUNTSTRING2(35).
    DATA : B_AMOUNTSTRING3(35).
    DATA : B_ORDERREFNO LIKE VBRK-XBLNR.
    DATA : B_RATEFORITEM LIKE VBRK-NETWR.
    DATA : B_TOTALAMOUNT TYPE P DECIMALS 2 VALUE 0.  "TOTAL INVOICE AMOUNT
    DATA : B_CUSTOMERNO LIKE VBAK-KUNNR.   "CUSTOMER NO FROM VBAK TABLE
    DATA : B_RECORDCOUNTER TYPE I.         "RECORD COUNTER
    DATA : B_AMOUNTINWORDS(200).           "AMOUNT STORED IN WORDS
    DATA : B_DECIMALAMOUNTINWORDS(40).     "DEC PART OF THE AMOUNT WORD
    DATA : B_AMOUNTINWORDSFINAL(256).      "TOTAL AMOUNT IN WORDS
    DATA : B_CUSTOMERCODE LIKE VBAK-KUNNR. "CUSTOMER CODE
    DATA : B_STRINGLENGTH TYPE I.
    DATA : B_INVFORCHARGE LIKE VBRP-NETWR.
    DATA : B_INVOCTROI LIKE VBRP-NETWR.
    DATA : B_INVTOT LIKE VBRP-NETWR.
    DATA : B_INVNO LIKE VBAK-VBELN.
    DATA : B_RECCOUNT TYPE I VALUE 0 , START TYPE I VALUE 0.
    DATA : IFSELECTED TYPE C VALUE 'X'.
    DATA : B_TOTAL_TAX LIKE VBRK-NETWR.
    DATA : B_IFSERVICEORDER(1) VALUE 'T'.
    DATA : ANS(1).
    DATA : B_SHIP_TO_PARTY LIKE KNA1-KUNNR.
    DATA : B_SOLDTOPARTYCODE LIKE KNA1-KUNNR.
    DATA  B_STR(35).
    DATA : RECNO LIKE SY-INDEX VALUE 1.
    DATA : B_SPCFLAG VALUE 'F'.
    DATA : B_TAX_INFO1(80) .
    DATA : B_SECOND_SALE(250) .
    DATA : B_EXEMPTED(250) .
    DATA : B_HEXEMPTED(250) .
    DATA : B_TAX_STR(250).
    DATA : B_FORM_TEXT(250) .
    DATA : B_FORM_TYPE(25) .
    DATA : TXT(60).
    DATA : BEGIN OF FORM_TAB OCCURS 0 ,
           MVGR1 LIKE VBRP-MVGR1 ,
           SLNO(5) ,
           END OF FORM_TAB .
    DATA : OLD_MVGR1 LIKE TVM1T-MVGR1 , B_FORM_IND LIKE SY-TABIX .
    DATA : B_TAX_LEN TYPE I .
    DATA : FKART LIKE VBRK-FKART.
    SET PF-STATUS '100'.
    SELECTION-SCREEN BEGIN OF BLOCK B_1 WITH FRAME TITLE TEXT-001.
    SELECT-OPTIONS SEL1 FOR VBRK-VBELN MATCHCODE OBJECT VMCF MEMORY ID VF.
    SELECT-OPTIONS SEL2 FOR LIKP-VBELN MATCHCODE OBJECT VMVL MEMORY ID VL.
    SELECT-OPTIONS SEL4 FOR VBAK-KUNNR MEMORY ID VAG.
    SELECTION-SCREEN END OF BLOCK B_1.
    SELECTION-SCREEN BEGIN OF BLOCK B_2 WITH FRAME TITLE TEXT-005.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(3) TEXT-002.
    PARAMETERS : PRINTSL RADIOBUTTON GROUP GRP1.
    SELECTION-SCREEN COMMENT 7(2) TEXT-003.
    PARAMETERS : NPRINTSL RADIOBUTTON GROUP GRP1.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK B_2.
    PERFORM INIT.
    CLEAR HEAD_TAB.
    IF SEL2 EQ SPACE AND SEL1 EQ SPACE.
      IF SEL4 EQ SPACE.
        PERFORM WIN_INFO(ZURL) USING 'Error' 'Enter atleast one' 'Value'.
        EXIT.
      ENDIF.
    ENDIF.
    PERFORM WRITEITEMS.                    "Selection Screen
          FORM MAIN                                                     *
    FORM MAIN.
      B_PRNCTR = 0 .
      LOOP AT I_TAB.
        CLEAR : B_SECOND_SALE , B_EXEMPTED , B_TAX_LEN .
       read table i_tab index recno.
        PERFORM SOLD_TO_PARTY_CHANGE USING I_TAB-INVO.
       if sy-subrc eq 0.
        B_INVNO = I_TAB-SDNO.
        PERFORM FILL_CHAR(ZURL) USING 10 '0' I_TAB-SDNO CHANGING B_INVNO.
        PERFORM FILL_CHAR(ZURL) USING 10 '0' I_TAB-INVO
                                CHANGING I_TAB-INVO.
        CLEAR HEAD_TAB-GTOTAL.
        PERFORM ASSIGN.
         perform alignwrite.
        PERFORM OPENFORM USING 'ZINVOICEDUMMY'.
        PERFORM LAYOUTSETWRITE.
        DATA : B_SRLNO(4) VALUE 0.
        DATA : B_CTR TYPE I VALUE 0.
        DATA : B_LOOPCTR TYPE I VALUE 0.
        DATA : B_AMT1 LIKE VBRK-NETWR.
        DATA : B_TEXTELEMENT(3).
        SUBTOT-B_SUBTOTAL = 0.
        B_SRLNO = 0.
        LOOP AT LINE_TAB.
          ADD 1 TO B_SRLNO.
          MOVE B_SRLNO TO LINE_TAB-B_LONO.
          PERFORM TAX_INFO_DETERMINE USING B_SRLNO.
                                                   "  ADDED BY ANIL
          SUBTOT-B_SUBTOTAL = B_AMT1 + LINE_TAB-AMOUNT.
          "add line_tab-amount to subtot-b_subtotal.
          MOVE SUBTOT-B_SUBTOTAL TO B_AMT1.
          PERFORM LAYOUTSETMAIN USING '100'.
          MOVE '101' TO B_TEXTELEMENT.
          IF PRINTSL EQ 'X'.
            MOVE 'Serial No:' TO SERALIGN-TEXT.
            LOOP AT SER_TAB WHERE SLNO EQ LINE_TAB-SLNO.
              IF B_LOOPCTR EQ B_CTR.
                MOVE SER_TAB-SERNO TO SERALIGN-B_SL1.
                ADD 1 TO B_CTR.
                PERFORM LAYOUTSETMAIN USING B_TEXTELEMENT.
              ENDIF.
              IF B_LOOPCTR EQ B_CTR.
                MOVE SER_TAB-SERNO TO SERALIGN-B_SL2.
                ADD 1 TO B_CTR.
                PERFORM LAYOUTSETMAIN USING B_TEXTELEMENT.
              ENDIF.
              IF B_LOOPCTR EQ B_CTR.
                MOVE SER_TAB-SERNO TO SERALIGN-B_SL3.
                ADD 1 TO B_CTR.
                PERFORM LAYOUTSETMAIN USING B_TEXTELEMENT.
              ENDIF.
              B_LOOPCTR = B_LOOPCTR + 1.
              MOVE '103' TO B_TEXTELEMENT.
              MOVE ' ' TO SERALIGN-TEXT.
            ENDLOOP.
          ENDIF.
        ENDLOOP.
        HEAD_TAB-GTOTAL = B_INVRATE + B_INVSTAX + B_INVTOT +
                          B_INVOCTROI + B_INVFORCHARGE.
        HEAD_TAB-OCHRG = B_INVTOT.
        IF HEAD_TAB-PLANT EQ '0020'.
          PERFORM LAYOUTSETMAIN USING '104'.
        ENDIF.
        IF B_SURCHARG = 'Y'.
          PERFORM LAYOUTSETMAIN USING '105'.
        ENDIF.
        DESCRIBE TABLE FORM_TAB LINES SY-TABIX .
        IF SY-TABIX > 0 .
          SORT FORM_TAB BY MVGR1 .
          CLEAR : OLD_MVGR1 , B_FORM_IND .
          LOOP AT FORM_TAB .
            IF FORM_TAB-MVGR1 <> OLD_MVGR1 AND B_FORM_IND > 1 .
              SELECT SINGLE * FROM TVM1T WHERE MVGR1 = OLD_MVGR1 .
              CONCATENATE '. :' TVM1T-BEZEI INTO B_FORM_TYPE
                                   SEPARATED BY SPACE .
              PERFORM PRINT_TAX_INFO USING B_FORM_TEXT B_FORM_TYPE .
              CLEAR B_FORM_TEXT .
            ENDIF .
            ADD 1 TO B_FORM_IND .
            OLD_MVGR1 = FORM_TAB-MVGR1 .
            CONCATENATE B_FORM_TEXT ',' FORM_TAB-SLNO INTO B_FORM_TEXT
                          SEPARATED BY SPACE .
          ENDLOOP .
          SELECT SINGLE * FROM TVM1T WHERE MVGR1 = OLD_MVGR1 .
          CONCATENATE '. :' TVM1T-BEZEI INTO B_FORM_TYPE
                               SEPARATED BY SPACE .
          PERFORM PRINT_TAX_INFO USING B_FORM_TEXT B_FORM_TYPE .
          CLEAR B_FORM_TEXT .
        ENDIF .
        PERFORM LAYOUTSETMAIN USING '109'.
        B_TAX_LEN = STRLEN( B_SECOND_SALE ) .
        IF B_TAX_LEN > 0 .
          PERFORM PRINT_TAX_INFO USING B_SECOND_SALE
                                        '. : Second Sales - No Tax' .
        ENDIF .
        B_TAX_LEN = STRLEN( B_EXEMPTED ) .
        IF B_TAX_LEN > 0 .
          PERFORM PRINT_TAX_INFO USING B_EXEMPTED
                                 '. : Software Exempted From Tax' .
        ENDIF .
        B_TAX_LEN = STRLEN( B_HEXEMPTED ) .
        IF B_TAX_LEN > 0 .
          PERFORM PRINT_TAX_INFO USING B_HEXEMPTED
                                 '. : Exempted From Tax' .
        ENDIF .
        MOVE 'Sales Tax Shown is inclusive of surcharge @ 10%'
              TO B_TAX_STR.
        REFRESH : FORM_TAB .
        CLEAR : B_SECOND_SALE , B_EXEMPTED , B_TAX_LEN ,B_FORM_TEXT,
                FORM_TAB , B_HEXEMPTED .
        PERFORM CONVERT.
        PERFORM LAYOUTFOOTER USING '102'.
        PERFORM CLOSEFORM(ZURL).
        PERFORM INIT.
      endif.
      ENDLOOP.
    ENDFORM.
          FORM ASSIGN                                                   *
    FORM ASSIGN.
      B_INVSTAX = 0.
      B_INVRATE = 0.
      REFRESH SER_TAB.
    perform gettax using i_tab-invo.
      HEAD_TAB-DOCNO = I_TAB-INVO.
      SELECT SINGLE * FROM VBRK WHERE VBELN EQ HEAD_TAB-DOCNO.
      HEAD_TAB-DOCDT = VBRK-FKDAT.
      FKART  = VBRK-FKART.
      CLEAR HEAD_TAB-SALESOR.
      SELECT SINGLE * FROM VBAK WHERE VBELN = I_TAB-ORNO.
      MOVE VBAK-VKBUR TO HEAD_TAB-SALOF.
      MOVE VBAK-BSTNK TO HEAD_TAB-POREF.
      MOVE VBAK-BSTDK TO HEAD_TAB-PODAT.
      MOVE HEAD_TAB-PODAT TO B_STR.
      CONCATENATE B_STR6(2) '.' B_STR4(2) '.' B_STR+2(2) INTO B_STR.
      CONCATENATE HEAD_TAB-POREF '/' B_STR INTO B_STR.
      MOVE B_STR TO HEAD_TAB-POREF.
      SELECT SINGLE * FROM VBPA WHERE VBELN EQ I_TAB-INVO AND PARVW EQ 'RE'.
      IF B_SPCFLAG EQ 'T'.
        SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ B_SOLDTOPARTYCODE.
        SELECT SINGLE * FROM KNB1 WHERE KUNNR EQ B_SOLDTOPARTYCODE.
        SELECT SINGLE * FROM KNVK WHERE KUNNR EQ B_SOLDTOPARTYCODE.
             move knvk-name1 to head_tab-cperson.
             move knvk-telf1 to head_tab-tphone.
        MOVE KNA1-NAME1 TO SOLDP_TAB-NAME. "SOLD TO PARTY
        MOVE KNA1-NAME2 TO SOLDP_TAB-ADD1. "SOLD TO PARTY
        MOVE KNA1-NAME3 TO SOLDP_TAB-ADD2. "SOLD TO PARTY
        MOVE KNA1-NAME4 TO SOLDP_TAB-ADD6. "added By deepak 26/11/98
        MOVE KNA1-ORT01 TO SOLDP_TAB-ADD3. "SOLD TO PARTY
        MOVE KNA1-PSTLZ TO SOLDP_TAB-ADD4. "SOLD TO PARTY
        MOVE KNA1-REGIO TO SOLDP_TAB-ADD5. "SOLD TO PARTY
      ELSE.
        SELECT SINGLE * FROM KNB1 WHERE KUNNR EQ VBPA-KUNNR.
        IF VBPA-ADRNR EQ SPACE.
          SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ VBPA-KUNNR.
          MOVE KNA1-NAME1 TO SOLDP_TAB-NAME.   "SOLD TO PARTY
          MOVE KNA1-NAME2 TO SOLDP_TAB-ADD1.   "SOLD TO PARTY
          MOVE KNA1-NAME3 TO SOLDP_TAB-ADD2.   "SOLD TO PARTY
          MOVE KNA1-NAME4 TO SOLDP_TAB-ADD6.  "added By deepak 26/11/98
          MOVE KNA1-ORT01 TO SOLDP_TAB-ADD3.   "SOLD TO PARTY
          MOVE KNA1-PSTLZ TO SOLDP_TAB-ADD4.   "SOLD TO PARTY
          MOVE KNA1-REGIO TO SOLDP_TAB-ADD5.   "SOLD TO PARTY
        ELSE.
          SELECT SINGLE * FROM SADR WHERE ADRNR EQ VBPA-ADRNR.
          MOVE SADR-NAME1 TO SOLDP_TAB-NAME.   "SOLD TO PARTY
          MOVE SADR-NAME2 TO SOLDP_TAB-ADD1.   "SOLD TO PARTY
          MOVE SADR-NAME3 TO SOLDP_TAB-ADD2.   "SOLD TO PARTY
          MOVE SADR-NAME4 TO SOLDP_TAB-ADD6.
          MOVE SADR-ORT01 TO SOLDP_TAB-ADD3.   "SOLD TO PARTY
          MOVE SADR-PSTLZ TO SOLDP_TAB-ADD4.   "SOLD TO PARTY
          MOVE SADR-REGIO TO SOLDP_TAB-ADD5.   "SOLD TO PARTY
        ENDIF.
      ENDIF.
    insereted by anil on request by raghu 4/7/98
         select single * from knvk where kunnr eq vbpa-kunnr.
      CLEAR VBPA .
      SELECT * FROM VBPA WHERE VBELN EQ VBAK-VBELN AND PARVW = 'AP' AND
        ( PARNR NE SPACE OR ADRNR NE SPACE ) .
        IF  NOT VBPA-ADRNR IS INITIAL .
          SELECT SINGLE * FROM SADR WHERE ADRNR = VBPA-ADRNR .
          MOVE SADR-NAME3 TO HEAD_TAB-CPERSON.
          MOVE SADR-TELF1 TO HEAD_TAB-TPHONE.
        ELSE .
          SELECT SINGLE * FROM KNVK WHERE PARNR = VBPA-PARNR .
          MOVE KNVK-NAME1 TO HEAD_TAB-CPERSON.
          MOVE KNVK-TELF1 TO HEAD_TAB-TPHONE.
        ENDIF .
        EXIT .
      ENDSELECT .
      MOVE VBAK-VKBUR TO HEAD_TAB-SALOF.
      MOVE VBAK-VBELN TO HEAD_TAB-SALESOR.
      MOVE VBAK-WAERK TO HEAD_TAB-BILLCUR.
      MOVE KNA1-KUNNR TO HEAD_TAB-CCODE.
    END OF INSERTION
      SELECT SINGLE * FROM VBPA WHERE VBELN EQ I_TAB-INVO AND PARVW EQ 'WE'.
      IF VBPA-ADRNR EQ SPACE.
        SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ VBPA-KUNNR.
        MOVE KNA1-KUNNR TO B_SHIP_TO_PARTY."SHIP TO PARTY
        MOVE KNA1-NAME1 TO SHIPP_TAB-NAME. "SHIP TO PARTY
        MOVE KNA1-NAME2 TO SHIPP_TAB-ADD1. "SHIP TO PARTY
        MOVE KNA1-NAME3 TO SHIPP_TAB-ADD2. "SHIP TO PARTY
        MOVE KNA1-NAME4 TO SHIPP_TAB-ADD6. " add by deepak on 26/11/98
        MOVE KNA1-ORT01 TO SHIPP_TAB-ADD3. "SHIP TO PARTY
        MOVE KNA1-PSTLZ TO SHIPP_TAB-ADD4. "SHIP TO PARTY
        MOVE KNA1-REGIO TO SHIPP_TAB-ADD5. "SHIP TO PARTY
      ELSE.
        SELECT SINGLE * FROM SADR WHERE ADRNR EQ VBPA-ADRNR.
        move kna1-kunnr to b_ship_to_party.  "SHIP TO PARTY
        MOVE SADR-NAME1 TO SHIPP_TAB-NAME. "SHIP TO PARTY
        MOVE SADR-NAME2 TO SHIPP_TAB-ADD1. "SHIP TO PARTY
        MOVE SADR-NAME3 TO SHIPP_TAB-ADD2. "SHIP TO PARTY
        MOVE SADR-NAME4 TO SHIPP_TAB-ADD6.
        MOVE SADR-ORT01 TO SHIPP_TAB-ADD3. "SHIP TO PARTY
        MOVE SADR-PSTLZ TO SHIPP_TAB-ADD4. "SHIP TO PARTY
        MOVE SADR-REGIO TO SHIPP_TAB-ADD5. "SHIP TO PARTY
      ENDIF.
    IF B_IFSERVICEORDER EQ 'F'.
           SELECT SINGLE * FROM LIPS WHERE VBELN EQ B_INVNO.
           MOVE LIPS-WERKS TO HEAD_TAB-PLANT.
    ELSE.
      SELECT SINGLE * FROM VBRP WHERE VBELN EQ I_TAB-INVO
                                  AND FKIMG NE 0.
      MOVE VBRP-WERKS TO HEAD_TAB-PLANT.
    endif.
      SELECT SINGLE * FROM T001W WHERE WERKS EQ HEAD_TAB-PLANT.
      SELECT SINGLE * FROM SADR WHERE ADRNR EQ T001W-ADRNR.
      MOVE SADR-NAME1 TO HEAD_TAB-PNAM1.
      MOVE SADR-NAME2 TO HEAD_TAB-PNAM2.
      MOVE SADR-NAME3 TO HEAD_TAB-PNAM3.
      MOVE SADR-NAME4 TO HEAD_TAB-PNAM4.
      MOVE SADR-PSTLZ TO HEAD_TAB-PNAM5.
      PERFORM GETCST-LST USING T001W-ADRNR.
      DATA : B_AMOUNT_ITEM LIKE VBRP-NETWR .
      PERFORM GETTAXFORLINEITEMS USING I_TAB-INVO.
      B_INVOCTROI = 0.
      B_INVFORCHARGE = 0.
      B_INVTOT = 0.
      SELECT * FROM VBRP WHERE VBELN = I_TAB-INVO   "changed on 15/4
                           AND FKIMG NE 0.
        B_AMOUNT_ITEM = 0.
        MOVE VBRP-POSNR+2(4) TO LINE_TAB-SLNO.
        MOVE VBRP-POSNR TO LINE_TAB-POSNR.
        MOVE VBRP-MATNR+13(5) TO LINE_TAB-PRODCODE.
        MOVE VBRP-ARKTX TO LINE_TAB-DESC.
        SELECT SINGLE * FROM LIPS WHERE VBELN EQ B_INVNO
                                    AND VGPOS EQ VBRP-POSNR.
        SELECT SINGLE * FROM SER01 WHERE LIEF_NR EQ LIPS-VBELN
                                     AND POSNR EQ LIPS-POSNR.
        IF SY-SUBRC EQ 0.
          SELECT * FROM OBJK WHERE OBKNR EQ SER01-OBKNR.
            MOVE OBJK-SERNR TO SER_TAB-SERNO.
            MOVE VBRP-POSNR+2(4) TO SER_TAB-SLNO.
            WRITE SER_TAB-SERNO NO-ZERO TO SER_TAB-SERNO.
            CONDENSE SER_TAB-SERNO NO-GAPS.
            APPEND SER_TAB.
          ENDSELECT.
        ENDIF.
        MOVE VBRP-FKIMG TO B_TEMP.
        SPLIT B_TEMP AT '.' INTO B_TEMP1 B_TEMP.
        CONDENSE B_TEMP1 NO-GAPS.
        MOVE B_TEMP1 TO LINE_TAB-QTY.
        IF VBRP-KZWI2 GT 0.
          B_DIVIDE = VBRP-KZWI2 / VBRP-FKIMG.
          MOVE B_DIVIDE TO  LINE_TAB-RATE.
          B_DIVIDE = 0.
        ELSE.
          B_DIVIDE = VBRP-KZWI1 / VBRP-FKIMG.
          MOVE B_DIVIDE TO LINE_TAB-RATE.
          B_DIVIDE = 0.
        ENDIF.
        B_AMOUNT_ITEM = LINE_TAB-RATE * VBRP-FKIMG.
      add line_tab-rate to b_invrate.
        ADD B_AMOUNT_ITEM TO B_INVRATE.
        MOVE B_AMOUNT_ITEM TO LINE_TAB-AMOUNT.
        MOVE VBRP-VRKME TO LINE_TAB-UOM.
        B_TOTAL_TAX = 0.
       write : / 'before loop' , vbrp-posnr.
        LOOP AT TKOMV WHERE KPOSN EQ VBRP-POSNR AND KNUMV = VBRK-KNUMV.
         write : / vbrp-posnr , tkomv-kposn.
          IF TKOMV-KSCHL IN CTYPE.
            B_TOTAL_TAX = B_TOTAL_TAX +
                      ( ( ( TKOMV-KBETR * TKOMV-KAWRT ) * 100 ) / 100000 ).
           b_total_tax = b_total_tax + tkomv-kwert.
            ADD TKOMV-KWERT TO B_INVSTAX.
          ENDIF.
          IF TKOMV-KSCHL EQ 'ZOCT'.
            ADD TKOMV-KWERT TO B_INVOCTROI.
          ENDIF.
          IF TKOMV-KSCHL EQ 'ZF00' OR TKOMV-KSCHL EQ 'ZF01'.
            ADD TKOMV-KWERT TO B_INVFORCHARGE.
          ENDIF.
          IF TKOMV-KSCHL EQ 'ZIN6'.
            ADD TKOMV-KWERT TO B_INVTOT.
          ENDIF.
        ENDLOOP.
        B_SURCHARG = 'N'.
        B_TOT = 0.
        SORT TKOMV BY KSCHL.
        LOOP AT TKOMV WHERE KPOSN EQ VBRP-POSNR AND KNUMV = VBRK-KNUMV AND
                                                    KSCHL IN CTYPE.
          IF TKOMV-KSCHL = 'ZIN1' OR TKOMV-KSCHL = 'ZIN2'.
            B_TAX = TKOMV-KBETR / 10.
          ENDIF.
          IF TKOMV-KSCHL = 'ZIN3'.
            B_TAX = B_TAX + ( B_TAX * ( TKOMV-KBETR / 10 ) / 100 ).
          ENDIF.
          IF TKOMV-KSCHL = 'ZIN4'.
            B_TAX = B_TAX + ( B_TAX * ( TKOMV-KBETR / 10 ) / 100 ).
            B_SURCHARG = 'Y'.
          ENDIF.
        ENDLOOP.
        LOOP AT TKOMV WHERE KSCHL = 'ZIN6'.
          B_TOT = TKOMV-KBETR / 10.
        ENDLOOP.
        MOVE B_TOTAL_TAX TO LINE_TAB-B_TAXAMOUNT_LINE.
        " b_tax =  ( line_tab-b_taxamount_line / line_tab-amount ) * 100.
        MOVE B_TAX TO LINE_TAB-STAX .
        MOVE B_TOT TO LINE_TAB-OTAX.
    **Recently added**
        B_AMOUNT_ITEM = 0.
        B_TOTAL_TAX = 0.
        B_TAX = 0.
        B_TOT = 0.
       b_invrate = 0.
    ***till here
        APPEND LINE_TAB.
      ENDSELECT.
      PERFORM PRINTTEXT.
    ENDFORM.
    END-OF-SELECTION .
          FORM WRITEITEMS                                               *
    FORM WRITEITEMS.
      DATA : POPULATE TYPE I.
      PERFORM SELECTDATA.
      DESCRIBE TABLE INV_TAB LINES POPULATE.
      IF POPULATE NE 0.
        LOOP AT INV_TAB.
          ULINE AT 5(83).
          AT FIRST.
            WRITE : /5 '|'  ,10 '|SALES DOCUMENT NO' COLOR 3,
                    30 '|DELIVERY DOCUMENT NO' COLOR 3,
                    52 '|PAYER..      ' COLOR 3 ,
                    87 '|'.
            ULINE AT /5(83).
          ENDAT.
          SELECT * FROM VBRK WHERE VBELN EQ INV_TAB-BILLNO.
          CLEAR LIKP-VBELN.
          IF VBRK-RFBSK = 'C'.
            MOVE VBRK-VBELN TO HEAD_TAB-DOCNO.
            MOVE VBRK-FKDAT TO HEAD_TAB-DOCDT.
            SELECT * FROM VBFA WHERE VBELN EQ VBRK-VBELN.
                      "      and vbtyp_v ca 'JBGC'.
              IF  VBFA-VBTYP_V EQ 'G' OR VBFA-VBTYP_V EQ 'C'.
                B_IFSERVICEORDER = 'F'.
              ENDIF.
              IF VBFA-VBTYP_V = 'J'.
                 B_IFSERVICEORDER = 'T'.
              ENDIF.
            ENDSELECT.
            IF B_IFSERVICEORDER EQ 'T'.
              SELECT SINGLE * FROM VBFA WHERE VBELN EQ VBRK-VBELN
              AND VBTYP_V EQ 'J'.
              SELECT * FROM LIKP WHERE VBELN EQ VBFA-VBELV.
                IF SY-SUBRC NE 4.
                  SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ VBRK-KUNRG.
                  IFSELECTED = 'X'.
                  WRITE : /5 '|' ,8 IFSELECTED AS CHECKBOX ,10 '|',
                          11 VBRK-VBELN ,30 '|' ,31 LIKP-VBELN ,52 '|',
                          53 KNA1-NAME1 ,87 '|', LIKP-WERKS.
                  ULINE AT /5(83).
                  B_RECCOUNT = B_RECCOUNT + 1.
                ENDIF.
              ENDSELECT.
            ELSE.
              SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ VBRK-KUNRG.
              IFSELECTED = 'X'.
              WRITE : /5 '|' ,8 IFSELECTED AS CHECKBOX ,10 '|',
                      11 VBRK-VBELN ,30 '|' ,31 LIKP-VBELN ,52 '|',
                      53 KNA1-NAME1 ,87 '|', LIKP-WERKS.
              ULINE AT /5(83).
              B_RECCOUNT = B_RECCOUNT + 1.
            ENDIF.
            ELSE.
              IFSELECTED = ' '.
        CASE VBRK-RFBSK.
           WHEN 'A'.
           TXT = 'Billing document blocked for forwarding to FI'.
           WHEN 'B'.
           TXT = 'Posting document not created (account determ.error)'.
           WHEN 'D'.
           TXT = 'Billing document is not relevant for accounting'.
           WHEN 'E'.
           TXT = 'Billing document has been completed by cancellation'.
           WHEN 'F'.
           TXT = 'Posting document not created (pricing error)'.
           WHEN 'G'.
           TXT = 'Posting document not created (export data missing)'.
           WHEN 'H'.
           TXT = 'Posting using invoice list'.
           WHEN 'I'.
          TXT = 'Posting using invoice list (account determination error)'.
          WHEN 'J'.
          TXT = 'Accounting document created, accrual still incomplete'.
          ENDCASE.
              ULINE AT /5(83).
              WRITE : /5 '|' ,8 IFSELECTED  AS CHECKBOX INPUT OFF ,10 '|',
                      11 VBRK-VBELN ,30 '|' ,52 '|',
                      53 KNA1-NAME1 ,87 '|', LIKP-WERKS.
              ULINE AT /5(83).
              WRITE :/5 '|' , 8 TXT , 87 '|'.
              ULINE AT /5(83).
            ENDIF.
          ENDSELECT.
        ENDLOOP.
      ENDIF.
    ENDFORM.
    AT USER-COMMAND.
      DATA : CHECK(1).
      DATA : TOTALLINES LIKE SY-INDEX.
      START = 4.
      REFRESH LINE_TAB.
      REFRESH SER_TAB.
      B_PRNUCOMM = SY-UCOMM.
      DESCRIBE TABLE I_TAB LINES TOTALLINES.
      IF SY-UCOMM NE 'NEXT' AND SY-UCOMM NE 'LAST'.
    do b_reccount times.
        REFRESH I_TAB.
        DO.
          READ LINE START FIELD VALUE IFSELECTED INTO CHECK.
          IF SY-SUBRC EQ 0.
            IF CHECK EQ 'X'.
              READ LINE START FIELD VALUE LIKP-VBELN INTO I_TAB-SDNO.
              READ LINE START FIELD VALUE VBRK-VBELN INTO I_TAB-INVO.
           SELECT SINGLE * FROM VBFA WHERE VBELN EQ I_TAB-INVO
                                          AND VBTYP_V EQ 'C'.
            SELECT SINGLE * FROM VBRK WHERE VBELN EQ I_TAB-INVO.
              I_TAB-ORNO = VBRK-ZUONR.
              APPEND I_TAB.
              CLEAR I_TAB.
              CHECK = ' '.
            ENDIF.
            START = START + 2.
          ELSE.
            EXIT.
          ENDIF.
        ENDDO.
      ENDIF.
      DATA : B_UCOMM LIKE SY-UCOMM.
      MOVE SY-UCOMM TO B_UCOMM.
      CASE B_UCOMM.
        WHEN 'NEXT'.
          RECNO = RECNO + 1.
          IF RECNO GT TOTALLINES.
            RECNO = 1.
          ENDIF.
           read table i_tab index recno.
           perform sold_to_party_change using i_tab-invo.
          PERFORM MAIN.
        WHEN 'LAST'.
          RECNO = RECNO - 1.
          IF RECNO LT 1.
            RECNO = 1.
          ENDIF.
           read table i_tab index recno.
           perform sold_to_party_change using i_tab-invo.
          PERFORM MAIN.
        WHEN 'PRIN'.
           read table i_tab index recno.
           set pf-status '101'.
           perform sold_to_party_change using i_tab-invo.
          PRINT-CONTROL FUNCTION 'CI015'.
          PERFORM MAIN.
        WHEN 'PREV'.
          READ TABLE I_TAB INDEX RECNO.
         NEW-PAGE PRINT OFF NO-TITLE NO-HEADING LINE-SIZE 132 LINE-COUNT 65.
         set pf-status '102'.
         perform sold_to_party_change using i_tab-invo.
          PRINT-CONTROL FUNCTION 'CI015'.
          PERFORM MAIN.
        WHEN 'QUIT'.
          LEAVE SCREEN .
          EXIT.
      ENDCASE.
          FORM PRINTTEXT                                                *
    FORM PRINTTEXT.
      PERFORM READTEXT USING '0002' 'VBBK'.
      PERFORM READTEXT USING '0003' 'VBBK'.
      PERFORM READTEXT USING '0004' 'VBBK'.
      PERFORM READTEXT USING '0012' 'VBBK'.
      PERFORM READTEXT USING '0013' 'VBBK'.
      PERFORM READTEXT USING '0022' 'VBBK'.
      PERFORM READTEXT USING 'Z103' 'VBBP' .
      PERFORM READTEXT USING 'Z104' 'VBBP' .
    added by praveen as per selvam's request.
      IF FKART = 'FV'.
      PERFORM READTEXT USING 'ZIS1' 'VBBK'.
      PERFORM READTEXT USING 'ZIS2' 'VBBK'.
      ENDIF.
    ENDFORM.
          FORM READTEXT                                                 *
    -->  B_ID                                                          *
    FORM READTEXT USING B_ID B_OBJECT.
      DATA : BEGIN OF HEADER1 OCCURS 0.
              INCLUDE STRUCTURE THEAD.
      DATA : END OF HEADER1.
      DATA : BEGIN OF LINE1 OCCURS 0.
              INCLUDE STRUCTURE TLINE.
      DATA : END OF LINE1.
      DATA : B_NAME LIKE THEAD-TDNAME.
      B_NAME = I_TAB-SDNO.
      PERFORM FILL_CHAR(ZURL) USING 10 '0' I_TAB-SDNO CHANGING B_NAME.
    added by praveen to pick up from and to date for invoice.
      IF B_ID = 'ZIS1' OR B_ID = 'ZIS2'.
           B_NAME = I_TAB-INVO.
      ENDIF.
      IF B_OBJECT = 'VBBP'.
        CONCATENATE I_TAB-ORNO VBRP-POSNR INTO B_NAME.
      ENDIF.
      CALL FUNCTION 'READ_TEXT'
           EXPORTING
               ID                       = B_ID
               LANGUAGE                 = 'E'
                NAME                    = B_NAME
                OBJECT                  = B_OBJECT
            header                    = header1
       IMPORTING
               HEADER                   = HEADER1
           TABLES
                LINES                   = LINE1
           EXCEPTIONS
                ID                      = 1
                LANGUAGE                = 2
                NAME                    = 3
                NOT_FOUND               = 4
                OBJECT                  = 5
                REFERENCE_CHECK         = 6
                WRONG_ACCESS_TO_ARCHIVE = 7
                OTHERS                  = 8.
      DATA : LINE(40).
      LOOP AT LINE1.
        LINE = LINE1-TDLINE.
      ENDLOOP.
      CASE B_ID.
        WHEN '0002'.
          HEAD_TAB-CARNAME = LINE.
        WHEN '0012'.
          HEAD_TAB-SPSHIPI = LINE.
        WHEN '0013'.
          HEAD_TAB-SPCARIN = LINE.
        WHEN '0003'.
          HEAD_TAB-LRNO = LINE.
        WHEN '0004'.
          HEAD_TAB-LRDT = LINE.
        WHEN '0022'.
          HEAD_TAB-MODEPAY = LINE.
        WHEN 'Z103'.
          HEAD_TAB-CSTNO = LINE.
        WHEN 'Z104'.
          HEAD_TAB-LSTNO = LINE.
        WHEN 'ZIS1'.
          HEAD_TAB-FROMDATE = LINE.
          CONDENSE HEAD_TAB-FROMDATE NO-GAPS.
         WHEN 'ZIS2'.
          HEAD_TAB-ENDDATE = LINE.
          CONDENSE HEAD_TAB-ENDDATE NO-GAPS.
      ENDCASE.
    ENDFORM.
          FORM INIT                                                     *
    FORM INIT.
      CLEAR HEAD_TAB.
      REFRESH LINE_TAB.
      CLEAR LINE_TAB.
      REFRESH SER_TAB.
      CLEAR SER_TAB.
      B_DIFFCOUNT = 0.
      B_COUNTOFRECORDS = 0.
      B_ORDERREFNO = ' '.
      B_RATEFORITEM = ' '.
      B_TOTALAMOUNT = 0.
      B_CUSTOMERNO = ' '.
      B_RECORDCOUNTER = 0.
      B_AMOUNTINWORDS = ' '.
      B_DECIMALAMOUNTINWORDS = ' '.
      B_AMOUNTINWORDSFINAL = ' '.
      B_CUSTOMERCODE = ' '.
      B_STRINGLENGTH = 0.
      B_INVNO = ' '.
      B_RECCOUNT = 0 .
      START = 0.
      IFSELECTED = ' '.
      ANS = ' '.
    ENDFORM.
          FORM GETTAX                                                   *
    -->  INVO                                                          *
    FORM GETTAX USING INVO.
      DATA: BEGIN OF TKOMVD OCCURS 0.
              INCLUDE STRUCTURE KOMVD.
      DATA: END OF TKOMVD.
      DATA: BEGIN OF COMM_ITEM_E OCCURS 0.
              INCLUDE STRUCTURE KOMP .
      DATA: END OF COMM_ITEM_E.
      REFRESH TKOMV.
      MOVE 'I' TO CTYPE-SIGN.
      MOVE 'BT' TO CTYPE-OPTIONS.
      MOVE 'ZIN4' TO CTYPE-HIGH.
      MOVE 'ZIN1' TO CTYPE-LOW.
      APPEND CTYPE.
      SELECT SINGLE * FROM VBRK WHERE VBELN = INVO.
      MOVE-CORRESPONDING VBRK TO KOMK.
      CALL FUNCTION 'RV_PRICE_PRINT_ITEM'
           EXPORTING
                COMM_HEAD_I = KOMK
                COMM_ITEM_I = KOMP
           TABLES
                TKOMV       = TKOMV
                TKOMVD      = TKOMVD
           EXCEPTIONS
                OTHERS      = 1.
    SUB TOTAL AMOUNT
      LOOP AT TKOMV .
        IF TKOMV-KSCHL EQ 'ZSRP'.
          HEAD_TAB-STAMT = HEAD_TAB-STAMT + TKOMV-KWERT.
        ENDIF.
      ENDLOOP.
    *SALES TAX AMOUNT
    SELECT * FROM VBRP WHERE VBELN EQ INVO AND FKIMG NE 0. "changed on 15/4
        LOOP AT TKOMV WHERE KPOSN EQ VBRP-POSNR.
          IF TKOMV-KSCHL IN CTYPE.
            HEAD_TAB-STAXAMT = HEAD_TAB-STAXAMT +  TKOMV-KWERT.
          ENDIF.
        ENDLOOP.
      ENDSELECT.
    FORWARDING CHARGES
      LOOP AT TKOMV.
        IF TKOMV-KSCHL EQ 'ZF00'.
          HEAD_TAB-FCHRG = HEAD_TAB-FCHRG + TKOMV-KWERT.
        ENDIF.
        IF TKOMV-KSCHL EQ 'ZIN6'.
          HEAD_TAB-OCHRG = HEAD_TAB-OCHRG + TKOMV-KWERT.
        ENDIF.
      ENDLOOP.
    *grand total
      CLEAR HEAD_TAB-GTOTAL.
      HEAD_TAB-GTOTAL = HEAD_TAB-GTOTAL + HEAD_TAB-FCHRG.
      HEAD_TAB-GTOTAL = HEAD_TAB-GTOTAL + HEAD_TAB-STAXAMT.
      HEAD_TAB-GTOTAL = HEAD_TAB-GTOTAL + HEAD_TAB-STAMT.
      HEAD_TAB-GTOTAL = HEAD_TAB-GTOTAL + HEAD_TAB-OCHRG.
      PERFORM CONVERT.
    ENDFORM.
    *&      Form  GETCST-LST
    FORM GETCST-LST USING B_REGION.
      SELECT SINGLE * FROM SADR WHERE ADRNR EQ B_REGION.
      MOVE SADR-TELTX TO HEAD_TAB-PLSTNO.
      MOVE SADR-TELX1 TO HEAD_TAB-PCSTNO.
    ENDFORM.                               " GETCST-LST
    *&      Form  ALIGNWRITE
    FORM ALIGNWRITE.
    *set pf-status '102'.
      PERFORM HEADER.
      DATA : LINECTR TYPE I VALUE 0.
      DATA : B_RATE(12),B_AMOUNT(13).
      DATA : B_SCOUNT TYPE I VALUE 0.
      DATA B_SRLNO TYPE I VALUE 0.
      DATA : B_FLAG TYPE I VALUE 0.
      DATA : B_SUBTOTAL LIKE VBRP-NETWR VALUE 0.
      LOOP AT LINE_TAB.
        ADD 1 TO LINECTR.
        ADD 1 TO B_SRLNO.
        B_RATE = LINE_TAB-RATE.
        B_AMOUNT = LINE_TAB-AMOUNT.
        WRITE : / ' ',7(4) B_SRLNO.
        WRITE :14 LINE_TAB-PRODCODE.
        WRITE :23 LINE_TAB-DESC.
        WRITE :67(3) LINE_TAB-UOM.
        WRITE :73(5) LINE_TAB-QTY RIGHT-JUSTIFIED.
        WRITE :80(14) LINE_TAB-RATE RIGHT-JUSTIFIED.
        B_SUBTOTAL = B_SUBTOTAL + LINE_TAB-AMOUNT.
        WRITE :95(12) LINE_TAB-AMOUNT RIGHT-JUSTIFIED.
        CONDENSE LINE_TAB-STAX NO-GAPS.
        LINE_TAB-STAX =
                 ( LINE_TAB-B_TAXAMOUNT_LINE / LINE_TAB-AMOUNT ) * 100.
        WRITE :110 LINE_TAB-STAX(5).
        PERFORM IFENDOFPAGE USING LINECTR B_SUBTOTAL.
                                           " write :95 line_tab-otax.
        B_SCOUNT = 0.
        IF PRINTSL EQ 'X'.
          DESCRIBE TABLE SER_TAB LINES B_FLAG.
          IF B_FLAG NE 0.
            WRITE : / ' ',12 'Serial Nos :'.
            ADD 1 TO LINECTR.
          ENDIF.
          LOOP AT SER_TAB WHERE SLNO EQ LINE_TAB-SLNO.
            B_SCOUNT = B_SCOUNT + 1.
            WRITE : (18)SER_TAB-SERNO NO-GAP,'  '.
            IF B_SCOUNT EQ 3.
              WRITE : /23 ' '.
              ADD 1 TO LINECTR.
              B_SCOUNT = 0.
            ENDIF.
            PERFORM IFENDOFPAGE USING LINECTR B_SUBTOTAL.
          ENDLOOP.
          B_SCOUNT = 0.
        ENDIF.
      ENDLOOP.
      DATA : B_EXTRA TYPE I.
      B_EXTRA = 23 - LINECTR.
      DO B_EXTRA TIMES.
        WRITE : ' ' ,/.
      ENDDO.
      PERFORM FOOTER.
    ENDFORM.                               " ALIGNWRITE
    **form footer **
    FORM FOOTER.
      WRITE :/ ' '.
      WRITE :/ ' ',24 HEAD_TAB-BILLCUR,58 B_INVRATE,
              101 HEAD_TAB-CARNAME+0(15).
      WRITE :/58 B_INVSTAX ,79 HEAD_TAB-CARNAME+15(20).
      WRITE :/54 'TOT:', HEAD_TAB-OCHRG ,95 HEAD_TAB-LRNO.
      WRITE :/58 B_INVFORCHARGE , 89 HEAD_TAB-LRDT.
      WRITE :/17 HEAD_TAB-LSTNO,58 B_INVOCTROI , 99 HEAD_TAB-MODEPAY.
    HEAD_TAB-GTOTAL = B_INVRATE + B_INVSTAX + B_INVOCTROI + B_INVFORCHARGE.
      WRITE :/17 HEAD_TAB-CSTNO,61 HEAD_TAB-GTOTAL.
      PERFORM CONVERT.
      WRITE :/ ' ',/,/.
      WRITE :/17 HEAD_TAB-PLSTNO4(31),44 B_AMOUNTINWORDS0(100).
      WRITE :/17 HEAD_TAB-PCSTNO4(31),44 B_AMOUNTINWORDS100(100).
      WRITE : /.
    ENDFORM.
    *HEADER INFO PRINTING*
    FORM HEADER.
      DATA : B_POREF(35).
    *concatenate head_tab-poref '/' head_tab-podat into b_poref.
      CONDENSE HEAD_TAB-PODAT.
      CONDENSE HEAD_TAB-POREF.
      FORMAT INTENSIFIED OFF.
      WRITE : / ' ',/,/.                   "a line feed is removed
      WRITE : / '  ',83 HEAD_TAB-PNAM1.
      WRITE : / '  ',83 HEAD_TAB-PNAM2.
      WRITE : / '  ',83 HEAD_TAB-PNAM3.
      PRINT-CONTROL FUNCTION 'CI010'.
      WRITE : /13 HEAD_TAB-DOCNO,61 HEAD_TAB-DOCDT.
      PRINT-CONTROL FUNCTION 'CI015'.
      WRITE : '  ',86 HEAD_TAB-PNAM5.
      WRITE :/83 HEAD_TAB-PNAM4.
      WRITE : / ' ',/, 90 HEAD_TAB-SPSHIPI+0(30).
      WRITE : /8 SOLDP_TAB-NAME ,47 SHIPP_TAB-NAME,
                90 HEAD_TAB-SPSHIPI+30(10).
      WRITE : / ' ',8 SOLDP_TAB-ADD1 , 47 SHIPP_TAB-ADD1.
      WRITE : / ' ',8 SOLDP_TAB-ADD2 , 47 SHIPP_TAB-ADD2.
      WRITE : / ' ',8 SOLDP_TAB-ADD6 , 47 SHIPP_TAB-ADD6,
                    90 HEAD_TAB-SPCARIN+0(30).
      WRITE : / ' ',8 SOLDP_TAB-ADD3 , 47 SHIPP_TAB-ADD3,
                 90 HEAD_TAB-SPCARIN+30(10).
      WRITE : / ' ',8 SOLDP_TAB-ADD4 , 47 SHIPP_TAB-ADD4.
      WRITE : / ' ',25 HEAD_TAB-CCODE ,68 HEAD_TAB-CPERSON ,
                   109 HEAD_TAB-SALESOR,/.
      MOVE HEAD_TAB-PODAT TO B_STR.
      CONCATENATE B_STR6(2) '.' B_STR4(2) '.' B_STR+2(2) INTO B_STR.
      CONCATENATE HEAD_TAB-POREF '/' B_STR INTO B_STR.
      MOVE B_STR TO HEAD_TAB-POREF.
      WRITE : / ' ',25 B_STR.
      WRITE : ' ',64 HEAD_TAB-TPHONE NO-ZERO,109 HEAD_TAB-SALOF.
      WRITE : / ' ',/,/,/,/.
    ENDFORM.
          FORM CONVERT                                                  *
    FORM CONVERT.
      DATA : B_WORDS(100).
      DATA : B_DECIS(100).
      DATA : TEMP1(40).
      DATA : TEMP2(40).
      CALL FUNCTION 'Z_CONVERSION_TO_WORDS'
           EXPORTING
                AMOUNT    = HEAD_TAB-GTOTAL
           IMPORTING
                IN_WORDS  = B_WORDS
                IN_DECMS  = B_DECIS
           EXCEPTIONS
                TOO_LARGE = 1
                OTHERS    = 2.
      MOVE HEAD_TAB-GTOTAL TO TEMP1.
      SPLIT TEMP1 AT '.' INTO TEMP1 TEMP2.
      IF HEAD_TAB-BILLCUR EQ 'INR'.
        IF TEMP2 NE '00'.
          CONCATENATE 'Rupees' B_WORDS 'and paise' B_DECIS
                      INTO B_AMOUNTINWORDS SEPARATED BY SPACE.
        ELSE.
          CONCATENATE 'Rupees' B_WORDS B_DECIS
                      INTO B_AMOUNTINWORDS SEPARATED BY SPACE.
        ENDIF.
      ELSE.
        CONCATENATE HEAD_TAB-BILLCUR B_WORDS B_DECIS
                    INTO B_AMOUNTINWORDS SEPARATED BY SPACE.
      ENDIF.
    ENDFORM.
          FORM GETTAXFORLINEITEMS                                       *
    -->  INVO                                                          *
    FORM GETTAXFORLINEITEMS USING INVO.
      DATA: BEGIN OF TKOMVD OCCURS 0.
              INCLUDE STRUCTURE KOMVD.
      DATA: END OF TKOMVD.
      CLEAR CTYPE.
      CLEAR KOMK.
      SELECT SINGLE * FROM VBRK WHERE VBELN = INVO.
      MOVE-CORRESPONDING VBRK TO KOMK.
      CALL FUNCTION 'RV_PRICE_PRINT_ITEM'
           EXPORTING
                COMM_HEAD_I = KOMK
                COMM_ITEM_I = KOMP
           TABLES
                TKOMV       = TKOMV
                TKOMVD      = TKOMVD
           EXCEPTIONS
                OTHERS      = 1.
      DATA : B_TAX TYPE I.
    *SALES TAX pervcentage for line items.
      MOVE 'I' TO CTYPE-SIGN.
      MOVE 'BT' TO CTYPE-OPTIONS.
      MOVE 'ZIN4' TO CTYPE-HIGH.
      MOVE 'ZIN1' TO CTYPE-LOW.
      APPEND CTYPE.
    ENDFORM.
          FORM IFENDOFPAGE                                              *
    -->  LINECTR                                                       *
    -->  B_SUBTOTAL                                                    *
    FORM IFENDOFPAGE USING LINECTR B_SUBTOTAL.
      IF LINECTR EQ 19.
        WRITE : / ' ',/,10 'Carried forward '.
        PERFORM PUTALINE.
        WRITE :83 B_SUBTOTAL.
        ADD 1 TO LINECTR.
                                           "do 37 times.
        DO 24 TIMES.
          WRITE : ' ',/.
        ENDDO.
        PERFORM HEADER.
        WRITE : /10 'Brought forward'.
        PERFORM PUTALINE.
        WRITE : 83 B_SUBTOTAL.
        LINECTR = 1.
      ENDIF.
    ENDFORM.
          FORM PUTALINE                                                 *
    FORM PUTALINE.
      DO 27 TIMES.
        WRITE : '-'.
      ENDDO.
      WRITE '>'.
    ENDFORM.
          FORM ERRORCHECK                                               *
    -->  SY-SUBRC                                                      *
    FORM ERRORCHECK USING SY-SUBRC.
      IF SY-SUBRC NE 0.
        PERFORM WIN_INFO(ZURL) USING 'Error' 'Document does not exists'
                                     'Please re-enter the doc #'.
        SET SCREEN 1000.
        LEAVE SCREEN.
        EXIT.
      ENDIF.
    ENDFORM.
          FORM SOLD_TO_PARTY_CHANGE                                     *
    -->  B_INVNO                                                       *
    FORM SOLD_TO_PARTY_CHANGE USING B_INVNO.
    *TO CHANGE THE SOLD TO PARTY FOR THE BILLING DOCUMENT.
      DATA : BEGIN OF NEW_SHIP_TAB OCCURS 0.
      DATA : DESC(20).
      DATA : CUSTCODE LIKE KNA1-KUNNR.
      DATA : DUMMY(5).
      DATA : CUSTNAME LIKE KNA1-NAME1.
      DATA : END OF NEW_SHIP_TAB.
      DATA : B_TABIX LIKE SY-TABIX.
      DATA : B_SOLDCODE LIKE KNA1-KUNNR.
      DATA : B_PAYCODE LIKE KNA1-KUNNR.
      SELECT * FROM VBPA WHERE VBELN EQ B_INVNO
                                AND PARVW IN ('RE','WE','AG').
        SELECT SINGLE * FROM KNA1 WHERE KUNNR EQ VBPA-KUNNR.
        MOVE KNA1-NAME1 TO NEW_SHIP_TAB-CUSTNAME.
        MOVE KNA1-KUNNR TO NEW_SHIP_TAB-CUSTCODE.
        MOVE '      ' TO NEW_SHIP_TAB-DUMMY.
        CASE VBPA-PARVW.
          WHEN 'WE'.
            MOVE 'SHIP TO PARTY' TO NEW_SHIP_TAB-DESC.
            MOVE KNA1-KUNNR TO B_PAYCODE.
          WHEN 'RE'.
            MOVE KNA1-KUNNR TO B_SOLDTOPARTYCODE.
            MOVE 'PAYER        ' TO NEW_SHIP_TAB-DESC.
          WHEN 'AG'.
            MOVE KNA1-KUNNR TO B_SOLDCODE.
            MOVE 'SOLD TO PARTY' TO NEW_SHIP_TAB-DESC.
        ENDCASE.
        APPEND NEW_SHIP_TAB.
      ENDSELECT.
      B_SPCFLAG = 'F'.
      IF B_SOLDCODE NE B_SOLDTOPARTYCOD

    Hi Sanjeev ,
    Please observe your code carefully.
    You say you have assigned your form name in the Print Program ,but i am not able to find it.
    Your program uses the Subroutine
    PERFORM OPENFORM USING 'ZINVOICEDUMMY'
    where the 'ZINVOICEDUMMY' is the parameter value your are passing for FORM but your form name is zinv.
    so you have to pass your form name using this subroutine.
    PERFORM OPENFORM USING 'ZINV'
    FORM OPENFORM USING B_FORMNAME.
    CALL FUNCTION 'OPEN_FORM'
    EXPORTING
    FORM = B_FORMNAME
    OPTIONS = ITCPO
    DEVICE = B_ELEMENT
    IMPORTING
    RESULT = ITCPP
    EXCEPTIONS
    CANCELLED = 1
    DEVICE = 2
    FORM = 3
    OPTIONS = 4
    UNCLOSED = 5
    OTHERS = 6.
    ENDFORM.
    Regards,
    AShwini

  • Scripts doubt

    hi all,
    is there anny option to pass datas from Program to sapscript other than open form , close form and write form.
    Regards,
    Ramya

    No way, you can open a form without using this function modules... Write_form is must to display the windows in the form.
    Only other way is to create a smartform..
    Regards,
    SaiRam

  • Small Shell Script Doubt

    I Have a cmd file
    i dont understand what these lines are inside that .cmd file ..
    echo Starting FTP ... >> /u03/app/oracle/admin/s7/s7.log
    date >>/u03/app/oracle/admin/s7/s7.log
    echo ----Start Uploading the Employer Master Table---->> /u03/app/oracle/admin/s7/s7.log
    echo End Date/Time ---
    date >> u03/app/oracle/admin/s7/s7.log
    My Question is ..are these lines are Automatically generated ?
    and what is this operator in Unix *>>*
    Thank you all in Advance,
    Data Boy

    Hey Data Boy,
    the >> symbol is a redirect symbol to contatenate some output to a file. For example, what you have shown us will add the following to the /u03/app/oracle/admin/s7/s7.log file.
    Starting FTP ...
    Wed Nov 12 09:15:12 PST 2008
    ----Start Uploading the Employer Master Table----
    End Date/Time ---
    Note, the date is also listed from the line date >>/u03/app/oracle/admin/s7/s7.log
    P.S. To re-create the file just use the > (single arrow) redirect symbol. It will delete the current file and start over. Then you can use the >> (double arrow) symbol to keep adding to the file.
    Michael Cunningham

  • Doubt on occurs 0 & script.....

    HI
    THIS ARIJIT
    CAN ANYONE TELL ME THE
    1)HOW TO CREATE BUTTON IN SELECTION SCREEN???
    2)IN CASE OF ITAB WHEN WE DEFINE OCCURS 0 THEN A 8 KB PAGE IS ALLOCATED..
    IF I DEFINE OCCURS 1 THEN THE PAGE SIZE IS 16 KB...PLESE CLEAR MY DOUBT??
    3) CAN ANYONE TELL ME HOW MANY NUMBERS OF MAIN WINDOW IN SCRIPT IN ONE PAGE WE CAN DEFINE MAX 1 MAIN WINDOW
    BUT IN SMARTFORMS WE CAN DEINE HOW MANY NUMBER OF MAIN WINDOW IN ONE
    PAGE?? PLESE CLEAR MY DOUBT??
    I WILL REWARD BY POINT..

    for the first point
    check this link.
    Button in a selection screen
    for second point.
    DIff btn occurs 0 and occurs n
    for third point
    Smartforms: How many main window can i have in a page ?
    regds,
    kiran

  • Doubt in printing variables in script

    Hi Experts,
    I am having small doubt.
    1).I need to write one condition for sales org 'US11' and divisions '20' or '40'. So the below logic is correct or not.
    if vbdkr-vkorg = 'US11' and and vbdkr-vtweg = '20' or vbdkr-vtweg = '40'.
    select........
    endif.
    2). i need th print these variables in script. can i use the logic like this.
    if &vbdkr-vkorg& = 'US11' and and &vbdkr-vtweg& = '20' or &vbdkr-vtweg& = '40'.
    &zkbetr1/ zpery1&
    else.
    &zkbetr/ zpery& (This is for sales org other than US11)
    endif.
    Thanks & Regards,
    Ramana.

    Hi,
    I think your condition would be more apt if you code this way:
    IF vbdkr-vkorg EQ 'US11' AND ( vbdkr-vtweg EQ '20' OR vbdkr-vtweg EQ '40' ).
    ENDIF.
    Also, look at putting the code into a subroutine called from your driver or subroutine program and then returning the value. The "logic" for determining the value to be printed can then be performed within the subroutine rather than the SAP script.
    Cheers,
    Aditya

  • b Urgent.Doubt in Scripts regarding itcsy.

    Hi All, I have the requirement to modify the Standard Script (F140_ACC_STAT_01) and Print Program name is (RFKORD10) to add three fields  at item level to display to print <b>Due Date ,Past Due and PO# number </b>.for these fields i am using <b>RF140-VSTID ,RF140-VZTAS and BSID-SGTXT</b>. In the Print Program i am able to see those fields also. but when i execute program i am not getting the values for those fields . For this Can i call the External Subroutine to display those values. if so what conditions should i have to follow and which table i have to use . At item level Can we use the external subroutines. Otherwise i need to modify the Standard Print Program.Please suggest me. it will be greatful if you help me.

    There are two things -
    1. Did you attach ur custome program to driver program?
    2. The important thing, even the fields are there in driver program, but is it sending it to Script during WRITE_FORM. Try to search for that.And check out the structure in Script, what fields it has and is any of them is useful for you.Otherwise write a routine before calling any Text Element in the main window
    or in secondary window.
    Regards,
    Amit
    Reward all helpful replies.

  • A doubt with a script in CCX 9

    Hi
    I have a script wich a user can place a call to a DN, hear a prompt asking for leave a message to be recorded and after finish press #.
    Question is script is running all properly but i can not reach where is leaving message recorded.
    This is the script
    And this is where i put to be saved the prompts, but is always empty
    In systemPromptDir  "..\..\system\es_ES\"
    Is a CCX 9 what i must to change in order to make this run?
    Thanks!!

    Please, please, please, I am begging you on my knees. Please. Cooperate.
    Do reactive debug. Tell me where it fails. What is the last step that is correctly executed.
    Shooting in the dark saying maybe this is wrong or that is wrong will not get us anywhere.
    By the way, that variable systemPromptDir is not used anymore if you did what I told you and removed the Write Document step.
    This is the last comment from me if you can't do what I ask you to do. I am sorry, but I can't help if you are not willing to cooperate.
    G.

  • How we can handle the below doubt in Java Script!!

    Hi All,
    I need to handle the below scenerio in javascript, i am very poor in scripting langauage could any help me out.
    Below are the three where we have specail character
    words as
    1. transfer (…)
    2. Shell’s
    3. Vitol – as
    The above 3 are having some specail characters which we need to
    replace as mentioned below
    need to use a Function/Method in some scripting language like Java
    script to replace the special character with a predefined sequence eg:
    single quote with “a1b1” before inserting the data in to the data base
    and then while retrieving the record from the database replace “a1b1”
    with single quote.
    Note#:It is a text area where user can either enter or copy and paste
    the content.
    Thanks,
    Anoo..

    Hi Anoo,
    always remember to put your apex and database versions, it makes it easier to help.
    You mentioned stripping out special characters and then putting them back for display. Is there a particular reason why?
    If you're having difficulty querying the 'special' characters from SQL, you can create a view to handle that complexity.
    The examples you gave don't contain any characters you can't query on. Maybe I'm missing something.
    Kofi

  • Sap script payment remittance advice email doubt

    i have to send mail to vendor of sap script layout . the FM which is configured in the business transaction events of accounts recievable and payable. can any one this code u can explain me
    regards
    sarath

    A very strange idea from my point of view.
    you had used the clerks internet field (company code view) for financial communication in the past,
    this was changed to the standard communication
    and since you need a different mail address for POs you consider to use the clerks internet field in the company code view.
    Undoing the change for the payment remittance advice would be more logical, as then at least Financial communication would pick its email from a financial data source, which is more logical than pulling the data from financial data source for purchasing activities.
    In general you can create a PO long before a company code view is needed, this speeds up the procurement process, as the company code view is needed when you do goods or invoice receipt.  So you are slowing down the process.
    Using the clerks internet field would be really confusing for the users, both FI and purchasing, and it can conflict with your authorization settings too. In our system a buyer has no access to company code data.
    I would eventually consider to use the Remark field in the email address to indicate for what purpose this email address is used. If you do this e.g.with a leading number 1 for finance , 2 for purchasing, then you could have a exit check on that and determine the right email address .

  • Small doubt on displaying variables in sap script

    HI all,
    Can anyone let me know if i am in the correct way or not.
    i'm modifying one existing script. to display some data in the script i am doing like this :
    get the data into itab.
    loop at itab into wa.
    call FM write_form
       element = 'TEXT'.
    endloop.
    in the layout i am using this elements and variables
    /E TEXT
    S1 <D1>&WA-FIELD1&</> <D1>&WA_FIELD2&</>
    but the work in not having any data in the layout whereas before call write_form its having data.
    can anyone suggest me who to deal with this.
    thanks

    You can check if your SAPScript is able to talk with the driver program.
    In SE71
    Open in Change Mode
    Form > Check > Text
    Select the Include Res checkbox .. Press Enter
    Enter your Program in the Next popup by "Append Print Program"
    Now, press Copy.
    It will show you the errors.
    In your proram WA must a in TOP include or Globally declared.
    Regards,
    Naimesh Patel

Maybe you are looking for

  • How to setup batch management in sap and how batch work?

    Hi I hope to check how batch managment work in sap? If we setup batch management in mm03 for one matieral, Will the batch number be created automatically or the number should be created first then we scan it? when we do goods movement for this mateir

  • Want to tick Open Item Management in TDS Account

    Hi Gurus, I have posted some transactions to TDS GL Account but open item management is not ticked. Now i want to tick open item management and i am running program RFSEPA02 in se38 but system is giving message that do not use report program for open

  • Loading Issue Urgent

    Hi all, I am loading the data from sourc to PSA in BI 7.' in monitor screen der is no change in the record number frm last few min. the record num is not changing inputs r welcomed. Regards KK

  • Want to activate QM module functionality

    Dear all, We are using ECC5.0 with SD,MM,PP & FICO modules. We are looking to use the QM module as well. However not sure if we need to pay separate licence fee to SAP for using QM module. The system allows us to configure QM module to meet our needs

  • Getting error trying to log into iTunes account

    When trying to sign in iTunes account on sons iMac I get an unknown error in "red" I now the password works as it is mine and works on all my other devices. I am able to access the Mac app store with his logon and I am able to access iTunes with my l