Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Added: | ||||||||
> > |
SELECT ILF StatementRelease 5.0.0 of APPX implements the SELECT ILF statement.SELECTThe SELECT statement allows the access path of in input process to be changed dynamically. The structure of the statement is:SELECT AAA FILENAME KEY IS _____________________________The application and file name must be specified, even though this statement is relevant only for the Process Control File (PCF). SCAN is available for the key field name, and only defined keys are presented as options. One reasonable use for the SELECT statement would be to facilitate access path switching by users, without them having to use F3 (SELECT ACCESS PATH), and perhaps in that way limiting which keys they can select. Note that the SELECT statement does not force KEY ENTRY phase, so, without further coding, a user not in KEY ENTRY would see no immediate change in view. It would seem that a valuable use would be to redisplay a scrolling screen using an alternate key, and to do so, the above defined PUSH and POP statements come in very handy. Here's an example: The file is called TEST42. The primary key is TEST42 ID NO.. Alternate keys are defined as TEST42 CATEGORY and TEST42 REGION. The screen has three buttons defined, linked to User Option 1, 2, and 3. The Option Intercept Event Point contains the following code: * First, we disable the SELECT ACCESS PATH option (F3) IF --- OPTION EQ SELECT ACCESS PATH T SET --- OPTION = * Next, use the SELECT statement to set the desired path IF --- OPTION EQ USER 1 T SELECT TST TEST42 KEY IS TEST42 CATEGORY F IF --- OPTION EQ USER 2 FT SELECT TST TEST42 KEY IS TEST42 REGION FF IF --- OPTION EQ USER 3 FFT SELECT TST TEST42 KEY IS TEST42 ID NO FFF END * Ignore these buttons if pushed in ADD mode IF --- MODE EQ ADD T END * Now, push the options into the stack to switch into KEY ENTRY * and redisplay the records (remember, last in, first out) SET --- OPTION = RETURN PUSH --- OPTION FIELD * IF --- MODE EQ DELETE T SET --- OPTION = DELETE MODE F IF --- MODE EQ CHANGE FT SET --- OPTION = CHANGE MODE FF SET --- OPTION = INQUIRE MODE PUSH --- OPTION FIELDFinally, just add one line of code to Pre-Display: POP --- OPTION FIELDAlso related to this new statement is a new Pre-Defined Field called --- ACCESS PATH. As one might assume, the field contains the value of the current access path for the Process Control File. The field may be viewed, but not changed via ILF code (that is to say, an ILF statement to SET --- ACCESS PATH to a specified value will be ignored). Limitations:Comments:Read what other users have said about this page or add your own comments.-- SteveFrizzell - 01 Oct 2008 |