Intro to the AS/400
Download
Report
Transcript Intro to the AS/400
Intro to the AS/400
Chapter 14 - Screen Design Aid
Copyright 1999 by Janson Industries
Objectives
Explain the relationship between
display files and DDS source
members
Show the advantages of using SDA
over DDS to define and test screens
Define a screen using SDA
Test a screen using SDA
Create a menu
2
Why screens?
Eliminate the need to pass
parameters on the CALL command
Easier for the user to specify
parameters
Less coding in the CL program:
No
PARM statement
No DCL’s needed to define program
variables to hold the passed data
3
Screen Design Aid - SDA
SDA generates screen definitions
(I.e. File objects with att = DSPF)
DDS source code definitions can
also be created
Source definitions are stored in
members with type = DSPF
Screen definitions are defined as
display records
4
Screen Design Aid - SDA
Library
Type = *FILE
Att = DSPF
Source Physical
File
Machine Language
Screen definition
User
SDA
DDS Screen
Definition
Type = DSPF
5
Starting SDA
STRSDA
Option 17 from the “Work with
Members” screen
6
SDA Menu
AS/400 Screen Design Aid (SDA)
Select one of the following:
1. Design screens
2. Design menus
3. Test display files
Selection or command
===> ________________________________________________________________________
_____________________________________________________________________________
F1= Help F3=Exit
F4=Prompt
F9=Retrieve
F12=Cancel
7
SDA Define Records
Work with Display Records
File . . . . . . :
Library . . . . :
DDSSRC
YOURLIBXX
Type options, press Enter.
1=Add
2=Edit comments
7=Rename
8=Select keywords
Opt
__
Order
Record
___________
Type
Member . . . . . . :
Source type . . . :
3=Copy
12=Design image
Related Subfile
EXAMPLE
DSPF
4=Delete
Date
DDS Error
(No records in file)
Bottom
F3=Exit
F15=File-level comments
F12=Cancel
F17=Subset
F14=File-level keywords
F24=More keys
8
Add a Record
Add New Record
File . . . . . . :
Library . . . . :
DDSSRC
YOURLIBXX
Member . . . . . . :
Source type . . . :
EXAMPLE
DSPF
Type choices, press Enter.
New record
Type
F3=Exit
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
F5=Refresh
RECEX
Name
RECORD
RECORD,
SFL,
WINDOW,
PULDWN,
MNUBAR
USRDFN
SFLMSG
WDWSFL
PDNSFL
F12=Cancel
9
SDA Design Image Work Screen
Work screen for record RECEX: Press Help for function keys.
10
Defining a Screen
Three types of display fields:
Constant
System
Data
text fields
variable fields
fields
11
Defining Constant Text Fields
Move the cursor to the texts’ screen
position
Type the text
Enclose the text in single quotes (if
text not enclosed in quotes, SDA will
create a separate field for each word)
12
Defining System Variable Fields
System variable fields are output only
Define by typing “reserved words” that
begin with an asterisk
*TIME
*DATE
*USER
*SYSNAME
13
Defining Data Fields
Data fields can be defined 2 ways
Using database field definitions as the
basis for the screen fields
User defined (I.e. user defines the
field type and length)
14
Database Fields
Press F10 - Select Database Fields
Selected fields are assigned a
number
To place fields on the screen, work
screen symbols are used
&
- marks the start of the field
The field number identifies the field
Header position character defines
where field text is positioned
e.g.
&1L
15
Select Data Base Fields
Select Database Files
Type options and names, press Enter.
1=Display database field list
2=Select all fields for input (I)
3=Select all fields for output (O)
4=Select all fields for both (B) input and output
Option
1
_
_
_
Database File
CARTON____
__________
__________
__________
Library
YOURLIBXX_
__________
__________
__________
F3=Exit
F4=Prompt
F12=Cancel
Record
CRTFMT____
__________
__________
__________
16
Select Fields
Select Database Fields
Record . . . :
CRTFMT
Type information, press Enter.
Number of fields to roll . . . . . . . . . . . . . . . . . .
Name of field to search for . . . . . . . . . . . . . . . . .
__8
___________
Type options, press Enter.
1=Display extended field description
2=Select for input (I), 3=Select for output (O), 4=Select for both (B)
Option
_
_
_
_
Field
CRTNUM
AMOUNT
STORE
BCHNUM
Length
8
12
7
4
Type
A
A
A
A
Column Heading
CARTON NUMBER
CARTON SIZE
STORE CODE
BATCH NUMBER
Bottom
F3=Exit
F12=Cancel
17
Work Screen & Selected Fields
1:CRTNUM 2:AMOUNT 3:STORE 4:BCHNUM
18
Work Screen Symbols
Define the location of the field and
header:
&
- marks the location of the screen
fields’ attribute field
L
- places header to left of field
R
- places header to right of field
C
- places header over field
P
- places only header
19
Work Screen Symbols Ex.
&1L
&2R
&3C
&4P
1:CRTNUM 2:AMOUNT 3:STORE 4:BCHNUM
20
Work Screen Symbols Ex.
CARTON NUMBER:
BBBBBBBB
IIIIIIIIIIII
CARTON SIZE
STORE
CODE
OOOOOOO
BATCH NUMBER
1:BCHNUM
21
Creating User Defined Fields
Attribute character (+) marks the start
of the field (I.e. the attribute field)
Display characters - define the field
type and length:
IIII
OOOOO
BBBBBB
3333
66666
999999
4 character input only field
5 character output only field
6 character input/output field
4digit numeric input only field
5 digit numeric output only field
6 digit numeric input/output field
Or use shorthand:
+I(4)
+O(5)
+B(6) +3(4)
+6(5)
+9(6)
22
SDA Ruler
To find a particular col/row location - F14
1
2
3
4
5
6
7
8
9
10
11
12
13
... ... 1 ... ... 2 ... ... 3 ... ... 4 ... ... 5 ... ... 6 ... ... 7 ... ... 8
15
16
17
18
19
20
21
22
23
24
23
Creating User Defined Fields
An attribute field immediately precedes
all screen fields
The attribute field controls the
appearance (and more) of a field
You can specify the format of any field
(regardless of how it was created) two
ways:
Enter
action and display attribute
codes in the attribute field
Invoke
the field definition menu by
entering an asterisk (*) in the attribute
field
24
Action & Display Characters
AC
B
H
R
U
CB
CG
CP
CR
CT
CW
CY
*
Centers the field
Blink
Highlight
Reverse Image
Underline
Blue
Green
Pink
Red
Turquoise
White
Yellow
Select Field Keywords Screen
25
Select Field Keywords screen
Display attributes
Colors
Keying options
Validity check
Input keywords
General keywords
Editing keywords
Database reference
Error messages and Message ID
26
Select Field Keywords screen
Select Field Keywords
Field . . . . . :
Length . . . . :
CRTNUM
8
Usage . . :
Row . . . :
B
7
Column . . . :
18
Type choices, press Enter.
Display attributes
Colors . . . . . .
Keying options . .
Validity check . .
Input keywords . .
General keywords .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Y=Yes
_
_
_
_
_
_
For Field Type
All except Hidden
All except Hidden
Hidden, Input or Both
Input or Both, not float
Input or Both
All types
Database reference . . . . . . .
Error messages . . . . . . . . .
Message ID (MSGID) . . . . . . .
_
_
_
TEXT keyword
CARTON NUMBER
F3=Exit
. . . . . . . . . .
F4=Display Selected Keywords
Hidden, Input, Output, Both
Input, Output, Both
Output or Both
F12=Cancel
27
SDA Select Colors Screen
Select Colors
Field . . . . . :
Length . . . . :
CRTNUM
8
Usage . . :
Row . . . :
B
7
Column . . . :
18
Type choices, press Enter.
Keyword
Colors:
Blue . . .
Green . .
Pink . . .
Red . . .
Turquoise
White . .
Yellow . .
F3=Exit
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
COLOR
BLU
GRN
PNK
RED
TRQ
WHT
YLW
Order
(1-7)
_
_
_
_
_
_
_
Indicators/+
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
F12=Cancel
28
Editing a Screen Definition
Delete fields
D
in the attribute field
blank out field using the space bar
Move fields (on same line)
>>>
or <<<
Move/copy a field to a different line:
type
a hyphen/minus sign (-) in the attribute
field of the field to be moved/copied
type an equal sign in a field location to
Move the field to that location
type two equal signs to Copy the field to
the first equal signs’ location
29
Work with Fields Screen
Display by pressing F4.
Work with Fields
Record . . . :
RECEX
Type information, press Enter.
Number of fields to roll . . . . . . . . . . . . . . . . . .
6
Type options, change values, press Enter.
1=Select keywords
4=Delete field
Option
_
_
_
_
_
_
Order
10
20
30
40
50
60
Field
CARTON NUM
CRTNUM
CARTON SIZ
AMOUNT
STORE
CODE
Type Use
C
A
B
C
A
I
C
C
Length
14
8
11
12
5
4
Row/Col
07 002
07 018
11 032
11 018
14 018
15 018
Ref Condition
Overlap
Y
Y
More...
Add
Add
Add
F3=Exit
_____
_____
_____
__________
__________
__________
F6=Sort by row/column
H
M
P
______
______
______
F12=Cancel
Hidden
Message
Program-to-system
30
Saving and Compiling
To exit - F3, type 1, Hit Enter, then F3 again
Exit SDA Work Screen
Select one of the following:
1. Save work since last Enter and exit work screen
2. Exit without saving any work done on the work screen
3. Resume work screen session
Selection
1
F12=Cancel
31
Saving and Compiling
Make sure the “Save DDS source” & “Create
Display File” fields have Y’s
Save DDS - Create Display File
Type choices, press Enter.
Save DDS source
Source file .
Library . .
Member . . . .
Text . . . . .
_______________
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Y
Y=Yes
DDSSRC
F4 for list
YOURLIBXX
Name, *LIBL ...
EXAMPLE
F4 for list
____________________________
Create display file . .
Prompt for parameters
Display file . . . . .
Library . . . . . .
Replace existing file
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Y
_
EXAMPLE
YOURLIBXX
_
Y=Yes
Y=Yes
F4 for list
Name, *CURLIB
Y=Yes
Submit create job in batch . . . . . . .
Y
Y=Yes
Specify additional
save or create options . . . . . . . .
_
Y=Yes
F3=Exit
F4=Prompt
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
F12=Cancel
32
SDA Generated DDS
Columns . . . :
1 71
Edit
YOURLIBXX/DDSSRC
SEU==> ____________________________________________________________
EXAMPLE
FMT A* 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8
*************** Beginning of data *************************************
0000.10 TS SD 19990407 111727 BJANSON
REL-V3R2M0 5763-PW1
0000.20 EC
0000.30
DSPSIZ(24 80 *DS3)
0000.40
R RECEX
0000.50 TS SD 19990407 111727 BJANSON
REL-V3R2M0 5763-PW1
0000.60
7 2'CARTON NUMBER:'
0000.70
CRTNUM
R
B 7 18REFFLD(CRTFMT/CRTNUM YOURLIBXX/CART0000.80
ON)
0000.90
11 32'CARTON SIZE'
0001.00
AMOUNT
R
I 11 18REFFLD(CRTFMT/AMOUNT YOURLIBXX/CART0001.10
ON)
0001.20
14 18'STORE'
0001.30
15 18'CODE'
0001.40
STORE
R
O 16 18REFFLD(CRTFMT/STORE YOURLIBXX/CARTO0001.50
N)
0001.60
19 18'BATCH NUMBER'
****************** End of data ****************************************
33
Editing Screen fields
To change some screen attributes it may
be easier to edit the generated DDS
source and recompile
I.e. to change a field length you could:
Edit
the length in the fields’ DDS
definition
OR
Delete the field (using SDA) and then
redefine it
34
Editing Screen fields
But sometimes its easier to work with
SDA
To change a field name its easier to
bring up the “Work with Fields”
screen (F4) and type in a new name
Rather than:
Exiting
SDA
Editing the DDS
Saving the changes
35
Using Screens in Programs
The screen definition is identified with a
DCLF statement and incorporated into
the program object during compiling
Library
Source Physical
File
Type = *FILE
Att = DSPF
Type = *PGM
Att = CLP
Screen Definition
Type = CLP
Program Source
Code
COMPILE
36
CL Commands for Screens
When displaying, the program sends
and receives the screen using the
record name not the file name
*************** Beginning of data **********************
0001.00
PGM
0002.00
DCLF
FILE(YOURLIBXX/EXAMPLE) RCDFMT(RECEX)
0003.00
SNDRCV RCDFMT(RECEX)
The program can manipulate screen
fields just like any other program
variable
37
Function Keys
Identified in the screen definition
Action to perform defined in the
application program
Programmer must check function key
status and code the desired function
38
Function Keys
A function key is defined in a file level
specification as follows:
CA03(03)
CA## identifies the function key and
(##) indicates the program variable
that holds the function key status (I.e.
&IN## is created)
When a user presses the function
key, &IN## is set to ‘1’
39
Or function key defined using a prompt screen:
Define Indicator Keywords
Member . . . :
EXAMPLE
Type keywords and parameters, press Enter.
Conditioned keywords:
CFnn CAnn CLEAR PAGEDOWN/ROLLUP PAGEUP/ROLLDOWN
HOME HELP HLPRTN
Unconditioned keywords:
INDTXT VLDCMDKEY
Keyword
CA03
_________
_________
_________
_________
_________
_________
_________
_________
_________
Indicators/+ Resp Text
___ ___ ___ 03
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
___ ___ ___
__________________________________________________
Bottom
F3=Exit
F12=Cancel
40
Function Key
0001.00
0002.00
0003.00
0004.00
Program checks the indicator value
(after receiving the screen) and
performs the desired function
***************
PGM
DCLF
SNDRCV
IF
Beginning of data **********************
FILE(YOURLIBXX/EXAMPLE) RCDFMT(RECEX)
RCDFMT(RECEX)
COND(&IN03 = ‘1’) THEN(GOTO END)
41
Testing Screens
View the input buffer
View the screen created
View the output buffer
You can change field values and
see the effect
42
Testing Screens (1)
Set Test Output Data
Record . . . :
RECEX
Type indicators and output field values, press Enter.
Field
CRTNUM
STORE
Value
98765432:______________________________________________________
Tester enters value(s)
1234567:_______________________________________________________
Bottom
F3=Exit
F12=Cancel
43
Testing Screens (2)
CARTON NUMBER:
98765432
SDA displays value
____________ CARTON SIZE
STORE
CODE
1234567
SDA displays value
BATCH NUMBER
44
Testing Screens (3)
CARTON NUMBER:
Tester enters value
98765432
55 GAL DRUM
Input capable fields
are underlined
CARTON SIZE
STORE
CODE
1234567
BATCH NUMBER
45
Testing Screens (4)
Display Test Input Data
Record . . . :
RECEX
View indicators and input field values.
Field
CRTNUM
AMOUNT
Value
98765432:
55 GAL DRUM :
SDA displays
input values
Press Enter to continue
F3=Exit
F12=Cancel
F14=Display input buffer
46
Creating Menus
Option 2 from the SDA menu
Enter the menu screen text
Press F10 to bring up the Define
Menu Command screen
Enter the associated CL commands
47
Creating Menus
MENUEX
MENUEX Menu
Select one of the following:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Selection or command
F3=Exit
F13=Command area
Menu template displayed
You change text
F10=Work with commands
F20=Reverse
F12=Cancel
F24=More keys
48
Creating Menus
Define Menu Commands
Menu . . . . . . :
MENUEX
Position to menu option . . . . .
__
Type commands, press Enter.
Option
Command
01
_____________________________________________________________________
________________________________________________
02
_____________________________________________________________________
________________________________________________
03
_____________________________________________________________________
________________________________________________
04
_____________________________________________________________________
________________________________________________
05
_____________________________________________________________________
________________________________________________
06
_____________________________________________________________________
________________________________________________
07
_____________________________________________________________________
________________________________________________
F3=Exit
F11=Defined only options
F12=Cancel
More...
F24=More keys
49
Creating Menus
Library
Type = *MSGF
Type = *FILE
Att = DSPF
Type = *MENU
Att = DSPF
Source Physical
File
MENUEXQQ
Att=MNUCMD
User
Att=MNUDDS
SDA
50
Points to Remember
SDA allows you to define and
create screens
SDA creates DDS specifications
and display file objects
Display files can be “tested”
Menus can be defined using SDA
51