2005 IBM Corporation Multiple Line Selection | 4.08 March-2005
Multiple Line Selection
IBM Global Services 2005 IBM Corporation 2 March-2005 Multiple Line Selection | 4.08 The participants will be able to : Write check boxes in the screen. Providing additional information on single record on the screen. Use READ-LINE statement with SY-INDEX. Objectives IBM Global Services 2005 IBM Corporation 3 March-2005 Multiple Line Selection | 4.08 First the user double-clicks on a record. Then a drill down list is created showing data relevant to the record initially selected by the user. Providing Additional Information on a Single Record Only IBM Global Services 2005 IBM Corporation 4 March-2005 Multiple Line Selection | 4.08 First, the user clicks inside of the checkboxes for the vendors that the user is interested in. Then a drill down window appears that contains the telephone numbers for each of the previously selected vendors. Providing Additional Information on Multiple Records IBM Global Services 2005 IBM Corporation 5 March-2005 Multiple Line Selection | 4.08 READ LINE 1.. checked? YES or NO READ LINE 2.. checked? YES or NO READ LINE 3 .. checked? YES or NO READ LINE n .. checked? YES or NO First we must learn techniques to draw checkboxes on the screen. Then we must learn techniques to loop through each of the lines on the report and determine whether or not they were checked. Challenges IBM Global Services 2005 IBM Corporation 6 March-2005 Multiple Line Selection | 4.08 REPORT Y190XX03 LINE-SIZE 255.
TABLES: LFA1. DATA: CHK1.
START-OF-SELECTION. SELECT * FROM LFA1 WHERE TELF1 <> SPACE. WRITE: / CHK1 AS CHECKBOX, LFA1-LIFNR, LFA1-NAME1, LFA1-ORT01. SKIP. ENDSELECT. Create a single-character variable. Then WRITE it to the report as a checkbox. SELECT * SY-SUBRC CHECK Coding Example : Writing Checkboxes to the Screen IBM Global Services 2005 IBM Corporation 7 March-2005 Multiple Line Selection | 4.08 SYNTAX: READ LINE <#>. A New ABAP Reserved Word READ LINE 11 FIELD VALUE LFA1-LIFNR INTO VAR1. MEMORY VAR1 = VEND021 Programmatically Reading a Line in a Report The READ LINE Statement IBM Global Services 2005 IBM Corporation 8 March-2005 Multiple Line Selection | 4.08 READ LINE 1 READ LINE 2 READ LINE 3 READ LINE n SYSTEM FIELD: SY-INDEX A New ABAP System Field READ LINE SY-INDEX FIELD VALUE LFA1-LIFNR INTO VAR1. Looping through Each of the Lines in the Report The SY-INDEX System Field IBM Global Services 2005 IBM Corporation 9 March-2005 Multiple Line Selection | 4.08 This code continues on the next page. REPORT Y190XX03 LINE-SIZE 255.
TABLES: LFA1. DATA: CHK1.
START-OF-SELECTION. SELECT * FROM LFA1 WHERE TELF1 <> SPACE. WRITE: / CHK1 AS CHECKBOX, LFA1-LIFNR, LFA1-NAME1, LFA1-ORT01. HIDE: LFA1-NAME1, LFA1-TELF1. SKIP. ENDSELECT. Write this code. SELECT * SY-SUBRC CHECK The READ LINE Statement IBM Global Services 2005 IBM Corporation 10 March-2005 Multiple Line Selection | 4.08 READ LINE 1 READ LINE 2 READ LINE 3 READ LINE n ..checked? YES or NO .. checked? YES or NO .. checked? YES or NO .. checked? YES or NO AT PF06. WINDOW STARTING AT 10 4 ENDING AT 77 12. DO. CLEAR CHK1. READ LINE SY-INDEX FIELD VALUE CHK1. IF SY-SUBRC <> 0. EXIT. ELSE. CHECK CHK1 = X. WRITE: / LFA1-NAME1, LFA1-TELF1. ENDIF. ENDDO. Coding Example : The READ LINE Statement IBM Global Services 2005 IBM Corporation 11 March-2005 Multiple Line Selection | 4.08 When the user has finished reading the data in the drill down window, he/she returns to the initial screen to find that it has been modified to show the records that have already been selected. First the user clicks on the vendors of interest. Then the user presses the F6 key on the keyboard. The MODIFY LINE Statement IBM Global Services 2005 IBM Corporation 12 March-2005 Multiple Line Selection | 4.08 REPORT Y190XX03 LINE-SIZE 255. TABLES: LFA1. DATA: CHK1. DATA: WAS_USED.
SELECT * FROM LFA1 WHERE TELF1 <> SPACE. WRITE: / CHK1 AS CHECKBOX, WAS_USED, LFA1-LIFNR, LFA1-NAME1, LFA1-ORT01. HIDE: LFA1-NAME1, LFA1-TELF1. SKIP. ENDSELECT. Add new code here and here. SELECT * SY-SUBRC CHECK Coding Example : The MODIFY LINE Statement IBM Global Services 2005 IBM Corporation 13 March-2005 Multiple Line Selection | 4.08 AT PF06. WINDOW STARTING AT 10 4 ENDING AT 77 12. DO. CLEAR CHK1. READ LINE SY-INDEX FIELD VALUE CHK1. IF SY-SUBRC <> 0. EXIT. ELSE. CHECK CHK1 = X. MODIFY CURRENT LINE: FIELD VALUE WAS_USED FROM * CHK1 FROM SPACE FIELD FORMAT CHK1 INPUT OFF. WRITE: / LFA1-NAME1, LFA1-TELF1. ENDIF. ENDDO. Add new code here. Coding Example : The MODIFY LINE Statement IBM Global Services 2005 IBM Corporation 14 March-2005 Multiple Line Selection | 4.08 Demonstration Writing checkboxes, use of READ LINE and MODIFY LINE statement IBM Global Services 2005 IBM Corporation 15 March-2005 Multiple Line Selection | 4.08 Practice Writing checkboxes, use of READ LINE and MODIFY LINE statement IBM Global Services 2005 IBM Corporation 16 March-2005 Multiple Line Selection | 4.08 Summary Checkboxes can be written to the list by using AS CHECKBOX addition with the WRITE command. READ LINE statement can be used to read the contents of a list. With this statement, the contents of the line are populated in system field SY-LISEL. MODIFY LINE statement can be used to modify the list even after it is displayed. The format of the lines in the list can also be changed using MODIFY LINE .. FORMAT addition. IBM Global Services 2005 IBM Corporation 17 March-2005 Multiple Line Selection | 4.08 Questions How do you draw checkboxes in the output list ? How to read the contents of a list ? How do you modify the contents of a list after it is displayed ?