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 dump

Former Member
0 Likes
961

he,

i have problr with alv grid, here is report.

REPORT ZMM_PP_TEST.

TABLES: ekko,

ekbe,

konp,

a017,

ekpo. "wo27184

DATA: g_x1 TYPE p,

g_x2 TYPE p,

g_x3 TYPE p, "wo27184

  • g_result TYPE f.

g_result TYPE p DECIMALS 2,

flag type c value ''.

data: ls_a017 like a017.

DATA: BEGIN OF ls_alvdispl,

bklas LIKE MBEW-BKLAS,

matnr LIKE EKPO-MATNR,

ebeln LIKE EKPO-EBELN,

belnr LIKE EKBE-BELNR,

bwart LIKE EKBE-BWART,

budat LIKE EKBE-BUDAT,

menge LIKE EKBE-MENGE,

dmbtr LIKE EKBE-DMBTR,

wrbtr LIKE EKBE-WRBTR,

waers LIKE EKBE-WAERS,

arewr LIKE EKBE-AREWR,

lfbnr LIKE EKBE-LFBNR,

reewr LIKE EKBE-REEWR,

refwr LIKE EKBE-REFWR,

werks LIKE EKPO-WERKS,

stprs LIKE MBEW-STPRS,

  • stval like ......

kbetr LIKE KONP-KBETR,

  • frval LIKE

bwIZ LIKE EKBE-BWART,

  • PPVacc LIKE

  • PPV LIKE EKBE-DMBTR,

invpr LIKE EKBE-BWART,

END OF ls_alvdispl.

DATA: lt_alvdispl LIKE ls_alvdispl OCCURS 10.

TYPE-POOLS:

slis,

icon.

SELECT-OPTIONS:

p_matnr FOR ekpo-matnr,

p_ebeln FOR ekpo-ebeln,

p_lifnr FOR ekko-lifnr,

p_werks FOR ekpo-werks,

p_lgort FOR ekpo-lgort,

p_bedat FOR ekko-bedat,

p_bsart FOR ekko-bsart,

p_bstyp FOR ekko-bstyp,

p_ekorg FOR ekko-ekorg.

START-OF-SELECTION.

SELECT *

FROM ekko

WHERE

bedat IN p_bedat

AND bsart IN p_bsart

AND bstyp IN p_bstyp

AND ekorg IN p_ekorg.

MOVE-CORRESPONDING ekko to ls_alvdispl.

SELECT * FROM ekpo WHERE ebeln = ekko-ebeln

AND loekz IN p_lgort

AND matnr IN p_matnr.

MOVE-CORRESPONDING ekpo to ls_alvdispl.

ENDSELECT.

  • SELECT * FROM ekpo

  • WHERE ebeln = ekpo-matnr

  • AND ebelp = ekpo-ebeln

  • AND werks = ekpo-werks.

IF ekbe-cpudt = ekko-aedat.

MOVE-corresponding ekpo to ls_alvdispl.

ENDIF.

append ls_alvdispl TO lt_alvdispl.

CLEAR ls_alvdispl-matnr.

  • ENDSELECT.

  • break-point.

IF sy-subrc <> 0.

CLEAR ls_alvdispl-budat.

CLEAR ls_alvdispl-wrbtr.

CLEAR ls_alvdispl-menge.

  • CLEAR ls_alvdispl-ernam2.

CLEAR ls_alvdispl-belnr.

  • CLEAR ls_alvdispl-mark.

append ls_alvdispl TO lt_alvdispl .

ENDIF.

ENDSELECT.

*break-point.

  • Freight rate-------- KONP- KBETR------

SELECT * FROM a017

WHERE lifnr = ekko-lifnr

AND matnr = ekpo-matnr

AND ekorg = ekko-ekorg

AND werks = ekpo-werks

AND datbi = a017-datbi

and datab = a017-datab.

IF ekbe-cpudt = ekko-aedat.

MOVE-corresponding ekpo to ls_alvdispl.

endif.

ENDSELECT.

  • SELECT *

  • FROM konp

  • WHERE knumh = a017-knumh

  • and konp-kschl = 'FRC2'.

*endselect.

*WRITE:/ 'Value of POs with creation date equal to EUR date :',

  • ls_alvdispl-WRBTR,

  • ls_alvdispl-waers,

*ls_alvdispl-BKLAS,

*ls_alvdispl-MATNR,

*ls_alvdispl-EBELN,

*ls_alvdispl-BELNR,

*ls_alvdispl-BWART,

*ls_alvdispl-DMBTR.

*

**MOVE-corresponding ls_konp to ls_alvdispl

*

*

*

*

**SELECT SINGLE * from KONP into ls_a017 WHERE konp-knumh = a017-knumh.

**append ls_alvdispl to lt_alvdispl.

*

*

**************ALV******************************************

*

DATA lv_repid LIKE sy-repid.

*lv_repid = sy-repid.

DATA t_fc TYPE slis_t_fieldcat_alv WITH HEADER LINE.

*tables lt_alvdispl structure ls_alvdispl.

REFRESH t_fc.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = lv_repid

I_INTERNAL_TABNAME = 'LS_ALVDISPL'

  • I_STRUCTURE_NAME = ''

I_CLIENT_NEVER_DISPLAY = 'X'

  • I_INCLNAME = ''

  • I_BYPASSING_BUFFER = 'X'

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = t_fc[]

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.

*break-point.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = lv_repid

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME =

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

IT_FIELDCAT = t_fc[]

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • I_HTML_HEIGHT_TOP = 0

  • I_HTML_HEIGHT_END = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • IR_SALV_FULLSCREEN_ADAPTER =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = LT_ALVDISPL

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.

he,

i have problr with alv grid, here is report.

REPORT ZMM_PP_TEST.

TABLES: ekko,

ekbe,

konp,

a017,

ekpo. "wo27184

DATA: g_x1 TYPE p,

g_x2 TYPE p,

g_x3 TYPE p, "wo27184

  • g_result TYPE f.

g_result TYPE p DECIMALS 2,

flag type c value ''.

data: ls_a017 like a017.

DATA: BEGIN OF ls_alvdispl,

bklas LIKE MBEW-BKLAS,

matnr LIKE EKPO-MATNR,

ebeln LIKE EKPO-EBELN,

belnr LIKE EKBE-BELNR,

bwart LIKE EKBE-BWART,

budat LIKE EKBE-BUDAT,

menge LIKE EKBE-MENGE,

dmbtr LIKE EKBE-DMBTR,

wrbtr LIKE EKBE-WRBTR,

waers LIKE EKBE-WAERS,

arewr LIKE EKBE-AREWR,

lfbnr LIKE EKBE-LFBNR,

reewr LIKE EKBE-REEWR,

refwr LIKE EKBE-REFWR,

werks LIKE EKPO-WERKS,

stprs LIKE MBEW-STPRS,

  • stval like ......

kbetr LIKE KONP-KBETR,

  • frval LIKE

bwIZ LIKE EKBE-BWART,

  • PPVacc LIKE

  • PPV LIKE EKBE-DMBTR,

invpr LIKE EKBE-BWART,

END OF ls_alvdispl.

DATA: lt_alvdispl LIKE ls_alvdispl OCCURS 10.

TYPE-POOLS:

slis,

icon.

SELECT-OPTIONS:

p_matnr FOR ekpo-matnr,

p_ebeln FOR ekpo-ebeln,

p_lifnr FOR ekko-lifnr,

p_werks FOR ekpo-werks,

p_lgort FOR ekpo-lgort,

p_bedat FOR ekko-bedat,

p_bsart FOR ekko-bsart,

p_bstyp FOR ekko-bstyp,

p_ekorg FOR ekko-ekorg.

START-OF-SELECTION.

SELECT *

FROM ekko

WHERE

bedat IN p_bedat

AND bsart IN p_bsart

AND bstyp IN p_bstyp

AND ekorg IN p_ekorg.

MOVE-CORRESPONDING ekko to ls_alvdispl.

SELECT * FROM ekpo WHERE ebeln = ekko-ebeln

AND loekz IN p_lgort

AND matnr IN p_matnr.

MOVE-CORRESPONDING ekpo to ls_alvdispl.

ENDSELECT.

  • SELECT * FROM ekpo

  • WHERE ebeln = ekpo-matnr

  • AND ebelp = ekpo-ebeln

  • AND werks = ekpo-werks.

IF ekbe-cpudt = ekko-aedat.

MOVE-corresponding ekpo to ls_alvdispl.

ENDIF.

append ls_alvdispl TO lt_alvdispl.

CLEAR ls_alvdispl-matnr.

  • ENDSELECT.

  • break-point.

IF sy-subrc <> 0.

CLEAR ls_alvdispl-budat.

CLEAR ls_alvdispl-wrbtr.

CLEAR ls_alvdispl-menge.

  • CLEAR ls_alvdispl-ernam2.

CLEAR ls_alvdispl-belnr.

  • CLEAR ls_alvdispl-mark.

append ls_alvdispl TO lt_alvdispl .

ENDIF.

ENDSELECT.

*break-point.

  • Freight rate-------- KONP- KBETR------

SELECT * FROM a017

WHERE lifnr = ekko-lifnr

AND matnr = ekpo-matnr

AND ekorg = ekko-ekorg

AND werks = ekpo-werks

AND datbi = a017-datbi

and datab = a017-datab.

IF ekbe-cpudt = ekko-aedat.

MOVE-corresponding ekpo to ls_alvdispl.

endif.

ENDSELECT.

  • SELECT *

  • FROM konp

  • WHERE knumh = a017-knumh

  • and konp-kschl = 'FRC2'.

*endselect.

*WRITE:/ 'Value of POs with creation date equal to EUR date :',

  • ls_alvdispl-WRBTR,

  • ls_alvdispl-waers,

*ls_alvdispl-BKLAS,

*ls_alvdispl-MATNR,

*ls_alvdispl-EBELN,

*ls_alvdispl-BELNR,

*ls_alvdispl-BWART,

*ls_alvdispl-DMBTR.

*

**MOVE-corresponding ls_konp to ls_alvdispl

*

*

*

*

**SELECT SINGLE * from KONP into ls_a017 WHERE konp-knumh = a017-knumh.

**append ls_alvdispl to lt_alvdispl.

*

*

**************ALV******************************************

*

DATA lv_repid LIKE sy-repid.

*lv_repid = sy-repid.

DATA t_fc TYPE slis_t_fieldcat_alv WITH HEADER LINE.

*tables lt_alvdispl structure ls_alvdispl.

REFRESH t_fc.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = lv_repid

I_INTERNAL_TABNAME = 'LS_ALVDISPL'

  • I_STRUCTURE_NAME = ''

I_CLIENT_NEVER_DISPLAY = 'X'

  • I_INCLNAME = ''

  • I_BYPASSING_BUFFER = 'X'

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = t_fc[]

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.

*break-point.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = lv_repid

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME =

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

IT_FIELDCAT = t_fc[]

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • I_HTML_HEIGHT_TOP = 0

  • I_HTML_HEIGHT_END = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • IR_SALV_FULLSCREEN_ADAPTER =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = LT_ALVDISPL

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.

7 REPLIES 7
Read only

former_member156446
Active Contributor
0 Likes
916

hi Nick

check in debug mode if t_fc[] ur field catalog table is being filled and all the fields have the field catalog assigned

Read only

Former Member
0 Likes
916

Could you post some of the dump details??

Rob

Read only

0 Likes
916

dump is

THERE is no FILDCAT.

Read only

0 Likes
916

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = lv_repid

*I_INTERNAL_TABNAME = ''

<b>* I_STRUCTURE_NAME = 'LS_ALVDISPL'</b> < check this might work

I_CLIENT_NEVER_DISPLAY = 'X'

  • I_INCLNAME = ''

  • I_BYPASSING_BUFFER = 'X'

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = t_fc[]

EXCEPTIONS

INCONSISTENT_INTERFACE = 1

PROGRAM_ERROR = 2

OTHERS = 3

Read only

Former Member
0 Likes
916

hi

i think so u didnt create field catlog. if u r created that check the data u got in that r not..

Read only

Former Member
0 Likes
916

hi

You are not maintaining field catalogs in the program. If you do this it should work.

in this we generally we give the position, heading of the column and particular itab field.

See the below example code for this.

CLEAR wa_fieldcat.

wa_fieldcat-col_pos = w_pos.

wa_fieldcat-fieldname = 'MATNR'.

wa_fieldcat-ref_fieldname = 'MATNR'.

wa_fieldcat-ref_tabname = 'MARA'.

wa_fieldcat-key = 'X'.

APPEND wa_fieldcat TO p_tbl_fieldcat.

Reward if it is helpful.

Thanks

Siva Kumar

Read only

Former Member
0 Likes
916

there is no TOPINCLUDE !!! it must be!