Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

ALV grid display

Former Member
0 Likes
1,316

Hi,

My programs displays source list in a grid format,and it has 10 columns,but while dowm loading the report or while doing print preview only 4 columns data is coming,othere data not down loading proerly.

Can anyone suggest me wht can be the reason?i checked in program,nothing i got...

Thanks in Advance.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,278

Hi,

Just add the following code. Eg:

DATA : l_pos TYPE i.

CLEAR l_pos.

ADD 1 TO l_pos.

wa_fieldcat-col_pos = l_pos.

wa_fieldcat-tabname = 'ALV_TAB'..

wa_fieldcat-fieldname = 'PERNR'.

wa_fieldcat-seltext_m = 'Staff Number.'.

APPEND wa_fieldcat TO i_fieldcat.

CLEAR wa_fieldcat.

ADD 1 TO l_pos.

wa_fieldcat-col_pos = l_pos.

wa_fieldcat-tabname = 'ALV_TAB'..

wa_fieldcat-fieldname = 'ENAME'.

wa_fieldcat-seltext_m = 'Staff Name'.

APPEND wa_fieldcat TO i_fieldcat.

CLEAR wa_fieldcat.

Make necessary Changes and it will work...

Its coz of col_pos..

Reward If UsefuL

8 REPLIES 8
Read only

Former Member
0 Likes
1,279

Hi,

Just add the following code. Eg:

DATA : l_pos TYPE i.

CLEAR l_pos.

ADD 1 TO l_pos.

wa_fieldcat-col_pos = l_pos.

wa_fieldcat-tabname = 'ALV_TAB'..

wa_fieldcat-fieldname = 'PERNR'.

wa_fieldcat-seltext_m = 'Staff Number.'.

APPEND wa_fieldcat TO i_fieldcat.

CLEAR wa_fieldcat.

ADD 1 TO l_pos.

wa_fieldcat-col_pos = l_pos.

wa_fieldcat-tabname = 'ALV_TAB'..

wa_fieldcat-fieldname = 'ENAME'.

wa_fieldcat-seltext_m = 'Staff Name'.

APPEND wa_fieldcat TO i_fieldcat.

CLEAR wa_fieldcat.

Make necessary Changes and it will work...

Its coz of col_pos..

Reward If UsefuL

Read only

0 Likes
1,278

Hey this is a ALV grid,how can i write the code?

Read only

Former Member
0 Likes
1,278

Hi,

Develop the fieldcatalog manually by giving the field positions.

Click on the Local file(CtrlShiftF9) to download the report

output either list or grid.

There is a "Local file" button on application toolbar in output

display.Use to download.

Copy the folowing code and execute and download,you can get

TABLES VBAK.

TYPE-POOLS SLIS.

  • Data Declaration

TYPES: BEGIN OF T_VBAK,

VBELN TYPE VBAK-VBELN,

ERDAT TYPE VBAK-ERDAT,

ERNAM TYPE VBAK-ERNAM,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

NETWR TYPE VBAK-NETWR,

VKORG TYPE VBAK-VKORG,

VKGRP TYPE VBAK-VKGRP,

LINE_COLOR(4) TYPE C,

END OF T_VBAK.

DATA: IT_VBAK TYPE STANDARD TABLE OF T_VBAK INITIAL SIZE 0,

WA_VBAK TYPE T_VBAK.

  • ALV Data Declaration

DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,

GD_LAYOUT TYPE SLIS_LAYOUT_ALV,

GD_REPID TYPE SY-REPID.

START-OF-SELECTION.

PERFORM DATA_RETRIEVAL.

PERFORM BLD_FLDCAT.

PERFORM BLD_LAYOUT.

PERFORM DISPLAY_ALV_REPORT.

  • Build Field Catalog for ALV Report

FORM BLD_FLDCAT.

FLDCAT-FIELDNAME = 'VBELN'.

FLDCAT-SELTEXT_M = 'Sales Document'.

FLDCAT-COL_POS = 0.

*FLDCAT-EMPHASIZE = 'C411'.

FLDCAT-OUTPUTLEN = 20.

FLDCAT-KEY = 'X'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'ERDAT'.

FLDCAT-SELTEXT_L = 'Record Date created'.

FLDCAT-COL_POS = 1.

FLDCAT-KEY = 'X'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'ERNAM'.

FLDCAT-SELTEXT_L = 'Cteated Object Person Name'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'AUDAT'.

FLDCAT-SELTEXT_M = 'Document Date'.

FLDCAT-COL_POS = 3.

FLDCAT-EMPHASIZE = 'C110'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'VBTYP'.

FLDCAT-SELTEXT_L = 'SD Document category'.

FLDCAT-COL_POS = 4.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'NETWR'.

FLDCAT-SELTEXT_L = 'Net Value of the SO in Document Currency'.

FLDCAT-COL_POS = 5.

FLDCAT-OUTPUTLEN = 60.

FLDCAT-DO_SUM = 'X'.

FLDCAT-DATATYPE = 'CURR'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'VKORG'.

FLDCAT-SELTEXT_L = 'Sales Organization'.

FLDCAT-COL_POS = 6.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'VKGRP'.

FLDCAT-SELTEXT_M = 'Sales Group'.

FLDCAT-COL_POS = 7.

FLDCAT-EMPHASIZE = 'C801'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

ENDFORM.

  • Build Layout for ALV Grid Report

FORM BLD_LAYOUT.

GD_LAYOUT-NO_INPUT = 'X'.

GD_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.

GD_LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.

GD_LAYOUT-WINDOW_TITLEBAR = 'GRID DISPLAY'.

GD_LAYOUT-CONFIRMATION_PROMPT = 'X'. “ This asks the confirmation before leaving the screen.

ENDFORM.

  • 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

I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'

I_GRID_TITLE = 'SALES DOCUMENT HEADER'

IT_FIELDCAT = FLDCAT[]

I_SAVE = 'X'

TABLES

T_OUTTAB = IT_VBAK

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.

  • Retrieve data from VBAK table and populate itab IT_VBAK

FORM DATA_RETRIEVAL.

DATA LD_COLOR(1) TYPE C.

SELECT VBELN ERDAT ERNAM AUDAT VBTYP NETWR VKORG

UP TO 20 ROWS

FROM VBAK

INTO TABLE IT_VBAK.

LOOP AT IT_VBAK INTO WA_VBAK.

LD_COLOR = LD_COLOR + 1.

IF LD_COLOR = 8.

LD_COLOR = 1.

ENDIF.

CONCATENATE 'C' LD_COLOR '10' INTO WA_VBAK-LINE_COLOR.

MODIFY IT_VBAK FROM WA_VBAK.

ENDLOOP.

ENDFORM.

FORM TOP_OF_PAGE.

DATA: T_HEADER TYPE SLIS_T_LISTHEADER,

W_HEADER TYPE SLIS_LISTHEADER.

W_HEADER-TYP = 'H'.

W_HEADER-INFO = 'WELCOME HEADER LIST'.

APPEND W_HEADER TO T_HEADER.

W_HEADER-TYP = 'S'.

W_HEADER-KEY = 'REPORT:'.

W_HEADER-INFO = SY-REPID.

APPEND W_HEADER TO T_HEADER.

W_HEADER-TYP = 'S'.

W_HEADER-KEY = 'DATE:'.

CONCATENATE SY-DATUM6(2) ' / ' SY-DATUM4(2) ' / ' SY-DATUM(4) INTO W_HEADER-INFO.

APPEND W_HEADER TO T_HEADER.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

IT_LIST_COMMENTARY = T_HEADER.

ENDFORM.

Reward,if useful.

Thanks,

Chandu

Read only

0 Likes
1,278

Hey already i have done these things...still not working....

Read only

0 Likes
1,278

Ginger,

Paste your code here.

K.Kiran.

Read only

0 Likes
1,278

Hey K.Kiran,

Reply is must...please

TYPE-POOLS slis.

TYPES : BEGIN OF tp_source,

werks TYPE mapl-werks,

matnr TYPE mapl-matnr,

lifnr TYPE mapl-lifnr,

loekz TYPE mapl-loekz,

kordb TYPE marc-kordb,

maktx TYPE makt-maktx,

name1 TYPE lfa1-name1,

plnnr TYPE plko-plnnr,

plnal TYPE plko-plnal,

ktext TYPE plko-ktext,

END OF tp_source.

----


  • Internal table Declarations *

----


DATA : t_source TYPE STANDARD TABLE OF tp_source WITH HEADER LINE,

t_auth_werks TYPE RANGE OF t001w-werks WITH HEADER LINE,

t_fieldcat TYPE slis_t_fieldcat_alv,

t_sort TYPE slis_t_sortinfo_alv,

t_events TYPE slis_t_event,

t_header TYPE slis_t_listheader,

t_return_tab LIKE ddshretval OCCURS 1 WITH HEADER LINE.

----


  • WORK AREA

----


DATA : wa_field TYPE slis_fieldcat_alv,

wa_layout TYPE slis_layout_alv,

wa_header TYPE slis_listheader,

wa_sort TYPE slis_sortinfo_alv.

----


  • Variable Declarations *

----


DATA : w_werks TYPE t001w-werks,

w_plnty TYPE tca01-plnty,

w_lifnr TYPE lfa1-lifnr,

w_meins TYPE t006-msehi,

w_matnr TYPE materialid-matnr_ext.

----


  • Constant Declaration *

----


CONSTANTS : c_e TYPE c VALUE 'E',

c_x TYPE c VALUE 'X',

c_display TYPE xufield VALUE '03',

c_1 TYPE c VALUE '1',

c_2 TYPE c VALUE '2',

c_3 TYPE c VALUE '3',

c_4 TYPE c VALUE '4',

c_5 TYPE c VALUE '5',

c_6 TYPE c VALUE '6',

c_7 TYPE c VALUE '7',

c_8 TYPE c VALUE '8',

c_9 TYPE c VALUE '9',

c_10(2) TYPE c VALUE '10',

c_h TYPE slis_listheader-typ VALUE 'H',

c_werks TYPE lvc_fname VALUE 'WERKS',

c_plnnr TYPE lvc_fname VALUE 'PLNNR',

c_plnal TYPE lvc_fname VALUE 'PLNAL',

c_ktext TYPE lvc_fname VALUE 'KTEXT',

c_kordb TYPE lvc_fname VALUE 'KORDB',

c_matnr TYPE lvc_fname VALUE 'MATNR',

c_maktx TYPE lvc_fname VALUE 'MAKTX',

c_lifnr TYPE lvc_fname VALUE 'LIFNR',

c_name1 TYPE lvc_fname VALUE 'NAME1',

c_loekz TYPE lvc_fname VALUE 'LOEKZ',

c_mapl TYPE lvc_fname VALUE 'MAPL',

c_plko TYPE lvc_fname VALUE 'PLKO',

c_marc TYPE lvc_fname VALUE 'MARC',

c_makt TYPE lvc_fname VALUE 'MAKT',

c_lfa1 TYPE lvc_fname VALUE 'LFA1',

c_materialid TYPE lvc_fname VALUE 'MATERIALID',

c_matnr_int TYPE lvc_fname VALUE 'MATNR_INT',

c_top_of_page TYPE slis_alv_event-form VALUE 'TOP_OF_PAGE'.

----


  • Selection Screen Design *

----


SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

SELECT-OPTIONS : s_werks FOR w_werks OBLIGATORY,

s_plnty FOR w_plnty DEFAULT 'Q',

s_plnnr FOR t_source-plnnr ,

s_plnal FOR t_source-plnal,

s_lifnr FOR w_lifnr ,

s_matnr FOR w_matnr.

PARAMETERS : p_loekz .

SELECT-OPTIONS : s_meins FOR w_meins.

SELECTION-SCREEN END OF BLOCK b1.

----


  • F4 help for selection screen fields

*

----


AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_loekz.

PERFORM f4_loekz.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_matnr-low.

PERFORM f4_matnr-low.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_matnr-high.

PERFORM f4_matnr-high.

----


  • Validation for selection screen fields *

----


AT SELECTION-SCREEN ON s_werks.

PERFORM plant_validation.

AT SELECTION-SCREEN ON s_plnty.

PERFORM task_list_type_validation.

AT SELECTION-SCREEN ON s_lifnr.

PERFORM vendor_validation.

AT SELECTION-SCREEN ON s_matnr.

PERFORM material_validation.

AT SELECTION-SCREEN ON s_meins.

PERFORM unit_validation.

AT SELECTION-SCREEN ON p_loekz.

PERFORM del_indicator_validation.

----


  • Authorizations for the selection screen fields *

----


PERFORM auth_check_for_plant.

----


  • START-OF-SELECTION *

----


START-OF-SELECTION.

PERFORM get_data.

----


  • END-OF-SELECTION *

----


END-OF-SELECTION.

PERFORM display_report.

PERFORM clear_free.

&----


*& Form F4_LOEKZ

&----


  • Routine for F4 help for loekz

----


FORM f4_loekz .

CALL FUNCTION 'F4_FIELD_ON_VALUE_REQUEST'

EXPORTING

tabname = c_mapl

fieldname = c_loekz

TABLES

return_tab = t_return_tab.

p_loekz = t_return_tab-fieldval.

FREE t_return_tab.

ENDFORM. " F4_LOEKZ

&----


*& Form F4_MATNR-LOW

&----


  • Routine for F4 help for matnr-low

----


FORM f4_matnr-low .

CALL FUNCTION 'F4_FIELD_ON_VALUE_REQUEST'

EXPORTING

tabname = c_materialid

fieldname = c_matnr_int

TABLES

return_tab = t_return_tab.

s_matnr-low = t_return_tab-fieldval.

FREE t_return_tab.

ENDFORM. " F4_MATNR-LOW

&----


*& Form F4_MATNR-HIGH

&----


  • Routine for F4 help for matnr-high

----


FORM f4_matnr-high .

CALL FUNCTION 'F4_FIELD_ON_VALUE_REQUEST'

EXPORTING

tabname = c_materialid

fieldname = c_matnr_int

TABLES

return_tab = t_return_tab.

s_matnr-high = t_return_tab-fieldval.

FREE t_return_tab.

ENDFORM. " F4_MATNR-HIGH

&----


*& Form plant_validation

&----


  • Routine to validate plant

----


FORM plant_validation .

IF s_werks[] IS NOT INITIAL.

CLEAR w_werks.

SELECT SINGLE werks

FROM t001w

INTO w_werks

WHERE werks IN s_werks.

IF sy-subrc NE 0.

MESSAGE e209 WITH text-016.

ENDIF.

ENDIF.

ENDFORM. " plant_validation

&----


*& Form task_list_type_validation

&----


  • Routine to validate task_list_type

----


FORM task_list_type_validation .

IF s_plnty[] IS NOT INITIAL.

CLEAR w_plnty.

SELECT SINGLE plnty

FROM tca01

INTO w_plnty

WHERE plnty IN s_plnty.

IF sy-subrc NE 0.

MESSAGE e209 WITH text-017.

ENDIF.

ENDIF.

ENDFORM. " TASK_LIST_TYPE_VALIDATION

&----


*& Form vendor_validation

&----


  • Routine to validate Vendor

----


FORM vendor_validation .

IF s_lifnr[] IS NOT INITIAL.

CLEAR w_lifnr.

SELECT SINGLE lifnr

FROM lfa1

INTO w_lifnr

WHERE lifnr IN s_lifnr.

IF sy-subrc NE 0.

MESSAGE e209 WITH text-018.

ENDIF.

ENDIF.

ENDFORM. " VENDOR_VALIDATION

&----


*& Form material_validation

&----


  • Routine to validate material

----


FORM material_validation .

IF s_matnr[] IS NOT INITIAL.

CLEAR w_matnr.

SELECT SINGLE matnr_ext

FROM materialid

INTO w_matnr

WHERE matnr_ext IN s_matnr.

IF sy-subrc NE 0.

MESSAGE e209 WITH text-019.

ENDIF.

ENDIF.

ENDFORM. " MATERIAL_VALIDATION

&----


*& Form unit_validation

&----


  • Routine to validate unit

----


FORM unit_validation .

IF s_meins[] IS NOT INITIAL.

CLEAR w_meins.

SELECT SINGLE msehi

FROM t006

INTO w_meins

WHERE msehi IN s_meins.

IF sy-subrc NE 0.

MESSAGE e209 WITH text-020.

ENDIF.

ENDIF.

ENDFORM. " UNIT_validation

&----


*& Form del_indicator_validation

&----


  • Routine to validate deletion indicator

----


FORM del_indicator_validation .

IF p_loekz IS NOT INITIAL.

IF p_loekz NE c_x .

MESSAGE e209 WITH text-021.

ENDIF.

ENDIF.

ENDFORM. " DEL_INDICATOR_validation

&----


*& Form auth_check_for_plant

&----


  • Authorization check for plants

----


FORM auth_check_for_plant .

REFRESH t_auth_werks.

CALL FUNCTION 'Y_CAF_AUTH_WERKS_M_MATE_WRK'

EXPORTING

actvt = c_display

TABLES

i_werks = s_werks

o_werks = t_auth_werks

EXCEPTIONS

no_authority = 1

OTHERS = 2.

IF sy-subrc <> 0.

MESSAGE e002 DISPLAY LIKE c_e .

ENDIF.

ENDFORM. " auth_check_for_plant

&----


*& Form get_data

&----


  • Routine to fetch data

----


FORM get_data .

SELECT maplwerks maplmatnr mapllifnr maplloekz marc~kordb

maktmaktx lfa1name1

plkoplnnr plkoplnal plko~ktext

INTO corresponding fields of TABLE t_source

FROM ( mapl

INNER JOIN marc

ON marcmatnr = maplmatnr

AND marcwerks = maplwerks

INNER JOIN materialid

ON materialidmatnr_int = maplmatnr

AND materialidmatnr_int = marcmatnr

INNER JOIN mara

ON maramatnr = marcmatnr

AND maramatnr = materialidmatnr_int

INNER JOIN makt

ON maktmatnr = maramatnr

AND maktmatnr = materialidmatnr_int

INNER JOIN lfa1

ON lfa1lifnr = mapllifnr

INNER JOIN plko

ON plkoplnal = maplplnal

AND plkoplnnr = maplplnnr

AND plkoplnty = maplplnty )

WHERE mapl~werks IN t_auth_werks

AND mapl~lifnr IN s_lifnr

AND mapl~loekz EQ p_loekz

AND materialid~matnr_ext IN s_matnr

AND mara~meins IN s_meins

AND plko~plnty IN s_plnty

AND plko~plnnr IN s_plnnr

AND plko~plnal IN s_plnal .

IF sy-subrc NE 0.

MESSAGE s000 DISPLAY LIKE c_e.

LEAVE LIST-PROCESSING.

ENDIF.

ENDFORM. " get_data

&----


*& Form display_report

&----


  • Routine to display report

----


FORM display_report .

CLEAR wa_layout.

*C-- Modify the Layout

wa_layout-colwidth_optimize = c_x.

wa_layout-zebra = c_x.

*C-- Build Field Calatog

PERFORM fieldcat_build USING :

c_werks c_mapl c_1,

c_plnnr c_plko c_2,

c_plnal c_plko c_3,

c_ktext c_plko c_4,

c_kordb c_marc c_5,

c_matnr c_mapl c_6,

c_maktx c_makt c_7,

c_lifnr c_mapl c_8,

c_name1 c_lfa1 c_9,

c_loekz c_mapl c_10.

PERFORM build_sorttab.

PERFORM build_eventstab.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = sy-repid

it_fieldcat = t_fieldcat[]

it_events = t_events

it_sort = t_sort

is_layout = wa_layout

TABLES

t_outtab = t_source

EXCEPTIONS

program_error = 1

OTHERS = 2.

IF sy-subrc NE 0.

REFRESH t_source.

ENDIF.

ENDFORM. " display_report

&----


*& Form fieldcat_build

&----


  • Routine to build field catalogue

----


FORM fieldcat_build USING fp_a TYPE c

fp_b TYPE c

fp_c TYPE c.

CLEAR wa_field.

wa_field-fieldname = fp_a.

wa_field-tabname = fp_b.

wa_field-ref_fieldname = fp_a.

wa_field-ref_tabname = fp_b.

wa_field-col_pos = fp_c.

APPEND wa_field TO t_fieldcat.

ENDFORM. " fieldcat_build

&----


*& Form build_sorttab

&----


  • Routine to build sort table

----


FORM build_sorttab .

REFRESH t_sort.

CLEAR wa_sort.

wa_sort-fieldname = c_werks.

wa_sort-tabname = c_mapl.

wa_sort-up = c_x.

APPEND wa_sort TO t_sort.

CLEAR wa_sort.

wa_sort-fieldname = c_plnal.

wa_sort-tabname = c_mapl.

wa_sort-up = c_x.

APPEND wa_sort TO t_sort.

CLEAR wa_sort.

wa_sort-fieldname = c_matnr.

wa_sort-tabname = c_mapl.

wa_sort-up = c_x.

APPEND wa_sort TO t_sort.

CLEAR wa_sort.

ENDFORM. " build_sorttab

&----


*& Form build_eventstab

&----


  • Routine to build events table

----


FORM build_eventstab .

DATA: wa_events TYPE slis_alv_event.

REFRESH t_events.

CLEAR wa_events.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

i_list_type = 0

IMPORTING

et_events = t_events.

LOOP AT t_events INTO wa_events WHERE name EQ c_top_of_page.

MOVE c_top_of_page TO wa_events-form.

MODIFY t_events FROM wa_events TRANSPORTING form

WHERE name = c_top_of_page.

ENDLOOP.

ENDFORM. " build_eventstab

&----


*& Form TOP_OF_PAGE

&----


  • This routine is to write the header

----


FORM top_of_page.

CLEAR wa_header.

REFRESH t_header.

wa_header-typ = c_h.

wa_header-key = space.

wa_header-info = text-015.

APPEND wa_header TO t_header.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = t_header.

ENDFORM. "TOP_OF_PAGE

&----


*& Form CLEAR_FREE

&----


  • This routine is to clear the variables and free the internal tables

----


FORM clear_free .

FREE: t_source,

t_auth_werks,

t_events,

t_sort,

t_header,

t_fieldcat.

CLEAR: w_werks ,

w_plnty ,

w_lifnr ,

w_meins,

w_matnr.

CLEAR: wa_layout,

wa_field,

wa_header,

wa_sort.

ENDFORM. " CLEAR_FREE

Read only

0 Likes
1,278

Ginger, I want to let u know few things regarding Fieldcatalog. When you are building fieldcatalog, you have used like this .


"Here I believe that we should give fieldname is final internal table field name and tabname is Final internal table name 
  wa_field-fieldname     = fp_a.   "t_source field
  wa_field-tabname       = fp_b.  "t_source
"Reference field and reference tables have been given to get 
"text from dictionary. It is fine.
  wa_field-ref_fieldname = fp_a. 
  wa_field-ref_tabname   = fp_b.

  wa_field-col_pos       = fp_c.
When building sort table also, check the below what u coded.
wa_sort-fieldname = c_werks."t_source field 
  wa_sort-tabname   = c_mapl."Should be t_source. Not reference table.
  wa_sort-up        = c_x.
"I believe that u r just sorting not calculating subtotals
  APPEND wa_sort TO t_sort.
  CLEAR wa_sort.
Please try to change those and check . It helps i believe. Regards, Venkat.O

Read only

Former Member
0 Likes
1,278

Hi,

First Generate the field Catalog for all the 10 columns like

gwa_fieldcat-fieldname = lc_aufnr.

gwa_fieldcat-seltext_l = text-013."lc_aufnr_head.

gwa_fieldcat-tabname = lc_table.

gwa_fieldcat-emphasize = lc_color.

APPEND gwa_fieldcat TO gi_fieldcat.

CLEAR gwa_fieldcat.

.......................

Then pass the internal Table gi_fieldcat

in Fm REUSE_ALV_GRID_DISPLAY

as


it_fieldcat              = gi_fieldcat

Regards

Sandipan