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

Problem in ALV BLOCK Display

Former Member
0 Likes
1,606

HI,

PLZ help me .

By using this code I select data from TXT file and insert data in CS13 transaction then I want to show each material which present in TXT file as ALV BLOCK DISPLAY.

Suppose txt file contain four material so report will show 4 list block .means data of every material showing in different blocks in the report.

Code which I am using showing data for last item from txt file in one block and other items showing when I click back button .

i am using below codes..........

&----


*& Report ZCS13 *

*& *

&----


*& *

*& *

&----


REPORT zcs13 .

TABLES:

mara,

stpo,

t001w,

stko.

TYPE-POOLS: slis.

DATA: BEGIN OF it_stb OCCURS 0.

INCLUDE STRUCTURE zstpox.

DATA:END OF it_stb.

DATA: BEGIN OF it_matmaster OCCURS 0,

matnr TYPE matnr,

werks TYPE werks,

  • stlal type stlal,

  • capid type capid,

emeng TYPE emeng,

END OF it_matmaster.

DATA : ievent TYPE slis_t_event.

DATA: it_stb2 LIKE stpox OCCURS 0 WITH HEADER LINE,

it_stb3 LIKE stpox OCCURS 0 WITH HEADER LINE,

temp_cat TYPE slis_fieldcat_alv,

sline TYPE slis_listheader,

gt_list_top_of_page TYPE slis_t_listheader,

gs_layout TYPE slis_layout_alv ,

gt_events TYPE slis_t_event,

gt_sort TYPE slis_t_sortinfo_alv,

w_msg(255) TYPE c,

int TYPE i VALUE 0.

&----


  • Declaration of parameters

&----


*SELECTION-SCREEN BEGIN OF BLOCK b2.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_matnr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_matnr LIKE mara-matnr OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_werks.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_werks LIKE t001w-werks OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_albom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_albom LIKE stko-stlal DEFAULT ' '.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_bomap.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_bomap(4) DEFAULT 'PP01'.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN END OF BLOCK b2.

*

*DATA :anr_datuv LIKE aenr-datuv.

*SELECTION-SCREEN BEGIN OF BLOCK b3.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s03 .

*SELECTION-SCREEN END OF LINE.

*

*SELECTION-SCREEN END OF BLOCK b3.

*

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

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_vfrom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_vfrom LIKE stpo-datuv DEFAULT sy-datum.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD pm_aennr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS pm_aennr LIKE aenr-aennr.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (17) FOR FIELD p_reqty.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_reqty LIKE stpo-menge DEFAULT '1' .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_assd.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_assd AS CHECKBOX.

*SELECTION-SCREEN END OF LINE.

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

PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b1 .

CONSTANTS c_x VALUE 'X'.

DATA: w_topmat LIKE cstmat,

fieldcat TYPE slis_t_fieldcat_alv,

wa_fieldcat TYPE slis_fieldcat_alv.

DATA:v_file TYPE string.

*SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

program_name = syst-cprog

dynpro_number = syst-dynnr

field_name = 'P_FILE'

IMPORTING

file_name = p_file.

START-OF-SELECTION.

v_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = v_file

filetype = 'ASC'

has_field_separator = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

data_tab = it_matmaster

EXCEPTIONS

file_open_error = 1

file_read_error = 2

no_batch = 3

gui_refuse_filetransfer = 4

invalid_type = 5

no_authority = 6

unknown_error = 7

bad_data_format = 8

header_not_allowed = 9

separator_not_allowed = 10

header_too_long = 11

unknown_dp_error = 12

access_denied = 13

dp_out_of_memory = 14

disk_full = 15

dp_timeout = 16

OTHERS = 17

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

LOOP AT it_matmaster.

PERFORM explode_assembly.

  • PERFORM f01_set_layo CHANGING gs_layout.

  • PERFORM eventtab_build USING ievent.

perform fldcat.

PERFORM display_grid.

ENDLOOP.

  • PERFORM display_grid.

&----


*& Form EXPLODE_ASSEMBLY

&----


  • text

----


FORM explode_assembly.

CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'

EXPORTING

capid = 'BEST'

cuols = c_x

datuv = sy-datum

emeng = it_matmaster-emeng

knfba = c_x

ksbvo = c_x

mehrs = c_x

mbwls = c_x

  • mdmps = c_x

mktls = c_x

  • stlal = it_matmaster-stlal

  • stlan = p_bomap

mtnrv = it_matmaster-matnr

werks = it_matmaster-werks

  • svwvo = 'X'

  • vrsvo = 'X'

IMPORTING

topmat = w_topmat

TABLES

stb = it_stb

EXCEPTIONS

alt_not_found = 1

call_invalid = 2

material_not_found = 3

missing_authorization = 4

no_bom_found = 5

no_plant_data = 6

no_suitable_bom_found = 7

conversion_error = 8

OTHERS = 9.

IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4

  • INTO w_msg.

  • WRITE: / w_msg.

  • EXIT.

ENDIF.

ENDFORM. "explode_assembly

&----


*& Form display_grid

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


form display_grid .

*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  • EXPORTING

  • i_callback_program = 'ZCS13'

    • i_callback_top_of_page = 'TOP_OF_PAGE_GRID'

    • is_layout = gs_layout

  • it_fieldcat = fieldcat

    • IT_SORT = GT_SORT[]

  • i_save = 'A'

    • it_events = gt_events[]

  • TABLES

  • t_outtab = it_stb

    • 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.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

i_callback_program = 'ZALVTOTAL'

  • I_CALLBACK_PF_STATUS_SET = PFSTATUS

i_callback_user_command = 'USER_COMMAND'(001)

  • IT_EXCLUDING =

.

*CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

  • EXPORTING

  • is_layout = gs_layout

  • it_fieldcat = i_fieldcat

  • i_tabname = 'IT_TAB[]'

  • it_events = gt_events

  • it_sort = gt_sort

    • I_TEXT = ' '

  • TABLES

  • t_outtab = it_tab[]

  • EXCEPTIONS

  • program_error = 1

  • maximum_of_appends_reached = 2

  • OTHERS = 3

  • .

*IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

*ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

is_layout = gs_layout

it_fieldcat = fieldcat

i_tabname = 'IT_STB[]'

it_events = gt_events

it_sort = gt_sort

  • I_TEXT = ' '

TABLES

t_outtab = it_stb[]

EXCEPTIONS

program_error = 1

maximum_of_appends_reached = 2

OTHERS = 3

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

i_interface_check = 'x_print_layout'

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

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_grid

&----


*& Form fldcat

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


form fldcat .

*DATA: wa_fieldcat TYPE slis_fieldcat_alv,

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = 'ZCS13'

  • I_INTERNAL_TABNAME = 'IT_STB'

i_structure_name = 'ZSTPOX'

  • I_CLIENT_NEVER_DISPLAY = 'X'

i_inclname = 'ZCS13'

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = fieldcat[]

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

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. " fldcat

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,579

Hi Rakesh,

A very small mistake dude.

This problem is b'cos you have used all three FMs REUSE_ALV_BLOCK_LIST_INIT, REUSE_ALV_BLOCK_LIST_APPEND and REUSE_ALV_BLOCK_LIST_DISPLAY in the loop itself.

Try doing this -

1. Use <b>REUSE_ALV_BLOCK_LIST_INIT before</b> the loop

2. Use <b>REUSE_ALV_BLOCK_LIST_APPEND in</b> the loop

3. Use <b>REUSE_ALV_BLOCK_LIST_DISPLAY after</b> the loop

Regards,

Manish Joshi

    • Don't tell me, you don't know how to award points !!!

HI,

PLZ help me .

By using this code I select data from TXT file and insert data in CS13 transaction then I want to show each material which present in TXT file as ALV BLOCK DISPLAY.

Suppose txt file contain four material so report will show 4 list block .means data of every material showing in different blocks in the report.

Code which I am using showing data for last item from txt file in one block and other items showing when I click back button .

i am using below codes..........

&----


*& Report ZCS13 *

*& *

&----


*& *

*& *

&----


REPORT zcs13 .

TABLES:

mara,

stpo,

t001w,

stko.

TYPE-POOLS: slis.

DATA: BEGIN OF it_stb OCCURS 0.

INCLUDE STRUCTURE zstpox.

DATA:END OF it_stb.

DATA: BEGIN OF it_matmaster OCCURS 0,

matnr TYPE matnr,

werks TYPE werks,

  • stlal type stlal,

  • capid type capid,

emeng TYPE emeng,

END OF it_matmaster.

DATA : ievent TYPE slis_t_event.

DATA: it_stb2 LIKE stpox OCCURS 0 WITH HEADER LINE,

it_stb3 LIKE stpox OCCURS 0 WITH HEADER LINE,

temp_cat TYPE slis_fieldcat_alv,

sline TYPE slis_listheader,

gt_list_top_of_page TYPE slis_t_listheader,

gs_layout TYPE slis_layout_alv ,

gt_events TYPE slis_t_event,

gt_sort TYPE slis_t_sortinfo_alv,

w_msg(255) TYPE c,

int TYPE i VALUE 0.

&----


  • Declaration of parameters

&----


*SELECTION-SCREEN BEGIN OF BLOCK b2.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_matnr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_matnr LIKE mara-matnr OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_werks.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_werks LIKE t001w-werks OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_albom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_albom LIKE stko-stlal DEFAULT ' '.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_bomap.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_bomap(4) DEFAULT 'PP01'.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN END OF BLOCK b2.

*

*DATA :anr_datuv LIKE aenr-datuv.

*SELECTION-SCREEN BEGIN OF BLOCK b3.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s03 .

*SELECTION-SCREEN END OF LINE.

*

*SELECTION-SCREEN END OF BLOCK b3.

*

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

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_vfrom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_vfrom LIKE stpo-datuv DEFAULT sy-datum.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD pm_aennr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS pm_aennr LIKE aenr-aennr.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (17) FOR FIELD p_reqty.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_reqty LIKE stpo-menge DEFAULT '1' .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_assd.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_assd AS CHECKBOX.

*SELECTION-SCREEN END OF LINE.

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

PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b1 .

CONSTANTS c_x VALUE 'X'.

DATA: w_topmat LIKE cstmat,

fieldcat TYPE slis_t_fieldcat_alv,

wa_fieldcat TYPE slis_fieldcat_alv.

DATA:v_file TYPE string.

*SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

program_name = syst-cprog

dynpro_number = syst-dynnr

field_name = 'P_FILE'

IMPORTING

file_name = p_file.

START-OF-SELECTION.

v_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = v_file

filetype = 'ASC'

has_field_separator = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

data_tab = it_matmaster

EXCEPTIONS

file_open_error = 1

file_read_error = 2

no_batch = 3

gui_refuse_filetransfer = 4

invalid_type = 5

no_authority = 6

unknown_error = 7

bad_data_format = 8

header_not_allowed = 9

separator_not_allowed = 10

header_too_long = 11

unknown_dp_error = 12

access_denied = 13

dp_out_of_memory = 14

disk_full = 15

dp_timeout = 16

OTHERS = 17

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

LOOP AT it_matmaster.

PERFORM explode_assembly.

  • PERFORM f01_set_layo CHANGING gs_layout.

  • PERFORM eventtab_build USING ievent.

perform fldcat.

PERFORM display_grid.

ENDLOOP.

  • PERFORM display_grid.

&----


*& Form EXPLODE_ASSEMBLY

&----


  • text

----


FORM explode_assembly.

CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'

EXPORTING

capid = 'BEST'

cuols = c_x

datuv = sy-datum

emeng = it_matmaster-emeng

knfba = c_x

ksbvo = c_x

mehrs = c_x

mbwls = c_x

  • mdmps = c_x

mktls = c_x

  • stlal = it_matmaster-stlal

  • stlan = p_bomap

mtnrv = it_matmaster-matnr

werks = it_matmaster-werks

  • svwvo = 'X'

  • vrsvo = 'X'

IMPORTING

topmat = w_topmat

TABLES

stb = it_stb

EXCEPTIONS

alt_not_found = 1

call_invalid = 2

material_not_found = 3

missing_authorization = 4

no_bom_found = 5

no_plant_data = 6

no_suitable_bom_found = 7

conversion_error = 8

OTHERS = 9.

IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4

  • INTO w_msg.

  • WRITE: / w_msg.

  • EXIT.

ENDIF.

ENDFORM. "explode_assembly

&----


*& Form display_grid

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


form display_grid .

*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  • EXPORTING

  • i_callback_program = 'ZCS13'

    • i_callback_top_of_page = 'TOP_OF_PAGE_GRID'

    • is_layout = gs_layout

  • it_fieldcat = fieldcat

    • IT_SORT = GT_SORT[]

  • i_save = 'A'

    • it_events = gt_events[]

  • TABLES

  • t_outtab = it_stb

    • 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.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

i_callback_program = 'ZALVTOTAL'

  • I_CALLBACK_PF_STATUS_SET = PFSTATUS

i_callback_user_command = 'USER_COMMAND'(001)

  • IT_EXCLUDING =

.

*CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

  • EXPORTING

  • is_layout = gs_layout

  • it_fieldcat = i_fieldcat

  • i_tabname = 'IT_TAB[]'

  • it_events = gt_events

  • it_sort = gt_sort

    • I_TEXT = ' '

  • TABLES

  • t_outtab = it_tab[]

  • EXCEPTIONS

  • program_error = 1

  • maximum_of_appends_reached = 2

  • OTHERS = 3

  • .

*IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

*ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

is_layout = gs_layout

it_fieldcat = fieldcat

i_tabname = 'IT_STB[]'

it_events = gt_events

it_sort = gt_sort

  • I_TEXT = ' '

TABLES

t_outtab = it_stb[]

EXCEPTIONS

program_error = 1

maximum_of_appends_reached = 2

OTHERS = 3

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

i_interface_check = 'x_print_layout'

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

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_grid

&----


*& Form fldcat

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


form fldcat .

*DATA: wa_fieldcat TYPE slis_fieldcat_alv,

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = 'ZCS13'

  • I_INTERNAL_TABNAME = 'IT_STB'

i_structure_name = 'ZSTPOX'

  • I_CLIENT_NEVER_DISPLAY = 'X'

i_inclname = 'ZCS13'

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = fieldcat[]

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

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. " fldcat

12 REPLIES 12
Read only

Former Member
0 Likes
1,580

Hi Rakesh,

A very small mistake dude.

This problem is b'cos you have used all three FMs REUSE_ALV_BLOCK_LIST_INIT, REUSE_ALV_BLOCK_LIST_APPEND and REUSE_ALV_BLOCK_LIST_DISPLAY in the loop itself.

Try doing this -

1. Use <b>REUSE_ALV_BLOCK_LIST_INIT before</b> the loop

2. Use <b>REUSE_ALV_BLOCK_LIST_APPEND in</b> the loop

3. Use <b>REUSE_ALV_BLOCK_LIST_DISPLAY after</b> the loop

Regards,

Manish Joshi

    • Don't tell me, you don't know how to award points !!!

Read only

0 Likes
1,579

Hi Manish,

Thanks for your replying .I make changes according to you .now it’s giving 4 blocks for 4 materials but data related to that material is not showing.

Plz give needful suggestions

Regards,

Rakesh

Read only

0 Likes
1,579

Hi,

fill the internal tables itab and stab before calling the FM REUSE_ALV_BLOCK_LIST_APPEND.

regards,

bharat.

Read only

0 Likes
1,579

Hi ,

plz check the below codeand suggest me why it not showing data.....

i make changes according to you ...

waiting for your reply

&----


*& Report ZCS13 *

*& *

&----


*& *

*& *

&----


REPORT zcs13 .

TABLES:

mara,

stpo,

t001w,

stko.

TYPE-POOLS: slis.

DATA: BEGIN OF it_stb OCCURS 0.

INCLUDE STRUCTURE zstpox.

DATA:END OF it_stb.

DATA: BEGIN OF it_matmaster OCCURS 0,

matnr TYPE matnr,

werks TYPE werks,

  • stlal type stlal,

  • capid type capid,

emeng TYPE emeng,

END OF it_matmaster.

DATA : ievent TYPE slis_t_event.

DATA: it_stb2 LIKE stpox OCCURS 0 WITH HEADER LINE,

it_stb3 LIKE stpox OCCURS 0 WITH HEADER LINE,

temp_cat TYPE slis_fieldcat_alv,

sline TYPE slis_listheader,

gt_list_top_of_page TYPE slis_t_listheader,

gs_layout TYPE slis_layout_alv ,

gt_events TYPE slis_t_event,

gt_sort TYPE slis_t_sortinfo_alv,

w_msg(255) TYPE c,

int TYPE i VALUE 0.

&----


  • Declaration of parameters

&----


*SELECTION-SCREEN BEGIN OF BLOCK b2.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_matnr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_matnr LIKE mara-matnr OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (8) FOR FIELD p_werks.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_werks LIKE t001w-werks OBLIGATORY .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_albom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_albom LIKE stko-stlal DEFAULT ' '.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_bomap.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS: p_bomap(4) DEFAULT 'PP01'.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN END OF BLOCK b2.

*

*DATA :anr_datuv LIKE aenr-datuv.

*SELECTION-SCREEN BEGIN OF BLOCK b3.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s02 .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) text-s03 .

*SELECTION-SCREEN END OF LINE.

*

*SELECTION-SCREEN END OF BLOCK b3.

*

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

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_vfrom.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_vfrom LIKE stpo-datuv DEFAULT sy-datum.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD pm_aennr.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS pm_aennr LIKE aenr-aennr.

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (17) FOR FIELD p_reqty.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_reqty LIKE stpo-menge DEFAULT '1' .

*SELECTION-SCREEN END OF LINE.

*SELECTION-SCREEN BEGIN OF LINE.

*SELECTION-SCREEN COMMENT (15) FOR FIELD p_assd.

*SELECTION-SCREEN POSITION 25 .

*PARAMETERS p_assd AS CHECKBOX.

*SELECTION-SCREEN END OF LINE.

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

PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b1 .

CONSTANTS c_x VALUE 'X'.

DATA: w_topmat LIKE cstmat,

fieldcat TYPE slis_t_fieldcat_alv,

wa_fieldcat TYPE slis_fieldcat_alv.

DATA:v_file TYPE string.

*SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

program_name = syst-cprog

dynpro_number = syst-dynnr

field_name = 'P_FILE'

IMPORTING

file_name = p_file.

START-OF-SELECTION.

v_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = v_file

filetype = 'ASC'

has_field_separator = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

data_tab = it_matmaster

EXCEPTIONS

file_open_error = 1

file_read_error = 2

no_batch = 3

gui_refuse_filetransfer = 4

invalid_type = 5

no_authority = 6

unknown_error = 7

bad_data_format = 8

header_not_allowed = 9

separator_not_allowed = 10

header_too_long = 11

unknown_dp_error = 12

access_denied = 13

dp_out_of_memory = 14

disk_full = 15

dp_timeout = 16

OTHERS = 17

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

i_callback_program = 'ZCS13'

  • I_CALLBACK_PF_STATUS_SET = PFSTATUS

i_callback_user_command = 'USER_COMMAND'(001).

  • IT_EXCLUDING =.

DATA :int1(10) .

  • PERFORM fldcat.

LOOP AT it_matmaster.

PERFORM explode_assembly.

  • PERFORM f01_set_layo CHANGING gs_layout.

  • PERFORM eventtab_build USING ievent.

PERFORM fldcat.

PERFORM display_grid.

ENDLOOP.

  • PERFORM display_grid.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

i_interface_check = 'x_print_layout'

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

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.

&----


*& Form EXPLODE_ASSEMBLY

&----


  • text

----


FORM explode_assembly.

CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'

EXPORTING

capid = 'BEST'

cuols = c_x

datuv = sy-datum

emeng = it_matmaster-emeng

knfba = c_x

ksbvo = c_x

mehrs = c_x

mbwls = c_x

  • mdmps = c_x

mktls = c_x

  • stlal = it_matmaster-stlal

  • stlan = p_bomap

mtnrv = it_matmaster-matnr

werks = it_matmaster-werks

  • svwvo = 'X'

  • vrsvo = 'X'

IMPORTING

topmat = w_topmat

TABLES

stb = it_stb

EXCEPTIONS

alt_not_found = 1

call_invalid = 2

material_not_found = 3

missing_authorization = 4

no_bom_found = 5

no_plant_data = 6

no_suitable_bom_found = 7

conversion_error = 8

OTHERS = 9.

IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4

  • INTO w_msg.

  • WRITE: / w_msg.

  • EXIT.

ENDIF.

ENDFORM. "explode_assembly

&----


*& Form display_grid

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM display_grid .

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

is_layout = gs_layout

it_fieldcat = fieldcat

i_tabname = 'IT_STB[]'

it_events = gt_events

it_sort = gt_sort

  • I_TEXT = ' '

TABLES

t_outtab = it_stb

EXCEPTIONS

program_error = 1

maximum_of_appends_reached = 2

OTHERS = 3

.

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_grid

&----


*& Form fldcat

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM fldcat .

*DATA: wa_fieldcat TYPE slis_fieldcat_alv,

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = 'ZCS13'

  • I_INTERNAL_TABNAME = 'IT_STB'

i_structure_name = 'ZSTPOX'

  • I_CLIENT_NEVER_DISPLAY = 'X'

i_inclname = 'ZCS13'

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = fieldcat[]

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

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. " fldcat

Read only

0 Likes
1,579

Hi Rakesh,

Check if data is available in the internal table

Check if REUSE_ALV_FIELDCATALOG_MERGE gives you fieldcat entries properly

And, finally dont comment parameter I_tabname in REUSE_ALV_BLOCK_LIST_APPEND you don't need it.

Regards,

Manish Joshi

Read only

0 Likes
1,579

Hi Manish,

I make changes according to your guidance but report showing data only for last material which present in the table it_matmaster in every block.

Please guide me what is the problem.

I am pasting changed code for you......

&----


*& Report ZCS13 *

*& *

&----


*& *

*& *

&----


REPORT zcs13 .

TABLES:

mara,

stpo,

t001w,

stko.

TYPE-POOLS: slis.

DATA: BEGIN OF it_stb OCCURS 0.

INCLUDE STRUCTURE zstpox.

DATA:END OF it_stb.

DATA: BEGIN OF it_matmaster OCCURS 0,

matnr TYPE matnr,

werks TYPE werks,

  • stlal type stlal,

  • capid type capid,

emeng TYPE emeng,

END OF it_matmaster.

DATA : ievent TYPE slis_t_event.

DATA: it_stb2 LIKE stpox OCCURS 0 WITH HEADER LINE,

it_stb3 LIKE stpox OCCURS 0 WITH HEADER LINE,

temp_cat TYPE slis_fieldcat_alv,

sline TYPE slis_listheader,

gt_list_top_of_page TYPE slis_t_listheader,

gs_layout TYPE slis_layout_alv ,

gt_events TYPE slis_t_event,

gt_sort TYPE slis_t_sortinfo_alv,

w_msg(255) TYPE c,

int TYPE i VALUE 0.

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

PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b1 .

CONSTANTS c_x VALUE 'X'.

DATA: w_topmat LIKE cstmat,

fieldcat TYPE slis_t_fieldcat_alv ,

wa_fieldcat TYPE slis_fieldcat_alv.

DATA:v_file TYPE string.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

program_name = syst-cprog

dynpro_number = syst-dynnr

field_name = 'P_FILE'

IMPORTING

file_name = p_file.

START-OF-SELECTION.

v_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = v_file

filetype = 'ASC'

has_field_separator = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

data_tab = it_matmaster

EXCEPTIONS

file_open_error = 1

file_read_error = 2

no_batch = 3

gui_refuse_filetransfer = 4

invalid_type = 5

no_authority = 6

unknown_error = 7

bad_data_format = 8

header_not_allowed = 9

separator_not_allowed = 10

header_too_long = 11

unknown_dp_error = 12

access_denied = 13

dp_out_of_memory = 14

disk_full = 15

dp_timeout = 16

OTHERS = 17

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

i_callback_program = 'ZCS13'

  • I_CALLBACK_PF_STATUS_SET = PFSTATUS

i_callback_user_command = ''

  • IT_EXCLUDING =

.

  • PERFORM fldcat.

LOOP AT it_matmaster.

PERFORM explode_assembly.

PERFORM fldcat.

PERFORM append_blocklist.

  • PERFORM alv_display_grid.

ENDLOOP.

PERFORM alv_display_grid.

&----


*& Form EXPLODE_ASSEMBLY

&----


  • text

----


FORM explode_assembly.

CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'

EXPORTING

capid = 'BEST'

cuols = c_x

datuv = sy-datum

emeng = it_matmaster-emeng

knfba = c_x

ksbvo = c_x

mehrs = c_x

mbwls = c_x

  • mdmps = c_x

mktls = c_x

  • stlal = it_matmaster-stlal

  • stlan = p_bomap

mtnrv = it_matmaster-matnr

werks = it_matmaster-werks

  • svwvo = 'X'

  • vrsvo = 'X'

IMPORTING

topmat = w_topmat

TABLES

stb = it_stb

EXCEPTIONS

alt_not_found = 1

call_invalid = 2

material_not_found = 3

missing_authorization = 4

no_bom_found = 5

no_plant_data = 6

no_suitable_bom_found = 7

conversion_error = 8

OTHERS = 9.

IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4

  • INTO w_msg.

  • WRITE: / w_msg.

  • EXIT.

ENDIF.

ENDFORM. "explode_assembly

&----


*& Form fldcat

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM fldcat .

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = 'ZCS13'

  • i_internal_tabname = 'IT_STB'

i_structure_name = 'ZSTPOX'

  • I_CLIENT_NEVER_DISPLAY = 'X'

i_inclname = 'ZCS13'

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = fieldcat[]

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

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. " fldcat

&----


*& Form alv_display_grid

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM alv_display_grid .

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

i_interface_check = 'x_print_layout'

  • IS_PRINT =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

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. " alv_display_grid

&----


*& Form append_blocklist

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM append_blocklist .

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

is_layout = gs_layout

it_fieldcat = fieldcat

i_tabname = 'IT_STB[]'

it_events = gt_events

it_sort = gt_sort

  • I_TEXT = ' '

TABLES

t_outtab = it_stb[]

EXCEPTIONS

program_error = 1

maximum_of_appends_reached = 2

OTHERS = 3

.

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. " append_blocklist

Read only

0 Likes
1,579

Hi Rakesh,

This is because you are sharing same output table for all Blocks (i.e. Materials).

Whereas you need to have separate tables for all blocks.

Try creating a internal table of table like this:-

types: begin of ty_materialinfo,

matnr.... and so on

end of ty_materialinfo.

types ty_t_materialinfo type table of ty_materialinfo.

types: ty_t_output type table of ty_t_materialinfo.

data: lt_output_tables type ty_t_output,

ls_output_tables like line of lt_output_tables,

lr_data type ref to data.

field-symbols: <lt_materialinfo> type ty_t_materialinfo.

<< init block list>>

LOOP AT materials.

create data lr_data type ty_t_materialinfo.

assign lr_data->* to <lt_materialinfo>.

<<fetch material data into <lt_materialinfo> >>

<<append alv block for table <lt_materialinfo> >>

ls_output_table = <lt_materialinfo>.

append ls_output_table to lt_output_table.

ENDLOOP.

<<display block list>>

I hope you get what I meant.

Regards,

Manish Joshi

Read only

0 Likes
1,579

Hi Manish,

Thanks for your response.

I am not getting you .please tell at the time of loop in table it_matmaster

How I can create different internal table for each material no.

This is my code in loop.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

i_callback_program = 'ZCS13'

  • I_CALLBACK_PF_STATUS_SET = PFSTATUS

i_callback_user_command = ''

  • IT_EXCLUDING =

.

LOOP AT it_matmaster.

PERFORM explode_assembly.

PERFORM fldcat.

PERFORM append_blocklist.

  • PERFORM alv_display_grid.

ENDLOOP.

PERFORM alv_display_grid.

By using PERFORM explode_assembly I fetch data using 'CS_BOM_EXPL_MAT_V2'

Function module.

Then by using PERFORM fldcat. I append values in fieldcat using REUSE_ALV_FIELDCATALOG_MERGE function module.

Then by using PERFORM append_blocklist.i append values in block list using REUSE_ALV_BLOCK_LIST_APPEND function module.

<b>

In which module or where I have to make changes</b>

Read only

0 Likes
1,579

Hi Rakesh,

types: ty_zstpox type table of zstpox.

data: lr_data type ref to data.

field-symbols:

<lt_zstpox> type table of zstpox.

LOOP AT it_matmaster.

create data lr_data type ty_zstpox.

assign lr_data->* to <lt_zstpox>.

<<<< Use <lt_zstpox> wherever you are using lt_stb >>>>

PERFORM explode_assembly.

PERFORM fldcat.

PERFORM append_blocklist.

  • PERFORM alv_display_grid.

ENDLOOP.

Regards,

Manish Joshi

Read only

0 Likes
1,579

Hi Manish,

This is not working when i replacing table it_sbt by <lt_zstpox>

it gives this error: "<LT_ZSTPOX>" is not an internal table - the "OCCURS n" specification is missing.

Read only

0 Likes
1,579

Hi Manish ,

Still I am facing the same error .can you please help me how to resolve it.

Regards

Rakesh

Read only

0 Likes
1,579

Can you give me place where exactly it is showing error.