ALV report -How to display list contains no data?

Hi Experts,
I have developed an drill down alv report ? I like to display if 'List contains no data ' or 'No data to display' in Grid itself when there is no data to dissplay instead of an Message ?how can i do that?

hi
    u should have used this command before calling your grid or list
if gt_itab[] is not initial. --> comment this
call function reuse or call method
endif.
assuming you have given a top of page for your grid output
if helpful, reward
Sathish. R

Similar Messages

  • ALV Report how to display from and to date values in the header.

    I develoeped alv report . i want to display selection screen from and to date values in  top of page...
    any sample code pls guide me..

    You have to do many things...
    first find the selection details using the FM.
    RS_REFRESH_FROM_SELECTOPTIONS
    use the Blog to Align/populate the Header  from the selection table
    /people/community.user/blog/2007/05/07/alignment-of-data-in-top-of-page-in-alv-grid

  • ALV Report : How to display popup window?

    Hello Friends,
    I have developed oone ALV report using classes.
    When i hit a button, I want to display one pop window which gives me my internal table details and one more button in this popup window.
    Is it possible to call pop window with ALV using classes??
    Regards
    RH

    Use the following Methods:
        METHODS: lmt_toolbar FOR EVENT toolbar OF cl_gui_alv_grid
                                       IMPORTING e_object
                                            e_interactive,
    ** Method for User Command
                 lmt_command FOR EVENT user_command OF cl_gui_alv_grid
                                       IMPORTING e_ucomm,
    FORM sub_create_toolbar USING uw_object
                                  TYPE REF TO cl_alv_event_toolbar_set
                                  uw_interactive TYPE char01.
      DATA: lw_stb_button TYPE stb_button.
      FIELD-SYMBOLS: <l_button> TYPE stb_button.
    ** Fill in the toolbar Button
      lw_stb_button-function  = 'IFLU'.
      lw_stb_button-icon      = icon_te_receipts.
      lw_stb_button-quickinfo = text-b01.
      lw_stb_button-text      = text-b01.
      INSERT lw_stb_button INTO uw_object->mt_toolbar INDEX 3.
      READ TABLE uw_object->mt_toolbar ASSIGNING <l_button> INDEX 1.
      IF sy-subrc = 0.
        <l_button>-butn_type = 1.
      ENDIF.
    ENDFORM.                    " sub_create_toolbar
    FORM sub_access_command USING uw_ucomm TYPE sy-ucomm.
      DATA: lt_row   TYPE lvc_t_row,
            lt_rowid TYPE lvc_t_roid,
            lw_count TYPE lvc_index.
      FIELD-SYMBOLS: <l_row> TYPE lvc_s_row.
    ** Get the Selected row to be displayed
      CALL METHOD gw_grid->get_selected_rows
      IMPORTING
        et_index_rows = lt_row
        et_row_no     = lt_rowid.
    ** User Command
      CASE uw_ucomm.
        WHEN 'IFLU'.
    ** Read the index from which the Document Flow was selected
          READ TABLE lt_row ASSIGNING <l_row> INDEX 1.
          IF sy-subrc = 0.
            PERFORM sub_get_detail USING <l_row>-index.
          ENDIF.
        WHEN c_detail1.
    ** Call the screen or the Function Module here to display the popup.
          PERFORM sub_show_detail USING abap_false.
        WHEN c_detail2.
          PERFORM sub_show_detail USING abap_true.
      ENDCASE.
    ENDFORM.                    " sub_access_command
    Hope That Helps
    Anirban M.

  • Alv list contains no data

    I am working with a custom table zscs_record.
    data is being fetched in the perform upload_workarea.
    but the list contains no data.
    there might be any problem with the display_log.
    if anybody plz can find where is the mistake full points will be rewarded.
    just copy the program and execute it.
    REPORT yreport1 LINE-SIZE 260
    NO STANDARD PAGE HEADING
    MESSAGE-ID zsc_supply_chain.
              T Y P E -  P O O L S                           *
    TYPE-POOLS: SLIS.
          C o n s t a n t    V A R I A B L E S                  *
    CONSTANTS: c_e                TYPE  char1        VALUE  'E',
               c_a                TYPE  char1        VALUE  'A',
               c_s                TYPE  char1        VALUE  'S',
               c_x                TYPE  char1        VALUE  'X',
               c_dynpro_0201(4)   TYPE  c            VALUE  '0201',
               c_prognam(12)      TYPE  c            VALUE  'SAPRCKM_MR22',
               c_dynpro_1000(4)   TYPE  c            VALUE  '1000',
               c_dynpro_0120(4)   TYPE  c            VALUE  '0120',
               c_okcode(10)       TYPE  c            VALUE  'BDC_OKCODE',
               c_entr(5)          TYPE  c            VALUE  '=ENTR',
               c_dummy(6)         TYPE  c            VALUE  '=DUMMY',
               c_down(5)          TYPE  c            VALUE  '=DOWN',
               c_save(5)          TYPE  c            VALUE  '=SAVE',
               c_back(5)          TYPE  c            VALUE  '=BACK',
               c_onli(5)          TYPE  c            VALUE  '=ONLI',
               c_ee(3)            TYPE  c            VALUE  '/EE',
               c_one              TYPE  ckml_kongr   VALUE  '1'   ,
               c_bkpf(4)          TYPE  c            VALUE  'BKPF',
               c_wfp              TYPE  bukrs        VALUE  'WFP',
               c_sa               TYPE  blart        VALUE  'SA',
               c_ags              TYPE  ktosl        VALUE  'AGS',
               c_usd              TYPE  waers_iso    VALUE  'USD',
               c_budat(14)        TYPE  c            VALUE  'MR21HEAD-BUDAT',
               c_bukrs(14)        TYPE  c            VALUE  'MR21HEAD-BUKRS',
               c_werks(14)        TYPE  c            VALUE  'MR21HEAD-WERKS',
               c_xblnr(14)        TYPE  c            VALUE  'MR21HEAD-XBLNR',
               c_kongr(14)        TYPE  c            VALUE  'CKMLKONT-KONGR',
               c_bktxt(14)        TYPE  c            VALUE  'MR21HEAD-BKTXT',
               c_mr22             TYPE  tstc-tcode   VALUE  'MR22',
               c_f13              TYPE  tstc-tcode   VALUE  'F.13',
               c_n(1)             TYPE  c            VALUE  'N',
               c_bag              TYPE  char9        VALUE  '%Bagging%',
               c_ltsh             TYPE  char12       VALUE  '%LTSH%Clear%',
               c_trnsf            TYPE  char30       VALUE  '%Transformation%Clear%',
               c_ste              TYPE  char20       VALUE  '%Stevedoring%Clear%',
               c_mat              TYPE  char30       VALUE  '%Material%Revaluation',
               c_mat1             TYPE  char8        VALUE  'MATERIAL',
               c_rev              TYPE  char10       VALUE  'REVOLUTION',
               c_tabname          TYPE  tabname      VALUE  'ZSCT_RECORD',
               c_prognam3(7)      TYPE  c            VALUE  'SAPF124',
               c_prognam4(8)      TYPE  c            VALUE  'SAPMSSY0',
               c_cursor(10)       TYPE  c            VALUE  'BDC_CURSOR',
               c_konts_low(9)     TYPE  c            VALUE  'KONTS-LOW',
               c_bukrx_low(9)     TYPE  c            VALUE  'BUKRX-LOW',
               c_saknr(7)         TYPE  c            VALUE  'X_SAKNR',
               c_augdt(5)         TYPE  c            VALUE  'AUGDT',
               c_testl(5)         TYPE  c            VALUE  'TESTL',
               c_xausbel(7)       TYPE  c            VALUE  'XAUSBEL',
               c_xnausbel(8)      TYPE  c            VALUE  'XNAUSBEL',
               c_fehler(8)        TYPE  c            VALUE  'X_FEHLER',
               c_mr21(23)         TYPE  c            VALUE  'MR21HEAD-SCREEN_VARIANT',
               c_lagmat(18)       TYPE  c            VALUE  'LAGERMATERIAL_0250',
               c_psp(30)          TYPE  c            VALUE  'PSP-ELEMENT - OHNE BWKEY_0250',
               c_ckmatnr(20)      TYPE  c            VALUE  'CKI_MR22_0250-MATNR(',
               c_ckzuumb(20)      TYPE  c            VALUE  'CKI_MR22_0250-ZUUMB(',
               c_ckpspnr(20)      TYPE  c            VALUE  'CKI_MR22_0250-PSPNR(',
               c_ckbwkey(20)      TYPE  c            VALUE  'CKI_MR22_0250-BWKEY(',
               c_sp(1)            TYPE  c            VALUE  ')',
               c_shkzg1           TYPE  shkzg        VALUE 'H',
               c_shkzg2           TYPE  shkzg        VALUE 'S',
    *For ALV column positions
            c_col_pos1            TYPE            sycucol             VALUE '01',
            c_col_pos2            TYPE            sycucol             VALUE '02',
            c_col_pos3            TYPE            sycucol             VALUE '03',
            c_col_pos4            TYPE            sycucol             VALUE '04',
            c_col_pos5            TYPE            sycucol             VALUE '05',
            c_col_pos6            TYPE            sycucol             VALUE '06',
            c_col_pos7            TYPE            sycucol             VALUE '07',
            c_col_pos8            TYPE            sycucol             VALUE '08',
            c_col_pos9            TYPE            sycucol             VALUE '09',
            c_col_pos10           TYPE            sycucol             VALUE '10',
            c_col_pos11           TYPE            sycucol             VALUE '11',
            c_col_pos12           TYPE            sycucol             VALUE '12',
            c_col_pos13           TYPE            sycucol             VALUE '13',
            c_col_pos14           TYPE            sycucol             VALUE '14',
            c_col_pos15           TYPE            sycucol             VALUE '15',
    *For ALV Field Names of final Table
            c_fld_recid           TYPE            slis_fieldname      VALUE  'RECID',          "Record ID number
            c_fld_kongr           TYPE            slis_fieldname      VALUE  'KONGR',          "Reason code
            c_fld_hkont           TYPE            slis_fieldname      VALUE  'HKONT',          "GL Account
            c_fld_projk           TYPE            slis_fieldname      VALUE  'PROJK',          "Project code
            c_fld_werks           TYPE            slis_fieldname      VALUE  'WERKS',          "Plant
            c_fld_matnr           TYPE            slis_fieldname      VALUE  'MATNR',          "Commodity
            c_fld_zcptp           TYPE            slis_fieldname      VALUE  'ZCPTP',          "Cose portion to be posted
            c_fld_zerrf           TYPE            slis_fieldname      VALUE  'ZERRF',          "Success flag
            c_fld_zerrc           TYPE            slis_fieldname      VALUE  'ZERRC',          "Error code
            c_fld_zertx           TYPE            slis_fieldname      VALUE  'ZERTX',          "Error txt
            c_fld_hkont1          TYPE            slis_fieldname      VALUE  'HKONT',
            c_fld_opbal           TYPE            slis_fieldname      VALUE  'OPBAL',
            c_fld_exp             TYPE            slis_fieldname      VALUE  'EXP',
            c_fld_cap             TYPE            slis_fieldname      VALUE  'CAP',
            c_fld_err             TYPE            slis_fieldname      VALUE  'ERR',
            c_table               TYPE            slis_tabname        VALUE  'i_log_disp'.
    *T Y P E S                                                            *
    *Structure for uploading the data for further processing
    TYPES: BEGIN OF t_zscs_record ,
               recid      TYPE zderecid,                       "Record id number
               zerrf      TYPE zdeerrf,                        "Processed \ not processed flag - FLAG X Success Blank
               cpudt      TYPE cpudt,                          "Day On Which Accounting Document Was Entered
               kongr      TYPE ckml_kongr,                     "Account Assignment Reason
               hkont      TYPE hkont,                          "General Ledger Account
               projk      TYPE char30,                          "WBS Element
               werks      TYPE werks_d,                        "Plant
               matnr      TYPE matnr,                          "Material Number
               zcptp      TYPE zdecptp,                        "cost portion to be posted
               belnr      TYPE belnr_d,                        "Accounting Document Number
               zerrc      TYPE zdeerrc,                        "Error code
               zertx      TYPE zdeertx,                        "Error text
               set        TYPE numc2,
           END OF t_zscs_record ,
    *Structre for modified WBS element
           BEGIN OF t_zscs_record_m ,
               recid      TYPE zderecid,                       "Record id number
               zerrf      TYPE zdeerrf,                        "Processed \ not processed flag - FLAG X Success Blank
               cpudt      TYPE cpudt,                          "Day On Which Accounting Document Was Entered
               kongr      TYPE ckml_kongr,                     "Account Assignment Reason
               hkont      TYPE hkont,                          "General Ledger Account
               projk      TYPE char24,
               werks      TYPE werks_d,                        "Plant
               matnr      TYPE matnr,                          "Material Number
               zcptp      TYPE zdecptp,                        "cost portion to be posted
               belnr      TYPE belnr_d,                        "Accounting Document Number
               zerrc      TYPE zdeerrc,                        "Error code
               zertx      TYPE zdeertx,                        "Error text
               set        TYPE numc2,
           END OF t_zscs_record_m,
    *Structure for retrieving data from custom table ZSCT_AUTOINV
           BEGIN OF t_zsct_autoinv,
               saknr      TYPE saknr,                          "G/L Account Number
               fipos      TYPE fm_fipex,                       "Commitment Item
               geber      TYPE bp_geber,                       "Fund
               saknr_off  TYPE saknr,                          "G/L Account Number
               fipos_off  TYPE fm_fipex,                       "Commitment Item
           END OF t_zsct_autoinv,
    *Structure for retrieving data from database table FMBDT
           BEGIN OF t_fmbdt,
               rldnr      TYPE rldnr,                          "Ledger
               rrcty      TYPE rrcty,                          "Record Type
               rvers      TYPE versn,                          "Version
               ryear      TYPE gjahr,                          "Fiscal Year
               robjnr     TYPE gobjnr_r,                       "Object number for objects (account assignment elements)
               cobjnr     TYPE gobjnr_c,                       "Object number for transaction attributes
               sobjnr     TYPE gobjnr_s,                       "Object number for partner objects (accnt assignmnt elements)
               rtcur      TYPE rtcur,                          "Currency Key
               drcrk      TYPE shkzg,                          "Debit/Credit Indicator
               rpmax      TYPE rpmax,                          "period
               rfund      TYPE fm_fund,                        "Fund
               rfundsctr  TYPE fistl,                          "Funds Center
               rmeasure   TYPE fm_measure,                     "Funded Program
           END OF t_fmbdt,
    *Structure for retrieveing data from table SKAT
           BEGIN OF t_skat,
               spras      TYPE spras,                          "Language Key
               ktopl      TYPE ktopl,                          "Chart of Accounts
               saknr      TYPE saknr,                          "G/L Account Number
               txt50      TYPE txt50_skat,                     "G/L Account Long Text
           END OF  t_skat,
    *Structure for tracking the errors occured during document posting
    *through standard BAPI
           BEGIN OF t_error_bapi,
               number     TYPE symsgno,
               message    TYPE bapi_msg,
               recid      TYPE zderecid,
               set        TYPE numc2,
           END OF t_error_bapi,
    *Structure for tracking the success occured during document posting
    *through standard BAPI
           BEGIN OF t_suc_bapi,
               belnr      TYPE belnr_d,
               message    TYPE bapi_msg,
               recid      TYPE zderecid,
               set        TYPE numc2,
           END OF t_suc_bapi,
    *Structure for tracking the errors occured during document posting
    *through MR22 transaction code
            BEGIN OF t_error_bdc,
               recid      TYPE zderecid,                       "Record id number
               number     TYPE symsgno,
               message    TYPE bapi_msg,
               set        TYPE numc2,
           END OF t_error_bdc,
    *Structure for tracking the document no. occured during successful posting
    *through MR22 transaction code
             BEGIN OF t_suc_bdc,
               recid      TYPE zderecid,                       "Record id number
               var        TYPE sy-msgv1,
               message    TYPE bapi_msg,
               set        TYPE numc2,
             END OF t_suc_bdc,
             BEGIN OF t_log_disp,
             recid      TYPE  zderecid,                       "Record id number
             kongr      TYPE  ckml_kongr,                     "Account Assignment Reason
             hkont      TYPE  hkont,                          "General Ledger Account
             projk      TYPE  char30,                         "WBS Element
             werks      TYPE  werks_d,                        "Plant
             matnr      TYPE  matnr,                          "Material Number
             zcptp      TYPE  zdecptp,                        "cost portion to be posted
             zerrf      TYPE  zdeerrf,                        "Processed \ not processed flag - FLAG X Success Blank
             zerrc      TYPE  zdeerrc,                        "Error code
             zertx      TYPE  zdeertx,                        "Error text
             hkont1     TYPE  hkont,
             opbal      TYPE  dmbtr,
             exp        TYPE  dmbtr,
             cap        TYPE  dmbtr,
             err        TYPE  dmbtr,
             END OF  t_log_disp.
    *Field symbols declared for BAPIRET2
    FIELD-SYMBOLS: <fs_return> TYPE bapiret2.
          G l o b a l   W O R K A R E A S                                     *
    DATA: w_zscs_record     TYPE t_zscs_record,
          w_zscs_record_mod TYPE t_zscs_record,
          w_fmbdt           TYPE t_fmbdt,
          w_bapi            TYPE t_zscs_record,
          w_bdc             TYPE t_zscs_record,
          w_temp            TYPE t_zscs_record,                 "#EC NEEDED
          w_bapiheader      TYPE bapiache09,
          w_return          TYPE bapiret2,
          w_accoutgl        TYPE bapiacgl09,
          w_currency        TYPE bapiaccr09,
          w_bdcdata         TYPE bdcdata,
          w_messtab         TYPE bdcmsgcoll,
          w_error_bapi      TYPE t_error_bapi,
          w_suc_bapi        TYPE t_suc_bapi,
          w_error_bdc       TYPE t_error_bdc,
          w_suc_bdc         TYPE t_suc_bdc,
          w_fieldcatalog    TYPE slis_fieldcat_alv,           "Workarea for populating fieldcatalog
          w_log_disp        TYPE t_log_disp.
            I n t e r n a l   T a b l e s                                     *
    DATA: i_zscs_record     TYPE  STANDARD TABLE OF t_zscs_record,
          i_zscs_record1    TYPE  STANDARD TABLE OF t_zscs_record,
          i_bapi            TYPE  STANDARD TABLE OF t_zscs_record,
          i_bdc             TYPE  STANDARD TABLE OF t_zscs_record,
          i_fmbdt           TYPE  STANDARD TABLE OF t_fmbdt,
          i_accoutgl        TYPE  STANDARD TABLE OF bapiacgl09,
          i_currency        TYPE  STANDARD TABLE OF bapiaccr09,
          i_return          TYPE  STANDARD TABLE OF bapiret2,
          i_bdcdata         TYPE  STANDARD TABLE OF bdcdata INITIAL SIZE 0,
          i_messtab         TYPE  STANDARD TABLE OF bdcmsgcoll INITIAL SIZE 0,
          i_bdcdata1        TYPE  STANDARD TABLE OF bdcdata INITIAL SIZE 0,
          i_messtab1        TYPE  STANDARD TABLE OF bdcmsgcoll INITIAL SIZE 0,"#EC NEEDED
          i_autoinv         TYPE  STANDARD TABLE OF t_zsct_autoinv,
          i_autoinv1        TYPE  STANDARD TABLE OF t_zsct_autoinv,
          i_error_bapi      TYPE  STANDARD TABLE OF t_error_bapi,
          i_suc_bapi        TYPE  STANDARD TABLE OF t_suc_bapi,
          i_error_bdc       TYPE  STANDARD TABLE OF t_error_bdc,
          i_suc_bdc         TYPE  STANDARD TABLE OF t_suc_bdc,
          i_fieldcatalog    TYPE  slis_t_fieldcat_alv,
          i_log_disp        TYPE STANDARD TABLE OF t_log_disp.              "internal table for final log display
          G l o b a l   V A R I A B L E S                                     *
    DATA: v_rec          TYPE      string,
          v_rec1         TYPE      string,
          v_count        TYPE      numc2    VALUE 1,
          v_flag         TYPE      char1,                                "#EC NEEDED
          v_subrc        TYPE      sysubrc,
          v_objkey       TYPE      awkey,
          v_amt          TYPE      zdecptp,
          v_txt50        TYPE      txt50_skat,
          v_pspid        TYPE      ps_pspid,                             "#EC NEEDED
          v_totexppe     TYPE      zdecptp,
          v_totcapit     TYPE      zdecptp,
          v_toterror     TYPE      zdecptp,
          v_todmbtr      TYPE      dmbtr,
          v_repid        TYPE      sy-repid.
          S E L E C T I O N - S C R E E N   D E F I N I T I O N          *
                     S E L E C T I O N - S C R E E N                     *
    *Begin of inv selection block
    SELECTION-SCREEN BEGIN OF BLOCK inv WITH FRAME TITLE text-001.
    PARAMETERS: p_pstdat  TYPE budat DEFAULT sy-datum,                               "Posting Date
                p_rtmode AS CHECKBOX DEFAULT c_x,                                    "Run in test mode
                p_prsall RADIOBUTTON GROUP rad DEFAULT 'X' USER-COMMAND com,         "Process All
                p_cstcpt RADIOBUTTON GROUP rad,                                      "Process cost to be capitalized
                p_cstexp RADIOBUTTON GROUP rad,                                      "Process cost to be expensed
                p_exauto AS CHECKBOX.                                                "Execute Automatic Clearing
    SELECTION-SCREEN END OF BLOCK inv.
    *End of inv selection block
           I N I T I A L I Z A T I O N                                        *
    INITIALIZATION.
    Subroutine for clearing the memory space
      PERFORM clear_memory.                                                          "To clear the memory space.
           A T   S E L E C T I O N - S C R E E N  O U T P U T                 *
    AT SELECTION-SCREEN OUTPUT.
    For checking the Clearing program through transaction code F.13 only
    when user selects the radio button Process All
      IF p_prsall = c_x.                                           "Process All
        p_exauto = c_x.                                            "Execute Automatic Clearing
      ELSE.
        p_exauto = ' '.                                            "Execute Automatic Clearing
      ENDIF.
      MODIFY SCREEN.
                              START OF SELECTION              *
    START-OF-SELECTION.
    Subroutine for uploading data from custom database table
    ZSCT_RECORD based on the condition selected by user
      PERFORM upload_workarea.
                              END OF SELECTION                 *
    END-OF-SELECTION.
    Subroutine for populating the respective internal tables
    for posting the documents either through standard BAPI or MR22 transaction code
      PERFORM populate_bapi_bdc.
      IF NOT i_bapi[] IS INITIAL.
    Subroutine for posting documents through standard BAPI
        PERFORM post_bapi.
      ENDIF.
    IF NOT i_bdc[] IS INITIAL.
    Subroutine for posting documents through MR22 transaction code
        PERFORM call_transaction_mr22.
      ENDIF.
    Subroutine for automatic clearing
      IF p_exauto = c_x.
        PERFORM clear_f13.
      ENDIF.
    IF ( ( i_error_bapi IS NOT INITIAL ) OR ( i_error_bdc IS NOT INITIAL ) ).
    Subroutine for displaying the log file
      PERFORM display_log.
    ENDIF.
      PERFORM FINAL_list.
    *&      Form  CLEAR_MEMORY
          text
    form CLEAR_MEMORY.
    Refreshing the global internal tables
      REFRESH: i_zscs_record,
               i_zscs_record1,
               i_bapi,
               i_bdc,
               i_fmbdt,
               i_accoutgl,
               i_currency,
               i_return,
               i_bdcdata,
               i_messtab,
               i_bdcdata1,
               i_messtab1,
               i_autoinv,
               i_error_bapi,
               i_suc_bapi,
               i_error_bdc,
               i_suc_bdc.
    Clearing the global work areas
      CLEAR:   w_zscs_record,
               w_zscs_record_mod,
               w_fmbdt,
               w_bapi,
               w_bdc,
               w_temp,
               w_bapiheader,
               w_return,
               w_accoutgl,
               w_currency,
               w_bdcdata,
               w_messtab,
               w_error_bapi,
               w_suc_bapi,
               w_error_bdc,
               w_suc_bdc,
    *Clearing the global variables
               v_rec,
               v_rec1,
               v_flag,
               v_subrc,
               v_objkey,
               v_amt,
               v_pspid.
    endform.                    " CLEAR_MEMORY
    *&      Form  UPLOAD_WORKAREA
       Subroutine for uploading data from custom database table          *
          ZSCT_RECORD based on the condition selected by user            *
    form UPLOAD_WORKAREA .
      IF p_prsall = c_x.
    Selecting the non processed data from table ZSCT_RECORD
        SELECT  recid                                       "#EC CI_NOFIRST         "Record id number
                zerrf                                                               "Processed\not processed flag
                cpudt                                                               "Day On Which Accounting Document Was Entered
                kongr                                                               "Account Assignment Reason
                hkont                                                               "General Ledger Account
                projk                                                               "WBS Element
                werks                                                               "Plant
                matnr                                                               "Material Number
                zcptp                                                               "cost portion to be posted
                belnr                                                               "Accounting Document Number
                zerrc                                                               "Error code
                zertx                                                               "Error text
        FROM zsct_record
        INTO TABLE i_zscs_record
        WHERE zerrf NE space
        AND cpudt = '20081022'.
        IF sy-subrc NE 0.
          MESSAGE  text-021 TYPE 'I'.
          LEAVE LIST-PROCESSING.
        ENDIF.
      ELSEIF p_cstcpt = c_x.
    Selecting the non processed data from table ZSCT_RECORD
        SELECT  recid                                       "#EC CI_NOFIRST
                zerrf
                cpudt
                kongr
                hkont
                projk
                werks
                matnr
                zcptp
                belnr
                zerrc
                zertx
        FROM zsct_record
        INTO TABLE i_zscs_record
        WHERE zerrf NE space
        AND   kongr <> c_e.
        IF sy-subrc NE 0.
          MESSAGE  text-021 TYPE 'I'.
          LEAVE LIST-PROCESSING.
        ENDIF.
      ELSEIF p_cstexp = c_x.
    Selecting the non processed data from table ZSCT_RECORD
        SELECT  recid                                        "#EC CI_NOFIRST
                zerrf
                cpudt
                kongr
                hkont
                projk
                werks
                matnr
                zcptp
                belnr
                zerrc
                zertx
        FROM zsct_record
        INTO TABLE i_zscs_record
        WHERE zerrf NE space
        AND   kongr EQ c_e.
        IF sy-subrc NE 0.
          MESSAGE  text-021 TYPE 'I'.
          LEAVE LIST-PROCESSING.
        ENDIF.
      ENDIF.
      IF sy-subrc = 0.
    Sort the internal table by record id
        SORT i_zscs_record BY recid.
      ENDIF.
    endform.                    " UPLOAD_WORKAREA
    *&      Form  POPULATE_BAPI_BDC                   *
    Subroutine for posting documents through standard BAPI   *
    FORM populate_bapi_bdc.
      DATA: v_tabix TYPE sy-tabix.
    Sort the data retrieved from ZSCT_RECORD by KONGR,HKONT & PROJK
      SORT i_zscs_record BY kongr hkont projk.
      IF NOT i_zscs_record IS INITIAL.
        LOOP AT i_zscs_record INTO w_zscs_record_mod.
          v_tabix = sy-tabix.
      Check if the record id is initial
          IF NOT w_zscs_record_mod-recid IS INITIAL.
            CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
              EXPORTING
                input  = w_zscs_record_mod-recid
              IMPORTING
                output = w_zscs_record-recid.
          ENDIF.
      Check if the reason code is initial
          IF NOT w_zscs_record_mod-kongr IS INITIAL.
            CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
              EXPORTING
                input  = w_zscs_record_mod-kongr
              IMPORTING
                output = w_zscs_record-kongr.
          ENDIF.
      Assign the values
          w_zscs_record-hkont = w_zscs_record_mod-hkont.
          CALL FUNCTION 'CONVERSION_EXIT_ABPSP_OUTPUT'
            EXPORTING
              input  = w_zscs_record_mod-projk
            IMPORTING
              output = w_zscs_record-projk.
          w_zscs_record-werks = w_zscs_record_mod-werks.
          w_zscs_record-matnr = w_zscs_record_mod-matnr.
          w_zscs_record-zcptp = w_zscs_record_mod-zcptp.
          w_zscs_record-cpudt = w_zscs_record_mod-cpudt.
      Concatenate  KONGR,HKONT & PROJK value to make an unique combination to populate the separete
      internal table relevant for posting through BAPI and MR22 transaction
          CONCATENATE w_zscs_record-kongr w_zscs_record-hkont w_zscs_record-projk INTO v_rec.
          IF v_tabix NE 1.
            IF v_rec1 = v_rec.
              v_count = v_count.                                "#EC NEEDED
            ELSE.
              v_count = v_count + 1.
            ENDIF.
          ENDIF.
      Populate the set number into the two different internal table
      relevant for posting through BAPI and MR22 transaction
          w_zscs_record-set = v_count.
      If the KONGR (Reason code) value is equal to 'E' then the
      posting will be occur through standard BAPI
          IF w_zscs_record-kongr = c_e.
            APPEND w_zscs_record TO i_bapi.
      If the KONGR (Reason code) value is not equal to 'E' then the
      posting will be occur through MR22 transaction code
          ELSEIF w_zscs_record-kongr NE c_e.
            APPEND w_zscs_record TO i_bdc.
          ENDIF.
          v_rec1 = v_rec.
      Clear the memory
          CLEAR: w_zscs_record,
                 v_rec.
        ENDLOOP.
      ENDIF.
    endform.                    " POPULATE_BAPI_BDC
    *&      Form  POST_BAPI
          text
    form POST_BAPI .
    Local structre declaration
      TYPES:
          Structre for populating record id
            BEGIN OF lt_recid,
              recid TYPE zderecid,
             END OF   lt_recid,
           Structre for table PRPS
             BEGIN OF lt_prps,
              pspnr      TYPE ps_intnr,           "WBS Element
              posid      TYPE ps_posid,           "Work Breakdown Structure Element (WBS Element)
              pgsbr      TYPE ps_pgsbr,           "Business area for WBS element
              func_area  TYPE fkber,              "Functional Area
             END OF lt_prps .
    Local data declaration
      DATA: lw_bapi    TYPE t_zscs_record,
            lw_bapi1   TYPE t_zscs_record,
            lw_recid   TYPE lt_recid,
            li_recid   TYPE STANDARD TABLE OF lt_recid,         "#EC NEEDED
            li_prps    TYPE STANDARD TABLE OF lt_prps,
            lw_prps    TYPE lt_prps,
            li_temp    TYPE STANDARD TABLE OF t_zscs_record,
            li_temp1   TYPE STANDARD TABLE OF t_zscs_record,
            li_bapi    TYPE STANDARD TABLE OF t_zscs_record,
            li_bapi_m  TYPE STANDARD TABLE OF t_zscs_record_m,
            lw_bapi_m  TYPE t_zscs_record_m,
            li_skat    TYPE STANDARD TABLE OF t_skat,
            li_skat1   TYPE STANDARD TABLE OF t_skat,
            li_skat2   TYPE STANDARD TABLE OF t_skat,
            lw_temp    TYPE t_zscs_record,
            li_autoinv TYPE STANDARD TABLE OF t_zsct_autoinv,
            lw_autoinv TYPE t_zsct_autoinv,
            lv_count   TYPE numc10,
            lw_skat    TYPE t_skat,
            lw_skat1   TYPE t_skat,                             "#EC NEEDED
            lw_skat2   TYPE t_skat,                             "#EC NEEDED
            lv_count1  TYPE numc10,
            lw_index   TYPE sy-index.
    Assigning the I_BAPI data to a local internal table
      li_temp[] = i_bapi[].
      li_bapi[] = i_bapi[].
      li_temp1[] = i_bapi[].
    Sort the internal table by SET
      SORT i_bapi BY set.
    Sort the internal table LI_TEMP by SET
      SORT li_temp BY set.
    Delete adjacent duplicates from LI_TEMP compring SET
      DELETE ADJACENT DUPLICATES FROM li_temp COMPARING set.
    Sort the internal table LI_TEMP1 by PROJK
      SORT li_temp1 BY projk.
    Delete adjacent duplicates from LI_TEMP1 compring PROJK
      DELETE ADJACENT DUPLICATES FROM li_temp1 COMPARING projk.
    Sort the internal table LI_BAPI by HKONT
      SORT li_bapi BY hkont.
    Delete adjacent duplicates from LI_BAPI compring HKONT
      DELETE ADJACENT DUPLICATES FROM li_bapi COMPARING hkont.
    Check if the li_bapi is initial or not
      IF NOT li_bapi[] IS INITIAL.
    Retrieve the text information from database table SKAT
    for all the G/L Account relevant to LTSH Overland Clearing Account/
    Transformation Clearing / Stevedoring Clearing Account / Bagging Clearing Account
        SELECT  spras                                     "#EC CI_SGLSELECT
                ktopl
                saknr
                txt50
          FROM skat
          INTO TABLE li_skat
          FOR ALL ENTRIES IN li_bapi
          WHERE spras = c_e
          AND   saknr = li_bapi-hkont
           AND ( txt50 LIKE c_bag
             OR  txt50 LIKE c_ltsh
             OR  txt50 LIKE c_trnsf
             OR  txt50 LIKE c_ste
             OR  txt50 LIKE c_mat ).
        IF sy-subrc EQ 0.
          SORT li_skat1 BY saknr.
        ENDIF.
    Spiliting the internal table with respect to the TXT50
        LOOP AT li_skat INTO lw_skat.
          v_txt50 = lw_skat-txt50.
          TRANSLATE v_txt50 TO UPPER CASE.                    "#EC SYNTCHAR
          IF v_txt50 CS c_mat1 AND
             v_txt50 CS c_rev.
         Internal table regaring all the G/L Account relevant to Material revolution Account
            APPEND lw_skat TO li_skat2.
          ELSE.
         Internal table regaring all the G/L Account relevant to LTSH Overland Clearing Account/
         Transformation Clearing / Stevedoring Clearing Account / Bagging Clearing Account
            APPEND lw_skat TO li_skat1.
          ENDIF.
          CLEAR: lw_skat,
                 v_txt50.
        ENDLOOP.
        REFRESH: li_skat.
      Retrieve required data from custom table ZSCT_AUTOINV
        SELECT saknr
               fipos
               geber
               saknr_off
               fipos_off
          FROM zsct_autoinv
          INTO TABLE li_autoinv
           FOR ALL ENTRIES IN li_bapi
           WHERE saknr = li_bapi-hkont.
        IF sy-subrc = 0.
      Sort li_autoinv by GEBER
          i_autoinv1 = li_autoinv.
          SORT li_autoinv BY geber.
      Delete adjacent duplicates from li_autoinv comparing GEBER
          DELETE ADJACENT DUPLICATES FROM li_autoinv COMPARING geber.
        ENDIF.
        IF NOT li_autoinv[] IS INITIAL.
      Retrieve required data from database table FMBDT
          SELECT  rldnr
                  rrcty
                  rvers
                  ryear
                  robjnr
                  cobjnr
                  sobjnr
                  rtcur
                  drcrk
                  rpmax
                  rfund
                  rfundsctr
                  rmeasure
            FROM fmbdt                                      "#EC CI_NOFIRST
          INTO TABLE i_fmbdt
          FOR ALL ENTRIES IN li_autoinv
          WHERE ryear = p_pstdat+0(4)
          AND   rfund = li_autoinv-geber.
        ENDIF.
        IF sy-subrc = 0.
          SORT i_fmbdt BY rfund.
        ENDIF.
      ENDIF.
    Populate the internal table with the modified WBS element
    value for further processing
      LOOP AT i_bapi INTO w_bapi.
        lw_bapi_m-recid = w_bapi-recid.
        lw_bapi_m-zerrf = w_bapi-zerrf.
        lw_bapi_m-cpudt = w_bapi-cpudt.
        lw_bapi_m-kongr = w_bapi-kongr.
        lw_bapi_m-hkont = w_bapi-hkont.
        lw_bapi_m-projk = w_bapi-projk.
        lw_bapi_m-werks = w_bapi-werks.
        lw_bapi_m-matnr = w_bapi-matnr.
        lw_bapi_m-zcptp = w_bapi-zcptp.
        lw_bapi_m-belnr = w_bapi-belnr.
        lw_bapi_m-zerrc = w_bapi-zerrc.
        lw_bapi_m-zertx = w_bapi-zertx.
        lw_bapi_m-set   = w_bapi-set.
        APPEND lw_bapi_m TO li_bapi_m.
        CLEAR: lw_bapi_m.
      ENDLOOP.
    Sort LI_BAPI_M by WBS element
      SORT li_bapi_m BY projk.
    Delete adjacent duplicates from LI_BAPI_M comparing WBS element
      DELETE ADJACENT DUPLICATES FROM li_bapi_m COMPARING projk.
    Check if LI_BAPI_M is initial
      IF NOT li_bapi_m[] IS INITIAL.
    Retrieve the required data from table PRPS for all the
    WBS element
        SELECT  pspnr
                posid
                pgsbr
                func_area
           FROM prps
           INTO TABLE li_prps
           FOR ALL ENTRIES IN li_bapi_m
           WHERE posid = li_bapi_m-projk.
        IF sy-subrc = 0.
          SORT li_prps BY posid.
        ENDIF.
      ENDIF.
      lw_index = 1.
      LOOP AT li_temp INTO lw_temp.
        w_temp = lw_temp.
      clearing workares
        CLEAR: w_bapiheader,
               lv_count,
               v_amt.
    ****Populating the BAPIHEADER*******
      Reference Transaction
        w_bapiheader-bus_act    = c_bkpf.
      User Name
        w_bapiheader-username   = sy-uname.
      Document Header Text
        w_bapiheader-header_txt = text-020.
      Company Code
        w_bapiheader-comp_code  = c_wfp.
      Document Date in the Document
        w_bapiheader-doc_date   = p_pstdat.
      Posting Date in the Document
        w_bapiheader-pstng_date = p_pstdat.
      Fiscal Year
        w_bapiheader-fisc_year  = p_pstdat+0(4).
      Fiscal Period
        w_bapiheader-fis_period = p_pstdat+4(2).
      Document Type
        w_bapiheader-doc_type   = c_sa.
      Reference Document Number
        w_bapiheader-ref_doc_no = sy-datum.
      Initialize the counter
        lv_count = 1.
        lv_count1 = 1.
        LOOP AT i_bapi INTO lw_bapi FROM lw_index.
          IF lw_temp-set NE lw_bapi-set.
            lw_index = sy-tabix.
            EXIT.
          ELSE.
            lw_bapi1 = lw_bapi.
            CLEAR: v_pspid.
            READ TABLE li_prps INTO lw_prps WITH KEY posid = lw_bapi-projk BINARY SEARCH.
            IF sy-subrc = 0.
              w_accoutgl-bus_area    = lw_prps-pgsbr.
              w_accoutgl-func_area   = lw_prps-func_area.
            ENDIF.
    *****Populating the internal table regarding G/L account item***********
            w_accoutgl-itemno_acc  = lv_count.
            w_accoutgl-acct_key    = c_ags.
            w_accoutgl-acct_type   = c_s.
            w_accoutgl-grant_nbr   = text-019.
            w_accoutgl-wbs_element = lw_bapi-projk.
            READ TABLE i_autoinv1  INTO lw_autoinv WITH KEY saknr = lw_bapi-hkont.
            IF sy-subrc = 0.
          Get the information for the G/L accounts relevant for LTSH OVERland Clearing account or
          Transformation Clearing Account Stevedoring Clearing Account or Bagging Clearing Account
              READ TABLE li_skat1 INTO lw_skat1 WITH KEY saknr = lw_autoinv-saknr BINARY SEARCH.
              IF sy-subrc = 0.
                w_accoutgl-gl_account  = lw_bapi-hkont.
                IF NOT lw_autoinv-fipos EQ space.
                  CALL FUNCTION 'CONVERSION_EXIT_FMCIS_INPUT'
                    EXPORTING
                      input  = lw_autoinv-fipos
                    IMPORTING
                      output = w_accoutgl-cmmt_item.
                ELSE.
                  w_accoutgl-cmmt_item   = lw_autoinv-saknr.
                ENDIF.
                w_currency-amt_doccur   =  lw_bapi-zcptp * ( -1 ).
              ENDIF.

    Debug. and find the problem . since you are not using the standadrd tables , they are custom tables. so try to find the reason using debugging. may be you don't have data which satisfies the selection criteria.

  • In ALV reports how can we capture separate data in 3 internal table

    HI
       In ALV reports how can we capture data in 3 Internal tables and combine them in another internal table to display........

    Hello Sudhanshu
    Another option would be to display all three itabs together which is a piece of cake using OO-based ALV lists. Please refer to thread
    Re: Alv
    for a sample report.
    Regards
      Uwe

  • In ALV reports how double click event works?

    in ALV reports how double click event works? Explain in detail.....

    hi,
    last lines is used for clicking
    *& Report  Z_SWAS_FUNCTIONAL
    report  z_swas_functional.
    tables: qmel,viqmel,iloa,afko.
    -- global data declerations--
    data: ok_code like sy-ucomm,
          gt_itab type table of zfunctional,
          t_output type table of zfunctional,
          g_container type scrfname value 'CUSTOM_CONTROL',
          grid1  type ref to cl_gui_alv_grid,
          g_custom_container type ref to cl_gui_custom_container,
          e_row type lvc_s_row,
          e_column type lvc_s_col,
          es_row_no type lvc_s_roid.
    *CLASS DECLARATION
    class z_functional definition.
    public section.
    class-methods : handle_double_click
                    for event double_click of cl_gui_alv_grid
                         importing e_row  e_column.
    endclass.
    *CLASS IMPLEMENTATION
    class z_functional implementation.
    method handle_double_click.
           perform handle_double_click using e_row e_column es_row_no.
    endmethod.
    endclass.
    *CODE FOR SELECTION SCREEN
    selection-screen begin of block 84433  with frame title text-t01.
    parameters : n_number like viqmel-qmnum,
                    n_type like qmel-qmart,
                    f_loca like iloa-tplnr,
                    name like qmel-qmnam.
    selection-screen end of block 84433.
                        screen validation event                          *
    at selection-screen on n_number.
      select single *
        from viqmel
          where qmnum eq n_number.
    if sy-subrc ne 0.
      MESSAGE 'NOTIFICATION NUMBER DOESNOT EXIST' TYPE 'E'.
    endif.
    select qmart from qmel into qmel where qmart eq N_TYPE.
    endselect.
    if sy-subrc ne 0.
      MESSAGE 'NOTIFICATION TYPE DOES NOT EXIST' TYPE 'E'.
    endif.
    *START OF SELECTION EVENT
    start-of-selection.
        perform fetchdata.
    end-of-selection.
    *Call screen event
    call screen 100.
    *PERFORM DISPLAY.
    *&      Form  FETCHDATA
          text
    -->  p1        text
    <--  p2        text
    form fetchdata .
    *SELECT VIQMEL~QMNUM VIQMEL~QMTXT VIQMEL~QMDAT VIQMEL~LTRMN VIQMEL~PRIOK
          VIQMELBEZDT VIQMELAUFNR VIQMELTPLNR AFKOGLTRP into corresponding fields of table GT_ITAB
             FROM VIQMEL INNER JOIN AFKO ON VIQMELAUFNR = AFKOAUFNR
                   WHERE VIQMELQMNUM IN N_NUMBER and VIQMELQMART IN N_TYPE AND VIQMEL~QMNAM IN NAME.
    call function 'ZSWAS_TEST'
      exporting
        qmnum         = n_number
       qmart         = n_type
       tplnr         = f_loca
       qmnam         = name
      tables
        output        = gt_itab
    if sy-subrc ne 0.
       message e000(z84433_msg_class).
    endif.
    endform.                    " FETCHDATA
    *&      Module  STATUS_0100  OUTPUT
          text
    module status_0100 output.
      set pf-status 'MAIN'.
    SET TITLEBAR 'xxx'.
    *creating custom container and grid instance
    if g_custom_container is initial.
        create object g_custom_container
               exporting container_name = g_container.
        create object grid1
               exporting i_parent = g_custom_container.
        call method grid1->set_table_for_first_display
          exporting
            i_structure_name = 'ZFUNCTIONAL'
          changing
            it_outtab        = gt_itab.
    *set handler events
        set handler z_functional=>handle_double_click for grid1.
      endif.
    endmodule.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
          text
    module user_command_0100 input.
    case ok_code.
       when 'EXIT'.
        perform exit_program.
    endcase.
      clear ok_code.
    endmodule.                 " USER_COMMAND_0100  INPUT
    *&      Form  EXIT_PROGRAM
          text
    -->  p1        text
    <--  p2        text
    form exit_program .
    leave program.
    endform.                    " EXIT_PROGRAM
    *&      Form  handle_double_click
          text
         -->P_E_ROW  text
         -->P_E_COLUMN  text
         -->P_ES_ROW_NO  text
    form handle_double_click  using   e_row type lvc_s_row
                                      e_column type lvc_s_col
                                      es_row_no type lvc_s_roid.
    data: t_output type  zfunctional.
        read table gt_itab into t_output index e_row-index .
      if sy-subrc = 0 and e_column-fieldname eq 'QMNUM'.
        set parameter id 'K01' field t_output-qmnum.
        call transaction 'ZSMART' and skip first screen .
      endif.
    endform.                    " handle_double_click
    regards,
    swaroop.

  • Check boxes in ALV Report how to do ?

    ALV report how to keep check box  in the first field?
    thanks in advance..
    chalapathi

    hi,
        Check this small code..  U will get clear idea.
    Report.
    data : begin of it occurs 0,
            MATNR TYPE MATNR,
            c1 ,                  " CHECK BOX FIELDS
            c2,
            end of it.
    type-pools : slis.
    data itlog type slis_t_fieldcat_alv.
    data walog type slis_fieldcat_alv.
    SELECT MATNR
    FROM MARA
    INTO TABLE IT .
    ****INSERTING  CHECKBOX  IN CHANGE MODE
    WALOG-FIELDNAME = 'C1'.
    WALOG-TABNAME = 'IT'.
    WALOG-SELTEXT_M = 'CHECKBOX1'.
    walog-CHECKBOX = 'X'.
    WALOG-EDIT = 'X'.
    APPEND WALOG TO ITLOG.
    ****INSERTING  CHECKBOX  IN DISPLAY MODE
    WALOG-FIELDNAME = 'C2'.
    WALOG-TABNAME = 'IT'.
    WALOG-SELTEXT_M = 'CHECKBOX2'.
    walog-CHECKBOX = 'X'.
    WALOG-EDIT = ''.
    APPEND WALOG TO ITLOG.
    WALOG-FIELDNAME = 'MATNR'.
    WALOG-TABNAME = 'IT'.
    WALOG-SELTEXT_M = 'MATERIAL'.
    walog-CHECKBOX = ''.
    WALOG-EDIT = 'X'.
    WALOG-NO_ZERO = 'X'.              " LEFT ZEROS WILL CUT
    APPEND WALOG TO ITLOG.
    *WALOG-FIELDNAME = 'ICON'.
    *WALOG-TABNAME = 'IT'.
    *WALOG-SELTEXT_M = 'ICON'.               "IN FIELDCATALOG ADDING THAT ICON
    *walog-ICON = 'X'.
    *walog-just = 'R'.                   " RIGHT JUSTIFICATION OR LEFT
    **WALOG-EDIT = ''.
    *APPEND WALOG TO ITLOG.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
       I_CALLBACK_PROGRAM                = 'ZALV_SIMPLE1'
      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                       =   ITLOG
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      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                          =  IT
    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.
    Thanks and Regards,
    surya

  • To change the colour of the particular cell of ALV report in Grid display.

    Hai Friends,
                      I have created an Alv report in grid display .In that i want to change the colour of the particular cell.Plz provide the answer with a solved example.
             Thank u.

    This works for a Custom Control and OO ALV in a Dialog Module
    TABLES: kna1.
    * Data (for the ALV Grid)
    TYPES:
      BEGIN OF t_alv_data,
        cust_id    TYPE kunnr,        "Customer Number
        cust_name  TYPE name1_gp,     "Customer Name
        cust_color TYPE i,
    *   cell coloring field
        color     TYPE lvc_t_scol,   "Cell coloring
      END OF t_alv_data.
    DATA:
      v_alv_data TYPE t_alv_data,
      i_alv_data TYPE STANDARD TABLE OF t_alv_data.
    * ALV grid containers and objects
    DATA:
      o_alv_grid TYPE REF TO cl_gui_alv_grid,
      o_alv_cont TYPE REF TO cl_gui_custom_container.
    * ALV field catalog
    DATA:
      i_alv_fc TYPE lvc_t_fcat,
      v_alv_fc LIKE lvc_s_fcat.
    * ALV Layout (colors)
    DATA:
      v_alv_layout TYPE lvc_s_layo,
      i_alv_color TYPE lvc_t_scol,
      v_alv_color TYPE lvc_s_scol,
      v_alv_color_cell TYPE lvc_s_colo.
    * ALV variant
    DATA:
      v_alv_variant  TYPE disvariant.
    PARAMETERS:
      p_alvvar TYPE disvariant-variant DEFAULT 'DEFAULT'.
    DATA: ok_code LIKE sy-ucomm.
    * Class for event handling
    *       CLASS lcl_event_receiver DEFINITION
    * [+] Event listener for the ALV grid
    * [+] Handles hotspots and data changes
    CLASS lcl_event_receiver DEFINITION.
      PUBLIC SECTION.
        METHODS:
    *     Hotspot clicking
          hotspot_click
               FOR EVENT hotspot_click OF cl_gui_alv_grid
                 IMPORTING e_row_id
                           e_column_id
                           es_row_no,
    *     Data changed (such as checkbox clicking)
          handle_data_changed
            FOR EVENT data_changed OF cl_gui_alv_grid
                IMPORTING er_data_changed.
    ENDCLASS.                    "lcl_event_receiver DEFINITION
    *       CLASS lcl_event_receiver IMPLEMENTATION
    * [+] Implementation of the ALV Grid event handler class
    CLASS lcl_event_receiver IMPLEMENTATION.
    *       METHOD hotspot_click                                          *
    * [+] Calls evvent_hotspot_click when a hotspot is clicked in the ALV
      METHOD hotspot_click.
        PERFORM event_hotspot_click
                      USING e_row_id
                            e_column_id.
      ENDMETHOD.                    "hotspot_click
    *       METHOD handle_data_changed                                    *
    * [+] Updates the source data when the data in the ALV display has
    * been changed, such as by clicking a checkbox.
      METHOD handle_data_changed.
        DATA: lv_changed TYPE lvc_s_modi.
        LOOP AT er_data_changed->mt_good_cells INTO lv_changed
          WHERE fieldname = 'CUST_NAME'.
          READ TABLE i_alv_data INTO v_alv_data INDEX lv_changed-row_id.
          IF sy-subrc = 0.
            MOVE lv_changed-value TO v_alv_data-cust_name.
            MODIFY i_alv_data FROM v_alv_data INDEX lv_changed-row_id.
          ENDIF.
        ENDLOOP.
      ENDMETHOD.                    "handle_data_changed
    ENDCLASS.                    "lcl_event_receiver IMPLEMENTATION
    * Reference to the event listener class
    DATA: event_receiver TYPE REF TO lcl_event_receiver.
    *       FORM build_event_listener
    * [+] Set the event handler on the ALV Grid
    FORM build_event_listener.
    * Assigning the event listener to the ALV
      CREATE OBJECT event_receiver.
      SET HANDLER event_receiver->handle_data_changed FOR o_alv_grid.
      SET HANDLER event_receiver->hotspot_click       FOR o_alv_grid.
    ENDFORM.                    "build_event_listener
    *       AT SELECTION-SCREEN
    *         ON VALUE-REQUEST FOR p_alvvar
    * [+] Calls choose_alv_variant to ask the user to select an alv grid
    *     layout variant
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_alvvar.
      PERFORM choose_alv_variant
        CHANGING
          p_alvvar
          v_alv_variant.
    *       START_OF_SELECTION
    START-OF-SELECTION.
      PERFORM get_data.
      SET PF-STATUS 'ALVSCREEN' IMMEDIATELY.
      CALL SCREEN 2000.
    *       FORM get_data
    * [+] Gets the data for the ALV grid
    FORM get_data.
      SELECT kunnr name1
        INTO (v_alv_data-cust_id,
              v_alv_data-cust_name)
        FROM kna1.
        APPEND v_alv_data TO i_alv_data.
      ENDSELECT.
    ENDFORM.                    "get_data
    *       MODULE build_alv_grid
    *   THIS SHOULD BE IN THE "PROCESS BEFORE OUTPUT" OF THE ALV SCREEN
    * [+] Builds the ALV Grid objects
    * [+] Calls to build the field catalog table
    * [+] Loads the field catalog table into the ALV Grid
    * [+] Loads the table data into the ALV Grid
    MODULE build_alv_grid OUTPUT.
      SET TITLEBAR  '2000'.
    * Also enables layout saving
      PERFORM set_alv_variant
        USING
          p_alvvar
        CHANGING
          v_alv_variant.
    * Building the grid and container on the screen
    * NOTE: the container name MUST be upper-case
    * Also, we don't want the objects to be created if in batch mode!
      IF sy-batch IS INITIAL.
        CREATE OBJECT o_alv_cont
          EXPORTING
            container_name = 'O_ALV_TABLE'.
      ENDIF.
      CREATE OBJECT o_alv_grid
        EXPORTING
          i_parent = o_alv_cont.
    * builds the event listener
      PERFORM build_event_listener.
    * Color the cells
      PERFORM color_cells.
    * Build the field catalog
      PERFORM build_alv_fc.
    * Loads the data into the grid
      CALL METHOD o_alv_grid->set_table_for_first_display
        EXPORTING
          i_save          = 'A'
          i_default       = 'X'
          is_variant      = v_alv_variant
          is_layout       = v_alv_layout
        CHANGING
          it_outtab       = i_alv_data
          it_fieldcatalog = i_alv_fc.
    ENDMODULE.                    "build_alv_grid OUTPUT
    *       FORM build_alv_fc
    * [+] Constructs the ALV Grid field catalog table
    FORM build_alv_fc.
      CLEAR i_alv_fc.
      REFRESH i_alv_fc.
    * NOTE: the field name MUST be upper-case
    *                   field       heading         hide  hot
    *                   name                        zero  spot  just
      PERFORM:
        alv_field USING 'CUST_ID'    'Cust ID'        ' '  'X'  'R',
        alv_field USING 'CUST_NAME'  'Customer Name'  ' '  ' '  'L',
        alv_field USING 'CUST_COLOR' 'Color'          ' '  ' '  'R'.
    ENDFORM.                    "build_alv_fc
    *       FORM alv_field
    * [+] Describes and constructs a single field for the ALV Grid field
    *     catalog. The field length and type are both obtained from the
    *     actual field passed in to this method.
    * [+] Adds the constructed field to the ALV Grid field catalog table
    FORM alv_field
      USING
        p_field_name TYPE c
        p_heading    TYPE c
        p_hide_zeros TYPE c
        p_hotspot    TYPE c
        p_justify    TYPE c.
      CLEAR v_alv_fc.
      DATA:
        lv_type(1) TYPE c,
        lv_length TYPE i,
        lv_heading_length TYPE i.
    * get the type and length of this field
      FIELD-SYMBOLS <field>.
      ASSIGN p_field_name TO <field>.
      DESCRIBE FIELD <field> TYPE lv_type OUTPUT-LENGTH lv_length.
    * re-adjust the length to the length of the header, if too short
      lv_heading_length = strlen( p_heading ).
      IF lv_length < lv_heading_length.
        lv_length = lv_heading_length.
      ENDIF.
    * NOTE: the field name MUST be upper-case
      v_alv_fc-fieldname = p_field_name.
      TRANSLATE v_alv_fc-fieldname TO UPPER CASE.
      v_alv_fc-inttype   = lv_type.
      v_alv_fc-outputlen = lv_length.
      v_alv_fc-coltext   = p_heading.
      v_alv_fc-seltext   = p_heading.
      v_alv_fc-hotspot   = p_hotspot.
    * Determining which fields should show zeros
      IF p_hide_zeros = 'X'.
        v_alv_fc-no_zero = 'X'.
        v_alv_fc-lzero   = ' '.
      ELSE.
        v_alv_fc-no_zero = ' '.
        v_alv_fc-lzero   = 'X'.
      ENDIF.
      v_alv_fc-just = p_justify.
    * Add the field to the field catalog
      APPEND v_alv_fc TO i_alv_fc.
    ENDFORM.                    "alv_field
    *       FORM choose_alv_variant
    * [+] Shows a popup that allows the user to choose the layout variant
    *     for the alv grid of the current program
    * [+] Usually called by an AT SELECTION-SCREEN method.
    FORM choose_alv_variant
      CHANGING
        p_variant_name TYPE disvariant-variant
        p_variant      TYPE disvariant.
      CLEAR p_variant.
      DATA:
        p_exit_check(1) TYPE c.
      MOVE sy-repid TO p_variant-report.
      CALL FUNCTION 'LVC_VARIANT_F4'
           EXPORTING
                is_variant = p_variant
                i_save     = 'A'
           IMPORTING
                e_exit     = p_exit_check
                es_variant = p_variant
           EXCEPTIONS
                not_found  = 1
                OTHERS     = 99.
      IF sy-subrc = 0.
        IF p_exit_check <> 'X'.
          p_variant_name = p_variant-variant.
        ENDIF.
      ENDIF.
    ENDFORM.                    "choose_alv_variant
    *       FORM set_alv_variant
    * [+] Sets the alv grid layout variant. Used for setting the variant
    *     when its name is entered in a parameter rather than by using the
    *     popup, or when loading the variant from a variable of type C
    FORM set_alv_variant
      USING
        p_variant_name TYPE disvariant-variant
      CHANGING
        p_variant      TYPE disvariant.
      MOVE sy-repid TO p_variant-report.
      p_variant-variant = p_variant_name.
    ENDFORM.                    "set_alv_variant
    *       FORM color_cells
    * [+] Loop through the data and apply coloring
    FORM color_cells.
      DATA:
        my_color  TYPE i.
    * tell the ALV grid what field in v_alv_data contains color information
      v_alv_layout-ctab_fname = 'COLOR'.
      my_color = 0.
    * loop through each row of the table
      LOOP AT i_alv_data INTO v_alv_data.
    *   clear the variables
        CLEAR:
          v_alv_color,
          v_alv_color_cell,
          i_alv_color.
        REFRESH:
          i_alv_color.
        v_alv_data-cust_color = my_color.
        PERFORM color_cell USING 'CUST_COLOR' my_color. "negative
    *   apply the colors
    *    IF v_alv_data-cust_name = 'Testing Credit'.
    *      PERFORM color_cell USING 'CUST_NAME' 6. "negative
    *    ELSEIF v_alv_data-cust_name = 'Goober Goober Also'.
    *      PERFORM color_cell USING 'CUST_NAME' 5. "positive
    *    ENDIF.
    *   set the color data for this table row
        v_alv_data-color = i_alv_color.
        MODIFY i_alv_data FROM v_alv_data.
        my_color = my_color + 1.
        IF my_color GT 7.
          CLEAR my_color.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    "color_cells
    *       FORM color_cell
    * [+] Colors a cell in the ALV grid
    FORM color_cell
      USING
        p_cellname TYPE c
        p_color    TYPE i.
      CLEAR:
        v_alv_color_cell,
        v_alv_color.
    * set the color for the cell
    *  IF p_color = 0.
    *    v_alv_color_cell-col = 0. "cl_gui_resources=>list_col_background.
    *  ELSEIF p_color = 1.
    *    v_alv_color_cell-col = 1. "cl_gui_resources=>list_col_heading.
    *  ELSEIF p_color = 2.
    *    v_alv_color_cell-col = 2. "cl_gui_resources=>list_col_normal.
    *  ELSEIF p_color = 3.
    *    v_alv_color_cell-col = 3. "cl_gui_resources=>list_col_total.
    *  ELSEIF p_color = 4.
    *    v_alv_color_cell-col = 4. "cl_gui_resources=>list_col_key.
    *  ELSEIF p_color = 5.
    *    v_alv_color_cell-col = 5. "cl_gui_resources=>list_col_positive.
    *  ELSEIF p_color = 6.
    *    v_alv_color_cell-col = 6. "cl_gui_resources=>list_col_negative.
    *  ELSEIF p_color = 7.
    *    v_alv_color_cell-col = 7. "cl_gui_resources=>list_col_group.
    *  ENDIF.
      v_alv_color_cell-col = p_color.
      v_alv_color-nokeycol = 'X'.
      v_alv_color-fname = p_cellname.
    *  v_alv_color-color = p_color.
      v_alv_color-color = v_alv_color_cell.
      APPEND v_alv_color TO i_alv_color.
    ENDFORM.                    "color_cell
    *       FORM event_hotspot_click
    * [+] What to do when clicking on a hotspot in the ALV Grid
    FORM event_hotspot_click
      USING
        p_row    TYPE lvc_s_row
        p_column TYPE lvc_s_col.
      DATA:
        lv_docnum TYPE kunnr.
      READ TABLE i_alv_data INTO v_alv_data INDEX p_row-index.
      IF p_column = 'CUST_ID'.
    *   call a transaction when the cust_id is clicked
        SET PARAMETER ID 'AUN' FIELD v_alv_data-cust_id.
        CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
      ENDIF.
    ENDFORM.                    "event_hotspot_click
    *&      Module  USER_COMMAND_2000  INPUT
    *       text
    MODULE user_command_2000 INPUT.
      CASE ok_code.
        WHEN 'BACK'
          OR 'STOP'
          OR 'CANCEL'.
          LEAVE TO SCREEN 0.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_2000  INPUT

  • How to display List of Members

    Hi,<BR><BR>I would like to verify a calc script to check whether it return correct members,<BR>for example:<BR><BR>==============<BR>FIX(@REMOVE(@DESCENDANTS("TOTALOPERINCOME_05",0), @LIST(@UDA("GL Account", "TCACCOUNT"))))<BR><BR>ENDFIX<BR>==============<BR><BR>Can anyone advise how to display List of members from the above selection?<BR>The objective is to select level 0 descendants of "TOTALOPERINCOME_05", and remove the members if they have "TCACCOUNT" UDA.<BR><BR><BR>Thanks,<BR><BR>Norliansyah

    1) The log file is woefully inadequate for validating a list of more than a dozen or so members.<BR><BR>2) Creating a temporary database or application for this is like going from Dallas to Fort Worth by way of India.<BR><BR>3) Neither of the above check your syntax, only the selected elements.<BR><BR>Using member select: you have to rebuild the logic by using subset functionality, but you can both preview the list and generate the members in a useable form (although like I said, it doesn't check your syntax, just the functionality).<BR><BR>Using report generation: you have to replace the @relative with dimbot, and again it only validates the functionality if you successfully re-design the logic.<BR><BR>Overall, I believe the member select (using subset selection) is the quickest, easiest, and most useful.<BR><BR>-Doug.

  • In alv report , how to reserve 20 lines from beginning of page

    hi experts
    in alv report , how to reserve 20 lines from beginning of page.
    regards
    subhasis.

    If by reserve you mean should not move on scrolling then make them KEY from fieldcatalog.
    But I think maximum of 10-12 can be handled by that.
    Regards,
    Amit
    Reward all helpful replies.

  • In an alv report how to get data in next and previous pages.

    in my alv report i require the output such that
    when i will press the next button in the application tool bar the alv report will be displayed for the next inventory document number in the next page. like wise previous
    would anybody please help me out.
    thanks and regards
    papps

    In your servlet you could set the arraylist into the HttpRequest object so that it is visible in the JSP you are forwarding to.
    RegistrationDAO rdao=new RegistrationDAO();
    ArrayList arr1=rdao.getsearchresults(af);
    request.setAttribute("someArrayList",arr1);Then in the JSP you could use JSTL 1.1 and jsp:useBean tag to access the ArrayList like this
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <jsp:useBean id="someArrayList" class="java.util.ArrayList" scope="request"/>
      <c:forEach var="currentRecord" items="${someArrayList}">
        Some property of the AddressForm object: ${currentRecord.propertyName} <br/>
        Another property of the AddessForm object : ${currentRecord.someOtherPropertyName} <br/>
        <hr/> 
      </c:forEach>I guess you are using struts, so instead of JSTL there might be some struts tags that do the same as above JSTL tags. You can research further on that.
    If you can't use struts tags or JSTL tags then you could write it with JSP scriptlets (highly discouraged option).

  • To make different colours for the columns of ALV report in Grid display.

    Hai Friends,
                       I have created an ALV report in grid display method by using the call function reuse_alv_grid_display.
    I have obtained the report.In that report i want to change the colour of each column.Plz provide the answer with a sample program.
                    Thank u.

    hi i had a program  for the rows with diff colors....do the same thing for the columns..
    REPORT  zdemo_alvgrid                 .
    TABLES:     ekko.
    type-pools: slis.                                 "ALV Declarations
    *Data Declaration
    TYPES: BEGIN OF t_ekko,
      ebeln TYPE ekpo-ebeln,
      ebelp TYPE ekpo-ebelp,
      statu TYPE ekpo-statu,
      aedat TYPE ekpo-aedat,
      matnr TYPE ekpo-matnr,
      menge TYPE ekpo-menge,
      meins TYPE ekpo-meins,
      netpr TYPE ekpo-netpr,
      peinh TYPE ekpo-peinh,
      line_color(4) type c,     "Used to store row color attributes
    END OF t_ekko.
    DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko TYPE t_ekko.
    *ALV data declarations
    data: fieldcatalog type slis_t_fieldcat_alv with header line,
          gd_tab_group type slis_t_sp_group_alv,
          gd_layout    type slis_layout_alv,
          gd_repid     like sy-repid.
    *Start-of-selection.
    START-OF-SELECTION.
    perform data_retrieval.
    perform build_fieldcatalog.
    perform build_layout.
    perform display_alv_report.
    *&      Form  BUILD_FIELDCATALOG
          Build Fieldcatalog for ALV Report
    form build_fieldcatalog.
      fieldcatalog-fieldname   = 'EBELN'.
      fieldcatalog-seltext_m   = 'Purchase Order'.
      fieldcatalog-col_pos     = 0.
      fieldcatalog-outputlen   = 10.
      fieldcatalog-emphasize   = 'X'.
      fieldcatalog-key         = 'X'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'EBELP'.
      fieldcatalog-seltext_m   = 'PO Item'.
      fieldcatalog-col_pos     = 1.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'STATU'.
      fieldcatalog-seltext_m   = 'Status'.
      fieldcatalog-col_pos     = 2.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'AEDAT'.
      fieldcatalog-seltext_m   = 'Item change date'.
      fieldcatalog-col_pos     = 3.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MATNR'.
      fieldcatalog-seltext_m   = 'Material Number'.
      fieldcatalog-col_pos     = 4.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MENGE'.
      fieldcatalog-seltext_m   = 'PO quantity'.
      fieldcatalog-col_pos     = 5.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MEINS'.
      fieldcatalog-seltext_m   = 'Order Unit'.
      fieldcatalog-col_pos     = 6.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'NETPR'.
      fieldcatalog-seltext_m   = 'Net Price'.
      fieldcatalog-col_pos     = 7.
      fieldcatalog-outputlen   = 15.
      fieldcatalog-datatype     = 'CURR'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'PEINH'.
      fieldcatalog-seltext_m   = 'Price Unit'.
      fieldcatalog-col_pos     = 8.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    endform.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
          Build layout for ALV grid report
    form build_layout.
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
      gd_layout-totals_text       = 'Totals'(201).
    Set layout field for row attributes(i.e. color)
      gd_layout-info_fieldname =      'LINE_COLOR'.
    endform.                    " BUILD_LAYOUT
    *&      Form  DISPLAY_ALV_REPORT
          Display report using ALV grid
    form display_alv_report.
      gd_repid = sy-repid.
      call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program      = gd_repid
                is_layout               = gd_layout
                it_fieldcat             = fieldcatalog[]
                i_save                  = 'X'
           tables
                t_outtab                = it_ekko
           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.                    " DISPLAY_ALV_REPORT
    *&      Form  DATA_RETRIEVAL
          Retrieve data form EKPO table and populate itab it_ekko
    form data_retrieval.
    data: ld_color(1) type c.
    select ebeln ebelp statu aedat matnr menge meins netpr peinh
    up to 10 rows
      from ekpo
      into table it_ekko.
    *Populate field with color attributes
    loop at it_ekko into wa_ekko.
      ld_color = ld_color + 1.
    Only 7 colours so need to reset color value
      if ld_color = 8.
        ld_color = 1.
      endif.
      concatenate 'C' ld_color '10' into wa_ekko-line_color.
    wa_ekko-line_color = 'C410'.
      modify it_ekko from wa_ekko.
    endloop.
    endform.                    " DATA_RETRIEVAL
    regards,
    venkat

  • How to display list process, when i run sql*loader in c#

    Hello,
    How to display list process, when i run sql*loader in c#. I mean when i run sql*loader from cmd windows, i get list process how many row has been inserted. But when i run SQL*Loader from C#, i can't get process SQL*Loader.
    This is my code:
    string strCmd, strSQLLoader;
    string strLoaderFile = "XLLOAD.CTL";
    string strLogFile = "XLLOAD_LOG.LOG";
    string strCSVPath = @"E:\APT\WorkingFolder\WorkingFolder\sqlloader\sqlloader\bin\Debug\8testskrip_HTTP.csv";
    string options = "OPTIONS (SKIP=1, DIRECT=TRUE, ROWS=1000000,BINDSIZE=512000)";
    string append = "APPEND INTO TABLE XL_XDR FIELDS TERMINATED BY ','";
    string table = "OPTIONALLY ENCLOSED BY '\"' TRAILING NULLCOLS (xdr_id,xdr_type,session_start_time,session_end_time,session_last_update_time,session_flag,version,connection_row_count,error_code,method,host_len,host,url_len,url,connection_start_time,connection_last_update_time,connection_flag,connection_id,total_event_count,tunnel_pair_id,responsiveness_type,client_port,payload_type,virtual_type,vid_client,vid_server,client_addr,server_addr,client_tunnel_addr,server_tunnel_addr,error_code_2,ipid,c2s_pkts,c2s_octets,s2c_pkts,s2c_octets,num_succ_trans,connect_time,total_resp,timeouts,retries,rai,tcp_syns,tcp_syn_acks,tcp_syn_resets,tcp_syn_fins,event_type,flags,time_stamp,event_id,event_code)";
    strCmd = "sqlldr xl/secreat@o11g control=" + strLoaderFile + " LOG=" + strLogFile;
    System.IO.DirectoryInfo di;
    try
    System.Diagnostics.ProcessStartInfo cmdProcessInfo = new System.Diagnostics.ProcessStartInfo("cmd.exe");
    di = new DirectoryInfo(strCSVPath);
    strSQLLoader = "";
    strSQLLoader += "LOAD DATA INFILE '" + strCSVPath.ToString().Trim() + "' " + append + " " + table;
    StreamWriter writer = new StreamWriter(strLoaderFile);
    writer.WriteLine(strSQLLoader);
    writer.Flush();
    writer.Close();
    // Redirect both streams so we can write/read them.
    cmdProcessInfo.RedirectStandardInput = true;
    cmdProcessInfo.RedirectStandardOutput = true;
    cmdProcessInfo.UseShellExecute = false;
    cmdProcessInfo.LoadUserProfile = true;
    //System.Diagnostics.Process.Start("CMD.exe", strCmdLine);
    // Start the procses.
    System.Diagnostics.Process pro = System.Diagnostics.Process.Start(cmdProcessInfo);
    // Issue the dir command.
    pro.StandardInput.WriteLine(strCmd);
    // Exit the application.
    pro.StandardInput.WriteLine("exit");
    //Process[] processlist = Process.GetProcesses();
    //foreach(Process pro in processlist){
    Console.WriteLine("Process: {0} ID: {1}", pro.ProcessName, pro.Id);
    Console.WriteLine(pro.StandardOutput.ReadLine());
    // Read all the output generated from it.
    string strOutput;
    strOutput = pro.StandardOutput.ReadToEnd();
    pro.Dispose();
    catch (Exception ex)
    return;
    finally
    Thanks.

    friend
    sqlldr is an application residing in the OS. procedure runs in the dbms engine.
    you cannot run an os command directly from a procedure or a function or a package .
    If you want to do so you need to use either a daemon process created by a PRO*C program
    or a JAVA stored procedure to do so.
    just refer to previous question forums, you can find the solution. Somebody has already given a solution using
    java to run an OS command . check it out
    prakash
    [email protected]

  • PPR Report ,How to display Label with TOTAl

    Hi,
    How Can i display PPR Report ,How to display Label with TOTAl like
    [http://apex.oracle.com/pls/apex/f?p=267:30:]
    Thanks
    Edited by: 805629 on Jan 6, 2011 3:34 AM

    Hi,
    For PPR Report:
    Select "Yes" in "Enable Partial Page Refresh" item of "Layout and Pagination" region in Report Attributes of that report.
    For display Label with TOTAL:
    Use "Break Formatting" region in Report Attributes of that report.
    Regards,
    Kartik Patel
    http://patelkartik.blogspot.com/
    http://apex.oracle.com/pls/apex/f?p=9904351712:1

  • Devloped an ALV report for daily cash receipts for selected date range

    hi,   
                 how to devlop an ALV report for daily cash receipts for selected date range.for this report what are the tables and fields we have to use.what is the selectionscreen&what is logic.give me sample report.

    Hi,
    You can develop simple reports using Report Painter.
    You may be also interested in:
    Check report SAPMF05A for credit memo
    See the following Std reports on Payment Advices execute the Tcodes:
    S_ALR_87009888
    S_ALR_87009889
    S_ALR_87009890
    S_ALR_87009891
    S_ALR_87009892
    S_ALR_87009893
    S_ALR_87009978
    S_ALR_87009979
    S_ALR_87009980
    S_ALR_87009981
    S_ALR_87009982
    S_ALR_87009983
    S_ALR_87010056
    S_ALR_87010057
    S_ALR_87010058
    S_ALR_87010059
    S_ALR_87010060
    S_ALR_87010061
    S_ALR_87010066
    S_ALR_87010067
    S_ALR_87012106
    S_ALR_87012107
    S_ALR_87012108
    S_ALR_87012109
    S_ALR_87012110
    S_ALR_87012111
    S_ALR_87012116
    S_ALR_87012117
    S_ALR_87012200
    S_ALR_87012201
    S_ALR_87012202
    S_ALR_870122
    S_ALR_87012204
    S_ALR_87012205
    S_ALR_87012350
    S_ALR_87012351
    S_ALR_87012352
    S_ALR_87012353
    S_ALR_87012354
    S_ALR_87012355
    sample ALV report:
    tables:
    marav. "Table MARA and table MAKT
    Data to be displayed in ALV
    Using the following syntax, REUSE_ALV_FIELDCATALOG_MERGE can auto-
    matically determine the fieldstructure from this source program
    Data:
    begin of imat occurs 100,
    matnr like marav-matnr, "Material number
    maktx like marav-maktx, "Material short text
    matkl like marav-matkl, "Material group (so you can test to make
                            " intermediate sums)
    ntgew like marav-ntgew, "Net weight, numeric field (so you can test to
                            "make sums)
    gewei like marav-gewei, "weight unit (just to be complete)
    end of imat.
    Other data needed
    field to store report name
    data i_repid like sy-repid.
    field to check table length
    data i_lines like sy-tabix.
    Data for ALV display
    TYPE-POOLS: SLIS.
    data int_fcat type SLIS_T_FIELDCAT_ALV.
    select-options:
    s_matnr for marav-matnr matchcode object MAT1.
    start-of-selection.
    read data into table imat
      select * from marav
      into corresponding fields of table imat
      where
      matnr in s_matnr.
    end-of-selection.
    Now, we start with ALV
    To use ALV, we need a DDIC-structure or a thing called Fieldcatalogue.
    The fieldcatalouge can be generated by FUNCTION
    'REUSE_ALV_FIELDCATALOG_MERGE' from an internal table from any
    report source, including this report.
    The only problem one might have is that the report and table names
    need to be in capital letters. (I had it )
    Store report name
    i_repid = sy-repid.
    Create Fieldcatalogue from internal table
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                I_PROGRAM_NAME         = sy-repid
                I_INTERNAL_TABNAME     = 'IMAT'  "capital letters!
                I_INCLNAME             = sy-repid
           CHANGING
                CT_FIELDCAT            = int_fcat
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                I_CALLBACK_PROGRAM       = i_repid
                I_STRUCTURE_NAME         = 'marav'
                I_DEFAULT                = 'X'
                I_SAVE                   = 'A'
           TABLES
                T_OUTTAB                 = imat.
      IF SY-SUBRC <> 0.
        WRITE: 'SY-SUBRC: ', SY-SUBRC .
      ENDIF.
    Hope this will help.
    Regards,
    Naveen.

Maybe you are looking for