Application Development 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: 

need modifications in my alv

Former Member
0 Kudos

*& Report ZMM_STOCKDIFFERENCE

REPORT ZMM_STOCKDIFFERENCE.

Tables: marc,

mard. "Sales Document: Header Data

data : it_marc LIKE marc OCCURS 0 WITH HEADER LINE,

it_mard like mard OCCURS 0 WITH HEADER LINE.

type-pools: slis.

data:t_listheader type slis_t_listheader,

it_events type slis_t_event,

is_layout type slis_layout_alv,

is_layout1 type slis_layout_alv..

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 ,

i_repid like sy-repid.

i_repid = sy-repid.

Data: begin of itab occurs 0,

matnr like marc-matnr,

labst like mard-labst,

EISBE like marc-eisbe,

eislo like marc-eislo,

a type i,

b type i,

end of itab.

data : matr like marc-matnr.

data : index(2).

****************************************************************************************************New Selection Screen

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

PARAMETERS : s_matnr type c RADIOBUTTON GROUP gp1 USER-COMMAND com DEFAULT 'X',

r_matnr TYPE c RADIOBUTTON GROUP gp1.

SELECT-OPTIONS : matr1 for marc-matnr MODIF ID g1 no INTERVALS no-EXTENSION..

SELECT-OPTIONS : matr2 FOR marc-matnr MODIF ID g2 .

SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN OUTPUT.

IF s_matnr EQ 'X'.

LOOP AT SCREEN.

IF screen-group1 EQ 'G2'.

screen-active = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ELSEIF r_matnr EQ 'X'.

LOOP AT SCREEN.

IF screen-group1 EQ 'G1'.

screen-active = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

***********************************************************************************************************************

START-OF-SELECTION.

PERFORM clear.

PERFORM SELECT_DATA.

PERFORM display.

*& Form SELECT_DATA

----


FORM SELECT_DATA .

if s_matnr = 'X'.

SHIFT matr1 by 3 PLACES.

matr = matr1.

endif.

if r_matnr = 'X'.

SHIFT matr2 by 3 PLACES.

matr = matr2.

ENDIF.

if s_matnr = 'X'.

select * from marc into table it_marc where matnr = matr.

ELSEIF r_matnr = 'X'.

SELECT * from marc into table it_marc where matnr in matr2.

endif.

LOOP AT it_marc.

MOVE-CORRESPONDING it_marc to itab.

APPEND itab.

ENDLOOP.

Loop at itab.

select single labst

from mard

into itab-labst

where matnr = itab-matnr.

MODIFY itab.

Endloop.

LOOP AT itab.

itab-a = itab-labst - itab-eisbe.

itab-b = itab-labst - itab-eislo.

MODIFY itab.

ENDLOOP.

ENDFORM. " SELECT_DATA

FORM DISPLAY .

perform fill_layout.

perform list_header using t_listheader.

fieldcatalog-fieldname = 'MATNR'.

fieldcatalog-seltext_m = 'Material Number'.

fieldcatalog-outputlen = 15.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'LABST'.

fieldcatalog-seltext_m = 'Actual Stock'.

fieldcatalog-outputlen = 25.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'A'.

fieldcatalog-seltext_m = 'Difference to Safety Stock'.

fieldcatalog-outputlen = 38.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

fieldcatalog-fieldname = 'B'.

fieldcatalog-seltext_m = 'Difference to Minimum Safety Stock'.

fieldcatalog-outputlen = 38.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

perform fill_events.

******************************************************************************CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

call function 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = sy-repid

i_callback_top_of_page = 'TOP_OF_PAGE'

is_layout = is_layout

it_fieldcat = fieldcatalog[]

i_default = 'X'

i_save = 'A'

it_events = it_events

TABLES

t_outtab = itab

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

form clear .

clear itab.

clear itab[].

*

endform. " CLEAR

form list_header using p_t_listheader type slis_t_listheader.

data : if_date TYPE string ,

ef_date TYPE string,

if_date1 type string,

ef_date1 type string.

IF s_matnr = 'X'.

if_date = matr.

ELSEIF r_matnr = 'X'.

shift matr2 by 3 PLACES.

if_date = matr2+0(18).

if_date1 = matr2+18(18).

shift if_date by 9 PLACES.

SHIFT if_date1 by 9 PLACES.

CONCATENATE if_date ' to ' if_date1 INTO if_date.

endif.

data : wa_listheader type slis_listheader.

clear wa_listheader.

wa_listheader-typ = 'H'.

wa_listheader-info = 'Stock Position'.

append wa_listheader to t_listheader.

clear wa_listheader.

wa_listheader-typ = 'S'.

wa_listheader-key = 'Material Code'.

wa_listheader-info = if_date .

append wa_listheader to t_listheader.

endform. " LIST_HEADER

form fill_events .

data : wa_event type slis_alv_event.

wa_event-name = 'TOP_OF_PAGE'.

wa_event-form = 'TOP_OF_PAGE'.

append wa_event to it_events.

clear wa_event.

endform. " FILL_EVENTS

form top_of_page.

call function 'REUSE_ALV_COMMENTARY_WRITE'

exporting

it_list_commentary = t_listheader

.

endform. "TOP_OF_PAGE

form fill_layout .

is_layout-zebra = 'X'.

endform. "fill_layout

Modifications required are:

1.In Header - material number is coming with 3 extra suffix zeroes. i dont want this.

2.In the first column material numbers are coming with 9 prefix zeroes. i dont want this too.

3.last column negative numbers' minus sign is coming after the number. it should come before the number

4.header column is not coming completely. for example: last column i gave is difference to minimum safety stock. but it is showing only difference to minimu

pls help me...i am a fresher...thanks in advance

1 ACCEPTED SOLUTION

Former Member
0 Kudos

REPORT ZMM_STOCKDIFFERENCE.

TABLES: MARC,

MARD. "Sales Document: Header Data

DATA : IT_MARC LIKE MARC OCCURS 0 WITH HEADER LINE,

IT_MARD LIKE MARD OCCURS 0 WITH HEADER LINE.

TYPE-POOLS: SLIS.

DATA:T_LISTHEADER TYPE SLIS_T_LISTHEADER,

IT_EVENTS TYPE SLIS_T_EVENT,

IS_LAYOUT TYPE SLIS_LAYOUT_ALV,

IS_LAYOUT1 TYPE SLIS_LAYOUT_ALV..

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 ,

I_REPID LIKE SY-REPID.

I_REPID = SY-REPID.

DATA: BEGIN OF ITAB OCCURS 0,

MATNR LIKE MARC-MATNR,

LABST LIKE MARD-LABST,

EISBE LIKE MARC-EISBE,

EISLO LIKE MARC-EISLO,

A TYPE I,

B TYPE I,

END OF ITAB.

DATA : MATR LIKE MARC-MATNR.

DATA : INDEX(2).

****************************************************************************************************New Selection Screen

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS : S_MATNR TYPE C RADIOBUTTON GROUP GP1 USER-COMMAND COM DEFAULT 'X',

R_MATNR TYPE C RADIOBUTTON GROUP GP1.

SELECT-OPTIONS : MATR1 FOR MARC-MATNR MODIF ID G1 NO INTERVALS NO-EXTENSION..

SELECT-OPTIONS : MATR2 FOR MARC-MATNR MODIF ID G2 .

SELECTION-SCREEN END OF BLOCK B1.

AT SELECTION-SCREEN OUTPUT.

IF S_MATNR EQ 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 EQ 'G2'.

SCREEN-ACTIVE = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ELSEIF R_MATNR EQ 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 EQ 'G1'.

SCREEN-ACTIVE = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

***********************************************************************************************************************

START-OF-SELECTION.

PERFORM CLEAR.

PERFORM SELECT_DATA.

PERFORM DISPLAY.

*& Form SELECT_DATA

  • ----------------------------------------------------------------------

FORM SELECT_DATA .

IF S_MATNR = 'X'.

SHIFT MATR1 BY 3 PLACES.

MATR = MATR1.

ENDIF.

IF R_MATNR = 'X'.

SHIFT MATR2 BY 3 PLACES.

MATR = MATR2.

ENDIF.

IF S_MATNR = 'X'.

SELECT * FROM MARC INTO TABLE IT_MARC WHERE MATNR = MATR.

ELSEIF R_MATNR = 'X'.

SELECT * FROM MARC INTO TABLE IT_MARC WHERE MATNR IN MATR2.

ENDIF.

LOOP AT IT_MARC.

MOVE-CORRESPONDING IT_MARC TO ITAB.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

EXPORTING

INPUT = ITAB-MATNR

IMPORTING

OUTPUT = ITAB-MATNR.

APPEND ITAB.

ENDLOOP.

LOOP AT ITAB.

SELECT SINGLE LABST

FROM MARD

INTO ITAB-LABST

WHERE MATNR = ITAB-MATNR.

MODIFY ITAB.

ENDLOOP.

LOOP AT ITAB.

ITAB-A = ITAB-LABST - ITAB-EISBE.

ITAB-B = ITAB-LABST - ITAB-EISLO.

MODIFY ITAB.

ENDLOOP.

ENDFORM. " SELECT_DATA

&----


*& Form DISPLAY

&----


  • text

----


FORM DISPLAY .

PERFORM FILL_LAYOUT.

PERFORM LIST_HEADER USING T_LISTHEADER.

FIELDCATALOG-FIELDNAME = 'MATNR'.

FIELDCATALOG-SELTEXT_M = 'Material Number'.

FIELDCATALOG-OUTPUTLEN = 15.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'LABST'.

FIELDCATALOG-SELTEXT_M = 'Actual Stock'.

FIELDCATALOG-OUTPUTLEN = 25.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'A'.

FIELDCATALOG-SELTEXT_M = 'Difference to Safety Stock'.

FIELDCATALOG-OUTPUTLEN = 38.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'B'.

FIELDCATALOG-SELTEXT_L = 'Difference to Minimum Safety Stock'.

FIELDCATALOG-OUTPUTLEN = 38.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

PERFORM FILL_EVENTS.

******************************************************************************CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = SY-REPID

I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'

IS_LAYOUT = IS_LAYOUT

IT_FIELDCAT = FIELDCATALOG[]

I_DEFAULT = 'X'

I_SAVE = 'A'

IT_EVENTS = IT_EVENTS

TABLES

T_OUTTAB = ITAB

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

&----


*& Form clear

&----


  • text

----


FORM CLEAR .

CLEAR ITAB.

CLEAR ITAB[].

*

ENDFORM. " CLEAR

&----


*& Form list_header

&----


  • text

----


  • -->P_T_LISTHEADER text

----


FORM LIST_HEADER USING P_T_LISTHEADER TYPE SLIS_T_LISTHEADER.

DATA : IF_DATE TYPE STRING ,

EF_DATE TYPE STRING,

IF_DATE1 TYPE STRING,

EF_DATE1 TYPE STRING.

IF S_MATNR = 'X'.

IF_DATE = MATR.

ELSEIF R_MATNR = 'X'.

SHIFT MATR2 BY 3 PLACES.

IF_DATE = MATR2+0(18).

IF_DATE1 = MATR2+18(18).

SHIFT IF_DATE BY 9 PLACES.

SHIFT IF_DATE1 BY 9 PLACES.

CONCATENATE IF_DATE ' to ' IF_DATE1 INTO IF_DATE.

ENDIF.

DATA : WA_LISTHEADER TYPE SLIS_LISTHEADER.

CLEAR WA_LISTHEADER.

WA_LISTHEADER-TYP = 'H'.

WA_LISTHEADER-INFO = 'Stock Position'.

APPEND WA_LISTHEADER TO T_LISTHEADER.

CLEAR WA_LISTHEADER.

WA_LISTHEADER-TYP = 'S'.

WA_LISTHEADER-KEY = 'Material Code'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

EXPORTING

INPUT = IF_DATE

IMPORTING

OUTPUT = IF_DATE.

WA_LISTHEADER-INFO = IF_DATE .

APPEND WA_LISTHEADER TO T_LISTHEADER.

ENDFORM. " LIST_HEADER

&----


*& Form fill_events

&----


  • text

----


FORM FILL_EVENTS .

DATA : WA_EVENT TYPE SLIS_ALV_EVENT.

WA_EVENT-NAME = 'TOP_OF_PAGE'.

WA_EVENT-FORM = 'TOP_OF_PAGE'.

APPEND WA_EVENT TO IT_EVENTS.

CLEAR WA_EVENT.

ENDFORM. " FILL_EVENTS

&----


*& Form top_of_page

&----


  • text

----


FORM TOP_OF_PAGE.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

IT_LIST_COMMENTARY = T_LISTHEADER.

ENDFORM. "TOP_OF_PAGE

&----


*& Form fill_layout

&----


  • text

----


FORM FILL_LAYOUT .

IS_LAYOUT-ZEBRA = 'X'.

ENDFORM. "fill_layout

7 REPLIES 7

GauthamV
Active Contributor
0 Kudos

hi,

WELCOME TO SCN.

for first two points use these function modules

CONVERSION_EXIT_ALPHA_INPUT

CONVERSION_EXIT_ALPHA_OUTPUT.

for your third point use this function module.

CLOI_PUT_SIGN_IN_FRONT

for your last point define text with seltext_L instead of seltext_M.

Edited by: Gautham chakraverthi on Oct 14, 2008 3:41 PM

former_member598013
Active Contributor
0 Kudos

Hi Kamal,

Welcome to SDN !!!

1. for your first requirememnt what you need to do is before calling the FM " REUSE_ALV_GRID_DISPLAY' . Loop at the final table and inside the Loop call the FM "CONVERSION_EXIT_ALPHA_INPUT".

3. For you 3rd requirement There is one property in fieldcatalog from where you can bring hte negative sign in the from ( I think it SIGN).

Thanks,

Chidanand

former_member181995
Active Contributor
0 Kudos

Welcome in SCN.

and last two answer is:

3.last column negative numbers' minus sign is coming after the number. it should come before the number

Use FM CLOI_PUT_SIGN_IN_FRONT

4.header column is not coming completely. for example: last column i gave is difference to minimum safety stock. but it is showing only difference to minimu

fieldcatalog-fieldname = 'B'.

fieldcatalog-seltext_L = 'Difference to Minimum Safety Stock'.

fieldcatalog-outputlen = 38.

append fieldcatalog to fieldcatalog.

clear fieldcatalog.

Former Member
0 Kudos

REPORT ZMM_STOCKDIFFERENCE.

TABLES: MARC,

MARD. "Sales Document: Header Data

DATA : IT_MARC LIKE MARC OCCURS 0 WITH HEADER LINE,

IT_MARD LIKE MARD OCCURS 0 WITH HEADER LINE.

TYPE-POOLS: SLIS.

DATA:T_LISTHEADER TYPE SLIS_T_LISTHEADER,

IT_EVENTS TYPE SLIS_T_EVENT,

IS_LAYOUT TYPE SLIS_LAYOUT_ALV,

IS_LAYOUT1 TYPE SLIS_LAYOUT_ALV..

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 ,

I_REPID LIKE SY-REPID.

I_REPID = SY-REPID.

DATA: BEGIN OF ITAB OCCURS 0,

MATNR LIKE MARC-MATNR,

LABST LIKE MARD-LABST,

EISBE LIKE MARC-EISBE,

EISLO LIKE MARC-EISLO,

A TYPE I,

B TYPE I,

END OF ITAB.

DATA : MATR LIKE MARC-MATNR.

DATA : INDEX(2).

****************************************************************************************************New Selection Screen

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS : S_MATNR TYPE C RADIOBUTTON GROUP GP1 USER-COMMAND COM DEFAULT 'X',

R_MATNR TYPE C RADIOBUTTON GROUP GP1.

SELECT-OPTIONS : MATR1 FOR MARC-MATNR MODIF ID G1 NO INTERVALS NO-EXTENSION..

SELECT-OPTIONS : MATR2 FOR MARC-MATNR MODIF ID G2 .

SELECTION-SCREEN END OF BLOCK B1.

AT SELECTION-SCREEN OUTPUT.

IF S_MATNR EQ 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 EQ 'G2'.

SCREEN-ACTIVE = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ELSEIF R_MATNR EQ 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 EQ 'G1'.

SCREEN-ACTIVE = 0.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

***********************************************************************************************************************

START-OF-SELECTION.

PERFORM CLEAR.

PERFORM SELECT_DATA.

PERFORM DISPLAY.

*& Form SELECT_DATA

  • ----------------------------------------------------------------------

FORM SELECT_DATA .

IF S_MATNR = 'X'.

SHIFT MATR1 BY 3 PLACES.

MATR = MATR1.

ENDIF.

IF R_MATNR = 'X'.

SHIFT MATR2 BY 3 PLACES.

MATR = MATR2.

ENDIF.

IF S_MATNR = 'X'.

SELECT * FROM MARC INTO TABLE IT_MARC WHERE MATNR = MATR.

ELSEIF R_MATNR = 'X'.

SELECT * FROM MARC INTO TABLE IT_MARC WHERE MATNR IN MATR2.

ENDIF.

LOOP AT IT_MARC.

MOVE-CORRESPONDING IT_MARC TO ITAB.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

EXPORTING

INPUT = ITAB-MATNR

IMPORTING

OUTPUT = ITAB-MATNR.

APPEND ITAB.

ENDLOOP.

LOOP AT ITAB.

SELECT SINGLE LABST

FROM MARD

INTO ITAB-LABST

WHERE MATNR = ITAB-MATNR.

MODIFY ITAB.

ENDLOOP.

LOOP AT ITAB.

ITAB-A = ITAB-LABST - ITAB-EISBE.

ITAB-B = ITAB-LABST - ITAB-EISLO.

MODIFY ITAB.

ENDLOOP.

ENDFORM. " SELECT_DATA

&----


*& Form DISPLAY

&----


  • text

----


FORM DISPLAY .

PERFORM FILL_LAYOUT.

PERFORM LIST_HEADER USING T_LISTHEADER.

FIELDCATALOG-FIELDNAME = 'MATNR'.

FIELDCATALOG-SELTEXT_M = 'Material Number'.

FIELDCATALOG-OUTPUTLEN = 15.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'LABST'.

FIELDCATALOG-SELTEXT_M = 'Actual Stock'.

FIELDCATALOG-OUTPUTLEN = 25.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'A'.

FIELDCATALOG-SELTEXT_M = 'Difference to Safety Stock'.

FIELDCATALOG-OUTPUTLEN = 38.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

FIELDCATALOG-FIELDNAME = 'B'.

FIELDCATALOG-SELTEXT_L = 'Difference to Minimum Safety Stock'.

FIELDCATALOG-OUTPUTLEN = 38.

APPEND FIELDCATALOG TO FIELDCATALOG.

CLEAR FIELDCATALOG.

PERFORM FILL_EVENTS.

******************************************************************************CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = SY-REPID

I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'

IS_LAYOUT = IS_LAYOUT

IT_FIELDCAT = FIELDCATALOG[]

I_DEFAULT = 'X'

I_SAVE = 'A'

IT_EVENTS = IT_EVENTS

TABLES

T_OUTTAB = ITAB

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

&----


*& Form clear

&----


  • text

----


FORM CLEAR .

CLEAR ITAB.

CLEAR ITAB[].

*

ENDFORM. " CLEAR

&----


*& Form list_header

&----


  • text

----


  • -->P_T_LISTHEADER text

----


FORM LIST_HEADER USING P_T_LISTHEADER TYPE SLIS_T_LISTHEADER.

DATA : IF_DATE TYPE STRING ,

EF_DATE TYPE STRING,

IF_DATE1 TYPE STRING,

EF_DATE1 TYPE STRING.

IF S_MATNR = 'X'.

IF_DATE = MATR.

ELSEIF R_MATNR = 'X'.

SHIFT MATR2 BY 3 PLACES.

IF_DATE = MATR2+0(18).

IF_DATE1 = MATR2+18(18).

SHIFT IF_DATE BY 9 PLACES.

SHIFT IF_DATE1 BY 9 PLACES.

CONCATENATE IF_DATE ' to ' IF_DATE1 INTO IF_DATE.

ENDIF.

DATA : WA_LISTHEADER TYPE SLIS_LISTHEADER.

CLEAR WA_LISTHEADER.

WA_LISTHEADER-TYP = 'H'.

WA_LISTHEADER-INFO = 'Stock Position'.

APPEND WA_LISTHEADER TO T_LISTHEADER.

CLEAR WA_LISTHEADER.

WA_LISTHEADER-TYP = 'S'.

WA_LISTHEADER-KEY = 'Material Code'.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

EXPORTING

INPUT = IF_DATE

IMPORTING

OUTPUT = IF_DATE.

WA_LISTHEADER-INFO = IF_DATE .

APPEND WA_LISTHEADER TO T_LISTHEADER.

ENDFORM. " LIST_HEADER

&----


*& Form fill_events

&----


  • text

----


FORM FILL_EVENTS .

DATA : WA_EVENT TYPE SLIS_ALV_EVENT.

WA_EVENT-NAME = 'TOP_OF_PAGE'.

WA_EVENT-FORM = 'TOP_OF_PAGE'.

APPEND WA_EVENT TO IT_EVENTS.

CLEAR WA_EVENT.

ENDFORM. " FILL_EVENTS

&----


*& Form top_of_page

&----


  • text

----


FORM TOP_OF_PAGE.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

IT_LIST_COMMENTARY = T_LISTHEADER.

ENDFORM. "TOP_OF_PAGE

&----


*& Form fill_layout

&----


  • text

----


FORM FILL_LAYOUT .

IS_LAYOUT-ZEBRA = 'X'.

ENDFORM. "fill_layout

0 Kudos

Naresh,

Please in future surround the code within for nice visibility.

Former Member
0 Kudos

Hi friends,

thanx for helping me to solve last 3 issues...

my first required modification is not done, friends...

looking for ur help...

Rajkamal

Former Member
0 Kudos

I got help...