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

Former Member
0 Likes
423

Dynamic fieldcatalog without using alv grid.please dont use abap objects concept.i want the solution with normal alv reporting and not with oops concept and all.thanks.

Message was edited by:

prachi s

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
403

Hi,

See the below thread ..

Regards

Sudheer

Dynamic fieldcatalog without using alv grid.please dont use abap objects concept.i want the solution with normal alv reporting and not with oops concept and all.thanks.

Message was edited by:

prachi s

2 REPLIES 2
Read only

Former Member
0 Likes
404

Hi,

See the below thread ..

Regards

Sudheer

Read only

Former Member
0 Likes
403

Hi Prachi

<i><b>check this sample code</b></i>

TYPE-POOLS: SLIS.

TABLES: KNA1.

DATA: BEGIN OF IT_KNA1 OCCURS 0,
KUNNR LIKE KNA1-KUNNR,
LAND1 LIKE KNA1-LAND1,
NAME1 LIKE KNA1-NAME1,
NAME2 LIKE KNA1-NAME2,
END OF IT_KNA1.

DATA: V_EVENTS TYPE SLIS_T_EVENT,
WA_EVENT TYPE SLIS_ALV_EVENT.

DATA: V_REPID LIKE SY-REPID .

DATA: I_GRID_TITLE TYPE LVC_TITLE VALUE 'TEST'.
DATA: IT_LISTHEADER TYPE SLIS_T_LISTHEADER.

DATA: IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
WA_FIELDCAT LIKE LINE OF IT_FIELDCAT.



*SELECT-OPTIONS: S_KUNNR FOR KNA1-KUNNR.
INITIALIZATION.

PERFORM EVENT_CALL.
PERFORM POPULATE_EVENT.

START-OF-SELECTION.

PERFORM IT_POPULATE.

PERFORM ALV_STRUCT.

PERFORM DIS_PLAY.

*&---------------------------------------------------------------------*
*& Form IT_POPULATE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM IT_POPULATE .

SELECT KUNNR LAND1 NAME1 NAME2 FROM KNA1 INTO TABLE IT_KNA1." WHERE KUNNR IN S_KUNNR.


ENDFORM. " IT_POPULATE
*&---------------------------------------------------------------------*
*& Form ALV_STRUCT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM ALV_STRUCT .

WA_FIELDCAT-FIELDNAME = 'KUNNR'.
WA_FIELDCAT-SELTEXT_M = 'NAME'.

APPEND WA_FIELDCAT TO IT_FIELDCAT.

WA_FIELDCAT-FIELDNAME = 'LAND1'.
WA_FIELDCAT-SELTEXT_M = 'LAND'.

APPEND WA_FIELDCAT TO IT_FIELDCAT.

WA_FIELDCAT-FIELDNAME = 'NAME1'.
WA_FIELDCAT-SELTEXT_M = 'NAME'.

APPEND WA_FIELDCAT TO IT_FIELDCAT.

WA_FIELDCAT-FIELDNAME = 'NAME2'.
WA_FIELDCAT-SELTEXT_M = 'NAME'.

APPEND WA_FIELDCAT TO IT_FIELDCAT.


ENDFORM. " ALV_STRUCT
*&---------------------------------------------------------------------*
*& Form DIS_PLAY
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM DIS_PLAY .

V_REPID = SY-REPID.

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 = 'TOP_OF_PAGE'
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME = I_STRUCTURE_NAME
* I_BACKGROUND_ID = ' '
I_GRID_TITLE = I_GRID_TITLE
* I_GRID_SETTINGS = I_GRID_SETTINGS
* IS_LAYOUT = IS_LAYOUT
IT_FIELDCAT = IT_FIELDCAT
* IT_EXCLUDING = IT_EXCLUDING
* IT_SPECIAL_GROUPS = IT_SPECIAL_GROUPS
* IT_SORT = IT_SORT
* IT_FILTER = IT_FILTER
* IS_SEL_HIDE = IS_SEL_HIDE
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT = IS_VARIANT
IT_EVENTS = V_EVENTS
* IT_EVENT_EXIT = IT_EVENT_EXIT
* IS_PRINT = IS_PRINT
* IS_REPREP_ID = 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_ALV_GRAPHICS
* IT_HYPERLINK = IT_HYPERLINK
* IT_ADD_FIELDCAT = IT_ADD_FIELDCAT
* IT_EXCEPT_QINFO = IT_EXCEPT_QINFO
* IR_SALV_FULLSCREEN_ADAPTER = IR_SALV_FULLSCREEN_ADAPTER
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER = E_EXIT_CAUSED_BY_CALLER
* ES_EXIT_CAUSED_BY_USER = ES_EXIT_CAUSED_BY_USER
TABLES
T_OUTTAB = IT_KNA1
* 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. " DIS_PLAY

FORM TOP_OF_PAGE.


CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IT_LISTHEADER
I_LOGO = 'ENJOYSAP_LOGO'
* I_END_OF_LIST_GRID = I_END_OF_LIST_GRID
* I_ALV_FORM = I_ALV_FORM
.


ENDFORM.
*&---------------------------------------------------------------------*
*& Form EVENT_CALL
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM EVENT_CALL .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = V_EVENTS
* EXCEPTIONS
* LIST_TYPE_WRONG = 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. " EVENT_CALL
*&---------------------------------------------------------------------*
*& Form POPULATE_EVENT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM POPULATE_EVENT .

READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMEND'.

IF SY-SUBRC EQ '0'.
WA_EVENT-FORM = 'USER_COMMEND'.
MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME = WA_EVENT-FORM.
ENDIF.


ENDFORM. " POPULATE_EVENT

<b>Also refer this program</b>


BCALV_TEST_LIST_FIELDS
BCALV_TEST_LIST_EVENTS 

check these links

Reward all helpfull answers

Regards

Pavan