How to reduce performance time.

Hi,
Any body guide me how to reduce performance time for this report.
It’s taking to much time for execution.
*& Report  ZEOU_CST_CLAIM_REP                                          *
REPORT  zeou_cst_claim_rep.
*& Program Name    : ZEOU_CST_CLAIM_REP                                *
*& Title           : CST Claim Report                                  *
*& Module Name     : EOU                                               *
*& Author          : Chandra Vangoor                                   *
*& Create Date     : 05.05.2006                                        *
*& Logical DB      : None                                              *
*& Program Type    : On-Line.                                          *
*& SAP Release     : 4.7                                               *
*& Description     :                                                   *
*& Log    Date    Author        Reason of change
TABLES
TABLES : a363,
         mara,
         marc,
         makt,
         ekko,
         ekpo,
         mkpf,
         mseg,
         konp,
         konh.
SELECTION-SCREEN
SELECTION-SCREEN   :   BEGIN OF BLOCK cst WITH FRAME TITLE text-001.
SELECT-OPTIONS :   s_matnr FOR mara-matnr,                            "Material Number
                   s_lifnr FOR ekko-lifnr,                            "Account Number of the Vendor
                   s_bedat FOR ekko-bedat,                            "Purchasing Document Date
                   s_kschl FOR konh-kschl OBLIGATORY NO INTERVALS,    "Condition type
                   s_bwart FOR mseg-bwart OBLIGATORY NO INTERVALS.    "Movement Type (Inventory Management)
PARAMETERS     :   p_werks LIKE marc-werks OBLIGATORY.                "Plant
SELECTION-SCREEN   :   END OF BLOCK cst.
INCLUDES
INCLUDE zalv_data.
DATA - INTERNAL TABLES AND FIELD LISTS
DATA :  BEGIN    OF     a363_itab  OCCURS 0,
        matnr    LIKE   a363-matnr,                    "Material Number
        lifnr    LIKE   a363-lifnr,                    "Account Number of the Vendor
        werks    LIKE   a363-werks,                    "Plant
        kschl    LIKE   a363-kschl,                    "Condition type
        knumh    LIKE   a363-knumh,                    "Condition record number
        kbetr    LIKE   konp-kbetr,                    "Rate (condition amount or percentage) where no scale exists
        END      OF     a363_itab.
DATA :  BEGIN    OF     konp_itab  OCCURS 0,
        knumh    LIKE   a363-knumh,                    "Condition record number
        kbetr    LIKE   konp-kbetr,                    "Rate (condition amount or percentage) where no scale exists
        lifnr    LIKE   a363-lifnr,                    "Account Number of the Vendor
        END      OF     konp_itab.
DATA :  BEGIN    OF     ekko_itab  OCCURS 0,
        ebeln    LIKE   ekko-ebeln,                    "Purchasing Document Number
        lifnr    LIKE   ekko-lifnr,                    "Account Number of the Vendor
        bedat    LIKE   ekko-bedat,                    "Purchasing Document Date
        END      OF     ekko_itab.
DATA :  BEGIN    OF     ekpo_itab  OCCURS 0,
        ebeln    LIKE   ekpo-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   ekpo-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   ekpo-matnr,                    "Material Number
        werks    LIKE   ekpo-werks,                    "Plant
        menge    LIKE   ekpo-menge,                    "Purchase order quantity
        END      OF     ekpo_itab.
DATA :  BEGIN    OF     v_po_det  OCCURS 0,            "VENDOR + PLANT + PO DEATILS
        lifnr    LIKE   ekko-lifnr,                    "Account Number of the Vendor
        ebeln    LIKE   ekko-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   ekpo-ebelp,                    "Item Number of Purchasing Document
        bedat    LIKE   ekko-bedat,                    "Purchasing Document Date
        matnr    LIKE   ekpo-matnr,                    "Material Number
        werks    LIKE   ekpo-werks,                    "Plant
        menge    LIKE   ekpo-menge,                    "Purchase order quantity
        kbetr    LIKE   konp-kbetr,                    "Rate (condition amount or percentage) where no scale exists
        END      OF     v_po_det.
DATA :  BEGIN    OF     mseg_itab  OCCURS 0,
        mblnr    LIKE   mseg-mblnr,                    "Number of Material Document
        ebeln    LIKE   mseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   mseg-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   mseg-matnr,                    "Material Number
        lifnr    LIKE   mseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   mseg-werks,                    "Plant
        menge    LIKE   mseg-menge,                    "Quantity
        dmbtr    LIKE   mseg-dmbtr,                    "Amount in local currency
        bwart    LIKE   mseg-bwart,                    "Movement Type (Inventory Management)
        END      OF     mseg_itab.
DATA :  BEGIN    OF     mkpf_itab  OCCURS 0,
        mblnr    LIKE   mkpf-mblnr,                    "Number of Material Document
        bldat    LIKE   mkpf-bldat,                    "Document Date in Document
        END      OF     mkpf_itab.
DATA :  BEGIN    OF     zeou_pcrdtl_itab  OCCURS 0,
        matnr    LIKE   zeou_pcrdtl-matnr,             "Material Number
        lifnr    LIKE   zeou_pcrdtl-lifnr,             "Account Number of the Vendor
        mblnr    LIKE   zeou_pcrdtl-mblnr,             "Number of Material Document
        whssn    LIKE   zeou_pcrdtl-whssn,             "Warehouse Records Entry Serial No.
        whsdt    LIKE   zeou_pcrdtl-whsdt,             "Warehouse Records Entry date
        END      OF     zeou_pcrdtl_itab.
DATA :  BEGIN    OF     gr_wh_info  OCCURS 0,          "INFO OF GR & WH BASED ON MVMT TYPE & PO
        mblnr    LIKE   mseg-mblnr,                    "Number of Material Document
        bldat    LIKE   mkpf-bldat,                    "Document Date in Document
        ebeln    LIKE   mseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   ekpo-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   mseg-matnr,                    "Material Number
        lifnr    LIKE   mseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   mseg-werks,                    "Plant
        menge    LIKE   mseg-menge,                    "Quantity
        dmbtr    LIKE   mseg-dmbtr,                    "Amount in local currency
        bwart    LIKE   mseg-bwart,                    "Movement Type (Inventory Management)
        whssn    LIKE   zeou_pcrdtl-whssn,             "Warehouse Records Entry Serial No.
        whsdt    LIKE   zeou_pcrdtl-whsdt,             "Warehouse Records Entry date
        END      OF     gr_wh_info.
DATA :  BEGIN    OF     bseg_itab  OCCURS 0,
        ebeln    LIKE   bseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   bseg-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   bseg-matnr,                    "Material Number
        lifnr    LIKE   bseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   bseg-werks,                    "Plant
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        wrbtr    LIKE   bseg-wrbtr,                    "Amount in document currency
        bukrs    LIKE   bseg-bukrs,                    "Company Code
        belnr    LIKE   bseg-belnr,                    "Accounting Document Number
        gjahr    LIKE   bseg-gjahr,                    "Fiscal Year
        END      OF     bseg_itab.
DATA :  BEGIN    OF     bkpf_itab  OCCURS 0,
        bukrs    LIKE   bkpf-bukrs,                    "Company Code
        belnr    LIKE   bkpf-belnr,                    "Accounting Document Number
        gjahr    LIKE   bkpf-gjahr,                    "Fiscal Year
        xblnr    LIKE   bkpf-xblnr,                    "Reference Document Number
        bldat    LIKE   bkpf-bldat,                    "Document Date in Document
        END      OF     bkpf_itab.
DATA :  BEGIN    OF     vend_inv  OCCURS 0,            "VENDOR INVOICE DETAILS
        ebeln    LIKE   bseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   bseg-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   bseg-matnr,                    "Material Number
        lifnr    LIKE   bseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   bseg-werks,                    "Plant
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        wrbtr    LIKE   bseg-wrbtr,                    "Amount in document currency
        bukrs    LIKE   bseg-bukrs,                    "Company Code
        belnr    LIKE   bseg-belnr,                    "Accounting Document Number
        gjahr    LIKE   bseg-gjahr,                    "Fiscal Year
        xblnr    LIKE   bkpf-xblnr,                    "Reference Document Number
        bldat    LIKE   bkpf-bldat,                    "Document Date in Document
        END      OF     vend_inv.
DATA :  BEGIN    OF     chckinit  OCCURS 0,            "CHEQUE INIT INFO
        ebeln    LIKE   bseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   bseg-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   bseg-matnr,                    "Material Number
        lifnr    LIKE   bseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   bseg-werks,                    "Plant
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        bukrs    LIKE   bkpf-bukrs,                    "Company Code
        belnr    LIKE   bkpf-belnr,                    "Accounting Document Number
        gjahr    LIKE   bkpf-gjahr,                    "Fiscal Year
        koart    LIKE   bseg-koart,                    "Account type
        augbl    LIKE   bseg-augbl,                    "Document Number of the Clearing Document
        END      OF     chckinit.
DATA :  BEGIN    OF     chckpayer  OCCURS 0,           "CHEQUE BANK DETAILS
        vblnr    LIKE   payr-vblnr,                    "Document Number of the Payment Document
        zbukr    LIKE   payr-zbukr,                    "Paying company code
        gjahr    LIKE   payr-gjahr,                    "Fiscal Year
        chect    LIKE   payr-chect,                    "Check Number
        zaldt    LIKE   payr-zaldt,                    "Probable Payment Date (Cash Discount 1 Due)
        hbkid    LIKE   payr-hbkid,                    "Short key for a house bank
        END      OF     chckpayer.
DATA :  chckpayer_u LIKE chckpayer OCCURS 0 WITH HEADER LINE.      "UNIQUE CHEQUE DETAILS
DATA :  BEGIN    OF     chckfinal  OCCURS 0,           "CHEQUE FINAL INFO
        ebeln    LIKE   bseg-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   bseg-ebelp,                    "Item Number of Purchasing Document
        matnr    LIKE   bseg-matnr,                    "Material Number
        lifnr    LIKE   bseg-lifnr,                    "Account Number of the Vendor
        werks    LIKE   bseg-werks,                    "Plant
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        bukrs    LIKE   bkpf-bukrs,                    "Company Code
        belnr    LIKE   bkpf-belnr,                    "Accounting Document Number
        gjahr    LIKE   bkpf-gjahr,                    "Fiscal Year
        koart    LIKE   bseg-koart,                    "Account type
        augbl    LIKE   bseg-augbl,                    "Document Number of the Clearing Document
        vblnr    LIKE   payr-vblnr,                    "Document Number of the Payment Document
        zbukr    LIKE   payr-zbukr,                    "Paying company code
        chect    LIKE   payr-chect,                    "Check Number
        zaldt    LIKE   payr-zaldt,                    "Probable Payment Date (Cash Discount 1 Due)
        hbkid    LIKE   payr-hbkid,                    "Short key for a house bank
        END      OF     chckfinal.
DATA :  BEGIN    OF     mat_desc OCCURS 0,
        matnr    LIKE   mara-matnr,
        maktx    LIKE   makt-maktx,
        END      OF     mat_desc.
DATA :  BEGIN      OF     vend_det OCCURS 0,
        lifnr      LIKE   lfa1-lifnr,
        name1      LIKE   lfa1-name1,
        j_1icstno  LIKE   j_1imovend-j_1icstno,
        END        OF     vend_det.
DATA :  BEGIN    OF     cst_rep  OCCURS 0,             "FINAL CST REPORT
        lifnr    LIKE   a363-lifnr,                    "Account Number of the Vendor
        name1    LIKE   lfa1-name1,                    "Vendor Name
        j_1icstno  LIKE   j_1imovend-j_1icstno,        " Vendor CST No.
        werks    LIKE   a363-werks,                    "Plant
       kschl    LIKE   a363-kschl,                    "Condition type
        ebeln    LIKE   ekko-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   ekpo-ebelp,                    "Item Number of Purchasing Document
        bedat    LIKE   ekko-bedat,                    "Purchasing Document Date
        matnr    LIKE   ekpo-matnr,                    "Material Number
        maktx    LIKE   makt-maktx,                    "Material Description.
        kbetr    LIKE   konp-kbetr,                    "Rate (condition amount or percentage) where no scale exists
        mblnr    LIKE   mseg-mblnr,                    "Number of Material Document
        bldat    LIKE   mkpf-bldat,                    "Document Date in Document
        menge    LIKE   mseg-menge,                    "Quantity
        dmbtr    LIKE   mseg-dmbtr,                    "Amount in local currency
        cst_dmbtr LIKE  mseg-dmbtr,                    "CST Amount in local currency
        bwart    LIKE   mseg-bwart,                    "Movement Type (Inventory Management)
        whssn    LIKE   zeou_pcrdtl-whssn,             "Warehouse Records Entry Serial No.
        whsdt    LIKE   zeou_pcrdtl-whsdt,             "Warehouse Records Entry date
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        wrbtr    LIKE   bseg-wrbtr,                    "Amount in document currency
        cst_wrbtr LIKE  bseg-wrbtr,                    "CST Amount in document currency
        belnr    LIKE   bseg-belnr,                    "Accounting Document Number
        gjahr    LIKE   bseg-gjahr,                    "Fiscal Year
        xblnr    LIKE   bkpf-xblnr,                    "Reference Document Number
        koart    LIKE   bseg-koart,                    "Account type
        augbl    LIKE   bseg-augbl,                    "Document Number of the Clearing Document
        vblnr    LIKE   payr-vblnr,                    "Document Number of the Payment Document
        zbukr    LIKE   payr-zbukr,                    "Paying company code
        chect    LIKE   payr-chect,                    "Check Number
        zaldt    LIKE   payr-zaldt,                    "Probable Payment Date (Cash Discount 1 Due)
        hbkid    LIKE   payr-hbkid,                    "Short key for a house bank
        END      OF     cst_rep.
DATA :  BEGIN    OF     gt_output  OCCURS 0,              "ALV OUTPUT
        slno     LIKE   sy-tabix,                      "Serial Number
        lifnr    LIKE   a363-lifnr,                    "Account Number of the Vendor
        name1    LIKE   lfa1-name1,                    "Vendor Name
        j_1icstno  LIKE   j_1imovend-j_1icstno,        " Vendor CST No.
        werks    LIKE   a363-werks,                    "Plant
       kschl    LIKE   a363-kschl,                    "Condition type
        ebeln    LIKE   ekko-ebeln,                    "Purchasing Document Number
        ebelp    LIKE   ekpo-ebelp,                    "Item Number of Purchasing Document
        bedat    LIKE   ekko-bedat,                    "Purchasing Document Date
        matnr    LIKE   ekpo-matnr,                    "Material Number
        maktx    LIKE   makt-maktx,                    "Material Description
        mblnr    LIKE   mseg-mblnr,                    "Number of Material Document
        bldat    LIKE   mkpf-bldat,                    "Document Date in Document
        menge    LIKE   mseg-menge,                    "Quantity
        dmbtr    LIKE   mseg-dmbtr,                    "Amount in local currency
        cst_dmbtr LIKE  mseg-dmbtr,                    "CST Amount in local currency
        bwart    LIKE   mseg-bwart,                    "Movement Type (Inventory Management)
        whssn    LIKE   zeou_pcrdtl-whssn,             "Warehouse Records Entry Serial No.
        whsdt    LIKE   zeou_pcrdtl-whsdt,             "Warehouse Records Entry date
        buzid    LIKE   bseg-buzid,                    "Identification of the Line Item
        bschl    LIKE   bseg-bschl,                    "Posting Key
        wrbtr    LIKE   bseg-wrbtr,                    "Amount in document currency
        cst_wrbtr LIKE  bseg-wrbtr,                    "CST Amount in document currency
        belnr    LIKE   bseg-belnr,                    "Accounting Document Number
        gjahr    LIKE   bseg-gjahr,                    "Fiscal Year
        xblnr    LIKE   bkpf-xblnr,                    "Reference Document Number
        koart    LIKE   bseg-koart,                    "Account type
        augbl    LIKE   bseg-augbl,                    "Document Number of the Clearing Document
        vblnr    LIKE   payr-vblnr,                    "Document Number of the Payment Document
        zbukr    LIKE   payr-zbukr,                    "Paying company code
        chect    LIKE   payr-chect,                    "Check Number
        zaldt    LIKE   payr-zaldt,                    "Probable Payment Date (Cash Discount 1 Due)
        hbkid    LIKE   payr-hbkid,                    "Short key for a house bank
        usr_txt1(20) TYPE c,
        usr_txt2(20) TYPE c,
        END      OF     gt_output.
*Working Variables
DATA : cst_gr  LIKE  mseg-dmbtr,
       cst_inv LIKE  bseg-wrbtr,
       usr_txt1(20) TYPE c,
       usr_txt2(20) TYPE c.
START-OF-SELECTION.
*Retreiving Data from a363 table for the given input
  SELECT  matnr
          lifnr
          werks
          kschl
          knumh
          FROM a363
          INTO TABLE a363_itab
          WHERE matnr IN s_matnr AND lifnr IN s_lifnr AND werks EQ p_werks AND kschl IN s_kschl.
*rakesh ***************************
SELECT  *
         FROM konp
         INTO CORRESPONDING FIELDS OF TABLE konp_itab
         FOR ALL ENTRIES IN a363_itab
         WHERE knumh EQ a363_itab-knumh.
  IF  a363_itab[] IS NOT INITIAL.
    SELECT knumh
           kbetr
           lifnr
           FROM konp INTO TABLE konp_itab
           FOR ALL ENTRIES IN a363_itab
           WHERE knumh EQ a363_itab-knumh.
  ENDIF.
  LOOP AT a363_itab.
    READ TABLE konp_itab WITH KEY knumh = a363_itab-knumh.
    IF sy-subrc EQ 0.
      MOVE : konp_itab-kbetr TO a363_itab-kbetr.
      MODIFY a363_itab.
    ENDIF.
    CLEAR : a363_itab, konp_itab.
  ENDLOOP.
rakesh****************************
SELECT *
        FROM makt
        INTO CORRESPONDING FIELDS OF TABLE mat_desc
        FOR ALL ENTRIES IN a363_itab
        WHERE matnr EQ a363_itab-matnr.
  SELECT matnr
         maktx
         FROM makt INTO TABLE mat_desc
         FOR ALL ENTRIES IN a363_itab
         WHERE matnr EQ a363_itab-matnr.
  SELECT a~lifnr
         a~name1
         b~j_1icstno
         INTO TABLE vend_det
         FROM lfa1 AS a JOIN j_1imovend AS b
         ON alifnr EQ blifnr
         FOR ALL ENTRIES IN a363_itab
         WHERE a~lifnr EQ a363_itab-lifnr.
Retreiving Data from EKKO & EKPO table for the given input
And Populating the V_PO_DETAILS itab
SELECT  *
         FROM ekko
         INTO CORRESPONDING FIELDS OF TABLE ekko_itab
         FOR ALL ENTRIES IN a363_itab
         WHERE lifnr EQ a363_itab-lifnr AND bedat IN s_bedat.
  IF  a363_itab[] IS NOT INITIAL.
    SELECT ebeln
           lifnr
           bedat
           FROM ekko INTO TABLE ekko_itab
           FOR ALL ENTRIES IN a363_itab
            WHERE lifnr EQ a363_itab-lifnr AND bedat IN s_bedat.
  ENDIF.
SELECT  *
         FROM ekpo
         INTO CORRESPONDING FIELDS OF TABLE ekpo_itab
         FOR ALL ENTRIES IN a363_itab
         WHERE matnr EQ a363_itab-matnr AND werks EQ a363_itab-werks AND mwskz NE 'V0'.
  IF  a363_itab[] IS NOT INITIAL.
    SELECT ebeln
           ebelp
           matnr
           werks
           menge
           FROM ekpo INTO TABLE ekpo_itab
           FOR ALL ENTRIES IN a363_itab
           WHERE matnr EQ a363_itab-matnr AND werks EQ a363_itab-werks AND mwskz NE 'V0'.
  ENDIF.
  LOOP AT ekpo_itab.
    MOVE :   ekpo_itab-ebelp TO v_po_det-ebelp,
             ekpo_itab-matnr TO v_po_det-matnr,
             ekpo_itab-werks TO v_po_det-werks,
             ekpo_itab-menge TO v_po_det-menge.
    READ TABLE ekko_itab WITH KEY ebeln = ekpo_itab-ebeln.
    IF sy-subrc EQ 0.
      MOVE  :  ekko_itab-lifnr TO v_po_det-lifnr,
               ekko_itab-ebeln TO v_po_det-ebeln,
               ekko_itab-bedat TO v_po_det-bedat.
      APPEND : v_po_det.
    ENDIF.
    CLEAR  : ekko_itab, ekpo_itab, v_po_det.
  ENDLOOP.
  LOOP AT v_po_det.
    READ TABLE a363_itab WITH KEY matnr = v_po_det-matnr lifnr = v_po_det-lifnr werks = v_po_det-werks.
    IF sy-subrc EQ 0.
      MOVE : a363_itab-kbetr TO v_po_det-kbetr.
      MODIFY v_po_det.
    ENDIF.
    CLEAR : a363_itab, v_po_det.
  ENDLOOP.
Retreiving Data from MKPF & MSEG & ZEOU_PCRDTL table for the given input
And Populating the GR_WH_info itab
SELECT  *
         FROM mseg
         INTO CORRESPONDING FIELDS OF TABLE mseg_itab
         FOR ALL ENTRIES IN v_po_det
         WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND bwart IN s_bwart.
  IF v_po_det[] IS NOT INITIAL.
    SELECT mblnr
           ebeln
           ebelp
           matnr
           lifnr
           werks
           menge
           dmbtr
           bwart
           FROM mseg INTO TABLE mseg_itab
           FOR ALL ENTRIES IN v_po_det
           WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND bwart IN s_bwart.
  ENDIF.
  IF mseg_itab[] IS NOT INITIAL.
SELECT  *
         FROM mkpf
         INTO CORRESPONDING FIELDS OF TABLE mkpf_itab
         FOR ALL ENTRIES IN mseg_itab
         WHERE mblnr EQ mseg_itab-mblnr.
    SELECT  mblnr
            bldat
            FROM mkpf INTO TABLE mkpf_itab
            FOR ALL ENTRIES IN mseg_itab
            WHERE mblnr EQ mseg_itab-mblnr.
  SELECT  *
         FROM zeou_pcrdtl
         INTO CORRESPONDING FIELDS OF TABLE zeou_pcrdtl_itab
         FOR ALL ENTRIES IN mseg_itab
         WHERE mblnr EQ mseg_itab-mblnr AND matnr EQ mseg_itab-matnr.
    SELECT matnr
           lifnr
           mblnr
           whssn
           whsdt
           FROM zeou_pcrdtl INTO TABLE zeou_pcrdtl_itab
             FOR ALL ENTRIES IN mseg_itab
             WHERE mblnr EQ mseg_itab-mblnr AND matnr EQ mseg_itab-matnr.
  ENDIF.
  LOOP AT mseg_itab.
    MOVE  :  mseg_itab-mblnr TO gr_wh_info-mblnr,
             mseg_itab-ebeln TO gr_wh_info-ebeln,
             mseg_itab-ebelp TO gr_wh_info-ebelp,
             mseg_itab-matnr TO gr_wh_info-matnr,
             mseg_itab-lifnr TO gr_wh_info-lifnr,
             mseg_itab-werks TO gr_wh_info-werks,
             mseg_itab-menge TO gr_wh_info-menge,
             mseg_itab-dmbtr TO gr_wh_info-dmbtr,
             mseg_itab-bwart TO gr_wh_info-bwart.
    READ TABLE mkpf_itab WITH KEY mblnr = mseg_itab-mblnr.
    IF sy-subrc EQ 0.
      MOVE  :  mkpf_itab-bldat TO gr_wh_info-bldat.
    ENDIF.
    READ TABLE zeou_pcrdtl_itab WITH KEY mblnr = mseg_itab-mblnr.
    IF sy-subrc EQ 0.
      MOVE  :  zeou_pcrdtl_itab-whssn TO gr_wh_info-whssn,
               zeou_pcrdtl_itab-whsdt TO gr_wh_info-whsdt.
    ENDIF.
    APPEND : gr_wh_info.
    CLEAR : mseg_itab, mkpf_itab, gr_wh_info.
  ENDLOOP.
Retreiving Data from BSEG & BKPF table
And Populating the Vendor Invoice Details
  IF v_po_det[] IS NOT INITIAL.
SELECT  *
         FROM bseg
         INTO CORRESPONDING FIELDS OF TABLE bseg_itab
         FOR ALL ENTRIES IN v_po_det
         WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '96'.
    SELECT  ebeln
            ebelp
            matnr
            lifnr
            werks
            buzid
            bschl
            wrbtr
            bukrs
            belnr
            gjahr
            FROM bseg INTO TABLE bseg_itab
              FOR ALL ENTRIES IN v_po_det
              WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '96'.
  ENDIF.
  IF bseg_itab[] IS NOT INITIAL.
SELECT  *
         FROM bkpf
         INTO CORRESPONDING FIELDS OF TABLE bkpf_itab
         FOR ALL ENTRIES IN bseg_itab
         WHERE bukrs EQ bseg_itab-bukrs AND belnr EQ bseg_itab-belnr AND gjahr EQ bseg_itab-gjahr.
    SELECT  bukrs
            belnr
            gjahr
            xblnr
            bldat
            FROM bkpf INTO TABLE bkpf_itab
            FOR ALL ENTRIES IN bseg_itab
            WHERE bukrs EQ bseg_itab-bukrs AND belnr EQ bseg_itab-belnr AND gjahr EQ bseg_itab-gjahr.
  ENDIF.
  LOOP AT bseg_itab.
    MOVE  :  bseg_itab-ebeln TO vend_inv-ebeln,
             bseg_itab-ebelp TO vend_inv-ebelp,
             bseg_itab-matnr TO vend_inv-matnr,
             bseg_itab-lifnr TO vend_inv-lifnr,
             bseg_itab-werks TO vend_inv-werks,
             bseg_itab-buzid TO vend_inv-buzid,
             bseg_itab-bschl TO vend_inv-bschl,
             bseg_itab-wrbtr TO vend_inv-wrbtr,
             bseg_itab-bukrs TO vend_inv-bukrs,
             bseg_itab-belnr TO vend_inv-belnr,
             bseg_itab-gjahr TO vend_inv-gjahr.
    READ TABLE bkpf_itab WITH KEY bukrs = bseg_itab-bukrs belnr = bseg_itab-belnr gjahr = bseg_itab-gjahr.
    IF sy-subrc EQ 0.
      MOVE  :  bkpf_itab-xblnr TO vend_inv-xblnr,
               bkpf_itab-bldat TO vend_inv-bldat.
      APPEND  :  vend_inv.
    ENDIF.
    CLEAR : vend_inv, bseg_itab, bkpf_itab.
  ENDLOOP.
Retreiving Data from BSEG & BKPF table
And Populating the Cheque Info Details
  IF v_po_det[] IS NOT INITIAL.
SELECT  *
         FROM bseg
         INTO CORRESPONDING FIELDS OF TABLE chckinit
         FOR ALL ENTRIES IN v_po_det
         WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '86' AND koart EQ 'K'.
    SELECT  ebeln
            ebelp
            matnr
            lifnr
            werks
            buzid
            bschl
            bukrs
            belnr
            gjahr
            koart
            augbl
            FROM bseg INTO TABLE chckinit
              FOR ALL ENTRIES IN v_po_det
              WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '86' AND koart EQ 'K'.
  ENDIF.
  IF chckinit[] IS NOT INITIAL.
SELECT  *
         FROM payr
         INTO CORRESPONDING FIELDS OF TABLE chckpayer
         FOR ALL ENTRIES IN chckinit
         WHERE vblnr EQ chckinit-augbl.
    SELECT  vblnr
            zbukr
            gjahr
            chect
            zaldt
            hbkid
            FROM payr INTO TABLE chckpayer
            FOR ALL ENTRIES IN chckinit
            WHERE vblnr EQ chckinit-augbl.
  ENDIF.
  SORT chckpayer BY vblnr DESCENDING.
  LOOP AT chckpayer.
    ON CHANGE OF chckpayer-vblnr.
      MOVE   : chckpayer TO chckpayer_u.
      APPEND : chckpayer_u.
      CLEAR  : chckpayer_u, chckpayer.
    ENDON.
  ENDLOOP.
  LOOP AT chckinit.
    MOVE  :  chckinit-ebeln TO chckfinal-ebeln,
             chckinit-ebelp TO chckfinal-ebelp,
             chckinit-matnr TO chckfinal-matnr,
             chckinit-lifnr TO chckfinal-lifnr,
             chckinit-werks TO chckfinal-werks,
             chckinit-buzid TO chckfinal-buzid,
             chckinit-bschl TO chckfinal-bschl,
             chckinit-bukrs TO chckfinal-bukrs,
             chckinit-gjahr TO chckfinal-gjahr,
             chckinit-koart TO chckfinal-koart,
             chckinit-augbl TO chckfinal-augbl.
    READ TABLE chckpayer_u WITH KEY vblnr = chckinit-augbl gjahr = chckinit-gjahr.
    IF sy-subrc EQ 0.
      MOVE  :  chckpayer_u-vblnr TO chckfinal-vblnr,
               chckpayer_u-zbukr TO chckfinal-zbukr,
               chckpayer_u-chect TO chckfinal-chect,
               chckpayer_u-zaldt TO chckfinal-zaldt,
               chckpayer_u-hbkid TO chckfinal-hbkid.
      APPEND : chckfinal.
    ENDIF.
    CLEAR : chckfinal, chckpayer_u, chckinit.
  ENDLOOP.
Populating the final CST TABLE
  LOOP AT v_po_det.
    MOVE  :   v_po_det-lifnr TO cst_rep-lifnr,
              v_po_det-werks TO cst_rep-werks,
              v_po_det-ebeln TO cst_rep-ebeln,
              v_po_det-ebelp TO cst_rep-ebelp,
              v_po_det-bedat TO cst_rep-bedat,
              v_po_det-matnr TO cst_rep-matnr,
              v_po_det-kbetr TO cst_rep-kbetr.
    READ TABLE gr_wh_info WITH KEY ebeln = v_po_det-ebeln ebelp = v_po_det-ebelp."matnr = v_po_det-matnr.
    IF sy-subrc EQ 0.
      MOVE :  gr_wh_info-mblnr TO cst_rep-mblnr,
              gr_wh_info-bldat TO cst_rep-bldat,
              gr_wh_info-menge TO cst_rep-menge,
              gr_wh_info-dmbtr TO cst_rep-dmbtr,
              gr_wh_info-bwart TO cst_rep-bwart,
              gr_wh_info-whssn TO cst_rep-whssn,
              gr_wh_info-whsdt TO cst_rep-whsdt.
    ENDIF.
    READ TABLE vend_inv WITH KEY ebeln = v_po_det-ebeln ebelp = v_po_det-ebelp."matnr = v_po_det-matnr.
    IF sy-subrc EQ 0.
      MOVE : vend_inv-buzid TO cst_rep-buzid,
             vend_inv-bschl TO cst_rep-bschl,
             vend_inv-wrbtr TO cst_rep-wrbtr,
             vend_inv-belnr TO cst_rep-belnr,
             vend_inv-gjahr TO cst_rep-gjahr,
             vend_inv-xblnr TO cst_rep-xblnr.
    ENDIF.
    READ TABLE chckfinal WITH KEY ebeln = v_po_det-ebeln ebelp = v_po_det-ebelp."matnr = v_po_det-matnr.
    IF sy-subrc EQ 0.
      MOVE : chckfinal-augbl TO cst_rep-augbl,
             chckfinal-vblnr TO cst_rep-vblnr,
             chckfinal-zbukr TO cst_rep-zbukr,
             chckfinal-chect TO cst_rep-chect,
             chckfinal-zaldt TO cst_rep-zaldt,
             chckfinal-hbkid TO cst_rep-hbkid.
    ENDIF.
    READ TABLE mat_desc WITH KEY matnr = v_po_det-matnr.
    IF sy-subrc EQ 0.
      MOVE : mat_desc-maktx TO cst_rep-maktx.
    ENDIF.
    READ TABLE vend_det WITH KEY lifnr = v_po_det-lifnr.
    IF sy-subrc EQ 0.
      MOVE : vend_det-name1 TO cst_rep-name1,
             vend_det-j_1icstno TO cst_rep-j_1icstno.
    ENDIF.
    APPEND : cst_rep.
    CLEAR  : cst_rep, v_po_det, gr_wh_info, vend_inv, chckfinal.
  ENDLOOP.
Populating GT_output
  LOOP AT cst_rep.
    cst_gr = cst_rep-dmbtr * ( cst_rep-kbetr / 1000 ).
    cst_inv = cst_rep-wrbtr * ( cst_rep-kbetr / 1000 ).
    MOVE : cst_gr  TO cst_rep-cst_dmbtr,
           cst_inv TO cst_rep-cst_wrbtr.
    MODIFY : cst_rep.
    CLEAR : cst_rep, cst_gr, cst_inv.
  ENDLOOP.
  LOOP AT cst_rep.
    MOVE :  sy-tabix TO gt_output-slno,
            cst_rep-lifnr TO gt_output-lifnr,
            cst_rep-name1 TO gt_output-name1,
            cst_rep-j_1icstno TO gt_output-j_1icstno,
            cst_rep-werks TO gt_output-werks,
            cst_rep-matnr TO gt_output-matnr,
            cst_rep-maktx TO gt_output-maktx,
            cst_rep-ebeln TO gt_output-ebeln,
            cst_rep-ebelp TO gt_output-ebelp,
            cst_rep-bedat TO gt_output-bedat,
            cst_rep-mblnr TO gt_output-mblnr,
            cst_rep-bldat TO gt_output-bldat,
            cst_rep-menge TO gt_output-menge,
            cst_rep-dmbtr TO gt_output-dmbtr,
            cst_rep-cst_dmbtr TO gt_output-cst_dmbtr,
            cst_rep-bwart TO gt_output-bwart,
            cst_rep-whssn TO gt_output-whssn,
            cst_rep-whsdt TO gt_output-whsdt,
            cst_rep-buzid TO gt_output-buzid,
            cst_rep-bschl TO gt_output-bschl,
            cst_rep-wrbtr TO gt_output-wrbtr,
            cst_rep-cst_wrbtr TO gt_output-cst_wrbtr,
            cst_rep-belnr TO gt_output-belnr,
            cst_rep-gjahr TO gt_output-gjahr,
            cst_rep-xblnr TO gt_output-xblnr,
            cst_rep-augbl TO gt_output-augbl,
            cst_rep-vblnr TO gt_output-vblnr,
            cst_rep-zbukr TO gt_output-zbukr,
            cst_rep-chect TO gt_output-chect,
            cst_rep-zaldt TO gt_output-zaldt,
            cst_rep-hbkid TO gt_output-hbkid.
    APPEND gt_output.
    CLEAR : cst_rep, gt_output, sy-tabix.
  ENDLOOP.
END-OF-SELECTION.
*-ALV Routine
  PERFORM alv_forms.
*&      Form  alv_forms
FORM alv_forms.
  PERFORM alv_routines.
  gx_variant = sy-repid.
  CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
    EXPORTING
      i_save     = g_save
    CHANGING
      cs_variant = gx_variant
    EXCEPTIONS
      not_found  = 2.
  IF sy-subrc = 0.
    vari = gx_variant-variant.
  ENDIF.
  PERFORM comment_build  USING gt_list_top_of_page[].
  PERFORM fieldcat_init  USING gt_fieldcat[].
  PERFORM layout_build USING gs_layout.
  PERFORM print_build  USING gs_print.
  PERFORM alv_output.
ENDFORM.                    " alv_forms
*&      Form  alv_routines
FORM alv_routines.
  PERFORM eventtab_build USING gt_events[].
  PERFORM e06_t_sort_build  USING gt_sort[].
  PERFORM sp_group_build USING gt_sp_group[].
  g_save = 'A'.
  PERFORM variant_init.
ENDFORM.                    " alv_routines
*&      Form  eventtab_build
----

Hi Anu,
These two statements taking to much time for execution what I can do for reducing execution time.
Regards,
Rakesh
SELECT ebeln
ebelp
matnr
lifnr
werks
buzid
bschl
wrbtr
bukrs
belnr
gjahr
FROM bseg INTO TABLE bseg_itab
FOR ALL ENTRIES IN v_po_det
WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '96'.
ENDIF.
SELECT ebeln
ebelp
matnr
lifnr
werks
buzid
bschl
bukrs
belnr
gjahr
koart
augbl
FROM bseg INTO TABLE chckinit
FOR ALL ENTRIES IN v_po_det
WHERE ebeln EQ v_po_det-ebeln AND matnr EQ v_po_det-matnr AND buzid EQ 'W' AND bschl EQ '86' AND koart EQ 'K'.
ENDIF.

Similar Messages

  • Web report for opening it takes long time how to reduce the time?

    HI Experts,
    I created report using webi. For next time while opening it takes more time. How to reduce the time.

    Hi Manikandan,
    There could be multiple reason behind the bad performance.
    1. Are you using supported JVM version to run Webi reports?
    2. Do the reports contain prompts? Are the LOVs set to "Automatic refresh before use"? If yes, uncheck it.
    3. How many queries do the report has? Can you run the queries one by one and check which query is taking much time?
    4. If it based on relational database, copy and run it against the database directly and check how much time it takes. If more, you may have to fix the issue at database level like using temporary tables, indices, etc.
    5. Also check if there are firewalls or proxy server between client and server communication. if yes, try to refresh the report directly on BO server and check.
    6. Check if there is any hinderance between BO server and Database server communcation.
    Hope it will help.
    Regards,
    Yuvraj

  • How to reduce download time for intial swf?

    How to reduce download time for intial swf?
    There are a number of RPC calls but most of the data is cached at server end but still swf takes a lot of time to download completely.
    What all are the ways by which i can reuce the inital load time of my application?

    Reduce the size of the SWF by moving code and assets not needed for the
    first screen out into modules.

  • How to reduce Boot time of 10.8.3

    How to reduce Boot time of 10.8.3(Mountain Lion),Have Upgraded from 10.6.x recently,
    Dont have any start up items, No Dual Boot, No user accounts not even guest(Turned off)
    I really Dont Know what to do, Please help me in this..

    Go to the Startup Disk system preferences and select your boot drive in there. This will ensure the system has your main boot drive set in the PRAM as a the default boot device. Without this, the system may pause while it searches for an available boot device.
    Do you have FileVault disk encryption enabled? If so then this may increase boot times a touch.
    Do you have any system monitors, firewalls, or security software installed? Again these may also increase boot times as they load in the background, especially if they use kernel extensions.
    Finally, boot to the OS X Recovery HD partition by holding the Command-R keys at startup. In here, launch Disk Utility and run a permissions fix on the boot drive, followed by running a repair on the boot drive (both done in the First Aid tab). If there are any access permissions or format structure issues on the boot drive then this should fix them.
    Is your hard drive relatively full? If you only have a few GB of space left on the drive then you might consider removing some files to give the system breathing room to better manage memory. Additionally, how much RAM do you have installed? If you have less than 4GB then consider upgrading. While older versions of OS X could get away with 1-2GB of RAM, this amount will only bog down Lion and Mountain Lion. 4GB is a recommended minimum.
    Some of these things could provide cumulative delays that you might find noticeable at bootup.

  • How to reduce execution time ?

    Hi friends...
    I have created a report to display vendor opening balances,
    total debit ,total credit , total balance & closing balance for the given date range. it is working fine .But it takes more time to execute . How can I reduce execution time ?
    Plz help me. It's a very urgent report...
    The coding is as below.....
    report  yfiin_rep_vendordetail no standard page heading.
    tables : bsik,bsak,lfb1,lfa1.
    type-pools : slis .
    --TABLE STRUCTURE--
    types : begin of tt_bsik,
            bukrs type bukrs,
            lifnr type lifnr,
            budat type budat,
            augdt type augdt,
            dmbtr type dmbtr,
            wrbtr type wrbtr,
            shkzg type shkzg,
            hkont type hkont,
            bstat type bstat_d ,
            prctr type prctr,
            name1 type name1,
         end of tt_bsik,
         begin of tt_lfb1,
             lifnr type lifnr,
             mindk type mindk,
         end of tt_lfb1,
        begin of tt_lfa1,
            lifnr type lifnr,
            name1 type name1,
            ktokk type ktokk,
        end of tt_lfa1,
        begin of tt_opbal,
            bukrs type bukrs,
            lifnr type lifnr,
            gjahr type gjahr,
            belnr type belnr_d,
            budat type budat,
            bldat type bldat,
            waers type waers,
            dmbtr type dmbtr,
            wrbtr type wrbtr,
            shkzg type shkzg,
            blart type blart,
            monat type monat,
            hkont type hkont,
            bstat type bstat_d ,
            prctr type prctr,
            name1 type name1,
            tdr type  dmbtr,
            tcr type  dmbtr,
            tbal type  dmbtr,
          end of tt_opbal,
         begin of tt_bs ,
            bukrs type bukrs,
            lifnr type lifnr,
            name1 type name1,
            prctr type prctr,
            tbal type dmbtr,
            bala type dmbtr,
            balb type dmbtr,
            balc type dmbtr,
            bald type dmbtr,
            bale type dmbtr,
            gbal type dmbtr,
        end of tt_bs.
    ************WORK AREA DECLARATION *********************
    data :  gs_bsik type tt_bsik,
            gs_bsak type tt_bsik,
            gs_lfb1 type tt_lfb1,
            gs_lfa1 type tt_lfa1,
            gs_ageing  type tt_ageing,
            gs_bs type tt_bs,
            gs_opdisp type tt_bs,
            gs_final type tt_bsik,
            gs_opbal type tt_opbal,
            gs_opfinal type tt_opbal.
    ************INTERNAL TABLE DECLARATION*************
    data :  gt_bsik type standard table of tt_bsik,
            gt_bsak type standard table of tt_bsik,
            gt_lfb1 type standard table of tt_lfb1,
            gt_lfa1 type standard table of tt_lfa1,
            gt_ageing type standard table of tt_ageing,
            gt_bs type standard table of tt_bs,
            gt_opdisp type standard table of tt_bs,
            gt_final type standard table of tt_bsik,
            gt_opbal type standard table of tt_opbal,
            gt_opfinal type standard table of tt_opbal.
    ALV DECLARATIONS *******************
    data : gs_fcat type slis_fieldcat_alv ,
           gt_fcat type slis_t_fieldcat_alv ,
           gs_sort type slis_sortinfo_alv,
           gs_fcats type slis_fieldcat_alv ,
           gt_fcats type slis_t_fieldcat_alv.
    **********global data declration***************
    data :   kb type dmbtr ,
              return like  bapireturn ,
              balancespgli like  bapi3008-bal_sglind,
              noteditems like  bapi3008-ntditms_rq,
              keybalance type table of  bapi3008_3 with header line,
             opbalance type p.
    SELECTION SCREEN DECLARATIONS *********************
    selection-screen begin of block b1 with frame .
    select-options : so_bukrs for bsik-bukrs obligatory,
                     so_lifnr for bsik-lifnr,
                     so_hkont for bsik-hkont,
                     so_prctr for bsik-prctr ,
                     so_mindk for lfb1-mindk,
                     so_ktokk for lfa1-ktokk.
    selection-screen end of block b1.
    selection-screen : begin of block b1 with frame.
    parameters       : p_rb1 radiobutton group rad1 .
    select-options   : so_date for sy-datum .
    selection-screen : end of block b1.
    ********************************ASSIGNING ALV GRID
    ****field catalog for balance report
    gs_fcats-col_pos = 1.
    gs_fcats-fieldname = 'BUKRS'.
    gs_fcats-seltext_m =  text-001.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 2 .
    gs_fcats-fieldname = 'LIFNR'.
    gs_fcats-seltext_m = text-002.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 3.
    gs_fcats-fieldname = 'NAME1'.
    gs_fcats-seltext_m =  text-003.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 4.
    gs_fcats-fieldname = 'BALC'.
    gs_fcats-seltext_m =  text-016.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 5.
    gs_fcats-fieldname = 'BALA'.
    gs_fcats-seltext_m =  text-012.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 6.
    gs_fcats-fieldname = 'BALB'.
    gs_fcats-seltext_m =  text-013.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 7.
    gs_fcats-fieldname = 'TBAL'.
    gs_fcats-seltext_m =  text-014.
    append gs_fcats to gt_fcats .
    gs_fcats-col_pos = 8.
    gs_fcats-fieldname = 'GBAL'.
    gs_fcats-seltext_m =  text-015.
    append gs_fcats to gt_fcats .
    data : repid1 type sy-repid.
    repid1 = sy-repid.
    INITIALIZATION EVENTS ******************************
    initialization.
    *Clearing the work area.
    clear gs_bsik.
    Refreshing the internal tables.
    refresh gt_bsik.
    ******************START OF  SELECTION EVENTS **************************
    start-of-selection.
    *get data for balance report.
      perform sub_openbal.
      perform sub_openbal_display.
    *&      Form  sub_openbal
          text
    -->  p1        text
    <--  p2        text
    form sub_openbal .
      if   so_date-low > sy-datum or so_date-high > sy-datum .
          message i005(yfi02).
         leave screen.
    endif.
         select bukrs lifnr gjahr belnr budat bldat
           waers dmbtr wrbtr shkzg blart monat hkont prctr
           from bsik into table gt_opbal
           where bukrs in so_bukrs and lifnr in so_lifnr
           and hkont in so_hkont and prctr in so_prctr
           and budat in so_date .
        select bukrs lifnr gjahr belnr budat bldat
           waers dmbtr wrbtr shkzg blart monat hkont prctr
           from bsak appending table gt_opbal
           for all entries in gt_opbal
           where lifnr = gt_opbal-lifnr
           and budat in so_date .
    if sy-subrc <> 0.
      message i007(yfi02).
      leave screen.
      endif.
    select lifnr mindk from lfb1 into table gt_lfb1
      for all entries in gt_opbal
        where lifnr = gt_opbal-lifnr and mindk in so_mindk.
    select lifnr name1 ktokk from lfa1 into table gt_lfa1
      for all entries in gt_opbal
       where lifnr = gt_opbal-lifnr and ktokk in so_ktokk.
       loop at gt_opbal into gs_opbal .
         loop at gt_lfb1 into gs_lfb1 where lifnr = gs_opbal-lifnr.
           loop at gt_lfa1 into gs_lfa1 where lifnr = gs_opbal-lifnr.
            gs_opfinal-bukrs = gs_opbal-bukrs.
            gs_opfinal-lifnr = gs_opbal-lifnr.
            gs_opfinal-gjahr = gs_opbal-gjahr.
            gs_opfinal-belnr = gs_opbal-belnr.
            gs_opfinal-budat = gs_opbal-budat.
            gs_opfinal-bldat = gs_opbal-bldat.
            gs_opfinal-waers = gs_opbal-waers.
            gs_opfinal-dmbtr = gs_opbal-dmbtr.
            gs_opfinal-wrbtr = gs_opbal-wrbtr.
            gs_opfinal-shkzg = gs_opbal-shkzg.
            gs_opfinal-blart = gs_opbal-blart.
            gs_opfinal-monat = gs_opbal-monat.
            gs_opfinal-hkont = gs_opbal-hkont.
            gs_opfinal-prctr = gs_opbal-prctr.
            gs_opfinal-name1 = gs_lfa1-name1.
        if gs_opbal-shkzg    = 'H'.
            gs_opfinal-tcr   =  gs_opbal-dmbtr * -1.
            gs_opfinal-tdr   =  '000000'.
        else.
            gs_opfinal-tdr   =  gs_opbal-dmbtr.
            gs_opfinal-tcr   =  '000000'.
        endif.
           append gs_opfinal to gt_opfinal.
           endloop.
           endloop.
           endloop.
    sort gt_opfinal by bukrs lifnr prctr .
    so_date-low = so_date-low - 1 .
    loop at gt_opfinal into gs_opfinal.
    call function 'BAPI_AP_ACC_GETKEYDATEBALANCE'
      exporting
        companycode        = gs_opfinal-bukrs
        vendor             =  gs_opfinal-lifnr
        keydate            = so_date-low
       balancespgli        = ' '
       noteditems          = ' '
      importing
        return             = return
      tables
        keybalance         = keybalance.
    clear kb .
    loop at keybalance .
       kb = keybalance-lc_bal + kb .
    endloop.
          gs_opdisp-balc = kb.
          gs_opdisp-bukrs =  gs_opfinal-bukrs.
          gs_opdisp-lifnr =  gs_opfinal-lifnr.
          gs_opdisp-name1 =  gs_opfinal-name1.
        at new lifnr .
          sum .
          gs_opfinal-tbal =  gs_opfinal-tdr + gs_opfinal-tcr  .
          gs_opdisp-tbal = gs_opfinal-tbal.
          gs_opdisp-bala = gs_opfinal-tdr .
          gs_opdisp-balb = gs_opfinal-tcr .
          gs_opdisp-gbal = keybalance-lc_bal + gs_opfinal-tbal .
          append gs_opdisp to gt_opdisp.
        endat.
        clear gs_opdisp.
        clear keybalance .
      endloop.
      delete adjacent duplicates from gt_opdisp.
    endform.                    " sub_openbal
    *&      Form  sub_openbal_display
          text
    -->  p1        text
    <--  p2        text
    form sub_openbal_display .
    call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
          i_callback_program              =  repid1
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = ' '
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
      IS_LAYOUT                         =
          it_fieldcat                     = gt_fcats
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = 'X'
      IS_VARIANT                        =
       it_events                        =
      IT_EVENT_EXIT                     =
      IS_PRINT                          =
      IS_REPREP_ID                      =
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      I_HTML_HEIGHT_TOP                 =
      I_HTML_HEIGHT_END                 =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
         tables
           t_outtab                       = gt_opdisp
      exceptions
        program_error                     = 1
        others                            = 2
      if sy-subrc <> 0.
        message id sy-msgid type sy-msgty number sy-msgno
                with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      endif.
    endform.                    " sub_openbal_display

    I think you are using for all entries statement in almost all select statements but i didnt see any condtion before you are using for all entries statement.
    If you are using for all entries in gt_opbal ... make sure that gt_opbal has some records other wise it will try to read all records from the data base tables.
    Try to check before using for all entries in the select statement like
    if gt_opbal is not initial.
    select adfda adfadf afdadf into table
      for all entries in gt_opbal.
    else.
    select abdf afad into table
    from abcd
    where a = 1
        and b = 2.
    endif.
    i didnt see anything wrong in your report but this is major time consuming when you dont have records in the table which you are using for all entries.

  • How to reduce process time in report

    Hi all..
    Is there any technique to reduce process time in report on programmer side??
    Plz help me...

    Hi
    check this and ensure that your code is as per the stds
    1) Dont use nested select statements
    2) If possible use for all entries in addition
    3) In the where addition make sure you give all the primary key
    4) Use Index for the selection criteria.
    5) You can also use inner joins
    6) You can try to put the data from the first select statement into an Itab and then in order to select the data from the second table use for all entries in.
    7) Use the runtime analysis SE30 and SQL Trace (ST05) to identify the performance and also to identify where the load is heavy, so that you can change the code accordingly
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5d0db4c9-0e01-0010-b68f-9b1408d5f234
    ABAP performance depends upon various factors and in devicded in three parts:
    1. Database
    2. ABAP
    3. System
    Run Any program using SE30 (performance analys) to improve performance refer to tips and trics section of SE30, Always remember that ABAP perfirmance is improved when there is least load on Database.
    u can get an interactive grap in SE30 regarding this with a file.
    also if u find runtime of parts of codes then use :
    Switch on RTA Dynamically within ABAP Code
    *To turn runtim analysis on within ABAP code insert the following code
    SET RUN TIME ANALYZER ON.
    *To turn runtim analysis off within ABAP code insert the following code
    SET RUN TIME ANALYZER OFF.
    Always check the driver internal tables is not empty, while using FOR ALL ENTRIES
    Avoid for all entries in JOINS
    Try to avoid joins and use FOR ALL ENTRIES.
    Try to restrict the joins to 1 level only ie only for tables
    Avoid using Select *.
    Avoid having multiple Selects from the same table in the same object.
    Try to minimize the number of variables to save memory.
    The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)
    Avoid creation of index as far as possible
    Avoid operators like <>, > , < & like % in where clause conditions
    Avoid select/select single statements in loops.
    Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.
    Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,)
    Avoid using ORDER BY in selects
    Avoid Nested Selects
    Avoid Nested Loops of Internal Tables
    Try to use FIELD SYMBOLS.
    Try to avoid into Corresponding Fields of
    Avoid using Select Distinct, Use DELETE ADJACENT
    Check the following Links
    Re: performance tuning
    Re: Performance tuning of program
    http://www.sapgenie.com/abap/performance.htm
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    check the below link
    http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm
    See the following link if it's any help:
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    Check also http://service.sap.com/performance
    and
    books like
    http://www.sap-press.com/product.cfm?account=&product=H951
    http://www.sap-press.com/product.cfm?account=&product=H973
    http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    Performance tuning for Data Selection Statement
    http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm
    Debugger
    http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
    http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
    http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
    Run Time Analyser
    http://help.sap.com/saphelp_47x200/helpdata/en/c6/617cafe68c11d2b2ab080009b43351/content.htm
    SQL trace
    http://help.sap.com/saphelp_47x200/helpdata/en/d1/801f7c454211d189710000e8322d00/content.htm
    CATT - Computer Aided Testing Too
    http://help.sap.com/saphelp_47x200/helpdata/en/b3/410b37233f7c6fe10000009b38f936/frameset.htm
    Test Workbench
    http://help.sap.com/saphelp_47x200/helpdata/en/a8/157235d0fa8742e10000009b38f889/frameset.htm
    Coverage Analyser
    http://help.sap.com/saphelp_47x200/helpdata/en/c7/af9a79061a11d4b3d4080009b43351/content.htm
    Runtime Monitor
    http://help.sap.com/saphelp_47x200/helpdata/en/b5/fa121cc15911d5993d00508b6b8b11/content.htm
    Memory Inspector
    http://help.sap.com/saphelp_47x200/helpdata/en/a2/e5fc84cc87964cb2c29f584152d74e/content.htm
    ECATT - Extended Computer Aided testing tool.
    http://help.sap.com/saphelp_47x200/helpdata/en/20/e81c3b84e65e7be10000000a11402f/frameset.htm
    Just refer to these links...
    performance
    Performance
    Performance Guide
    performance issues...
    Performance Tuning
    Performance issues
    performance tuning
    performance tuning
    You can go to the transaction SE30 to have the runtime analysis of your program.Also try the transaction SCI , which is SAP Code Inspector.
    1 Always check the driver internal tables is not empty, while using FOR ALL ENTRIES
    2 Avoid for all entries in JOINS
    3 Try to avoid joins and use FOR ALL ENTRIES.
    4 Try to restrict the joins to 1 level only ie only for 2 tables
    5 Avoid using Select *.
    6 Avoid having multiple Selects from the same table in the same object.
    7 Try to minimize the number of variables to save memory.
    8 The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)
    9 Avoid creation of index as far as possible
    10 Avoid operators like <>, > , < & like % in where clause conditions
    11 Avoid select/select single statements in loops.
    12 Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.
    13 Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,)
    14 Avoid using ORDER BY in selects
    15 Avoid Nested Selects
    16 Avoid Nested Loops of Internal Tables
    17 Try to use FIELD SYMBOLS.
    18 Try to avoid into Corresponding Fields of
    19 Avoid using Select Distinct, Use DELETE ADJACENT.
    Regards
    Anji

  • How to reduce the time..?

    Hi All,
    this statement below is taking lot of time how can i reduce the time ....?
    cheers
    sundeep
    select * from zausfu where vbeln in so_vbeln
                        AND wadat_ist IN so_wadat
                        AND aland IN so_eland
                        AND vsbed IN so_vsbed
                        AND vsart IN so_vsart
                        AND sdabw = sdabw_wert.
    tab-aland = zausfu-aland.
    tab-vbeln = zausfu-vbeln.
    tab-wadat = zausfu-wadat_ist.
    tab-vsart = zausfu-vsart.
    tab-sdabw = zausfu-sdabw.
    IF sdabw_wert = 'A'.
        tab-flag = 'X'.
      ENDIF.
       anz_datensaetze = anz_datensaetze + 1.
    append tab.
    endselect.

    Hi Sundeep,
    Please use the below code, might be it will reduce the time for u r program.
    Types Declaration
    types: begin of ty_zausfu,
           aland type zausfu-aland,
           vbeln type zausfu-vbeln,
           wadat type zausfu-wadat_ist,
           vsart type zausfu-vsart,
           sdabw type zausfu-sdabw,
           end of ty_zausfu.
    types: begin of ty_tab,
           aland type zausfu-aland,
           vbeln type zausfu-vbeln,
           wadat type zausfu-wadat_ist,
           vsart type zausfu-vsart,
           sdabw type zausfu-sdabw,
           flag(1)
           end of ty_tab.
    Internal Table Declaration
    data: it_zausfu type standard table of ty_zausfu initial size 0,
            it_tab type standard table of ty_tab initial size 0.     
    Workarea Declaration
    data: is_zausfu type ty_zausfu,
            is_tab type ty_tab.
    Data Declaration
          anz_datensaetze type i.
    Data Read from Tables
    select aland vbeln wadat_ist vsart sdabw from zausfu
    into table it_zausfu
    where vbeln in so_vbeln
    AND wadat_ist IN so_wadat
    AND aland IN so_eland
    AND vsbed IN so_vsbed
    AND vsart IN so_vsart
    AND sdabw = sdabw_wert.
    describe table it_zausfu lines anz_datensaetze.
          loop at it_zausfu into is_zausfu.
          move-corresponding is_zausfu to is_tab.
          if sdabw_wert = 'A'.
            is_tab-flag = 'X'.
          endif.
          append is_tab to it_tab.
          clear: is_zausfu, is_tab.
          endloop.
    Please reward points, if it is ok.
    Regards,
    Subbarao

  • How to reduce rollwait time..?

    Hi All,
    the production system is showing avg.diag.resp.time more than 7seconds since last one month.while analysing the avg.Roll wait time is about more than 2sec.kindly suggest how to reduce the roll wait time.
    Thanks & Regards
    Srinivas

    Hi Jaya,
    Few days back we had a long chat on this, may be this will help you to pin point the pain area.
    High roll wait Time
    Regards,
    Gagan Deep Kaushal

  • How to Reduce Updating Time

    Does anyone have any ideas about how to reduce the amount of time it can take to make updates/revisions to captivate files? I am in a technical writing position where I do the writing, editing, illustrating, and creating captivate files. Quite often, I do not have the time to spend ensuring that my captivate files timing is ample or updating screen shots in the case of frequent software updates. We place captivate into FrameMaker or Robohelp. Thanks!

    update policy1    A
        set total_si =
           (select avg(nvl(pol_cvr_si,0))
               from TEST2.TRN_POLICY_COVER_GIS    B
              where B.pol_sys_id = A.pol_sys_id
    ;hopefully there is an index on TEST2.TRN_POLICY_COVER_GIS (POL_SYS_ID)

  • How to reduce rendering time.

    Hi
    I have a couple of questions-
    1. When i am rendering an hd video pal format, it takes on an average 3.5 hours to render it. This is through encore as well as premiere? How do i reduce rendering time?
    2. Second issue is how do i tranfer an open project from 1 computer to the other, since the data is on the hard disk of the first, and there are chances of it getting lost?
    3. When i try converting a pal HD video to ntsc in encore, it doesnt take the frame size. So i have to export it in ntsc in premiere then make the title in encore and then render it again. Takes too long, any way of shortening the process?
    4. How to make dvd copies from a rendered HD project?

    export settings, film size 1440x1080i
    computer specifications 8gb ram, windows 7 (64bit), fx series amd...
    for 01- what would you recommend?  i have a budget constraint that i cannot exceed 3000$
    02- could you elaborate as to how i can copy? i am using a cat 6 network cables between my systems.
    03- when i export it in encore, in the encore export setting there all these otions, based upon frame rate, when i choose the ntsc option, it still takes the default pal option, and doesnt accept the ntsc. So to counter that i have to go back to premiere, export it in ntsc and then make the final output in encore. so it takes 3 hours first to convert to ntsc and then another 3 hours when rendering through encore. i know my process is wrong, what do i do?
    04- any link where i can see it. our time line in bluray is 2 hours, to mantain quality you would need to split that rather than convert the 2 hour project to dvd. i think that is my question, how can you split the bluray project over two dvd's
    thanks for your reply

  • How to reduce the time for each clips up to 0,04 seconds?

    Hi, I'm trying to realize my first time laps. I've need to reduce the time for each clips up to 0,04 seconds, but it seems that the minimum time is 0,1 second. There's a solution?

    And use a zip file.  Many people can't open RARs.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • How to reduce insert time

    I have to insert and update nearly 1000 records in Oracle, when user clicks "Save" button, but this is taking approx. 2mins, and the user has to wait for these 2mins, with out any operation. Is there any chance that i can reduce this time. I am using prepared Statement and batch statements. but still it is really slow... can ideas???

    Using Oracle, you can set the fetchSize (number of rows sent during a single network round trip) to be greater then the default, which I think is either 10 or 100 (sorry, I don't remember). This may limit (it is only a suggestion to the driver) the total number of round trips executed on the network and could result in a minor speed up of your insert processing. My suggestion would be to set fetchSize at or above your expected Batch size.
    PreparedStatements should in most cases be faster, not slower for insert processing. Your results don't identify that to be true in your case. Are you using PreparedStatements within Batch processing, or are you running them individually (they should be within Batch processing).
    You mention updates, not just insert processing. Updates can be optimized by ensuring correct use of indexes on the table(s) you are updating. Use of a PreparedStatement can alter the path the optimizer chooses when executing the update when contrasted against Dynamic SQL, but the 10-15 second difference does not point me in that direction.
    Again, best of luck.

  • Collaboration - how to reduce response time for Instant Messaging

    Hello Experts,
    I have enabled Collaboration link in the masthead of Ajax Framework Page by following the steps mentioned in the link Activating the Link for Launching the Collaboration Launch Pad.
    I then activated services for real time collaboration in Ajax Framework Page referring to the link Activating Services for Real-Time Collaboration.
    Following this I activated synchronous collaboration service types with the help of Activating Synchronous Collaboration Service Types.
    In addition to the above steps I also followed this thread (Standard Services Instant Messaging Doesn't Work - Portal 7.3) and did the below changes in PCD Inspector:
    # Browse into: portal_content -> every_user -> general -> frameworkpage
    # Open com.sap.portal.toolAreaiView with option "PropEditor"
    # Select the property: "EnableRtcSessionManager"
    # Select the link "edit" Change the property value to "true"
    On doing the above configurations I am able to open Collaboration Launchpad and send Instant Messages to users in my Contacts.
    However what I have observed is that when I open an Instant Messaging window and type in some message and send it to a user, it takes between 70-90 seconds for the message to appear on the user's system, which is quite a long time considering it is an instant message. Is this normal behavior for instant messaging? Are there any other parameters/configurations that can be done to reduce this time taken for instant messages to get sent between users?
    We are running NW 7.30 SP09 portal.
    Regards,
    Saurabh

    Hi Saurabh,
    Refer this link [http://help.sap.com/saphelp_nw73/helpdata/en/48/01a15984ff4aa5e10000000a421937/frameset.htm] and check thePollingIntervalBasis in NWA depending upon the no. of clients.

  • How to reduce processing time  in case of jms to idoc scenario

    hi all,
    i am doing jms to idoc scenario.
    in this i'm using xslt and graphical mapping.
    while perfroming E2E testing the messages are taking lot of time to get processed.
    please tell me as how can i reduce this processing time or in short how can i overcome this problem.this is a critical issue in production.
    regards
    madhu

    Hi,
    1. To reduce the processing time for JMS -> IDOC scenario, try to get the Average processing time taken by JMS adapter, IE, IDOC adapter for the messages that are processed so far by going thro the Adapter Audit logs, SXMB_MONI race and Time in WE02 in R/3 system. Calculate this for 5 - 10 messages at different time to get the clear idea of which step is consuming more time. Then it will be helpful to focus on tuning that specific step.  If you are using BPM, check the processing time taken by PE.
    2. Check the Inbound and Outbound queues used by this interface, if required try to configure Prioritized Queue with more time allocated for this interface in Integration Engine.
    3. Check the load on the Integration Server when this Interface messages are getting processed, to understand/ isolate the interfaces which are consuming more processing time and system resources.
    4. If this is not in Production try to perform the Mapping/ transformation in graphical mapping itself, it will be helpful to minimise use of XSLT mapping to get better performance.
    5. Check if the Archive and Delete jobs are running successfully in the Integration Server, since this will free up the occupied resources in the system.
    6. If possible post seperate Forum questions for issues in different Interface scenarios, it will be easy to understand the problem for all of us.
    Hope this will be helpful,
    Regards,
    S.Santhosh Kumar

  • How to reduce Parse time in dynamic SQL

    I'm using for a part of my code dynamic SQL with DBMS_SQL Package, this dynamic SQL code is located in a loop with say 1000 repeatations, if we trace the code we see that this sql statement is parsed 1000 times and this causes
    a serios performance issue. If i convert this part of code into static PLSQL code , the statement is parsed only one time as expected. i would like
    to know how i can resolve this problem in the dynamic SQL code.
    Why in case of static SQL, despite it is inside the loop, it is parsed
    only one time by ORACLE and in case of dynamic SQL as many as the upper limit of counter.
    Why the ORACLE has different behaviour to parse them? Is there any way or trick
    to force ORACLE to parse it only one time like static SQL?

    despite the open cursor is also inside the loop but oracle parse it only one time.That is because PL/SQL is caching your cursor and resuing it. With DBMS_SQL you are opening a new cursor area in the loop for each iteration (DBMS_SQL.OPEN_CURSOR).
    what you need to do is open/parse once and bind the value each time through the loop:
    DECLARE
        expr      VARCHAR2(1000);
        check_cur PLS_INTEGER;
        nDummy    PLS_INTEGER;
        nFetched  PLS_INTEGER;
    BEGIN
        -- Open Cursor
        check_cur := dbms_sql.open_cursor;
        expr      := 'select 1 from dual where ' || ':bindvar1 ' || '=' ||
                     ' ''bindvar1'' ';
        -- Parse Cursor
        dbms_sql.parse(check_cur,
                       expr,
                       1);
        FOR counter IN 1 .. 1000
        LOOP
            -- Define Column
            DBMS_SQL.define_column(check_cur,
                                   1,
                                   1);
            -- Do Binding
            dbms_sql.bind_variable(check_cur,
                                   ':bindvar1',
                                   'bindname1');
            -- Execute Cursor
            nDummy := DBMS_SQL.EXECUTE(check_cur);
            -- Fetch Rows
            nFetched := DBMS_SQL.fetch_rows(check_cur);
        END LOOP;
        -- Close Cursor
        dbms_sql.close_cursor(check_cur);
    END;
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.21       0.23          0          0          0           0
    Execute   1000      0.11       0.10          0          0          0           0
    Fetch     1000      0.03       0.01          0          0          0           0
    total     2001      0.35       0.35          0          0          0           0

Maybe you are looking for

  • Can't print with user but can with local admin

    Hello All, I'm a Windows admin learning how to support Macs in a 2003 AD environment. Here's my problem. I have a Windows 2003 AD Domain and an office of Mac clients running OSX 10.3.9. I'm using AdmitMac version 1 to connect the Mac's to AD. There's

  • Startup Slow Down After Battery Update

    Hi all, I just installed the Battery 1.2 update days ago. The startup speed changed to very slow after the update and thought it's just some effect after update, but after a few times of starting up the machine, it still the same slow speed. Any idea

  • Reg:Updating NAST Table

    Hi Gurus, In my requirement i want to set  the data base field VSTAT as 1 in NAST table when the order is processed. I'm using UPDATE statement to update the database field but it does not work. i write the code like this update nast set vstat = 1   

  • Cross tab column issue

    I have a cross tab report that has three column fields. I want to design the report such that when the outer most column (1st column) field get repeated again it should appear at a certain gap from the first one. By default crystal report shows all t

  • Itunes 12 album name too dim to read

    I'm having the same problem now with iTunes 12 I have with iTunes on my iPhone.  The song title is displayed quite prominently and underneath in "grayed out" fashion" is the artists name and album title.  My problem is the grayed out info is too dim