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
736

Hi ,

can i add one alv grid and one alv list is in one page.is it possible?plz tell me

Thanks,

Mahesh

Hi ,

can i add one alv grid and one alv list is in one page.is it possible?plz tell me

Thanks,

Mahesh

5 REPLIES 5
Read only

Former Member
0 Likes
685

Hi,

Check the standard program BALVBT01.

Regards,

Bhaskar

Read only

0 Likes
685

hi bhaskar,

BALVBT01 this standard program it adds heirarchy alv and alv list, but i am asking about can i display alv grid and alv list in one page.is it possible?

Thanks,

Mahesh.

Read only

0 Likes
685

Perhaps no.

Read only

0 Likes
685

in ooalv it can possible

you declare one screen on that you have to place two custom container and call two alv's.

Read only

Former Member
0 Likes
685
  • Type-pool enthält Feldkatalogstruktur

TYPE-POOLS: SLIS.

  • Includes

INCLUDE .

  • Interne Tabelle für Feldkatalog

DATA: LFIELD TYPE SLIS_T_FIELDCAT_ALV.

DATA: XFIELD TYPE SLIS_T_FIELDCAT_ALV.

DATA: YFIELD TYPE SLIS_T_FIELDCAT_ALV.

DATA: ZFIELD TYPE SLIS_T_FIELDCAT_ALV.

DATA: HFIELD TYPE SLIS_T_FIELDCAT_ALV.

  • Kopfzeile zum Feldkatalog

DATA: AFIELD TYPE SLIS_FIELDCAT_ALV.

  • Special Groups

DATA: GT_SP_GROUPS TYPE SLIS_T_SP_GROUP_ALV WITH HEADER LINE.

  • Zwischensummen und Sortierung

DATA: GT_ZSUM TYPE SLIS_T_SORTINFO_ALV WITH HEADER LINE.

  • Filterbedingungen

DATA: GT_FILTER TYPE SLIS_T_FILTER_ALV WITH HEADER LINE.

  • iTab für Kopfinformationen zur Liste

DATA: XHEADER TYPE SLIS_T_LISTHEADER WITH HEADER LINE.

  • Layoutstruktur

DATA: GS_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: X_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: Y_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: Z_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: H_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: L_LAYOUT TYPE SLIS_LAYOUT_ALV.

  • Keyinfo

DATA: GS_KEYINFO TYPE SLIS_KEYINFO_ALV.

  • Excludingtabelle

DATA: GT_EXTAB TYPE slis_T_EXTAB WITH HEADER LINE.

  • Layoutstruktur

DATA: XISETAB TYPE SLIS_SELDIS_ALV.

  • Events

DATA: GT_XEVENTS TYPE SLIS_T_EVENT.

DATA: GT_YEVENTS TYPE SLIS_T_EVENT.

DATA: GT_ZEVENTS TYPE SLIS_T_EVENT.

DATA: GT_HEVENTS TYPE SLIS_T_EVENT.

DATA: GT_LEVENTS TYPE SLIS_T_EVENT.

DATA: GT_PRINT TYPE SLIS_PRINT_ALV.

  • OK_Code für Layoutpopup

DATA: OK_CODE LIKE SY-UCOMM.

DATA: FLG_EXIT(1) TYPE C. " Abbruch des Layoutpopups.

  • Farbtabelle für Zelleneinfärbungen

DATA: GT_COLOR TYPE SLIS_T_SPECIALCOL_ALV WITH HEADER LINE.

TABLES: SCARR, SPFLI, SBOOK.

  • Interne Struktur mit Obermenge der möglichen Ausgabefelder

DATA: BEGIN OF XDATA OCCURS 1,

CARRID LIKE SCARR-CARRID,

CARRNAME LIKE SCARR-CARRNAME,

CURRCODE LIKE SCARR-CURRCODE,

BLUBBER LIKE LTDXT-TEXT,

NUMC(3) TYPE N, " ohne DDIC-Bezug!

ICONS(30) TYPE C, " ohne DDIC-Bezug!

SYMBOLS(30) TYPE C,

AMPEL(1) TYPE C,

BOX(1) TYPE C,

LISTINFO(3) TYPE C,

  • COLINFO TYPE SLIS_T_SPECIALCOL_ALV,

END OF XDATA.

  • Interne Struktur mit Obermenge der möglichen Ausgabefelder

DATA: BEGIN OF YDATA OCCURS 1.

INCLUDE STRUCTURE SPFLI.

DATA: BLUBBER LIKE LTDXT-TEXT,

NUMC(3) TYPE N, " ohne DDIC-Bezug!

ICONS(30) TYPE C, " ohne DDIC-Bezug!

SYMBOLS(30) TYPE C,

AMPEL(1) TYPE C,

BOX(1) TYPE C,

LISTINFO(3) TYPE C,

COLINFO TYPE SLIS_T_SPECIALCOL_ALV,

END OF YDATA.

DATA: BEGIN OF ZDATA OCCURS 1.

INCLUDE STRUCTURE SBOOK.

DATA: BLUBBER LIKE LTDXT-TEXT,

NUMC(3) TYPE N, " ohne DDIC-Bezug!

ICONS(30) TYPE C, " ohne DDIC-Bezug!

SYMBOLS(30) TYPE C,

AMPEL(1) TYPE C,

BOX(1) TYPE C,

LISTINFO(3) TYPE C,

COLINFO TYPE SLIS_T_SPECIALCOL_ALV,

END OF ZDATA.

DATA: HDATA LIKE XDATA OCCURS 0 WITH HEADER LINE.

DATA: LDATA LIKE XDATA OCCURS 0 WITH HEADER LINE.

DATA: IDATA LIKE YDATA OCCURS 0 WITH HEADER LINE.

DATA:

G_EXIT,

X_SAVE,

DEFAULT,

X_VARIANT LIKE DISVARIANT,

XS_LAYOUT LIKE GS_LAYOUT,

XS_EVENT TYPE SLIS_ALV_EVENT,

GT_SPFLI LIKE SPFLI OCCURS 0 WITH HEADER LINE,

G_VARIANT LIKE DISVARIANT.

  • Report selection

SELECT-OPTIONS CARRID FOR SCARR-CARRID.

DATA: REPID LIKE SY-REPID.

PARAMETERS: PFSTATUS TYPE SLIS_FORMNAME DEFAULT 'PF_STATUS_SET'.

PARAMETERS: HIERSEQU AS CHECKBOX DEFAULT 'X'.

PARAMETERS: BOX_TABL(5) DEFAULT 'IDATA'.

PARAMETERS: MAX_DATA AS CHECKBOX DEFAULT ' '.

*----

-


INITIALIZATION.

REPID = SY-REPID.

START-OF-SELECTION.

PERFORM SELECTION.

PERFORM XEVENTS.

PERFORM LEVENTS.

PERFORM YEVENTS.

PERFORM ZEVENTS.

PERFORM HEVENTS.

PERFORM FIELDS.

*

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'

EXPORTING

I_CALLBACK_PROGRAM = REPID

I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

I_CALLBACK_PF_STATUS_SET = PFSTATUS.

*

X_LAYOUT-BOX_FIELDNAME = 'BOX'.

X_LAYOUT-BOX_TABNAME = 'XDATA'.

X_LAYOUT-LIGHTS_FIELDNAME = 'AMPEL'.

X_LAYOUT-INFO_FIELDNAME = 'LISTINFO'.

*

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = XFIELD

IS_LAYOUT = X_LAYOUT

I_TABNAME = 'XDATA'

IT_EVENTS = GT_XEVENTS

I_TEXT = TEXT-0B1

TABLES

T_OUTTAB = XDATA.

*

IF HIERSEQU = SPACE.

  • y_layout-no_zebra = 'X'.

Y_LAYOUT-BOX_FIELDNAME = 'BOX'.

Y_LAYOUT-BOX_TABNAME = 'YDATA'.

Y_LAYOUT-INFO_FIELDNAME = 'LISTINFO'.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = YFIELD

IS_LAYOUT = Y_LAYOUT

I_TABNAME = 'YDATA'

IT_EVENTS = GT_YEVENTS

I_TEXT = TEXT-0B2

TABLES

T_OUTTAB = YDATA.

ELSE.

  • h_layout-no_zebra = 'X'.

H_LAYOUT-BOX_FIELDNAME = 'BOX'.

H_LAYOUT-BOX_TABNAME = BOX_TABL.

H_LAYOUT-INFO_FIELDNAME = 'LISTINFO'.

GS_KEYINFO-HEADER01 = 'CARRID'.

GS_KEYINFO-ITEM01 = 'CARRID'.

GS_KEYINFO-ITEM02 = 'CONNID'.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_HS_APPEND'

EXPORTING

IS_LAYOUT = H_LAYOUT

IT_FIELDCAT = HFIELD

IS_KEYINFO = GS_KEYINFO

I_HEADER_TABNAME = 'HDATA'

I_ITEM_TABNAME = 'IDATA'

IT_EVENTS = GT_HEVENTS

I_TEXT = TEXT-0B2

TABLES

T_OUTTAB_HEADER = HDATA

T_OUTTAB_ITEM = IDATA.

ENDIF.

*

  • z_layout-no_zebra = 'X'.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = ZFIELD

IS_LAYOUT = Z_LAYOUT

I_TABNAME = 'ZDATA'

IT_EVENTS = GT_ZEVENTS

I_TEXT = TEXT-0B3

TABLES

T_OUTTAB = ZDATA.

*

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'

EXPORTING

IT_FIELDCAT = LFIELD

IS_LAYOUT = L_LAYOUT

I_TABNAME = 'LDATA'

IT_EVENTS = GT_LEVENTS

I_TEXT = TEXT-0B4

TABLES

T_OUTTAB = LDATA.

*

GT_PRINT-RESERVE_LINES = 2.

CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'

EXPORTING

IS_PRINT = GT_PRINT.

*----


*

  • FORM FIELDS *

*----


*

  • ........ *

*----


*

FORM FIELDS.

DATA: L_COUNT TYPE I.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'CARRID'.

  • AFIELD-TABNAME = 'XDATA'.

AFIELD-REF_TABNAME = 'SCARR'.

AFIELD-KEY = 'X'. "define field as key

APPEND AFIELD TO XFIELD.

AFIELD-TABNAME = 'HDATA'.

APPEND AFIELD TO HFIELD.

AFIELD-TABNAME = 'LDATA'.

APPEND AFIELD TO LFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-COL_POS = L_COUNT.

  • AFIELD-TABNAME = 'XDATA'.

AFIELD-FIELDNAME = 'CARRNAME'.

AFIELD-REF_TABNAME = 'SCARR'.

APPEND AFIELD TO XFIELD.

AFIELD-TABNAME = 'HDATA'.

APPEND AFIELD TO HFIELD.

AFIELD-TABNAME = 'LDATA'.

APPEND AFIELD TO LFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

  • AFIELD-TABNAME = 'XDATA'.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'CURRCODE'.

AFIELD-REF_TABNAME = 'SCARR'.

  • AFIELD-INPUT = INPUT.

APPEND AFIELD TO XFIELD.

AFIELD-TABNAME = 'HDATA'.

APPEND AFIELD TO HFIELD.

AFIELD-TABNAME = 'LDATA'.

APPEND AFIELD TO LFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

  • AFIELD-TABNAME = 'XDATA'.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'NUMC'.

AFIELD-DATATYPE = 'NUMC'.

AFIELD-REPTEXT_DDIC = TEXT-001.

  • AFIELD-INPUT = INPUT.

AFIELD-DO_SUM = 'X'.

APPEND AFIELD TO XFIELD.

AFIELD-TABNAME = 'HDATA'.

APPEND AFIELD TO HFIELD.

AFIELD-TABNAME = 'LDATA'.

APPEND AFIELD TO LFIELD.

*

CLEAR AFIELD.

L_COUNT = 0.

L_COUNT = L_COUNT + 1.

AFIELD-COL_POS = L_COUNT.

AFIELD-TABNAME = SPACE.

AFIELD-FIELDNAME = 'CARRID'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-KEY = 'X'. "define field as key

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'CONNID'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-KEY = 'X'. "define field as key

AFIELD-KEY_SEL = 'X'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'CITYFROM'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'AIRPFROM'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'CITYTO'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'AIRPTO'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'DEPTIME'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'ARRTIME'.

AFIELD-REF_TABNAME = 'SPFLI'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'FLTIME'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

*

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-COL_POS = L_COUNT.

AFIELD-FIELDNAME = 'FLTYPE'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Ikonen

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-COL_POS = L_COUNT.

AFIELD-TABNAME = SPACE.

AFIELD-FIELDNAME = 'ICONS'.

AFIELD-REF_TABNAME = ' '.

AFIELD-SP_GROUP = 'B'.

AFIELD-REPTEXT_DDIC = 'Gpk?'(045).

AFIELD-NO_OUT = 'X'.

AFIELD-ICON = 'X'.

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '4'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Symbole

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-FIELDNAME = 'SYMBOLS'.

AFIELD-REF_TABNAME = ' '.

AFIELD-COL_POS = L_COUNT.

AFIELD-REPTEXT_DDIC = 'Prs?'(040).

AFIELD-SP_GROUP = 'B'.

AFIELD-NO_OUT = 'X'.

AFIELD-SYMBOL = 'X'.

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '4'.

AFIELD-JUST = 'C'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Gepäckgewicht

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-SP_GROUP = 'A'.

AFIELD-NO_OUT = SPACE.

AFIELD-FIELDNAME = 'DISTANCE'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-COL_POS = L_COUNT.

AFIELD-NO_SIGN = 'X'.

AFIELD-QFIELDNAME = 'DISTID'.

AFIELD-OUTPUTLEN = '10'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Mengeneinheit

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

L_COUNT = L_COUNT + 1.

AFIELD-TABNAME = SPACE.

AFIELD-SP_GROUP = 'A'.

AFIELD-NO_OUT = SPACE.

AFIELD-FIELDNAME = 'DISTID'.

AFIELD-REF_TABNAME = 'SPFLI'.

AFIELD-COL_POS = L_COUNT.

AFIELD-OUTPUTLEN = '4'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Numc

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-COL_POS = L_COUNT.

AFIELD-TABNAME = SPACE.

AFIELD-FIELDNAME = 'NUMC'.

AFIELD-COL_POS = L_COUNT.

AFIELD-DO_SUM = 'X'.

AFIELD-SP_GROUP = 'S'.

AFIELD-SELTEXT_S = 'NUMC'.

AFIELD-SELTEXT_M = 'NUMC_U'.

AFIELD-SELTEXT_L = 'NUMC_USER'(041).

AFIELD-DATATYPE = 'NUMC'.

AFIELD-OUTPUTLEN = '10'.

AFIELD-NO_OUT = SPACE.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Blubber

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-COL_POS = L_COUNT.

AFIELD-TABNAME = SPACE.

AFIELD-FIELDNAME = 'BLUBBER'.

AFIELD-REF_TABNAME = 'LTDXT'.

AFIELD-REF_FIELDNAME = 'TEXT'.

AFIELD-COL_POS = L_COUNT.

AFIELD-HOTSPOT = 'X'.

AFIELD-SP_GROUP = 'S'.

AFIELD-REPTEXT_DDIC = 'Kommentar'(043).

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '20'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO YFIELD.

AFIELD-TABNAME = 'IDATA'.

APPEND AFIELD TO HFIELD.

  • Key

L_COUNT = 0.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'CARRID'.

AFIELD-OUTPUTLEN = '3'.

AFIELD-KEY = 'X'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

  • AFIELD-OFFSET = '4'.

APPEND AFIELD TO ZFIELD.

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'FLDATE'.

AFIELD-KEY = 'X'.

AFIELD-KEY_SEL = 'X'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

APPEND AFIELD TO ZFIELD.

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'CONNID'.

AFIELD-KEY = 'X'.

AFIELD-KEY_SEL = 'X'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

APPEND AFIELD TO ZFIELD.

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'BOOKID'.

AFIELD-KEY_SEL = 'X'.

AFIELD-KEY = 'X'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

APPEND AFIELD TO ZFIELD.

  • Ikonen

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'ICONS'.

AFIELD-REF_TABNAME = ' '.

AFIELD-SP_GROUP = 'B'.

AFIELD-COL_POS = L_COUNT.

AFIELD-REPTEXT_DDIC = 'Gpk?'(045).

AFIELD-NO_OUT = 'X'.

AFIELD-ICON = 'X'.

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '4'.

APPEND AFIELD TO ZFIELD.

  • Buchungsdatum

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'ORDER_DATE'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

APPEND AFIELD TO ZFIELD.

  • Kundentyp

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'CUSTTYPE'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

APPEND AFIELD TO ZFIELD.

  • Kundennummer

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'CUSTOMID'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

AFIELD-OUTPUTLEN = '3'.

APPEND AFIELD TO ZFIELD.

  • Raucher

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'SMOKER'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

APPEND AFIELD TO ZFIELD.

  • Flugklasse

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'CLASS'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

APPEND AFIELD TO ZFIELD.

  • Rechnungsstellung ja/nein

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'INVOICE'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO ZFIELD.

  • Symbole

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'SYMBOLS'.

AFIELD-REF_TABNAME = ' '.

AFIELD-COL_POS = L_COUNT.

AFIELD-REPTEXT_DDIC = 'Prs?'(040).

AFIELD-SP_GROUP = 'B'.

AFIELD-NO_OUT = 'X'.

AFIELD-SYMBOL = 'X'.

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '4'.

AFIELD-JUST = 'C'.

APPEND AFIELD TO ZFIELD.

  • Betrag

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'LOCCURAM'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-SP_GROUP = 'H'.

AFIELD-COL_POS = L_COUNT.

AFIELD-CFIELDNAME = 'LOCCURKEY'.

AFIELD-DATATYPE = 'CURR'.

AFIELD-DO_SUM = 'X'.

AFIELD-OUTPUTLEN = '10'.

APPEND AFIELD TO ZFIELD.

  • Währung

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'LOCCURKEY'.

AFIELD-TECH = ' '.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-OUTPUTLEN = '4'.

AFIELD-SP_GROUP = 'H'.

APPEND AFIELD TO ZFIELD.

  • BetragFW

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'FORCURAM'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-SP_GROUP = 'F'.

AFIELD-COL_POS = L_COUNT.

AFIELD-NO_OUT = 'X'.

AFIELD-DO_SUM = 'X'.

AFIELD-CFIELDNAME = 'FORCURKEY'.

AFIELD-DATATYPE = 'CURR'.

AFIELD-OUTPUTLEN = '10'.

APPEND AFIELD TO ZFIELD.

  • Währung

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'FORCURKEY'.

AFIELD-SP_GROUP = 'F'.

AFIELD-TECH = ' '.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-NO_OUT = 'X'.

AFIELD-OUTPUTLEN = '4'.

APPEND AFIELD TO ZFIELD.

  • Gepäckgewicht

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-SP_GROUP = 'A'.

AFIELD-NO_OUT = 'X'.

AFIELD-FIELDNAME = 'LUGGWEIGHT'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-NO_SIGN = 'X'.

AFIELD-QFIELDNAME = 'WUNIT'.

AFIELD-OUTPUTLEN = '10'.

APPEND AFIELD TO ZFIELD.

  • Mengeneinheit

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-SP_GROUP = 'A'.

AFIELD-NO_OUT = 'X'.

AFIELD-FIELDNAME = 'WUNIT'.

AFIELD-REF_TABNAME = 'SBOOK'.

AFIELD-COL_POS = L_COUNT.

AFIELD-OUTPUTLEN = '4'.

APPEND AFIELD TO ZFIELD.

  • Numc

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'NUMC'.

AFIELD-COL_POS = L_COUNT.

AFIELD-SP_GROUP = 'S'.

AFIELD-SELTEXT_S = 'NUMC'.

AFIELD-SELTEXT_M = 'NUMC_U'.

AFIELD-SELTEXT_L = 'NUMC_USER'(041).

AFIELD-DATATYPE = 'NUMC'.

AFIELD-OUTPUTLEN = '10'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO ZFIELD.

  • Blubber

L_COUNT = L_COUNT + 1.

CLEAR AFIELD.

AFIELD-FIELDNAME = 'BLUBBER'.

AFIELD-REF_TABNAME = 'LTDXT'.

AFIELD-REF_FIELDNAME = 'TEXT'.

AFIELD-COL_POS = L_COUNT.

AFIELD-HOTSPOT = 'X'.

AFIELD-SP_GROUP = 'S'.

AFIELD-REPTEXT_DDIC = 'Kommentar'(043).

AFIELD-DATATYPE = 'CHAR'.

AFIELD-OUTPUTLEN = '20'.

AFIELD-NO_OUT = 'X'.

APPEND AFIELD TO ZFIELD.

ENDFORM. " FIELDS

*&----


*

*& Form SELECTION

*&----


*

  • Selektion von Beispieldaten *

*----


*

  • <-> XDATA Globale Datentabelle für Listausgabe

*----


*

FORM SELECTION.

DATA: L_TABIX LIKE SY-TABIX.

DATA: LT_SBOOK LIKE SBOOK OCCURS 1 WITH HEADER LINE.

DATA: L_TABIX2 LIKE SY-TABIX.

  • Read Data

SELECT * FROM SCARR INTO CORRESPONDING FIELDS OF

TABLE XDATA WHERE CARRID IN CARRID.

SELECT * FROM SPFLI INTO TABLE GT_SPFLI FOR ALL ENTRIES IN XDATA

WHERE CARRID = XDATA-CARRID.

LOOP AT GT_SPFLI.

YDATA-NUMC = SY-TABIX DIV 5.

MOVE-CORRESPONDING GT_SPFLI TO YDATA.

APPEND YDATA.

ENDLOOP.

LOOP AT XDATA.

XDATA-NUMC = SY-TABIX DIV 4.

L_TABIX = SY-TABIX.

REFRESH GT_COLOR.

CLEAR GT_COLOR.

IF L_TABIX > 5.

XDATA-AMPEL = '1'.

ELSEIF XDATA-CURRCODE = 'USD'.

XDATA-AMPEL = '2'.

ELSE.

XDATA-AMPEL = '3'.

ENDIF.

IF XDATA-CURRCODE = 'LIT'.

GT_COLOR-FIELDNAME = 'CURRCODE'.

GT_COLOR-COLOR-COL = 6.

GT_COLOR-COLOR-INT = 0.

APPEND GT_COLOR.

XDATA-SYMBOLS = SYM_PLUS_CIRCLE.

ELSEIF XDATA-CURRCODE = 'DEM'.

GT_COLOR-COLOR-COL = 5.

GT_COLOR-COLOR-INT = 0.

APPEND GT_COLOR.

XDATA-SYMBOLS = SYM_FILLED_SQUARE.

ELSE.

GT_COLOR-FIELDNAME = 'CURRCODE'.

GT_COLOR-COLOR-COL = 7.

GT_COLOR-COLOR-INT = 1.

GT_COLOR-COLOR-INV = 1.

APPEND GT_COLOR.

XDATA-SYMBOLS = SYM_FILLED_DIAMOND.

ENDIF.

MODIFY XDATA.

ENDLOOP.

*

HDATA[] = XDATA[].

LDATA[] = XDATA[].

IDATA[] = YDATA[].

*

SELECT * FROM SBOOK UP TO 50 ROWS. "#EC CI_NOWHERE

L_TABIX = L_TABIX + 1.

L_TABIX2 = L_TABIX2 + 1.

MOVE-CORRESPONDING SBOOK TO ZDATA.

IF L_TABIX > 20.

ZDATA-CARRID = 'LH'.

ZDATA-CONNID = '47'.

ENDIF.

IF L_TABIX > 14 AND L_TABIX <= 20 OR

L_TABIX > 25.

ZDATA-FLDATE = ZDATA-FLDATE + 1.

ENDIF.

IF L_TABIX2 > 7 AND L_TABIX <= 20.

ZDATA-CONNID = 49.

ELSEIF L_TABIX >= 26.

ZDATA-CONNID = 51.

ENDIF.

IF L_TABIX2 >= 14 AND L_TABIX <= 20 .

CLEAR L_TABIX2.

ENDIF.

APPEND ZDATA.

ENDSELECT.

LOOP AT ZDATA.

L_TABIX = SY-TABIX.

IF L_TABIX = 1.

ZDATA-LOCCURAM = 520.

ENDIF.

REFRESH GT_COLOR.

CLEAR GT_COLOR.

IF ZDATA-LOCCURAM < 500.

ZDATA-AMPEL = '1'.

ELSEIF ZDATA-LOCCURAM < 530.

ZDATA-AMPEL = '2'.

ELSE.

ZDATA-AMPEL = '3'.

ENDIF.

IF ZDATA-LOCCURAM > 600.

GT_COLOR-FIELDNAME = 'LOCCURAM'.

GT_COLOR-COLOR-COL = 6.

GT_COLOR-COLOR-INT = 0.

APPEND GT_COLOR.

ZDATA-SYMBOLS = SYM_PLUS_CIRCLE.

ELSEIF ZDATA-LOCCURAM > 500.

GT_COLOR-COLOR-COL = 5.

GT_COLOR-COLOR-INT = 0.

APPEND GT_COLOR.

ZDATA-SYMBOLS = SYM_FILLED_SQUARE.

ELSE.

GT_COLOR-FIELDNAME = 'LOCCURAM'.

GT_COLOR-COLOR-COL = 7.

GT_COLOR-COLOR-INT = 1.

GT_COLOR-COLOR-INV = 1.

APPEND GT_COLOR.

ZDATA-SYMBOLS = SYM_FILLED_DIAMOND.

ENDIF.

IF ZDATA-LUGGWEIGHT = 0.

ZDATA-ICONS = ICON_INCOMPLETE.

GT_COLOR-FIELDNAME = 'LUGGWEIGHT'.

GT_COLOR-COLOR-COL = 4.

GT_COLOR-COLOR-INT = 1.

GT_COLOR-COLOR-INV = 1.

APPEND GT_COLOR.

ELSEIF ZDATA-LUGGWEIGHT < 45.

ZDATA-ICONS = ICON_CHECKED.

GT_COLOR-FIELDNAME = 'LUGGWEIGHT'.

GT_COLOR-COLOR-COL = 6.

GT_COLOR-COLOR-INT = 1.

GT_COLOR-COLOR-INV = 1.

APPEND GT_COLOR.

ELSE.

ZDATA-ICONS = ICON_FAILURE.

GT_COLOR-FIELDNAME = 'LUGGWEIGHT'.

GT_COLOR-COLOR-COL = 5.

GT_COLOR-COLOR-INT = 1.

GT_COLOR-COLOR-INV = 1.

APPEND GT_COLOR.

ENDIF.

ZDATA-NUMC = ( L_TABIX DIV 10 ) * 10.

ZDATA-COLINFO = GT_COLOR[].

IF NOT ZDATA-LUGGWEIGHT IS INITIAL.

MOVE '??' TO ZDATA-WUNIT.

ENDIF.

MODIFY ZDATA.

ENDLOOP.

IF MAX_DATA = 'X'.

DO 100 TIMES.

APPEND XDATA.

APPEND YDATA.

APPEND ZDATA.

  • append hdata.

  • append idata.

ENDDO.

ENDIF.

ENDFORM. " SELECTION

*----


*

  • FORM EVENTS *

*----


*

  • ........ *

*----


*

FORM LEVENTS.

ENDFORM.

FORM XEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_END_OF_PAGE.

XS_EVENT-FORM = 'XEND_OF_PAGE'.

APPEND XS_EVENT TO GT_XEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_PAGE.

XS_EVENT-FORM = 'XTOP_OF_PAGE'.

APPEND XS_EVENT TO GT_XEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_LIST.

XS_EVENT-FORM = 'XTOP_OF_LIST'.

APPEND XS_EVENT TO GT_XEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_END_OF_LIST.

XS_EVENT-FORM = 'XEND_OF_LIST'.

APPEND XS_EVENT TO GT_XEVENTS.

CLEAR XS_EVENT.

  • XS_EVENT-NAME = SLIS_EV_BEFORE_LINE_OUTPUT.

  • XS_EVENT-FORM = 'XBEFORE_LINE_OUTPUT'.

  • APPEND XS_EVENT TO GT_XEVENTS.

ENDFORM.

*----


*

  • FORM YEVENTS *

*----


*

  • ........ *

*----


*

FORM YEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_END_OF_PAGE.

XS_EVENT-FORM = 'YEND_OF_PAGE'.

APPEND XS_EVENT TO GT_YEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_PAGE.

XS_EVENT-FORM = 'YTOP_OF_PAGE'.

APPEND XS_EVENT TO GT_YEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_LIST.

XS_EVENT-FORM = 'YTOP_OF_LIST'.

APPEND XS_EVENT TO GT_YEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_END_OF_LIST.

XS_EVENT-FORM = 'YEND_OF_LIST'.

APPEND XS_EVENT TO GT_YEVENTS.

ENDFORM.

FORM HEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_PAGE.

XS_EVENT-FORM = 'HTOP_OF_PAGE'.

APPEND XS_EVENT TO GT_HEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_TOP_OF_LIST.

XS_EVENT-FORM = 'HTOP_OF_LIST'.

APPEND XS_EVENT TO GT_HEVENTS.

CLEAR XS_EVENT.

XS_EVENT-NAME = SLIS_EV_END_OF_LIST.

XS_EVENT-FORM = 'HEND_OF_LIST'.

APPEND XS_EVENT TO GT_HEVENTS.

ENDFORM.

FORM ZEVENTS.

  • CLEAR XS_EVENT.

  • XS_EVENT-NAME = SLIS_EV_BEFORE_LINE_OUTPUT.

  • XS_EVENT-FORM = 'ZBEFORE_LINE_OUTPUT'.

  • APPEND XS_EVENT TO GT_ZEVENTS.

ENDFORM.

*

FORM ZBEFORE_LINE_OUTPUT USING LINEINFO TYPE SLIS_LINEINFO.

WRITE AT /20 'HalloZ'.

ENDFORM.

FORM XBEFORE_LINE_OUTPUT USING LINEINFO TYPE SLIS_LINEINFO.

WRITE AT /20 'HalloX'.

ENDFORM.

FORM XTOP_OF_PAGE.

  • BREAK-POINT.

WRITE: / 'X_TOP_OF_PAGE'.

ENDFORM.

*----


*

  • FORM XTOP_OF_LIST *

*----


*

  • ........ *

*----


*

FORM XTOP_OF_LIST.

  • BREAK-POINT.

WRITE: / 'X_TOP_OF_LIST'.

ENDFORM.

*----


*

  • FORM XEND_OF_PAGE *

*----


*

  • ........ *

*----


*

FORM XEND_OF_PAGE.

  • BREAK-POINT.

WRITE: / 'X_END_OF_PAGE'.

ENDFORM.

*----


*

  • FORM XEND_OF_LIST *

*----


*

  • ........ *

*----


*

FORM XEND_OF_LIST.

  • BREAK-POINT.

WRITE: / 'X_END_OF_LIST'.

ENDFORM.

*

FORM YTOP_OF_PAGE.

  • BREAK-POINT.

WRITE: / 'Y_TOP_OF_PAGE'.

ENDFORM.

*----


*

  • FORM YTOP_OF_LIST *

*----


*

  • ........ *

*----


*

FORM YTOP_OF_LIST.

  • BREAK-POINT.

WRITE: / 'Y_TOP_OF_LIST'.

ENDFORM.

*----


*

  • FORM YEND_OF_PAGE *

*----


*

  • ........ *

*----


*

FORM YEND_OF_PAGE.

  • BREAK-POINT.

WRITE: / 'Y_END_OF_PAGE'.

ENDFORM.

*----


*

  • FORM YEND_OF_LIST *

*----


*

  • ........ *

*----


*

FORM YEND_OF_LIST.

  • BREAK-POINT.

WRITE: / 'Y_END_OF_LIST'.

ENDFORM.

*

*----


*

  • FORM YTOP_OF_LIST *

*----


*

  • ........ *

*----


*

FORM HTOP_OF_LIST.

  • BREAK-POINT.

WRITE: / 'h_TOP_OF_LIST'.

ENDFORM.

*----


*

  • FORM YEND_OF_PAGE *

*----


*

  • ........ *

*----


*

FORM HEND_OF_PAGE.

  • BREAK-POINT.

WRITE: / 'h_END_OF_PAGE'.

ENDFORM.

*----


*

  • FORM YEND_OF_LIST *

*----


*

  • ........ *

*----


*

FORM HEND_OF_LIST.

  • BREAK-POINT.

WRITE: / 'h_END_OF_LIST'.

ENDFORM.

*

FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM

RS_SELFIELD TYPE SLIS_SELFIELD.

CASE R_UCOMM.

WHEN 'REFR'.

LOOP AT XDATA.

IF XDATA-BOX = 'X'.

XDATA-LISTINFO = 'C50'.

ELSE.

XDATA-LISTINFO = SPACE.

ENDIF.

MODIFY XDATA.

ENDLOOP.

LOOP AT YDATA.

IF YDATA-BOX = 'X'.

YDATA-LISTINFO = 'C50'.

ELSE.

YDATA-LISTINFO = SPACE.

ENDIF.

MODIFY YDATA.

ENDLOOP.

LOOP AT IDATA.

IF IDATA-BOX = 'X'.

IDATA-LISTINFO = 'C50'.

ELSE.

IDATA-LISTINFO = SPACE.

ENDIF.

MODIFY IDATA.

ENDLOOP.

  • LOOP AT HDATA.

  • IF HDATA-BOX = 'X'.

  • HDATA-LISTINFO = 'C50'.

  • ELSE.

  • HDATA-LISTINFO = SPACE.

  • ENDIF.

  • MODIFY HDATA.

  • ENDLOOP.

RS_SELFIELD-REFRESH = 'X'.

WHEN OTHERS.

ENDCASE.

ENDFORM.

*----


*

  • FORM PF_STATUS_SET *

*----


*

  • ........ *

*----


*

  • --> EXTAB *

*----


*

FORM PF_STATUS_SET USING EXTAB TYPE SLIS_T_EXTAB.

  • BREAK-POINT.

SET PF-STATUS 'STANDARD' EXCLUDING EXTAB.

ENDFORM.

Edited by: murali papana on Sep 2, 2008 1:05 AM