manuals.
You may wish to refer to the "Documentation" chapter of your *Programmer's Reference Guide* for more information about (cont.)
the system. For this exercise we will bypass Step 6 (Documentation). In your real application development we strongly (cont.)
recommend that you not bypass it, though. Documentation is an important part of any application (cont.)
system.
##
Multi-Level HELP
The application you just created has several levels of online HELP built in. When the operator tries to enter invalid (cont.)
data into the screen and receives an error message, (s)he can press the PF1 key (F1 on a PC) to receive an **error (cont.)
analysis **HELP display.
When the user mis-enters the key (Employee number) and receives an "invalid key" message, (s)he can press PF1 to receive the **key analysis **display.
If the user hasn't made either of the above mistakes, but just wishes to get HELP for the function (s)he is trying to (cont.)
do; (s)he can just press the PF1 key and the **function-level HELP** display will be presented.
If the user wishes to see documentation for a given field on the screen, (s)he can point the cursor to that field and press PF2 and a **field-level HELP** display will be presented.
All these features are generated automatically into every online application. Basic HELP text is also automatically created for you -- you can add your own text, as well.
| ```
**     DO THIS:
On the VACSEE screen, press the HELP key PF1.
   
```**
You will receive the Function-Level HELP screen.
| ```
**     DO THIS:
Press PF8 to browse forward 
 Press PF3 to return to your VACSEE screen.
   
```**
Next, let's see the field-level HELP facility.
| ```
**     DO THIS:
Point to the hire date field, press the Field-Level HELP key, PF2.
   
```**
| ```
**
VACSEE 01
Date: 08/12/1988  VACATION/SICK/COMP DAYS Time: 10:15:04
  Emp# 000-00-0001
  First Name Harry
  Last Name Houdini
  Hire Date  12/11/45
  Earned Vacation  14.50
  Vacation Taken  2.25
  Sick Days Earned  124.50
  Sick Days Taken  3.00
  Comp Days Earned  2.00-
  Comp Days Taken  .00
 Comment (3 lines) Heavy into Escape literature.
  Likes to be submerged while handcuffed and
  strait-jacketed in a coffin-like vault.
Press PF4 for browse (LOC) screen  Press PF13 for Hardcopy
Press PF16 to Copy field to buffer  Press PF17 to Paste data from buffer
```**
Figure 17 -- Testing HELP Keys
#
STEP 7 --  Put into Production
##
Security
When you generated your new MMP (via MMPCREAT) MAGEC automatically created safe, test-only security profiles for each (cont.)
of the nine new online functions (VACADD, VACSEE, etc.). This allowed you to immediately test and demonstrate your new (cont.)
application without having to manually define each function to the security system. These automatically generated (cont.)
security parameters do not permit "production" use of the new application.
When you have completed the testing and revising of your new application and are ready for it to "go into production", (cont.)
you merely need to alter the security parameters to indicate that the new functions are now allowed for use in (cont.)
"production". Actually, in some shops this task is handled by designated security officers. The parameters are entered (cont.)
or modified online and are stored in the MAGEC Dictionary. You do not need to wait for any assemblies, table updates, (cont.)
or interruptions to online processing. Changes can be made effective immediately.
For more detailed information regarding the tasks of the security officers refer to the MAGEC "Security" chapter.
#
Development is Done
##
What Have You Produced?
In completing the tutorial for this first project you have produced a powerful and useful online application. We (cont.)
encourage you to fully exercise and test the new Vacation system you have just created in order to understand just how (cont.)
much you can accomplish in so short a time with MAGEC.
Your new application supports Inquiry, Update, Data Entry, Browse, and Programmerless Query. The data is always (cont.)
properly edited and formatted for you. Entry formats are extremely user-friendly and "bad data" never reaches the (cont.)
files.
The nine standard functions were generated automatically for you and they are all done in one compact, efficient program. The program easily handles multiple files and multiple screens.
All access to these new functions and the vacation data are governed by the built-in security system. You (or your (cont.)
security officer) can control When, Where, and by Whom each function can be done. Changes to security parameters take (cont.)
effect immediately.
MAGEC will automatically create custom menus for your users based upon their individual security authorizations. You never need to do any programming or maintenence for these menus.
The new application automatically has Pop-Up Windows and Window swapping features. The user can have two full-screen (cont.)
sessions active at one terminal, (s)he can swap between them using the PF9 key. The user can also cursor-select an item (cont.)
from a browse or query screen and then, by pressing PF24, receive a pop-up list of the ID's of all the items shown on (cont.)
that browse or query--cursor-selecting from that pop-up list will transfer to the selected item.
Each function of the new application has HELP key support. By simply pressing PF1 the user can view Online (cont.)
Documentation for the function (s)he is doing, or for any error messages, without disturbing the screen or data being (cont.)
displayed. Field-level HELP is accommodated via PF2 (F2 on PC). If a screen field is being validated using MAGEC's (cont.)
table lookup facility, then the field-level help display will include a scrolling display (a "pick list") of valid (cont.)
entries with descriptions
cursor-selecting from that scrolling list will automatically fill the original screen field with the selected value.
Copy and Paste facilities are accommodated using PF16 (Copy) and PF17 (Paste). This enables your user to copy data from any field of any screen to any other without re-keying it.
The new application is extremely efficient. It even compresses messages to minimize transmissions both to and from the terminal.
You can print hardcopy technical documentation for the new application by executing the MSKDOC batch utility program. You can also print the standard Cobol compile listing.
You have unlimited customization capabilities, there is virtually nothing that you cannot do using MAGEC. What you have (cont.)
demonstrated so far is merely what MAGEC generates *without any customization*. This is what might be called a (cont.)
"vanilla" application in MAGEC. In the MAGEC "Customization" Tutorial you will learn how to modify this vanilla (cont.)
application using standard Cobol coding which MAGEC will save in its dictionary and insert into the source (cont.)
program.
#
Appendix A --  Sample Files
##
VAC Data Class
The VAC data class is defined as a VSAM/KSDS file with a DD NAME of TSTK1. The total record length is 270 bytes. There are two elements defined:
VAC00
36-byte audit-stamp
VAC01
234-byte vacation data
There is one key for the VAC data class:
VACK1
9-digit employee# + 9-byte blank padding
The VAC data class is actually a redefinition of the MAGEC "test" file (TSTK1). There is also a data class named TST (cont.)
which defines this same file. That is the reason for the 9-byte padding on the key.
The Cobol copy book defining the VAC01 element is on the MAGEC library (ALG-file) as a member named VAC01-C. You may review it online in MAGEC by entering:
LBRSEE VAC01-C
             
 
To view the data class definition for VAC enter:
DCLSEE VAC
             
 
To view the key definition enter:
KYFSEE VACK1
             
 
To view the element defintions enter:
ELTSEE VAC01
             
 
ELTSEE VAC00
             
 
To view the data item (field) definitions for VAC01 enter:
DITLST VAC01
             
 
You can cursor-select any item to see more detail.
##
SIF Data Class
The SIF data class is defined as a VSAM/KSDS file with a DD NAME of SIFK1. The total record length is 300 bytes. There are two elements defined:
SIF00
36-byte audit-stamp
SIF01
234-byte security information data
There is one key for the SIF data class:
SIFK1
2-byte prefix + 9-digit employee#
** entire key is binary (6-bytes long)
The Cobol copy book defining the SIF01 element is on the MAGEC library (ALG-file) as a member named SIF01-C. You may review it online in MAGEC by entering:
LBRSEE SIF01-C
             
 
To view the data class definition for SIF enter:
DCLSEE SIF
             
 
To view the key definition enter:
KYFSEE SIFK1
             
 
To view the element definitions enter:
ELTSEE SIF01
             
 
ELTSEE SIF00
             
 
To view the data item (field) definitions for SIF01 enter:
DITLST SIF01
             
 
(you can cursor-select any item to see more detail)
**
**
NOTE:
**
There is a security authorization requirement to access the SIF01 element. Also, some of its data is encrypted for further security.
#
Appendix B --  Attributes
##
3270 Attributes
The standard default logic generated by MAGEC handles attributes so well that you will rarely need to deal with them. (cont.)
However, MAGEC allows you to freely manipulate 3270 attributes both at execution time and as you are "painting" your (cont.)
screens. You can easily override the default attributes.
To simplify your work in handling 3270 attributes we have established a naming scheme for them. Your online programs (cont.)
(MMP's) include a copy book which equates these mnemonics to the actual one-byte attribute codes. You can view that (cont.)
copy book in MAGEC by entering:
LBRSEE MAGEC003
             
 
The symbolic names for the attribute codes are six-charaters long, each character position having a specific meaning and set of possible values:
     Character     Letter       Meaning
     Position      Value        of Letter Value
          1          P          Protected
                &nbs (cont.)
p;    S          Skip-Protecte (cont.)
d
                     U          Unprotected

next: app06.md.txt