Creation of Maintaince View

Hi,
I would like to create a Maintaince View. In SE11 I selected View option after that I selected Maintaince View option. Then I have given the Name of the table . But it is taking only one table name. remaing fields are in the disable mode.
How to create a Maintaince View for a table?
Is there any differece between table maintaince generator and Maintaince view for a table or both or same for a single table ?
What is the use real use of mainataince view ?
Regards,
Satya

create a maintanance view using two tables using default navigations and activate (ignore wornings)
click on "utilities"menu.
table maintanance generator
opens an interface,set the authourization group as "ates"
specify name of function group(name of the function group)where code should be generated
select the maintanance type as "one step"
specify the screen number(s11) in overview screen field
click on "create" from application toolbar
save the objects under a package with request number
add prompts a message as "request completed without errors".
this view cant be accessed directly by abap reports,as these are designed for mpp.
test the maintanance view code created properly or not using "se54" tcode.
regards,
usha.

Similar Messages

  • Maintaince view creation for a cluster table

    Hi friends,
    I have created a maintaince view for a cluster table bseg and i have activated it its working fine..
    now my problem is i can create maintaince view for mutiple tables if other tables are linked with primary table using foriegn key relationship..
    Now can any one tell me is it possible to create maintance view for cluster table with multiple tables as i need a linked table with bseg which iam not able to get... ie : when i click on the relationship tab iam not getting the linked tables for bseg...
    now can i create a maintaince view with 2 linked cluster tables..
    if so can any one tell me how to create it.
    As sap says we can create projection view for cluster and pooled table and we cannot create database view for cluster and pooled tables , but it does not mentioned like that for maintaince view....
    I assume we can do it.... as iam trying to create a maintaince view with single cluster table then it shoudl allow me to create for multiple linked cluster tables.... and is it mandatory to maintain TMG for this maintaince view....?
    Regards
    KUMAR

    yes.. ur right inserting values into a cluster table other than standard sap tarnactions is dangerious....
    But sap didnot mentioned any where that we cannot maintain data for cluster tables using maintaince view... which it said for database view..that pooled and cluster table cannot be used for database view..
    Regards
    Kumar

  • How to include maintaince view in da report

    I did a report for Audit – Inventory Ageing Company-wise Summary i am getting the output of the report well. what I need is that i should include a field WGBEZ of the maintaince view V023 so that to display material group description. where & how should i write the code in my code. kindly give suggestions. i here with attaching my code.
    Title       : Aged Stock
    Description : 'Audit – Inventory Ageing Company-wise Summary’
    REPORT ZMMR0024MOD LINE-SIZE 170 NO STANDARD PAGE HEADING .
    TYPE-POOLS : SLIS.
    TABLES : T001,
             T023,
             T001K,
             MARA,
             marv,
             MAKT,
             MBEW,
             MSEG,
             ekpo.
    Constants
    CONSTANTS : GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE
    'TOP_OF_PAGE'.
    Internal Tables
    DATA  :  BEGIN OF GT_FINAL OCCURS 0,
             MATKL LIKE MARA-MATKL,
             MATNR LIKE MARA-MATNR,
            WGBEZ LIKE V023-WGBEZ,
             LBKUM LIKE MBEW-LBKUM,
             tot_val type p decimals 2,
             MAKTX LIKE MAKT-MAKTX,
             tot_amt type p decimals 2,
             price type p decimals 2,
             meins like mara-meins,
             END OF GT_FINAL,
             DETAIL_FINAL LIKE GT_FINAL OCCURS 0 WITH HEADER LINE.
    DATA  :  BEGIN OF MAT_FINAL OCCURS 0,
             MATKL LIKE MARA-MATKL,
             TOT_VAL LIKE MSEG-MENGE,
             TOT_AMT LIKE MBEW-SALK3,
             PRICE LIKE MBEW-SALK3,
             meins like mara-meins,
             END OF MAT_FINAL.
    DATA :   BEGIN OF I_MARA OCCURS 0,
             MATNR LIKE MARA-MATNR,
             MATKL LIKE MARA-MATKL,
             MAKTX LIKE MAKT-MAKTX,
             WGBEZ LIKE V023-WGBEZ,
             MEINS LIKE MARA-MEINS,
             LBKUM LIKE MBEWH-LBKUM,
             TOT_AMT LIKE MBEW-SALK3,
             END OF I_MARA.
    DATA :   BEGIN OF I_MKPF_MSEG OCCURS 0,
             MATNR LIKE MARA-MATNR,
             MBLNR LIKE MSEG-MBLNR,
             ZEILE LIKE MSEG-ZEILE,
             MENGE LIKE MSEG-MENGE,
             BWART LIKE MSEG-BWART,
             BUDAT LIKE MKPF-BUDAT,
             NET_VAL LIKE MSEG-MENGE,
             ebeln like mseg-ebeln,
             ebelp like mseg-ebelp,
             lfbnr like mseg-lfbnr,
             lfpos like mseg-lfpos,
             SHKZG LIKE MSEG-SHKZG,
             meins like mara-meins,
             END OF I_MKPF_MSEG,
             WA_TEMP LIKE I_MKPF_MSEG.
    DATA :   BEGIN OF I_MBEWH OCCURS 0,
             MATNR LIKE MARA-MATNR,
             LBKUM LIKE MBEW-LBKUM,
             SALK3 LIKE MBEW-SALK3,
             BWKEY LIKE MBEW-BWKEY,
             END OF I_MBEWH.
    DATA :   I_MBEWH1 LIKE I_MBEWH OCCURS 0 WITH HEADER LINE.
    DATA :   BEGIN OF I_TEMP OCCURS 0,
             MATNR LIKE MARA-MATNR,
             NET_VAL LIKE MSEG-MENGE,
             meins like mara-meins,
             END OF I_TEMP.
    RANGES : RANGE_WERK FOR T001W-WERKS,
             RANGE_DATE FOR SY-DATUM,
             S_BWTAR FOR BWTAR.
    DATA :  PERIOD LIKE  BAPI0002_4-FISCAL_PERIOD,
            FISCAL_YEAR LIKE  BAPI0002_4-FISCAL_YEAR,
            CUR_VAL LIKE MSEG-MENGE,
            NET_VAL LIKE MSEG-MENGE,
            TOT_VAL LIKE MSEG-MENGE,
            TOT_QTY LIKE MSEG-MENGE,
            TOT_AMT1 LIKE MBEW-SALK3,
            RES_DATE LIKE SY-DATUM,
            NUM LIKE MBEW-SALK3,
            UOM LIKE MARA-MEINS.
    Data declarations for alv
    DATA : GV_PAGE TYPE N VALUE 0.
    DATA : GT_FIELDCAT         TYPE SLIS_T_FIELDCAT_ALV,
           GT_SORT             TYPE SLIS_T_SORTINFO_ALV,
           GT_FILTER           TYPE SLIS_T_FILTER_ALV,
           GT_SP_GROUP         TYPE SLIS_T_SP_GROUP_ALV,
           GT_EVENTS           TYPE SLIS_T_EVENT WITH HEADER LINE,
           GV_REPID            LIKE SY-REPID,
           GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
           GV_SAVE(1)          TYPE C,
           GT_VARIANT          LIKE DISVARIANT,
           GV_DOMNAME          LIKE DD07V-DOMNAME,
           GV_DOMVAL           LIKE DD07V-DOMVALUE_L,
           GW_FIELDCAT         TYPE SLIS_FIELDCAT_ALV.
    Selection screen
    SELECTION-SCREEN BEGIN OF BLOCK SEL WITH FRAME TITLE TEXT-001.
    PARAMETERS     : GS_BUKRS LIKE T001K-BUKRS OBLIGATORY.
    SELECT-OPTIONS : GS_MATKL FOR MARA-MATKL,
                     GS_MATNR FOR MARA-MATNR.
    PARAMETERS     : gs_ped like s031-spmon OBLIGATORY,
                     GS_DAYS(3) TYPE n,
                     MG1 RADIOBUTTON GROUP GR1,
                     MT2 RADIOBUTTON GROUP GR1.
    SELECTION-SCREEN END OF BLOCK SEL.
    Validations on selection screen
    AT SELECTION-SCREEN ON GS_BUKRS.
      PERFORM F00_VALIDATE_COMPANY_CODE.
    AT SELECTION-SCREEN ON GS_MATKL.
      IF NOT GS_MATKL[] IS INITIAL.
        PERFORM F01_VALIDATE_MATERIAL_GROUP.
      ENDIF.
    AT SELECTION-SCREEN ON GS_MATNR.
      IF NOT GS_MATNR[] IS INITIAL.
        PERFORM F01_VALIDATE_MATERIAL.
      ENDIF.
    AT SELECTION-SCREEN ON GS_days.
      if gs_days = ''.
        gs_days = 0.
      endif.
    START-OF-SELECTION.
      GV_REPID = SY-REPID.
      PERFORM F20_EVENTTAB_BUILD CHANGING GT_EVENTS[].
      PERFORM F30_SELECT_PRIMARY_DATA.
      IF MG1 = 'X'.
        PERFORM F11_DATA_FORMAT_GROUP.
        PERFORM F50_MATERIAL_GROUP_DATA.
        PERFORM F40_DISPLAY_REPORT TABLES MAT_FINAL.
      ELSEIF MT2 = 'X'.
        PERFORM F10_DATA_FORMAT_MAT.
        PERFORM F40_DISPLAY_REPORT TABLES GT_FINAL.
      ENDIF.
    *&      Form  F20_EVENTTAB_BUILD
    FORM F20_EVENTTAB_BUILD CHANGING LT_EVENTS TYPE SLIS_T_EVENT.
      CONSTANTS:  LC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE
                  'TOP_OF_PAGE',
                  LC_FORMNAME_USER_COMMAND TYPE SLIS_FORMNAME VALUE
                  'USER_COMMAND'.
      DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          I_LIST_TYPE = 0
        IMPORTING
          ET_EVENTS   = LT_EVENTS.
    note : lt_events has all the events
      READ TABLE LT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
      INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE GC_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO LT_EVENTS.
      ENDIF.
      READ TABLE LT_EVENTS WITH KEY NAME =   SLIS_EV_USER_COMMAND
      INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE LC_FORMNAME_USER_COMMAND TO LS_EVENT-FORM.
        APPEND LS_EVENT TO LT_EVENTS.
      ENDIF.
    ENDFORM.                    "F20_EVENTTAB_BUILD
    *&      Form  F12_E04_COMMENT_BUILD
    FORM F12_E04_COMMENT_BUILD USING E04_LT_TOP_OF_PAGE TYPE
    SLIS_T_LISTHEADER.
      DATA : LS_LINE TYPE SLIS_LISTHEADER,
             LV_TEXT(100) TYPE C,
             LV_DAYLOW(2) TYPE C,
             LV_MONTHLOW(2) TYPE C,
             LV_YEARHIGH(4) TYPE C,
             LV_DAYHIGH(2) TYPE C,
             LV_MONTHHIGH(2) TYPE C,
             LV_YEARLOW(4) TYPE C,
             LV_DATFORMAT1(10),
             LV_DATFORMAT2(10).
      CONCATENATE  'Company Code :' ' '  GS_BUKRS
      INTO LV_TEXT SEPARATED BY SPACE.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
      CLEAR LV_TEXT.
      IF NOT GS_MATKL[] IS INITIAL.
        IF GS_MATKL-HIGH IS INITIAL AND NOT GS_MATKL-LOW IS INITIAL.
          CONCATENATE  'Material Group :' ' '  GS_MATKL-LOW
          INTO LV_TEXT SEPARATED BY SPACE.
        ELSE .
          CONCATENATE  'Material Group :' GS_MATKL-LOW ' to'
          GS_MATKL-HIGH INTO LV_TEXT SEPARATED BY SPACE.
        ENDIF.
      ENDIF.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
      CLEAR LV_TEXT.
      IF NOT GS_MATNR[] IS INITIAL.
        IF GS_MATNR-HIGH IS INITIAL AND NOT GS_MATNR-LOW IS INITIAL.
          CONCATENATE  'Material :' ' '  GS_MATNR-LOW
          INTO LV_TEXT SEPARATED BY SPACE.
        ELSE .
          CONCATENATE  'Material :' GS_MATNR-LOW ' to'
          GS_MATNR-HIGH INTO LV_TEXT SEPARATED BY SPACE.
        ENDIF.
      ENDIF.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
      CLEAR LV_TEXT.
    LV_YEARLOW  = gs_ped+0(4).
    LV_MONTHLOW = gs_ped+4(2).
    LV_DAYLOW   = gs_ped+6(2).
    CONCATENATE LV_DAYLOW LV_MONTHLOW LV_YEARLOW INTO LV_DATFORMAT1
    *SEPARATED BY '.'.
      CONCATENATE  'Key month : ' gs_ped
      INTO LV_TEXT SEPARATED BY SPACE.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
      CLEAR LV_TEXT.
      CONCATENATE  'Number of days :' ' '  GS_DAYS
      INTO LV_TEXT SEPARATED BY SPACE.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
      CLEAR LV_TEXT.
      GV_PAGE = GV_PAGE + 1.
      CONCATENATE  'PAGE NO : ' ' '  GV_PAGE
      INTO LV_TEXT SEPARATED BY SPACE.
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = LV_TEXT.
      APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
    ENDFORM.                    "F12_E04_COMMENT_BUILD
          FORM TOP_OF_PAGE                                              *
    FORM TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
    ENDFORM.                    "TOP_OF_PAGE
    *&      Form  validate_sales_organization
          text
    FORM F00_VALIDATE_COMPANY_CODE .
      SELECT SINGLE BUKRS
          FROM T001
          INTO T001-BUKRS
          WHERE BUKRS = GS_BUKRS.
      IF SY-SUBRC = 0.
      ELSE.
        MESSAGE E000(ZCBOM) WITH 'Please enter the valid material group'.
      ENDIF.
    ENDFORM.                    " validate_sales_organization
    *&      Form  VALIDATE_PLANT
          text
    -->  p1        text
    <--  p2        text
    FORM F01_VALIDATE_MATERIAL_GROUP.
      SELECT SINGLE MATKL
          FROM T023
          INTO T023-MATKL
          WHERE MATKL IN GS_MATKL.
      IF SY-SUBRC = 0.
      ELSE.
        MESSAGE E000(ZCBOM) WITH 'Please enter the valid material group'.
      ENDIF.
    ENDFORM.                    " VALIDATE_PLANT
    *&      Form  VALIDATE_MATERIAL
          text
    -->  p1        text
    <--  p2        text
    FORM F01_VALIDATE_MATERIAL.
      SELECT SINGLE MATNR
          FROM MARA
          INTO MARA-MATNR
          WHERE MATNR IN GS_MATNR.
      IF SY-SUBRC = 0.
      ELSE.
        MESSAGE E000(ZCBOM) WITH 'Please enter the valid material '.
      ENDIF.
    ENDFORM.                    " VALIDATE_MATERIAL
    *&      Form  F40_DISPLAY_REPORT
    FORM F40_DISPLAY_REPORT TABLES IT.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = GV_REPID
          I_CALLBACK_USER_COMMAND = 'USER_COMMAND '
          IT_FIELDCAT             = GT_FIELDCAT[]
          IT_SPECIAL_GROUPS       = GT_SP_GROUP[]
          IT_SORT                 = GT_SORT[]
          I_SAVE                  = GV_SAVE
          IS_VARIANT              = GT_VARIANT
          IT_EVENTS               = GT_EVENTS[]
        TABLES
          T_OUTTAB                = IT.                         "it_1.
      CLEAR:GT_FIELDCAT.
      REFRESH:GT_FIELDCAT.
    ENDFORM.                    " F40_DISPLAY_REPORT
    *&      Form  F30_SELECT_PRIMARY_DATA
          text
    FORM F30_SELECT_PRIMARY_DATA .
    subroutine to get the actual data
    to get the plants for the given company code
      data : temp_bukrs like BAPI0002_2-COMP_CODE,
             temp_date  like BAPI0002_4-POSTING_DATE.
      data : last_day(2) type n,
             from_date like sy-datum,
             temp_date1 like sy-datum,
             cal_month(2) type n,
             cal_year(4) type n.
      SELECT DISTINCT BWKEY FROM T001K INTO RANGE_WERK-LOW WHERE BUKRS = GS_BUKRS.
        RANGE_WERK-SIGN = 'I'.
        RANGE_WERK-OPTION = 'EQ'.
        APPEND RANGE_WERK.
      ENDSELECT.
    *selecting material that is relevant to the selection criteria
      SELECT MARA~MATNR MATKL MEINS MAKTX
             FROM MARA JOIN MAKT
               ON MAKTMATNR = MARAMATNR
             INTO CORRESPONDING FIELDS OF TABLE I_MARA
             WHERE MARA~MATNR IN GS_MATNR
              AND  MATKL IN GS_MATKL
              AND MAKT~SPRAS = 'EN'.
      temp_bukrs = gs_bukrs.
      cal_month = gs_ped+4(2).
      cal_year  = gs_ped+0(4).
      concatenate cal_year cal_month '01' into temp_date.
    *temp_date = temp_date1.
      CALL FUNCTION 'BAPI_COMPANYCODE_GET_PERIOD'
        EXPORTING
          COMPANYCODEID = temp_bukrs
          POSTING_DATE  = temp_date
        IMPORTING
          FISCAL_YEAR   = fiscal_year
          FISCAL_PERIOD = period.
      select single * from marv into marv where bukrs = temp_bukrs.
    temp_date1 = temp_date.
      if sy-subrc = 0.
        if ( marv-lfmon ne period or marv-lfgja ne fiscal_year ).
          CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
            EXPORTING
              DAY_IN            = temp_date
            IMPORTING
              LAST_DAY_OF_MONTH = from_date
            EXCEPTIONS
              DAY_IN_NO_DATE    = 1
              OTHERS            = 2.
        else.
          from_date = sy-datum.
        endif.
      endif.
    to define the range for posting date
      RES_DATE = from_date - GS_DAYS.
      RANGE_DATE-LOW  = RES_DATE.
      RANGE_DATE-HIGH = from_date.
      RANGE_DATE-OPTION = 'BT'.
      RANGE_DATE-SIGN = 'I'.
      APPEND RANGE_DATE.
    to select documents and their quantities for the given range of posting dates
    with goods movement type 101 105 657 453 459 501 521 and their reversals
      if range_date-low ne range_date-high.
        SELECT MSEG~MATNR MSEG~MBLNR MSEG~ZEILE MSEG~MENGE MSEG~BWART mseg~ebeln mseg~ebelp
               MKPF~BUDAT MSEG~SHKZG
               FROM MKPF
               JOIN MSEG ON MSEG~MBLNR = MKPF~MBLNR
                        AND MSEG~MJAHR = MKPF~MJAHR
                          INTO CORRESPONDING FIELDS OF TABLE I_MKPF_MSEG
                              FOR ALL ENTRIES IN I_MARA
                            WHERE MSEG~MATNR = I_MARA-MATNR
                              AND MSEG~WERKS IN RANGE_WERK
                              AND MKPF~BUDAT IN RANGE_DATE
                              AND MSEG~BWART IN ('101','105','657','453','459','501','521','561','309','701','712', "711
                                                 '102','106','658','454','460','502','522','562').
        DELETE  I_MKPF_MSEG WHERE ( BWART = '309' AND SHKZG = 'H')
                               or ( bwart = '453' and shkzg = 'H')
                               or ( bwart = '454' and shkzg = 'S').
      endif.
      SORT I_MKPF_MSEG BY MATNR MBLNR.
      LOOP AT I_MKPF_MSEG.
        if i_mkpf_mseg-bwart = '101' or i_mkpf_mseg-bwart = '102'.
          select single * from ekpo  where ebeln = i_mkpf_mseg-ebeln
                                       and ebelp = i_mkpf_mseg-ebelp.
          if ekpo-pstyp = 7.
            delete i_mkpf_mseg where ebeln = i_mkpf_mseg-ebeln
                                 and ebelp = i_mkpf_mseg-ebelp.
            CLEAR I_MKPF_MSEG-MENGE.
          endif.
        endif.
        IF ( I_MKPF_MSEG-BWART = '101' OR I_MKPF_MSEG-BWART = '105' OR I_MKPF_MSEG-BWART = '712' OR
             I_MKPF_MSEG-BWART = '657' OR I_MKPF_MSEG-BWART = '453' OR "I_MKPF_MSEG-BWART = '711' OR
             I_MKPF_MSEG-BWART = '459' OR I_MKPF_MSEG-BWART = '501' OR I_MKPF_MSEG-BWART = '701' OR
             I_MKPF_MSEG-BWART = '521' OR I_MKPF_MSEG-BWART = '561' OR I_MKPF_MSEG-BWART = '309').
          NET_VAL = NET_VAL + I_MKPF_MSEG-MENGE.
        ENDIF.
        IF ( I_MKPF_MSEG-BWART = '102' OR I_MKPF_MSEG-BWART = '106' OR
             I_MKPF_MSEG-BWART = '658' OR I_MKPF_MSEG-BWART = '454' OR
             I_MKPF_MSEG-BWART = '460' OR I_MKPF_MSEG-BWART = '502' OR
             I_MKPF_MSEG-BWART = '522' OR I_MKPF_MSEG-BWART = '562').
          NET_VAL = NET_VAL - I_MKPF_MSEG-MENGE.
        ENDIF.
        WA_TEMP = I_MKPF_MSEG.
        AT END OF MATNR.
          I_TEMP-MATNR  = WA_TEMP-MATNR.
          I_TEMP-NET_VAL = NET_VAL.
          APPEND I_TEMP.
          CLEAR NET_VAL.
        ENDAT.
      ENDLOOP.
      SORT I_MARA BY MATNR.
      SORT I_TEMP BY MATNR.
      SELECT MATNR LBKUM SALK3 BWKEY
             FROM MBEWH
             INTO CORRESPONDING FIELDS OF TABLE I_MBEWH
             FOR ALL ENTRIES IN I_MARA
             WHERE MATNR = I_MARA-MATNR
               AND BWKEY IN RANGE_WERK
               AND BWTAR IN S_BWTAR
               AND LFGJA = FISCAL_YEAR
               AND LFMON = PERIOD.
      SELECT MATNR LBKUM SALK3 BWKEY
             FROM MBEW
             INTO CORRESPONDING FIELDS OF TABLE I_MBEWH1
             FOR ALL ENTRIES IN I_MARA
             WHERE MATNR = I_MARA-MATNR
               AND BWKEY IN RANGE_WERK.
                AND LFMON = PERIOD
                AND LFGJA = FISCAL_YEAR.
      SORT I_MBEWH BY MATNR BWKEY.
      SORT I_MBEWH1 BY MATNR BWKEY.
      LOOP AT I_MBEWH.
        LOOP AT I_MBEWH1 WHERE MATNR = I_MBEWH-MATNR
                           AND BWKEY = I_MBEWH-BWKEY.
          DELETE I_MBEWH1.
        ENDLOOP.
      ENDLOOP.
      APPEND LINES OF I_MBEWH1 TO I_MBEWH.
      CLEAR : I_MBEWH1.
      REFRESH I_MBEWH1.
      SORT I_MBEWH BY MATNR.
      LOOP AT I_MBEWH .
        I_MBEWH1 = I_MBEWH.
        AT END OF MATNR.
          SUM.
          I_MBEWH1-LBKUM = I_MBEWH-LBKUM.
          I_MBEWH1-SALK3 = I_MBEWH-SALK3.
          APPEND I_MBEWH1.
        ENDAT.
      ENDLOOP.
      DELETE I_MBEWH1 WHERE LBKUM <= 0.
      LOOP AT I_MARA.
        CLEAR : CUR_VAL,
                NUM,
                TOT_VAL,
                TOT_AMT1,
                I_MBEWH1.
        GT_FINAL-MATNR = I_MARA-MATNR.
        GT_FINAL-MATKL = I_MARA-MATKL.
        GT_FINAL-MAKTX = I_MARA-MAKTX.
        gt_final-meins = I_MARA-MEINS.
        READ TABLE I_MBEWH1 WITH KEY MATNR = I_MARA-MATNR.
        GT_FINAL-LBKUM = I_MBEWH1-LBKUM.
    to get the net inward movement vale that is to be subtracted from current value
        READ TABLE I_TEMP WITH KEY MATNR = I_MARA-MATNR.
        IF SY-SUBRC = 0 .
          IF GT_FINAL-LBKUM > 0.
            TOT_VAL = gt_final-lbkum - I_TEMP-NET_VAL.
            if tot_val gt 0.
              GT_FINAL-TOT_VAL = TOT_VAL.
              GT_FINAL-PRICE = I_MBEWH1-SALK3 / gt_final-lbkum."TOT_VAL.
              GT_FINAL-TOT_AMT = GT_FINAL-PRICE * GT_FINAL-TOT_VAL.
              APPEND GT_FINAL.
            endif.
          ENDIF.
        else.
          if gt_final-lbkum > 0.
            gt_final-tot_val = gt_final-lbkum.
            GT_FINAL-PRICE = I_MBEWH1-SALK3 / gt_final-lbkum.
            GT_FINAL-TOT_AMT = GT_FINAL-PRICE * GT_FINAL-TOT_VAL.
            APPEND GT_FINAL.
          endif.
        ENDIF.
      ENDLOOP.
      DELETE GT_FINAL WHERE LBKUM LE 0.
    ENDFORM.                    " F30_SELECT_PRIMARY_DATA
    *&      Form  f10_DATA_FORMAT
          text
    FORM F10_DATA_FORMAT_MAT .
    populating the field catalog table
    MATNR
      PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATNR' 'MATNR' '1'
                               TEXT-003 'GT_FINAL' '15'.
    MAKTX
      PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATKL' 'MATKL' '2'
                               TEXT-004 'GT_FINAL' '24'.
    DESC
      PERFORM F11_E01_FIELDCAT_INIT USING  'MAKT' 'MAKTX' 'MAKTX' '3'
                               TEXT-005 'GT_FINAL' '35'.
    Material Group Decription
      PERFORM F11_E01_FIELDCAT_INIT USING  'V023' 'WGBEZ' 'WGBEZ' '3'
                               TEXT-005 'GT_FINAL' '20'.
    qty
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_VAL' 'MENGE' '4'
                               TEXT-006 'GT_FINAL' '15'.
    MEINS
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'MEINS' 'MEINS' '4'
                               TEXT-008 'GT_FINAL' '15'.
    TOTAL COST
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_AMT' 'SALK3' '5'
                               TEXT-007 'GT_FINAL' '24'.
      PERFORM F12_E04_COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
      GV_SAVE = 'A'.
      CLEAR GT_EVENTS.
      REFRESH GT_EVENTS.
      GT_EVENTS-NAME = 'TOP_OF_PAGE'.
      GT_EVENTS-FORM = 'TOP_OF_PAGE'.
      APPEND GT_EVENTS.
    ENDFORM.                    " f10_DATA_FORMAT
    *&      Form  F11_E01_FIELDCAT_INIT
          text
    FORM F11_E01_FIELDCAT_INIT  USING T1 T2 T3 T4 T5 T6 T7.
      CLEAR GW_FIELDCAT.
      GW_FIELDCAT-REF_TABNAME    = T1.
      GW_FIELDCAT-FIELDNAME      = T2.
      GW_FIELDCAT-REF_FIELDNAME  = T3.
      GW_FIELDCAT-COL_POS        = T4.
      GW_FIELDCAT-SELTEXT_L      = T5.
      GW_FIELDCAT-TABNAME        = T6.
      GW_FIELDCAT-OUTPUTLEN      = T7.
      APPEND GW_FIELDCAT TO GT_FIELDCAT.
    ENDFORM.                    " F11_E01_FIELDCAT_INIT
    *&      Form  f40_material_group_data
          text
    -->  p1        text
    <--  p2        text
    FORM F50_MATERIAL_GROUP_DATA .
      SORT GT_FINAL BY MATKL.
      LOOP AT GT_FINAL.
        TOT_QTY = GT_FINAL-TOT_VAL + TOT_QTY.
        TOT_AMT1 = GT_FINAL-TOT_AMT + TOT_AMT1.
        UOM = GT_FINAL-MEINS.
        AT END OF MATKL.
          MAT_FINAL-MATKL = GT_FINAL-MATKL.
          MAT_FINAL-TOT_VAL = TOT_QTY.
          MAT_FINAL-TOT_AMT = TOT_AMT1.
          MAT_FINAL-MEINS   = UOM.
          APPEND MAT_FINAL.
          CLEAR : TOT_QTY,
                  TOT_AMT1.
        ENDAT.
      ENDLOOP.
    ENDFORM.                    " f40_material_group_data
    *&      Form  BUILD_DETAIL
          text
    -->  p1        text
    <--  p2        text
    FORM BUILD_DETAIL .
      DETAIL_FINAL[] = GT_FINAL[].
      DELETE DETAIL_FINAL WHERE MATKL NE MAT_FINAL-MATKL.
    ENDFORM.                    " BUILD_DETAIL
    *&      Form  f11_data_format_group
          text
    -->  p1        text
    <--  p2        text
    FORM F11_DATA_FORMAT_GROUP .
    MATNR
    PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATNR' 'MATNR' '1'
                              TEXT-003 'GT_FINAL' '15'.
      REFRESH GT_FIELDCAT[].
    MAKTX
      PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATKL' 'MATKL' '2'
                               TEXT-004 'MAT_FINAL' '24'.
    DESC
    PERFORM F11_E01_FIELDCAT_INIT USING  'MAKT' 'MAKTX' 'MAKTX' '3'
                              TEXT-005 'GT_FINAL' '35'.
    Material Group Decription
    PERFORM F11_E01_FIELDCAT_INIT USING  'V023' 'WGBEZ' 'WGBEZ' '3'
                              TEXT-005 'GT_FINAL' '20'.
    qty
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_VAL' 'MENGE' '4'
                               TEXT-006 'MAT_FINAL' '15'.
    qty
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'MEINS' 'MEINS' '5'
                               TEXT-008 'MAT_FINAL' '15'.
    TOTAL COST
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_AMT' 'SALK3' '6'
                               TEXT-007 'MAT_FINAL' '24'.
      PERFORM F12_E04_COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
      GV_SAVE = 'A'.
      CLEAR GT_EVENTS.
      REFRESH GT_EVENTS.
      GT_EVENTS-NAME = 'TOP_OF_PAGE'.
      GT_EVENTS-FORM = 'TOP_OF_PAGE'.
      APPEND GT_EVENTS.
    ENDFORM.                    " f11_data_format_group
    *&      Form  DETAIL_FORMAT_FIELDCAT
          text
    -->  p1        text
    <--  p2        text
    FORM DETAIL_FORMAT_FIELDCAT .
      REFRESH GT_FIELDCAT[].
    MATNR
      PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATNR' 'MATNR' '1'
                               TEXT-003 'DETAIL_FINAL' '15'.
    MAKTL
      PERFORM F11_E01_FIELDCAT_INIT USING  'MARA' 'MATKL' 'MATKL' '2'
                               TEXT-004 'DETAIL_FINAL' '24'.
    MAKTX
      PERFORM F11_E01_FIELDCAT_INIT USING  'MAKT' 'MAKTX' 'MAKTX' '3'
                               TEXT-005 'DETAIL_FINAL' '35'.
    qty
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_VAL' 'MENGE' '4'
                               TEXT-006 'DETAIL_FINAL' '15'.
    UOM
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'MEINS' 'MEINS' '5'
                               TEXT-008 'DETAIL_FINAL' '15'.
    TOTAL COST
      PERFORM F11_E01_FIELDCAT_INIT USING  '' 'TOT_AMT' 'SALK3' '6'
                               TEXT-007 'DETAIL_FINAL' '24'.
    PERFORM F12_E04_COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
      GV_SAVE = 'A'.
    CLEAR GT_EVENTS.
    REFRESH GT_EVENTS.
    GT_EVENTS-NAME = 'TOP_OF_PAGE'.
    GT_EVENTS-FORM = 'TOP_OF_PAGE'.
    APPEND GT_EVENTS.
    ENDFORM.                    " DETAIL_FORMAT_FIELDCAT
          FORM USER_COMMAND                                             *
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                   RS_SELFIELD TYPE SLIS_SELFIELD.
      CASE R_UCOMM.
        WHEN '&IC1'.                       "doubleclick
          IF RS_SELFIELD-TABNAME = 'MAT_FINAL'.
            READ TABLE MAT_FINAL INDEX  RS_SELFIELD-TABINDEX .
            PERFORM BUILD_DETAIL.
            PERFORM DETAIL_FORMAT_FIELDCAT.
            PERFORM F20_EVENTTAB_BUILD CHANGING GT_EVENTS[].
            PERFORM F40_DISPLAY_REPORT TABLES DETAIL_FINAL.
            CLEAR DETAIL_FINAL[].
          ENDIF.
          CLEAR R_UCOMM.
      ENDCASE.
    ENDFORM.                    "USER_COMMAND

    Hi,
    Done with the help of abaper.
    Thanks & Regards,
    Sandeep

  • Creation of Column view for Multiprovider failed

    Dear Experts,
    I'm facing an issue in TR import.
    The TR failed with the below error message.
    Creation of column view for XXXXX failed.
    XXXXX - Multiprovider
    System :BW on HANA (BW 7.4 SP06)
    If there's a way to resolve this error, please let me know.
    Appreciate your help.
    Br, Harish

    Hi,
    Here's the workaround I have implemented for this issue.
    Implemented the note 1955263 and made the below correction to the programSAP_RSADMIN_MAINTAIN.
    Object = MPRO_CS_GEN_ERROR_IGNORE
    Value = X
    After the above customizations are done, TRs are imported without any issues.
    For the OSS message I have raised, SAP has asked us to implement the note 2001969 to fix the issue.
    Br, Harish

  • Maintaince view of a table

    Hi All,
    I have created a custom table. While I display data for this table I need one extra field (from some other table) in the display. That extra field is not in the include structure.
    Any pointers...
    Thanks in advance.
    Neerja

    Hi,
    Checkout if there is any link between the custom table and the other table from which you want to add one more field and proceed with creation of database view or maintainance view.
    Cheers!!
    VEnk@

  • Creation of Materialized view and Materialized view log.

    I wanted to create materialized view with 'REFRESH FAST ON COMMIT' option.
    1) Table1 --it is partitioned range + list -- Added primary key
    2) view1   -- having primary keys on view's base table
    Steps:
    1) create materialized view log on Table1 ; -- default primary key
    2) create materialized view log on view1.  --- It is giving below error.
    ORA-00942: table or view does not exist
    i wanted to create Materialized view like below
    create materialized view
    REFRESH fast ON commit
    as
    select ...
    ... from table1
    where c1 in (select c1 from view1 where ... );
    Question:
    1) As i am getting above error while creating MV log on view. Can we create MV log on view or we have to create MV log on view base table?
    2) To create MV with ''REFRESH FAST ON COMMIT' option , do we need to have primary key on master tables? 
    Any pointers on this will really helpful.
    Thanks
    Prasad

    Also created MV LOG on 3 tables and tried with joins ..
    create materialized view
    REFRESH fast ON commit
    as
    select ...
    ... from table1 , tab2 t2,tab3 t3
    where ....
    and ...
    Get same error ORA-12052: cannot fast refresh materialized view AVSYS.EVENT_LOG_MV
    2052. 00000 -  "cannot fast refresh materialized view %s.%s"
    *Cause:    Either ROWIDs of certain tables were missing in the definition or
               the inner table of an outer join did not have UNIQUE constraints on
               join columns.
    *Action:   Specify the FORCE or COMPLETE option. If this error is got
               during creation, the materialized view definition may have be
               changed. Refer to the documentation on materialized views.

  • Creation of materialized view

    Hi All,
    We had created some other materialized view with for small set of data. The materialized view name is ‘XXCA_PAGL_RECON_GL1_TRANS_MV’ and it has created a table with the same name.
    What I am unable to understand is that the new table which was created by the system during the creation of materialized view is in VALID state but the materialized view is in INVALID state.
    Please help me to understand this process.
    Thanks in advance
    Venkatesh

    The column dba_objects.status for mviews is set to INVALID when the base tables are updated. See Metalink note 454552.1. It is normal.
    Edited by: YasinBaskan on Feb 17, 2009 2:07 PM

  • Maintaince view

    Dear All,
    I copied V_T001B maintaince view which is having data to ZV_T001B_000X. When I clicked contents to see whether the data is copied it is giving message as no database view exists for ZV_T001B_000X.
    Can any one help how to copy V_T001B to Z view along with data or how to post the data in the Z maintaince view once i copy it. Kindly give a solution to this...
    Regards,
    Raj Babu...

    Hi,
    You need to generate the table maintenance for the new view (utilities --> table maintenance generator from SE11).
    Regards,
    Darren

  • How to create Maintaince View and Help View

    Hi,
    Can u pls tell me the step by step procedure for how to
    create Maintaince View and Help View.
    And what's the use of these view's.
    Regards,
    Kumar

    FOR MAINTANENCE VIEW
    Create a table or a view in transaction SE11.
    A function group in SE80 transaction
    1>go to se54 transaction.
    2>give the name of the table /view starting from z.
    3>select "Generated Objects" radio button.
    4>click on "create/change" push button.
    5>you get a pop asking you whether to create modules ,click on YES
    6>give "authorization group" as temp.
    7>give the function group name created by you.
    8>click on "find Scr numbers "push button on the application tool bar.
    9>in the pop up that you get select the 1st option and press enter
    10>click on the create push button (it is beside "Find Scr numbers" push button)
    11>selct local object and pres enter.
    12>go to SM30 transaction.
    13>give the table/view name
    14>click on "maitain" push button.

  • Report Creation with Qucik Viewer(SQVI)

    Hi
    My client requirement is to get the CSO  report on the  items which are invoiced and the items are not invoiced in the CSO.
    i though i could generate the intended report wiht Quick Viewer (SQVI)
    kindly advise me how do i proceed with this kind of report.
    Regards
    TharakJReddy

    Your application is referencing the file craxDDrt.dll. In order to use this dll, you needed to obtain extra licensing. Since CR 10 has been out of support for over 5(?) years, I am not sure if you can still obtain the licensing. Contact sales at 866-681-3435 to find out.
    Alternatively, reference the craxDrt.dll. This dll does not require any extra licensing. However, the error you are getting indicates that you are using Report Creation APIs (RCAPI) from craxDDrt.dll. In my experience, there often were other ways of coding to achieve the same thing with craxdrt.dll. Let me know what RCAPIs you are using and I may be able to help out there.
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup
    Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]

  • Long time for creation of materialized view

    Hi,
    we are trying to create a materialized view and this view would contain 1 lakh records and around 50 columns.
    The select statement to get these records takes only 1-2 sec whereas the actual creation of view takes 17 minutes. The database used is Oracle 8i. The code used is
    CREATE MATERIALIZED VIEW employee_master_t
    PCTFREE 10
    STORAGE (initial 500k next 500k pctincrease 0)
    REFRESH WITH ROWID COMPLETE START WITH SYSDATE
    NEXT SYSDATE + 1 AS select * from table_name
    Is it because the insert is slow and temp tablespace may have to be increased?
    also, can anyone pls suggest if fast refresh mode can be used with Oracle 8i since currently we are not able to create as error saying that query is complex is returned

    It will be possible to create a Materialised view with up to 20 tables, but you have to understand the restrictions on complex Materialised views with regards to fast refresh.
    To help your understanding, refer to Materialized View Concepts and Architecture
    <br>
    Oracle Database FAQs
    </br>

  • Error on creation of a view

    i have a norma view like this
    CREATE FORCE VIEW USERBO.USERPROFILE_VIEW
    (ROW_ID,EMPLOYEE,RESPONSABILITY_ID,RUOLO,E_USERNAME,E_PASSWORD,USERTYPE,USER_ID) AS
    SELECT RESPONSABILITYUSER.row_id,
    client.surname
    || ' '
    || client.NAME,
    RESPONSABILITYUSER.responsability_id,
    'USERWEB',
    upper(client.username) || '-' || client.organization_id,
    client.pwd,
    client.usertype,
    client.ROW_ID
    FROM RESPONSABILITYUSER,
    general.client
    WHERE ((client.row_id = RESPONSABILITYUSER.user_id))
    AND client.status ='ACTIVE'
    the select works fine but the view
    was create with "error"
    but how i can find the essror ??
    i tried "show error" but no error found
    insten when i create the view occur an error of creation and dos not work !!
    Help

    >
    the strange is that the select extract from the view and execute from user USERBO
    works without errors and the two USER (USERBO AND CLIENT) are dba users.
    >
    Why is that strange? The common way to make a user a DBA is to grant them the DBA role.
    Reread my reply above. Especially this part
    >
    the user creating the view has to have select privileges on the RESPONSABILITYUSER table granted directly to them.
    >
    To work in a view or pl/sql procedure/function/package privileges must be 'GRANTED DIRECTLY TO THEM'!
    Repeat after me:
    DBA is a role, roles are not active in views/procedures/functions/packages: privileges must be 'GRANTED DIRECTLY TO THEM'!
    DBA is a role, roles are not active in views/procedures/functions/packages: privileges must be 'GRANTED DIRECTLY TO THEM'!
    DBA is a role, roles are not active in views/procedures/functions/packages: privileges must be 'GRANTED DIRECTLY TO THEM'!
    DBA is a role, roles are not active in views/procedures/functions/packages: privileges must be 'GRANTED DIRECTLY TO THEM'!
    DBA is a role, roles are not active in views/procedures/functions/packages: privileges must be 'GRANTED DIRECTLY TO THEM'!
    Now please post the answer to this question:
    >
    I must grant select on all tables ??

  • Error:While creation of Classification view using-'BAPI_OBJCL_CREATE'

    Hi all,
    I am using function module -
    CALL FUNCTION 'BAPI_OBJCL_CREATE'
      EXPORTING
        OBJECTKEYNEW            = OBJECTKEYNEW1
        OBJECTTABLENEW          = 'MARA'
        CLASSNUMNEW             = CLASSNUMNEW1
        CLASSTYPENEW            = CLASSTYPENEW1
      STATUS                  = '1'
      STANDARDCLASS           =
      CHANGENUMBER            =
      KEYDATE                 = SY-DATUM
      NO_DEFAULT_VALUES       = ' '
    IMPORTING
      CLASSIF_STATUS          =
      TABLES
      ALLOCVALUESNUM          =
        ALLOCVALUESCHAR         = ALLOCVALUESCHAR1
      ALLOCVALUESCURR         =
        RETURN                  = RETURN1
    for creation of classification of material.But it gives me afollowin errors -
    1)Assignment does not exist or is not valid on
    2)Table   not supported for class type
    3)Assignment was not created
    in return table.
    Thanks.

    Hi,
      Please follow the below steps.
    Creating the Classification View using the Function module 'BAPI_OBJCL_CREATE'.
    Check the Class Type and Class Number which you are passing.
    Generally it will be Class type - 001 (Material Class) and Number will be ENGINEERING.
    It depends.
    But, what you can do is, Check material which has classification data filled.
    And just use the same class Type and Class Number Details.
    Try this way.It should work.
    To know the Available Class Types refer to table TCLA.
    Please let me know, if you want further help.
    Thanks & Regards,
    Vamsi.

  • Creation of Database View , Projection View

    Hi ABAP EXPERTS,
    Can anyone plz send me the step by step creation of DATABASE and PROJECT VIEWS. Just steps by step explanation will do , screen shots will be more than appreciated.
    Kind Regards,
    Sunil Ranal.

    Database View (SE11)
    Database views are implement an inner join, that is, only records of the primary table (selected via the join operation) for which the corresponding records of the secondary tables also exist are fetched. Inconsistencies between primary and secondary table could, therefore, lead to a reduced selection set. In database views, the join conditions can be formulated using equality relationships between any base fields. In the other types of view, they must be taken from existing foreign keys. That is, tables can only be collected in a maintenance or help view if they are linked to one another via foreign keys.
    Check this link for database view creation.
    http://help.sap.com/saphelp_40b/helpdata/en/cf/21ed06446011d189700000e8322d00/content.htm
    Projection View
    Projection views are used to suppress or mask certain fields in a table (projection), thus minimizing the number of interfaces. This means that only the data that is actually required is exchanged when the database is accessed. A projection view can draw upon only one table. Selection conditions cannot be specified for projection views.
    Check this link for Projection view creation.
    http://help.sap.com/saphelp_nw70/helpdata/en/cf/21ed20446011d189700000e8322d00/content.htm
    Regards,
    Maha

  • Blocking vendor for PO creation if Accounting view is not maintained.

    Hi ALl,
    Is it possible to restrict RFQ or PO creation against vendor if accounting view is not maintained by account dept.
    I dont want to block it in MK06 or XK06 or in source list.
    Is there any user exit for this?
    Pls guide.
    Regards.
    Edited by: sapsarang on Aug 5, 2011 10:07 AM

    Hi,
    Use BAdi "ME_PROCESS_PO_CUST" and write the code under Interface "PROCESS_HEADER".
    Following is the sample code for the same.
    data t_lifnr type lfb1-lifnr.
    if w_lifnr is not initial and wa_hdr-bukrs is not initial.
    select single lifnr from lfb1 into t_lifnr where lifnr = w_lifnr
                                 and bukrs = wa_hdr-bukrs.
       if sy-subrc ne 0.
         MESSAGE e025(zm01) WITH w_lifnr wa_hdr-bukrs.
       endif.
    Here create a message as ZM01025 (In TCode SE91) as "Vendor has not been maintained for Co. Code &."

Maybe you are looking for