Professional Documents
Culture Documents
Objectives
2 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
3 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
The Challenges
First Challenge:
How did the ABAP code know when and which record
the user has selected?
Second Challenge:
How is this record sent back as criteria to an
ABAP SELECT statement?
4 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
SYNTAX: AT LINE-SELECTION.
5 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
6 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
7 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
AT LINE-SELECTION.
CHECK SY-LSIND = 1.
WINDOW STARTING AT 10 4
ENDING AT 77 12.
WRITE: / The user double-clicked on a line in the report.
WRITE: / SY-LISEL.
8 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
9 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
10 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Demonstration
11 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Practice
12 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
13 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
SELECT *
CHECK
START-OF-SELECTION. SY-SUBRC
SELECT * FROM LFA1 INTO WA_LFA1.
WRITE: / WA_LFA1-LIFNR, WA_LFA1-NAME1, WA_LFA1-ORT01.
HIDE: WA_LFA1-LIFNR.
ENDSELECT.
LIST MEMORY
14 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
SELECT *
START-OF-SELECTION.
SELECT * FROM LFA1 INTO WA_LFA1.
WRITE: / WA_LFA1-LIFNR, . . . MEMORY
HIDE: WA_LFA1-LIFNR.
INDEX WA_LFA1-LIFNR
ENDSELECT.
1 ----
2 ----
3 VEND011
CHECK
4 VEND012
SY-SUBRC
5 VEND013
The HIDE Memory Area : (with More than One Field Stored)
START-OF-SELECTION. SELECT *
SELECT * FROM LFA1 INTO WA_LFA1.
WRITE: / WA_LFA1-LIFNR, WA_LFA1-NAME1, WA_LFA1-ORT01.
HIDE: WA_LFA1-LIFNR, WA_LFA1-TELF1.
ENDSELECT.
HIDE MEMORY
INDEX WA_LFA1- WA_LFA1-TELF1
CHECK 1 LIFNR ----
SY-SUBRC 2 ---- ----
3 ---- 555-1111
If we used the HIDE 4 VEND011 555-2222
statement to hide both 5 VEND012 555-3333
LIFNR and TELF1, our VEND013
HIDE memory area would
look like this.
16 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
The Correlation between the HIDE Memory Area and Line Numbers
WORK AREA
WA_LFA1
17 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
REPORT Y190XX02.
DATA: WA_LFA1 TYPE LFA1 ,
WA_BSIK TYPE BSIK. CHECK
SELECT * SY-SUBRC
START-OF-SELECTION.
SELECT * FROM LFA1 INTO WA_LFA1.
WRITE: / WA_LFA1-LIFNR, WA_LFA1-NAME1, WA_LFA1-ORT01.
HIDE: WA_LFA1-LIFNR, WA_LFA1-TELF1.
ENDSELECT.
18 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
DATA
SOURCE
TABLE BASIC LIST
WORK AREA
1 (header)
field string WRITE 2 (uline)
3 VEND011 Star Craft Metal
4 VEND012 Quality Fabr.
5 VEND013 Euro Output SA
19 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
BASIC LIST
1 (header) HIDE MEMORY
2 (uline) INDEX WA_LFA1-
3 VEND011 Star Craft Metal 1 LIFNR WA_LFA1-
4 VEND012 Quality Fabr. 2 ---- TELF1
----
5 VEND013 Euro Output SA 3 ----
VEND011 ----
4
VEND012 555-1111
5
VEND013 555-2222
555-3333
TABLE WORK AREA
(Field String)
data available for further processing
VEND 555- Old Old Old Old Old Old Old Old Old
011 1111 Data Data Data Data Data Data Data Data Data
20 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
21 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Demonstration
22 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Practice
23 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Challenges Revisited
First Challenge:
How did the ABAP code know which record the user
has selected?
METHOD: When a user event is triggered, the system
automatically records the line selected (via SY-LISEL
and other system fields).
Second Challenge:
How is this record sent back as criteria to an
ABAP SELECT statement?
METHOD: HIDE memory area.
24 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
25 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
26 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
27 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
A New
ABAP
SYNTAX: END-OF-SELECTION. Event
28 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
29 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
VEND 555- Old Old Old Old Old Old Old Old Old
012 2222 Data Data Data Data Data Data Data Data Data
30 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
BASIC LIST
HIDE MEMORY
1 (header) WA_LFA1-
2 (uline) INDEX LIFNR WA_LFA1-
3 VEND011 Star Craft Metal 1 ---- TELF1
4 VEND012 Quality Fabr. 2 ---- ----
3 VEND011 ----
5 VEND013 Euro Output SA
4 VEND012 555-1111
5 VEND013 555-2222
555-3333
TABLE WORK AREA
(Field String)
No values restored from HIDE into program fields. Values restored
from last valid line selected by the user are still in the work area.
VEND 555- Old Old Old Old Old Old Old Old Old
012 2222 Data Data Data Data Data Data Data Data Data
31 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Part II - Initializing Fields after Each Use First: Initialise the WA_LFA1-
LIFNR program field just before
the detail list is displayed.
END-OF-SELECTION.
CLEAR WA_LFA1-LIFNR. Second: Make sure the
WA_LFA1-LIFNR program field is
AT LINE-SELECTION. not initial before processing the
CHECK SY-LSIND = 1. rest of the user event (i.e. make
CHECK NOT WA_LFA1-LIFNR IS INITIAL. 2
sure the user selected a valid
WINDOW STARTING AT 10 4 line).
ENDING AT 77 12.
SELECT * FROM BSIK INTO WA_BSIK WHERE
LIFNR = WA_LFA1-LIFNR.
WRITE: / WA_LFA1-LIFNR, WA_BSIK-BELNR.
ENDSELECT.
IF SY-SUBRC <> 0. SELECT *
WRITE: / No invoices for vendor, WA_LFA1-LIFNR.
ENDIF. 1
CLEAR WA_LFA1-LIFNR.
32 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Flow of Data
HIDE
BASIC MEMORY
LIST
DATA
SOURCE
WORK AREA
33 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Summary
34 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013
IBM Global Business Services
Question
35 The AT LINE-SELECTION Event (SY-LISEL vs. HIDE) | Dec-2008 IBM Corporation 2013