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

interactive reporrt

Former Member
0 Likes
902

Hi all,

I'm using an interactive report for blocked stock calculation. my basic list is in ALV format and if i click on the field i will be getting my second page in ordinary list.

I have 2 queries :

1) In my second page, i need to go to another page which shows all the material docs for a corresponding material. How shall i use the ' at line-selection ' command and where to define it.

2) my 3rd page should be in ALV format apart from my primary list, so do i need to call the FM 'reuse_alv_grid_display' again or can i mention this in already defined FM itself. if that is possible give some sample codings..

Useful informations will be rewarded.

Thanks and regards,

Karthi.

Hi all,

I'm using an interactive report for blocked stock calculation. my basic list is in ALV format and if i click on the field i will be getting my second page in ordinary list.

I have 2 queries :

1) In my second page, i need to go to another page which shows all the material docs for a corresponding material. How shall i use the ' at line-selection ' command and where to define it.

2) my 3rd page should be in ALV format apart from my primary list, so do i need to call the FM 'reuse_alv_grid_display' again or can i mention this in already defined FM itself. if that is possible give some sample codings..

Useful informations will be rewarded.

Thanks and regards,

Karthi.

6 REPLIES 6
Read only

Former Member
0 Likes
882

Hi,

1. Just add your fields here.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = ws_repid --->here Progarm name

i_callback_user_command = 'USER_COMMAND'

is_layout = gs_layout

it_fieldcat = gt_fieldcat_alv[]

i_default = 'A'

i_save = g_save

is_variant = gx_variant

TABLES

t_outtab = it_final.

IF sy-subrc <> 0.

ENDIF.

ENDFORM. " data_display

&----


*& Form USER_COMMAND

&----


FORM user_command USING r_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

IF rs_selfield EQ 'Your firld name'

SELECT required data for database table and

Pass to FM

"'REUSE_ALV_GRID_DISPLAY'" same procedure for 3rd list also.

ENDIF.

ENDFORM. "user_command

Read only

0 Likes
882

Hi murali,

Thanks for your reply. You are trying to mean that, if i need to get the result in ALV format for 3rd page again i need to use the FM. Just confirm this.

Also, tell me, my second list is an ordinary list. I'm using at line-selection event for 3rd list to display, but it is not working in my program. Why is this..

Thanks and regards,

Karthi.

Read only

p291102
Active Contributor
0 Likes
882

Hi,

REPORT YMS_INTERACTIVETEST LINE-SIZE 50 NO STANDARD PAGE HEADING.

TABLES: VBAP,KNA1,VBAK.

SELECT-OPTIONS: CUST FOR KNA1-KUNNR.

DATA: BEGIN OF ITAB OCCURS 0,

KUNNR LIKE KNA1-KUNNR,

NAME1 LIKE KNA1-NAME1,

VBELN LIKE VBAK-VBELN,

AUDAT LIKE VBAK-AUDAT,

AUART LIKE VBAK-AUART,

POSNR LIKE VBAP-POSNR,

POSAR LIKE VBAP-POSAR,

END OF ITAB.

DATA: ITAB1 LIKE ITAB OCCURS 0 WITH HEADER LINE.

INITIALIZATION.

START-OF-SELECTION.

SELECT KNA1KUNNR KNA1NAME1 INTO CORRESPONDING FIELDS OF TABLE ITAB1

FROM KNA1 WHERE KNA1~KUNNR IN CUST.

LOOP AT ITAB1.

WRITE:/10 ITAB1-KUNNR HOTSPOT, 30 ITAB1-NAME1.

HIDE: ITAB1-KUNNR.

ENDLOOP.

AT LINE-SELECTION.

CASE SY-LSIND.

WHEN '1'.

SELECT KNA1KUNNR VBAKVBELN VBAKAUDAT VBAKERDAT INTO CORRESPONDING FIELDS OF TABLE ITAB1

FROM KNA1 INNER JOIN VBAK ON KNA1KUNNR = VBAKKUNNR.

LOOP AT ITAB1.

WRITE:/ ITAB1-VBELN HOTSPOT, ITAB1-AUDAT, ITAB1-AUART.

HIDE: ITAB1-VBELN, ITAB1-AUDAT, ITAB1-AUART.

ENDLOOP.

WHEN '2'.

SELECT VBAKVBELN VBAPPOSNR VBAP~POSAR

INTO CORRESPONDING FIELDS OF TABLE ITAB1 FROM VBAK INNER JOIN VBAP ON VBAKVBELN = VBAPVBELN.

LOOP AT ITAB1.

WRITE:/ ITAB1-POSNR, ITAB1-POSAR.

ENDLOOP.

ENDCASE.

TOP-OF-PAGE.

WRITE:/ SY-VLINE,TEXT-001 COLOR COL_NEGATIVE.

ULINE.

Thanks,

Sankar M

Read only

Former Member
0 Likes
882

hi,

this is my interactive alv report. this will definetely help u.

please go throug it.it is very clear.

REPORT z50870alv_demo.

TYPE-POOLS : slis.

&----


*& structure declaration

&----


TYPES : BEGIN OF st_ekko,

ebeln TYPE ekko-ebeln, "Purchasing Document Number

bstyp TYPE ekko-bstyp, "Purchasing Document Category

bsart TYPE ekko-bsart, "Purchasing Document Type

aedat TYPE ekko-aedat, "record created on

ernam TYPE ekko-ernam, "Person who Created the Object

END OF st_ekko.

TYPES : BEGIN OF st_ekpo,

ebeln TYPE ekko-ebeln,

ebelp TYPE ekpo-ebelp, "Item Number of Purchasing Document

ematn TYPE ekpo-ematn, "Material number

matkl TYPE ekpo-matkl, "Material group

netpr TYPE ekpo-netpr, "Net price in purchasing document

END OF st_ekpo.

&----


*& internal table and work area declaration

&----


DATA : it_ekpo TYPE STANDARD TABLE OF st_ekpo,

wa_ekpo TYPE st_ekpo,

it_ekko TYPE STANDARD TABLE OF st_ekko,

wa_ekko TYPE st_ekko,

it_fieldcat TYPE slis_t_fieldcat_alv,

wa_fieldcat TYPE slis_fieldcat_alv,

wa_layout TYPE slis_layout_alv.

&----


*& internal table and work area declaration

&----


DATA : v_ebeln TYPE ekko-ebeln.

DATA: t_header TYPE slis_t_listheader,

wa_header TYPE slis_listheader,

t_line TYPE slis_listheader-info,

nl_lines TYPE i,

nl_linesc(10) TYPE c.

&----


*& start-of-selection

&----


START-OF-SELECTION.

SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-000.

SELECT-OPTIONS : so_ebeln FOR v_ebeln.

SELECTION-SCREEN END OF BLOCK a.

PERFORM data_retrieval.

PERFORM build_fieldcatalog1.

PERFORM build_layout.

PERFORM ekkogriddisplay_alv.

&----


*& Form build_fieldcatalog2

&----


FORM build_fieldcatalog2.

CLEAR wa_fieldcat.

REFRESH it_fieldcat.

wa_fieldcat-fieldname = 'EBELN'.

wa_fieldcat-seltext_l = 'PURCHASE ORDER'.

wa_fieldcat-col_pos = 0.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EBELP'.

wa_fieldcat-seltext_l = 'ITEM NUMBER'.

wa_fieldcat-col_pos = 1.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EMATN'.

wa_fieldcat-seltext_l = 'MATERIAL TYPE'.

wa_fieldcat-col_pos = 2.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'MATKL'.

wa_fieldcat-seltext_l = 'MATERIAL GROUP'.

wa_fieldcat-col_pos = 3.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'NETPR'.

wa_fieldcat-seltext_l = 'NET PRICE'.

wa_fieldcat-col_pos = 4.

wa_fieldcat-do_sum = 'X'.

APPEND wa_fieldcat TO it_fieldcat.

ENDFORM. "build_fieldcatalog

&----


*& Form build_fieldcatalog1

&----


FORM build_fieldcatalog1.

wa_fieldcat-fieldname = 'EBELN'.

wa_fieldcat-seltext_l = 'PURCHASE ORDER'.

wa_fieldcat-col_pos = 0.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'BSTYP'.

wa_fieldcat-seltext_l = 'DOCUMENT CATEGORY'.

wa_fieldcat-col_pos = 1.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'BSART'.

wa_fieldcat-seltext_l = 'DOCUMENT TYPE'.

wa_fieldcat-col_pos = 2.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'AEDAT'.

wa_fieldcat-seltext_l = 'DATE'.

wa_fieldcat-col_pos = 3.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'ERNAME'.

wa_fieldcat-seltext_l = 'NAME'.

wa_fieldcat-col_pos = 4.

APPEND wa_fieldcat TO it_fieldcat.

ENDFORM. "build_fieldcatalog

&----


*& Form data_retrieval

&----


FORM data_retrieval.

SELECT ebeln bstyp bsart aedat ernam

FROM ekko

INTO TABLE it_ekko

WHERE ebeln IN so_ebeln.

ENDFORM. "data_retrieval

&----


*& form build_layout.

&----


FORM build_layout.

wa_layout-zebra ='X'.

wa_layout-no_vline = 'X'.

wa_layout-no_hline = 'X'.

wa_layout-colwidth_optimize = 'X'.

ENDFORM. "build_layout

&----


*& form top-of-page1

&----


FORM top-of-page1.

  • Title

wa_header-typ = 'H'.

wa_header-info = 'PURCHASE ORDER HEADER REPORT'.

APPEND wa_header TO t_header.

CLEAR wa_header.

  • Total No. of Records Selected

DESCRIBE TABLE it_ekko LINES nl_lines.

nl_linesc = nl_lines.

CONCATENATE 'Total No. of Records Selected: ' nl_linesc

INTO t_line SEPARATED BY space.

wa_header-typ = 'A'.

wa_header-info = t_line.

APPEND wa_header TO t_header.

CLEAR: wa_header, t_line.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = t_header

i_logo = 'SUN_TEST_LOGO1'.

REFRESH t_header.

ENDFORM. "top-of-page

&----


*& form top-of-page2

&----


FORM top-of-page2.

  • Title

wa_header-typ = 'H'.

wa_header-info = 'PURCHASE ORDER ITEM REPORT'.

APPEND wa_header TO t_header.

CLEAR wa_header.

  • Total No. of Records Selected

DESCRIBE TABLE it_ekpo LINES nl_lines.

nl_linesc = nl_lines.

CONCATENATE 'Total No. of Records Selected: ' nl_linesc

INTO t_line SEPARATED BY space.

wa_header-typ = 'A'.

wa_header-info = t_line.

APPEND wa_header TO t_header.

CLEAR: wa_header, t_line.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = t_header

i_logo = 'SUN_TEST_LOGO1'.

REFRESH t_header.

ENDFORM. "top-of-page

&----


*& form set_pf_status

&----


FORM set_pf_status USING rt_extab TYPE slis_t_extab.

SET PF-STATUS 'MYMENU'.

"Copy of 'STANDARD' pf_status from fgroup SALV

ENDFORM. "set_pf_status

&----


*& Form AT_user_command

&----


FORM at_user_command USING r_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

CASE r_ucomm.

WHEN '&IC1'.

IF rs_selfield-fieldname EQ 'EBELN'.

READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.

SELECT ebeln ebelp ematn matkl netpr

FROM ekpo

INTO TABLE it_ekpo

WHERE ebeln EQ wa_ekko-ebeln.

PERFORM build_fieldcatalog2.

PERFORM ekpogriddisplay_alv.

ELSE.

MESSAGE text-002 TYPE 'I'.

ENDIF.

ENDCASE.

ENDFORM. "AT_user_command

&----


*& form ekkogriddisplay_alv.

&----


FORM ekkogriddisplay_alv.

IF it_ekko[] IS INITIAL.

MESSAGE text-001 TYPE 'I'.

ELSE.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = sy-repid

i_callback_top_of_page = 'TOP-OF-PAGE1'

i_callback_pf_status_set = 'SET_PF_STATUS'

i_callback_user_command = 'AT_USER_COMMAND'

is_layout = wa_layout

it_fieldcat = it_fieldcat

TABLES

t_outtab = it_ekko

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.

ENDIF.

ENDFORM. "listdisplay_alv

&----


*& form ekpogriddisplay_alv.

&----


FORM ekpogriddisplay_alv.

IF it_ekpo[] IS INITIAL.

MESSAGE text-003 TYPE 'I'.

ELSE.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = sy-repid

i_callback_top_of_page = 'TOP-OF-PAGE2'

i_callback_pf_status_set = 'SET_PF_STATUS'

is_layout = wa_layout

it_fieldcat = it_fieldcat

TABLES

t_outtab = it_ekpo

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.

ENDIF.

reward if usefull.

regards,

pavan t.

Read only

Former Member
0 Likes
882

Hi,

You need to call the function module for how many times u want to display the data grid format.

Have a look on the following code.Use events for interactive list.

An Interactive ALV Report without Header list based on particular field only.

  • Use “set parameter id ‘BES’ “

TYPE-POOLS SLIS.

TYPES: BEGIN OF I_EKKO,

EBELN LIKE EKKO-EBELN,

AEDAT LIKE EKKO-AEDAT,

BUKRS LIKE EKKO-BUKRS,

BSART LIKE EKKO-BSART,

LIFNR LIKE EKKO-LIFNR,

END OF I_EKKO.

DATA: IT_EKKO TYPE STANDARD TABLE OF I_EKKO INITIAL SIZE 0,

WA_EKKO TYPE I_EKKO.

TYPES: BEGIN OF I_EKPO,

EBELN LIKE EKPO-EBELN,

EBELP LIKE EKPO-EBELP,

MATNR LIKE EKPO-MATNR,

MENGE LIKE EKPO-MENGE,

MEINS LIKE EKPO-MEINS,

NETPR LIKE EKPO-NETPR,

END OF I_EKPO.

DATA: IT_EKPO TYPE STANDARD TABLE OF I_EKPO INITIAL SIZE 0,

WA_EKPO TYPE I_EKPO.

DATA: V_REPID TYPE SY-REPID,

I_FLDCAT TYPE SLIS_T_FIELDCAT_ALV,

WA_FLDCAT TYPE SLIS_FIELDCAT_ALV,

I_FLDCAT1 TYPE SLIS_T_FIELDCAT_ALV,

WA_FLDCAT1 TYPE SLIS_FIELDCAT_ALV.

DATA: I_TITLE_EKKO TYPE LVC_TITLE VALUE 'FIRST ALV REPORT',

I_TITLE_EKPO TYPE LVC_TITLE VALUE 'SECONDARY ALV REPORT'.

INITIALIZATION.

V_REPID = SY-REPID.

PERFORM FLDCATALOG.

START-OF-SELECTION.

PERFORM DATA_RETRIEVAL.

PERFORM DISPLAY_ALV_REPORT.

FORM FLDCATALOG.

WA_FLDCAT-TABNAME = 'IT_EKKO'.

WA_FLDCAT-FIELDNAME = 'EBELN'.

WA_FLDCAT-SELTEXT_M = 'PO NUMBER'.

APPEND WA_FLDCAT TO I_FLDCAT.

CLEAR WA_FLDCAT.

WA_FLDCAT-TABNAME = 'IT_EKKO'.

WA_FLDCAT-FIELDNAME = 'AEDAT'.

WA_FLDCAT-SELTEXT_M = 'DATE'.

APPEND WA_FLDCAT TO I_FLDCAT.

CLEAR WA_FLDCAT.

WA_FLDCAT-TABNAME = 'IT_EKKO'.

WA_FLDCAT-FIELDNAME = 'BUKRS'.

WA_FLDCAT-SELTEXT_M = 'DOCUMENT TYPE'.

APPEND WA_FLDCAT TO I_FLDCAT.

CLEAR WA_FLDCAT.

WA_FLDCAT-TABNAME = 'IT_EKKO'.

WA_FLDCAT-FIELDNAME = 'LIFNR'.

WA_FLDCAT-SELTEXT_M = 'VENDOR CODE'.

APPEND WA_FLDCAT TO I_FLDCAT.

CLEAR WA_FLDCAT.

ENDFORM.

FORM DATA_RETRIEVAL.

SELECT EBELN AEDAT BUKRS BSART LIFNR

FROM EKKO INTO TABLE IT_EKKO.

ENDFORM.

FORM DISPLAY_ALV_REPORT.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = V_REPID

  • I_CALLBACK_PF_STATUS_SET = ' '

I_CALLBACK_USER_COMMAND = '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_TITLE_EKKO

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

IT_FIELDCAT = I_FLDCAT[]

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

I_SAVE = 'A'

  • IS_VARIANT =

  • IT_EVENTS = I_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 = IT_EKKO

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

FORM USER_COMMAND USING R_COMM TYPE SY-UCOMM

RS_SELFIELD TYPE SLIS_SELFIELD.

CASE R_COMM.

WHEN '&IC1'.

IF RS_SELFIELD-FIELDNAME = 'EBELN'.

SET PARAMETER ID 'BES' FIELD WA_EKKO-EBELN. " BES is data element of EBELN

READ TABLE IT_EKKO INTO WA_EKKO INDEX RS_SELFIELD-TABINDEX.

PERFORM FLDCAT_EKPO.

PERFORM DATA_RETRIEVAL_EKPO.

PERFORM DISPLAY_ALV_REPORT_EKPO.

ENDIF.

ENDCASE.

ENDFORM.

FORM FLDCAT_EKPO.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'EBELN'.

WA_FLDCAT1-SELTEXT_M = 'PO NUMBER'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'EBELP'.

WA_FLDCAT1-SELTEXT_M = 'LINE NO'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'MATNR'.

WA_FLDCAT1-SELTEXT_M = 'MATERIAL NUMBER'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'MENGE'.

WA_FLDCAT1-SELTEXT_M = 'QUANTITY'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'MEINS'.

WA_FLDCAT1-SELTEXT_M = 'BASE UNIT OF MEASURE'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

WA_FLDCAT1-TABNAME = 'IT_EKPO'.

WA_FLDCAT1-FIELDNAME = 'NETPR'.

WA_FLDCAT1-SELTEXT_M = 'PRICE'.

APPEND WA_FLDCAT1 TO I_FLDCAT1.

CLEAR WA_FLDCAT1.

ENDFORM.

FORM DATA_RETRIEVAL_EKPO.

SELECT EBELN EBELP MATNR MENGE MEINS NETPR

INTO TABLE IT_EKPO

FROM EKPO.

ENDFORM.

FORM DISPLAY_ALV_REPORT_EKPO.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

I_CALLBACK_PROGRAM = V_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_TITLE_EKPO

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

IT_FIELDCAT = I_FLDCAT1[]

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

I_SAVE = 'A'

  • IS_VARIANT =

  • IT_EVENTS = I_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 = IT_EKPO

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

Regards,

chandu.

Read only

Former Member
0 Likes
882

hi,

Check for SY_LSIND and do..

SY-LSIND:

Index of the list that is being created (basic list: 0, detail list > 0). Each time an interactive list event occurs, the system automatically increases SY-LSIND by 1. SY-LSIND can be changed in the ABAP program to navigate between detail lists. Changes to SY-LSIND are not taken into account until the end of the list event. Therefore, any manipulation of SY-LISND should be done using the last command of the processing block.

TABLES : zcust_master2.

DATA : wi_zcust_master2 LIKE zcust_master2 OCCURS 0 WITH HEADER LINE.

DATA fld(30).

SELECT * FROM zcust_master2 INTO TABLE wi_zcust_master2.

WRITE 😕 'CUSTOMER IDENTIFICATION NUMBER' COLOR 5.

LOOP AT wi_zcust_master2.

WRITE : / wi_zcust_master2-zcustid HOTSPOT ON.

ENDLOOP.

HIDE : wi_zcust_master2-zcustid.

START-OF-SELECTION.

SET PF-STATUS 'ZBANKCUSTRTRIAL' .

AT LINE-SELECTION.

AT USER-COMMAND.

CASE sy-ucomm.

WHEN 'SUBMIT'.

GET CURSOR FIELD fld.

IF fld = 'WI_ZCUST_MASTER2-ZCUSTID'.

SELECT SINGLE * FROM zcust_master2 INTO wi_zcust_master2 WHERE zcustid

= sy-lisel.

WRITE 😕 wi_zcust_master2-zcustid,

wi_zcust_master2-zcustname,

wi_zcust_master2-zaddr,

wi_zcust_master2-zcity,

wi_zcust_master2-zstate,

wi_zcust_master2-zcountry,

wi_zcust_master2-zphone,

wi_zcust_master2-zemail,

wi_zcust_master2-zfax,

wi_zcust_master2-zstat.

LEAVE TO LIST-PROCESSING.

ENDIF.

WHEN 'BACK1'.

LEAVE PROGRAM.

ENDCASE.

Regards,

Arunsri