04-27-2009 7:08 PM
I have a class say: person with two attributes: id, name. I build an internal table of person objects. How can I display this table in ALV?
Thanks!
04-27-2009 7:31 PM
Hi,
If you are talking about the header-Line item type display, then you can use Hierarchical-sequential ALV
04-27-2009 7:51 PM
see the example..
REPORT ZBASICALV1 .
TYPE-POOLS SLIS.
TABLES : SFLIGHT.
DATA ITAB LIKE SFLIGHT OCCURS 0 WITH HEADER LINE.
SELECT * FROM SFLIGHT INTO TABLE ITAB.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_CALLBACK_PROGRAM = ' '
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
I_STRUCTURE_NAME = 'SFLIGHT'
* IS_LAYOUT =
* IT_FIELDCAT =
* 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_BUFFER_ACTIVE =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
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.
Regards,
Prabhudas
04-27-2009 7:58 PM
ALV HIERARCHIES.......
REPORT ZABAP_EX1 .
TYPE-POOLS SLIS.
TABLES : KNA1,VBAK.
*INTERNAL TABLES DECLAREATION
DATA ITAB_KNA1 LIKE KNA1 OCCURS 0 WITH HEADER LINE.
DATA ITAB_VBAK LIKE VBAK OCCURS 0 WITH HEADER LINE.
*FIELD CATALOG DECLARATION
DATA FCAT_HIRC TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE.
*EVENTS DECLARATION
DATA EVENTS TYPE SLIS_T_EVENT WITH HEADER LINE.
*LAYOUT DECLARATION
DATA LAYOUT TYPE SLIS_LAYOUT_ALV .
*FIELD CATLOG INTIALIZATION FOR CUSTOMER INFORMATION
FCAT_HIRC-COL_POS = 1.
FCAT_HIRC-FIELDNAME = 'KUNNR'.
FCAT_HIRC-REF_TABNAME = 'KNA1'.
FCAT_HIRC-TABNAME = 'ITAB_KNA1'.
APPEND FCAT_HIRC.
FCAT_HIRC-COL_POS = 2.
FCAT_HIRC-FIELDNAME = 'NAME1'.
FCAT_HIRC-REF_TABNAME = 'KNA1'.
FCAT_HIRC-TABNAME = 'ITAB_KNA1'.
APPEND FCAT_HIRC.
FCAT_HIRC-COL_POS = 3.
FCAT_HIRC-FIELDNAME = 'ORT01'.
FCAT_HIRC-REF_TABNAME = 'KNA1'.
FCAT_HIRC-TABNAME = 'ITAB_KNA1'.
APPEND FCAT_HIRC.
*FIELD CATLOG INTIALIZATION FOR SALES DOCUMENT HEADER
FCAT_HIRC-COL_POS = 1.
FCAT_HIRC-FIELDNAME = 'VBELN'.
FCAT_HIRC-REF_TABNAME = 'VBAK'.
FCAT_HIRC-TABNAME = 'ITAB_VBAK'.
APPEND FCAT_HIRC.
FCAT_HIRC-COL_POS = 2.
FCAT_HIRC-FIELDNAME = 'VKBUR'.
FCAT_HIRC-REF_TABNAME = 'VBAK'.
FCAT_HIRC-TABNAME = 'ITAB_VBAK'.
APPEND FCAT_HIRC.
FCAT_HIRC-COL_POS = 3.
FCAT_HIRC-FIELDNAME = 'NETWR'.
FCAT_HIRC-REF_TABNAME = 'VBAK'.
FCAT_HIRC-TABNAME = 'ITAB_VBAK'.
APPEND FCAT_HIRC.
DATA KEYINFO TYPE SLIS_KEYINFO_ALV.
SELECT * FROM KNA1 INTO TABLE ITAB_KNA1.
SELECT * FROM VBAK INTO TABLE ITAB_VBAK.
**
EVENTS-FORM = 'TOP_FORM'.
EVENTS-NAME = 'TOP_OF_PAGE'.
APPEND EVENTS.
*
*Customer's account number with credit limit reference
KEYINFO-HEADER01 = 'KUNNR'.
KEYINFO-ITEM01 = 'KUNNR'.
KEYINFO-HEADER02 = 'KNKLI'.
KEYINFO-ITEM02 = 'KNKLI'.
*
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
I_CALLBACK_PROGRAM = SY-CPROG
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* IT_EXCLUDING =
.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_HS_APPEND'
EXPORTING
IS_LAYOUT = LAYOUT
IT_FIELDCAT = FCAT_HIRC[]
IS_KEYINFO = KEYINFO
I_HEADER_TABNAME = 'ITAB_KNA1'
I_ITEM_TABNAME = 'ITAB_VBAK'
IT_EVENTS = EVENTS[]
* IT_SORT =
* I_TEXT = ' '
TABLES
T_OUTTAB_HEADER = ITAB_KNA1
T_OUTTAB_ITEM = ITAB_VBAK.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'
* EXPORTING
* I_INTERFACE_CHECK = ' '
* 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 TOP_FORM.
WRITE :/25 'CUSTOMER WISE SALES ORDER INFORMATION ' COLOR 3.
ENDFORM.
regards,
Prabhudas
06-03-2009 5:46 AM