2007 Sep 18 9:05 AM
Hi guys,
i m trying to do a alv grid report using classes.
i m getting this syntax error in the method v_alv->set_table_for_first_display.
the error is that GI_OUTPUT is not type-compatible with formal parameter IT_OUTTAB.
gi_output is my final output table.
any suggestions please?
thanks in advance.
2007 Sep 18 9:12 AM
Hi Dinesh...
Here GI_Output may not be an internal table. That is the Reason the Error is coming.
So you declare it as an internal Table (without header line).
Even if u dont get.. Paste your code.
reward if Helpful.
Hi guys,
i m trying to do a alv grid report using classes.
i m getting this syntax error in the method v_alv->set_table_for_first_display.
the error is that GI_OUTPUT is not type-compatible with formal parameter IT_OUTTAB.
gi_output is my final output table.
any suggestions please?
thanks in advance.
2007 Sep 18 9:12 AM
Hi Dinesh...
Here GI_Output may not be an internal table. That is the Reason the Error is coming.
So you declare it as an internal Table (without header line).
Even if u dont get.. Paste your code.
reward if Helpful.
2007 Sep 18 9:14 AM
Hi,
here u have to pass an internal table with out header line.may be ur table gi_output is an internal table with header line.
rgds,
bharat.
2007 Sep 18 9:32 AM
Thanks that one worked but i couldn't get any alv report in the output.
if i can paste the code can u have a look at it.
2007 Sep 18 9:34 AM
2007 Sep 18 9:39 AM
Hi Varma,
Thanks
This is the code.It will be lengthy.When i m executing i m getting just the pf status in the output not any alv grid.
ABLES: T001W, RESCO, RESB, MDKS.
*----
INCLUDES
*----
*INCLUDE bdcrecxy.
*----
DATA - TYPES
*----
TYPE-POOLS: SLIS, KKBLO.
DATA: BEGIN OF FS_MAKTX1,
MAKTX1 TYPE MAKT-MAKTX,
END OF FS_MAKTX1.
DATA: BEGIN OF FS_MAKTX2,
MAKTX2 TYPE MAKT-MAKTX,
END OF FS_MAKTX2.
DATA: V_RSNUM1 TYPE RSNUM,
V_RSNUM2 TYPE RSNUM,
V_OBJNR TYPE OBJNR,
V_PROCNR TYPE MDKS-PROCNR.
DATA: BEGIN OF FS_CKMLMV001,
PRWRK_ND TYPE CKMLMV001-PRWRK_ND,
VERID_ND TYPE CKMLMV001-VERID_ND,
PMATN_ND TYPE CKMLMV001-PMATN_ND,
END OF FS_CKMLMV001.
DATA: BEGIN OF FS_MKAL,
WERKS TYPE MKAL-WERKS,
MDV01 TYPE MKAL-MDV01,
END OF FS_MKAL.
DATA: BEGIN OF FS_COMP_DISPO,
DISPO TYPE MARC-DISPO,
END OF FS_COMP_DISPO.
DATA: BEGIN OF FS_ASSEM_DISPO,
DISPO TYPE MARC-DISPO,
END OF FS_ASSEM_DISPO.
DATA: BEGIN OF FS_MBEW,
MATNR TYPE MBEW-MATNR,
VERPR TYPE MBEW-VERPR,
STPRS TYPE MBEW-STPRS,
PEINH TYPE MBEW-PEINH,
END OF FS_MBEW.
DATA:BEGIN OF GT_OUTPUT,
MATNR LIKE RESB-MATNR,
MAKTX1 LIKE MAKT-MAKTX,
DISPO1 LIKE MARC-DISPO,
WERKS LIKE RESB-WERKS,
LGORT LIKE RESB-LGORT,
BDMNG LIKE RESB-BDMNG,
MEINS LIKE RESB-MEINS,
VERPR LIKE MBEW-VERPR,
STPRS LIKE MBEW-STPRS,
WAERS LIKE T001-WAERS,
PEINH LIKE MBEW-PEINH,
QTPRC LIKE MBEW-VERPR,
ENTRY TYPE NUM8,
BAUGR LIKE RESB-BAUGR,
MAKTX2 LIKE MAKT-MAKTX,
DISPO2 LIKE MARC-DISPO,
VERID LIKE MKAL-VERID,
MDV01 LIKE MKAL-MDV01,
AUFNR LIKE RESB-AUFNR,
END OF GT_OUTPUT.
*----
DATA - CONSTANTS
*----
CONSTANTS: GC_SELECT VALUE 'X',
GC_HEADING VALUE 'H',
GC_SECTION VALUE 'S',
GC_ALL TYPE C VALUE 'A',
GC_ERROR TYPE C VALUE 'E'.
*----
DATA - INTERNAL TABLES AND FIELD LISTS
*----
DATA: I_RESCO TYPE STANDARD TABLE OF RESCO,
I_MDKS TYPE STANDARD TABLE OF MDKS,
IT_MDKS TYPE STANDARD TABLE OF MDKS WITH HEADER LINE,
IF_MDKS TYPE STANDARD TABLE OF MDKS WITH HEADER LINE,
IF1_MDKS LIKE IF_MDKS OCCURS 0 WITH HEADER LINE,
IT_RESCO TYPE STANDARD TABLE OF RESCO WITH HEADER LINE,
IF_RESCO TYPE STANDARD TABLE OF RESCO WITH HEADER LINE,
I_RESB TYPE STANDARD TABLE OF RESB WITH HEADER LINE,
IT_RESB TYPE STANDARD TABLE OF RESB WITH HEADER LINE,
I_MAKTX1 LIKE FS_MAKTX1 OCCURS 0 WITH HEADER LINE,
I_MAKTX2 LIKE FS_MAKTX2 OCCURS 0 WITH HEADER LINE,
I_CKMLMV001 LIKE FS_CKMLMV001 OCCURS 0 WITH HEADER LINE,
I_MKAL LIKE FS_MKAL OCCURS 0,
I_COMP_DISPO LIKE FS_COMP_DISPO OCCURS 0,
I_ASSEM_DISPO LIKE FS_ASSEM_DISPO OCCURS 0,
I_MBEW LIKE FS_MBEW OCCURS 0,
GI_T001W TYPE STANDARD TABLE OF T001W,
GI_OUTPUT LIKE GT_OUTPUT OCCURS 0 .
*----
DATA - WORKING VARIABLES
*----
*----
DATA - FIELD SYMBOLS
*----
FIELD-SYMBOLS: <GF_T001W> LIKE LINE OF GI_T001W.
*----
SELECTION SCREEN
*----
SELECTION-SCREEN BEGIN OF BLOCK 1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_werks FOR t001w-werks NO INTERVALS MEMORY ID wrk.
SELECTION-SCREEN SKIP.
PARAMETERS: pr_mov TYPE char1 RADIOBUTTON GROUP r1,
pr_std TYPE char1 RADIOBUTTON GROUP r1.
SELECTION-SCREEN END OF BLOCK 1.
************************************************************************
MAIN PROGRAM **************************
************************************************************************
*********************************************************************
AUTHORISATION CHECK
*********************************************************************
AT SELECTION-SCREEN ON s_werks.
*********************************************************************
SELECT * INTO TABLE GI_T001W
FROM T001W
WHERE WERKS IN S_WERKS.
LOOP AT GI_T001W ASSIGNING <GF_T001W>.
AUTHORITY-CHECK OBJECT 'C_AFFW_TWK'
ID 'WERKS' FIELD <GF_T001W>-WERKS.
IF SY-SUBRC <> 0.
MESSAGE E004(Z1) WITH <GF_T001W>-WERKS <GF_T001W>-NAME1.
ENDIF.
ENDLOOP.
IF SY-SUBRC <> 0.
MESSAGE E018(Z1) WITH S_WERKS.
ENDIF.
*********************************************************************
*********************************************************************
START-OF-SELECTION.
*********************************************************************
PERFORM: READ_COST_REPETITIVE, call_screen."OUTPUT_COST_REPETITIVE_REPORT.
*********************************************************************
********RETRIEVE THE DATA
*********************************************************************
FORM READ_COST_REPETITIVE.
DATA: L_WERKS TYPE WERKS_D,
L_MATNR TYPE MATNR,
L_WAERS TYPE WAERS,
L_MAKTX TYPE MAKTX,
L_INDEX TYPE SY-TABIX.
*********************************************************************
ENTRIES FOR RESCO
*********************************************************************
SELECT * INTO TABLE I_RESCO
FROM RESCO.
*********************************************************************
*********************************************************************
*******ENTRIES FOR MDKS
*********************************************************************
SELECT * INTO TABLE I_MDKS
FROM MDKS FOR ALL ENTRIES IN I_RESCO
WHERE OBJNR = I_RESCO-OBJNR.
LOOP AT I_MDKS INTO IT_MDKS WHERE WERKS IN S_WERKS
AND AUTYP = 5
AND POSNR = 1
AND PROCNR <> 0.
IF SY-SUBRC EQ 0.
APPEND IT_MDKS.
ENDIF.
ENDLOOP.
*********************************************************************
*********************************************************************
ENTRIES FOR RESB
*********************************************************************
SELECT * INTO TABLE IT_RESCO
FROM RESCO FOR ALL ENTRIES IN IT_MDKS
WHERE OBJNR = IT_MDKS-OBJNR.
SELECT * INTO TABLE I_RESB
FROM RESB FOR ALL ENTRIES IN IT_RESCO
WHERE RSNUM = IT_RESCO-RSNUM
AND WERKS IN S_WERKS.
*********************************************************************
********************************************************************
MATERIAL DESCRIPTIONS FOR COMP AND ASSEMBLY
********************************************************************
SELECT MAKTX INTO TABLE I_MAKTX1
FROM MAKT FOR ALL ENTRIES IN I_RESB
WHERE MATNR = I_RESB-MATNR
AND SPRAS = 'E'.
SELECT MAKTX INTO TABLE I_MAKTX2
FROM MAKT FOR ALL ENTRIES IN I_RESB
WHERE MATNR = I_RESB-BAUGR
AND SPRAS = 'E'.
*********************************************************************
*********************************************************************
MULTIPLE OBJNR VALUES FOR RESCO
*********************************************************************
LOOP AT I_RESB.
V_RSNUM1 = I_RESB-RSNUM.
READ TABLE IT_RESCO INTO IF_RESCO WITH KEY RSNUM = V_RSNUM1.
IF SY-SUBRC EQ 0.
APPEND IF_RESCO.
ENDIF.
ENDLOOP.
************************************************************************
************************************************************************
VALUES FOR MDKS-PROCNR
************************************************************************
LOOP AT IF_RESCO.
V_OBJNR = IF_RESCO-OBJNR.
LOOP AT IT_MDKS INTO IF_MDKS WHERE OBJNR = V_OBJNR.
IF SY-SUBRC EQ 0.
APPEND IF_MDKS.
ENDIF.
ENDLOOP.
ENDLOOP.
LOOP AT IF_MDKS INTO IF1_MDKS WHERE WERKS IN S_WERKS
AND AUTYP EQ '5'
AND POSNR EQ '1'
AND PROCNR <> '0'.
IF SY-SUBRC EQ 0.
APPEND IF1_MDKS.
ENDIF.
ENDLOOP.
*********************************************************************
*********************************************************************
VALUES FOR VERSION ID IN CKMLMV001
*********************************************************************
LOOP AT IF1_MDKS.
V_PROCNR = IF1_MDKS-PROCNR.
SELECT PRWRK_ND
VERID_ND
PMATN_ND
FROM CKMLMV001
INTO CORRESPONDING FIELDS OF FS_CKMLMV001
WHERE PROC_KALNR EQ V_PROCNR.
IF SY-SUBRC EQ 0.
APPEND FS_CKMLMV001 TO I_CKMLMV001.
ENDIF.
CLEAR FS_CKMLMV001.
ENDSELECT.
ENDLOOP.
*********************************************************************
*********************************************************************
VALUES FOR PRODUCTION LINE IN TABLE MKAL
*********************************************************************
LOOP AT I_CKMLMV001 INTO FS_CKMLMV001.
SELECT WERKS MDV01
FROM MKAL
INTO FS_MKAL
WHERE WERKS = FS_CKMLMV001-PRWRK_ND
AND MATNR = FS_CKMLMV001-PMATN_ND
AND VERID = FS_CKMLMV001-VERID_ND.
IF SY-SUBRC EQ 0.
APPEND FS_MKAL TO I_MKAL.
ENDIF.
CLEAR FS_MKAL.
ENDSELECT.
ENDLOOP.
*********************************************************************
*********************************************************************
MRP CONTROLLERS FOR COMP.MRP CONTR & ASSEMBLY MRP CONTR
*********************************************************************
LOOP AT I_RESB.
SELECT DISPO
FROM MARC
INTO FS_COMP_DISPO
WHERE MATNR = I_RESB-MATNR
AND WERKS = I_RESB-WERKS.
IF SY-SUBRC EQ 0.
APPEND FS_COMP_DISPO TO I_COMP_DISPO.
ENDIF.
CLEAR FS_COMP_DISPO.
ENDSELECT.
ENDLOOP.
LOOP AT I_RESB.
SELECT DISPO
FROM MARC
INTO FS_ASSEM_DISPO
WHERE MATNR = I_RESB-BAUGR
AND WERKS = I_RESB-WERKS.
IF SY-SUBRC EQ 0.
APPEND FS_ASSEM_DISPO TO I_ASSEM_DISPO.
ENDIF.
CLEAR FS_ASSEM_DISPO.
ENDSELECT.
ENDLOOP.
*********************************************************************
MOV AVG PRICE, STANDARD PRICE, PRICE UNIT FROM MBEW ***
*********************************************************************
LOOP AT I_RESB.
SELECT MATNR VERPR STPRS PEINH
FROM MBEW
INTO CORRESPONDING FIELDS OF FS_MBEW
WHERE MATNR = I_RESB-MATNR.
IF SY-SUBRC EQ 0.
APPEND FS_MBEW TO I_MBEW.
ENDIF.
CLEAR FS_MBEW.
ENDSELECT.
ENDLOOP.
*********************************************************************
RETRIEVE DATA INTO OUTPUT TABLE
*********************************************************************
LOOP AT I_RESB INTO I_RESB.
L_INDEX = SY-TABIX.
GT_OUTPUT-MATNR = I_RESB-MATNR.
GT_OUTPUT-WERKS = I_RESB-WERKS.
GT_OUTPUT-LGORT = I_RESB-LGORT.
GT_OUTPUT-BDMNG = I_RESB-BDMNG.
GT_OUTPUT-MEINS = I_RESB-MEINS.
GT_OUTPUT-BAUGR = I_RESB-BAUGR.
GT_OUTPUT-AUFNR = I_RESB-AUFNR.
READ TABLE I_CKMLMV001 INTO FS_CKMLMV001 WITH KEY PRWRK_ND = I_RESB-WERKS.
IF SY-SUBRC EQ 0.
GT_OUTPUT-VERID = FS_CKMLMV001-VERID_ND.
CLEAR I_RESB.
READ TABLE I_MKAL INDEX L_INDEX INTO FS_MKAL. "WITH KEY WERKS = FS_CKMLMV001-PRWRK_ND.
GT_OUTPUT-MDV01 = FS_MKAL-MDV01.
CLEAR FS_MKAL.
READ TABLE I_COMP_DISPO INDEX L_INDEX INTO FS_COMP_DISPO.
GT_OUTPUT-DISPO1 = FS_COMP_DISPO-DISPO.
CLEAR FS_COMP_DISPO.
READ TABLE I_ASSEM_DISPO INDEX L_INDEX INTO FS_ASSEM_DISPO.
GT_OUTPUT-DISPO2 = FS_ASSEM_DISPO-DISPO.
CLEAR FS_ASSEM_DISPO.
READ TABLE I_MAKTX1 INDEX L_INDEX INTO FS_MAKTX1.
GT_OUTPUT-MAKTX1 = FS_MAKTX1-MAKTX1.
CLEAR FS_MAKTX1.
READ TABLE I_MAKTX2 INDEX L_INDEX INTO FS_MAKTX2.
GT_OUTPUT-MAKTX2 = FS_MAKTX2-MAKTX2.
CLEAR FS_MAKTX2.
READ TABLE I_MBEW INDEX L_INDEX INTO FS_MBEW.
GT_OUTPUT-VERPR = FS_MBEW-VERPR.
GT_OUTPUT-STPRS = FS_MBEW-STPRS.
GT_OUTPUT-PEINH = FS_MBEW-PEINH.
CLEAR FS_MBEW.
APPEND GT_OUTPUT TO GI_OUTPUT.
ENDIF.
CLEAR FS_CKMLMV001.
CLEAR GT_OUTPUT.
ENDLOOP.
Add currency.
SORT GI_OUTPUT BY WERKS.
CLEAR L_WERKS.
LOOP AT GI_OUTPUT INTO GT_OUTPUT.
IF L_WERKS <> GT_OUTPUT-WERKS.
L_WERKS = GT_OUTPUT-WERKS.
SELECT SINGLE T001~WAERS INTO L_WAERS
FROM T001W
JOIN T001K
ON T001WBWKEY = T001KBWKEY
JOIN T001
ON T001KBUKRS = T001BUKRS
WHERE T001W~WERKS = GT_OUTPUT-WERKS.
IF SY-SUBRC <> 0.
CLEAR L_WAERS.
ENDIF.
ENDIF.
GT_OUTPUT-WAERS = L_WAERS.
MODIFY GI_OUTPUT FROM GT_OUTPUT
TRANSPORTING WAERS.
CLEAR GT_OUTPUT.
ENDLOOP.
SORT GI_OUTPUT BY MATNR.
CLEAR L_MATNR.
LOOP AT GI_OUTPUT INTO GT_OUTPUT.
IF PR_MOV IS NOT INITIAL.
GT_OUTPUT-QTPRC = GT_OUTPUT-VERPR.
ELSE.
GT_OUTPUT-QTPRC = GT_OUTPUT-STPRS.
ENDIF.
MULTIPLY GT_OUTPUT-QTPRC BY GT_OUTPUT-BDMNG.
DIVIDE GT_OUTPUT-QTPRC BY GT_OUTPUT-PEINH.
GT_OUTPUT-ENTRY = 1.
MODIFY GI_OUTPUT FROM GT_OUTPUT
TRANSPORTING QTPRC ENTRY.
CLEAR GT_OUTPUT.
ENDLOOP.
ENDFORM. "READ_COST_REPETITIVE
form call_screen.
if pr_mov eq 'X'.
call screen 100.
endif.
endform.
*--For ALV
DATA:i_fieldcat TYPE STANDARD TABLE OF lvc_s_fcat,
wa_fieldcat TYPE lvc_s_fcat.
DATA: v_alv TYPE REF TO cl_gui_alv_grid,
v_cont TYPE REF TO cl_gui_custom_container,
v_layout TYPE lvc_s_layo,
v_variant TYPE disvariant,
pos_free TYPE i,
v_save(1),
v_grd_total TYPE netwr,
v_sub_total TYPE netwr.
*----
field catalogue
*----
FORM field_catalog.
REFRESH I_FIELDCAT.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 1.
wa_fieldcat-FIELDNAME = 'MATNR'.
wa_fieldcat-REF_TABle = 'RESB'.
wa_fieldcat-hotspot = 'X'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 2.
wa_fieldcat-FIELDNAME = 'MAKTX'.
wa_fieldcat-REF_TABle = 'MAKT'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 3.
wa_fieldcat-FIELDNAME = 'DISPO'.
wa_fieldcat-REF_TABle = 'MARC'.
wa_fieldcat-SELTEXT = TEXT-108.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 4.
wa_fieldcat-FIELDNAME = 'WERKS'.
wa_fieldcat-REF_TABle = 'RESB'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 5.
wa_fieldcat-FIELDNAME = 'LGORT'.
wa_fieldcat-REF_TABle = 'RESB'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 6.
wa_fieldcat-FIELDNAME = 'BDMNG'.
wa_fieldcat-REF_TABle = 'RESB'.
wa_fieldcat-QFIELDNAME = 'MEINS'.
wa_fieldcat-DO_SUM = 'X'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 7.
wa_fieldcat-FIELDNAME = 'MEINS'.
wa_fieldcat-REF_TABle = 'RESB'.
wa_fieldcat-DO_SUM = 'X'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 8.
IF PR_MOV IS NOT INITIAL.
wa_fieldcat-FIELDNAME = 'VERPR'.
ELSE.
wa_fieldcat-FIELDNAME = 'STPRS'.
ENDIF.
wa_fieldcat-REF_TABle = 'MBEW'.
wa_fieldcat-CFIELDNAME = 'WAERS'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-col_pos = 9.
wa_fieldcat-fieldname = 'stprs'.
wa_fieldcat-ref_table = 'mbew'.
wa_fieldcat-cfieldname = 'waers'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 10.
wa_fieldcat-FIELDNAME = 'WAERS'.
wa_fieldcat-REF_TABle = 'T001'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 11.
wa_fieldcat-FIELDNAME = 'PEINH'.
wa_fieldcat-REF_TABle = 'MBEW'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 12.
wa_fieldcat-FIELDNAME = 'QTPRC'.
wa_fieldcat-CFIELDNAME = 'WAERS'.
wa_fieldcat-QFIELDNAME = 'ERFME'.
wa_fieldcat-DO_SUM = GC_SELECT.
wa_fieldcat-ScrTEXT_L = TEXT-101.
wa_fieldcat-ScrTEXT_M = TEXT-101.
wa_fieldcat-ScrTEXT_S = TEXT-101.
wa_fieldcat-REPTEXT = TEXT-101.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 13.
wa_fieldcat-FIELDNAME = 'ENTRY'.
wa_fieldcat-DO_SUM = 'X'.
wa_fieldcat-ScrTEXT_L = TEXT-102.
wa_fieldcat-ScrTEXT_M = TEXT-102.
wa_fieldcat-ScrTEXT_S = TEXT-102.
wa_fieldcat-REPTEXT = TEXT-102.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 14.
wa_fieldcat-FIELDNAME = 'BAUGR'.
wa_fieldcat-REF_TABle = 'RESB'.
wa_fieldcat-ScrTEXT_L = TEXT-107.
wa_fieldcat-hotspot = 'X'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 15.
wa_fieldcat-FIELDNAME = 'MAKTX'.
wa_fieldcat-REF_TABle = 'MAKT'.
wa_fieldcat-ScrTEXT_L = TEXT-106.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 16.
wa_fieldcat-FIELDNAME = 'DISPO'.
wa_fieldcat-REF_TABle = 'MARC'.
wa_fieldcat-ScrTEXT_L = TEXT-105.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 17.
wa_fieldcat-FIELDNAME = 'VERID'.
wa_fieldcat-REF_TABle = 'MKAL'.
wa_fieldcat-ScrTEXT_L = TEXT-104.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 18.
wa_fieldcat-FIELDNAME = 'MDV01'.
wa_fieldcat-REF_TABle = 'MKAL'.
APPEND wa_fieldcat TO i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-COL_POS = 19.
wa_fieldcat-FIELDNAME = 'AUFNR'.
wa_fieldcat-REF_TABle = 'RESB'.
wa_fieldcat-ScrTEXT_L = TEXT-103.
APPEND wa_fieldcat TO i_fieldcat.
endform.
----
Form alv_display *
----
FORM alv_display .
v_save = 'A'.
v_variant-report = sy-repid.
CALL METHOD v_alv->set_table_for_first_display
EXPORTING
is_variant = v_variant
i_save = v_save
is_layout = v_layout
CHANGING
it_outtab = gi_output
it_fieldcatalog = i_fieldcat[]
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
ENDFORM. " alv_display
----
Form layout *
----
FORM layout .
v_layout-grid_title = text-008."'ALV Grid Title'.
v_layout-zebra = 'X'.
v_layout-numc_TOTAL = 'X'.
v_layout-cwidth_opt = 'X'.
v_layout-no_merging = 'X'.
ENDFORM. " layout
*----
&----
*& Module STATUS_0100 OUTPUT
&----
text
----
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'STANDARD'.
SET TITLEBAR 'T100'.
ENDMODULE. " STATUS_0100 OUTPUT
&----
*& Module create_container OUTPUT
&----
text
----
MODULE create_container OUTPUT.
CREATE OBJECT v_cont
EXPORTING
container_name = 'CONTAINER'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6
.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CREATE OBJECT v_alv
EXPORTING
i_parent = v_cont
EXCEPTIONS
error_cntl_create = 1
error_cntl_init = 2
error_cntl_link = 3
error_dp_create = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDMODULE.
MODULE display_data OUTPUT.
PERFORM layout.
PERFORM field_catalog.
PERFORM alv_display.
ENDMODULE. " display_data OUTPUT
&----
*& Module USER_COMMAND_0100 INPUT
&----
text
----
MODULE USER_COMMAND_0100 INPUT.
CASE sy-ucomm.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'EXIT' OR 'CANCEL'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE.
2007 Sep 18 11:21 AM
Hi Varma,
Can u please have a look at the code.It is not displaying any alvgrid report in the output,i m just getting the toolbar,menu bar.
Thanks.
dinesh.
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |