Professional Documents
Culture Documents
TEST
0005 CRT "TRAINER FILE DATA MANIPULATION MENU"
0006 CRT "********************"
0007 CRT "1. INSERT"
0008 CRT "2. DISPLAY"
0009 CRT "3. UPDATE"
0010 CRT "4. DELETE"
0011 CRT "5. EXIT"
0012 INPUT Y.CHOICE
0013 R.TRAINER=''
0014 OPEN "TRAINER1" TO F.TRAINER1 THEN
0015 ELSE CRT"UNABLE TO OPEN"
0016
0017 BEGIN CASE
0018 CASE Y.CHOICE=1
0019 GOSUB INSERT
0020 CASE Y.CHOICE=2
0021 GOSUB DISPLAY
0022 CASE Y.CHOICE=3
0023 GOSUB UPDATE
0024 CASE Y.CHOICE=4
0025 GOSUB DELETE
0026 CASE Y.CHOICE=5
0027 EXIT(1)
0028
0029 CASE 1
0030 CRT "INVALID CHOICE"
0031 EXIT(1)
0032 END CASE
0033 RETURN
0034
0035 INSERT:
0036 CRT "INSERT BLOCK"
0037 * R.TRAINER=''
0038 CRT"INPUT USER ID"
0039 INPUT Y.ID
0040
0041 CRT"INPUT USER NAME"
0042 INPUT Y.NAME
0043 R.TRAINER<-1>=Y.NAME
0044
0045 CRT"INPUT USER CLAS"
0046 INPUT Y.CLASSIFICATION
0047 R.TRAINER<-1>=Y.CLASSIFICATION
0048
0049 CRT"INPUT USER REGION"
0050 INPUT Y.RESIGN
0051 R.TRAINER<-1>=Y.RESIGN
0052
0053 CRT"INPUT USER COURSES(COMMA SEPARATED):"
0054 INPUT Y.COURSES
0055 Y.COUNT=DCOUNT(Y.COURSES,",")
0056 FOR I=1 TO Y.COUNT
0057 Y.FLD=FIELD(Y.COURSES,',',I,1)
0058 R.TRAINER<4,-1>=Y.FLD
0059 NEXT I
0060
0061 WRITE R.TRAINER TO F.TRAINER1, Y.ID SETTING V.ERR ON ERROR
0062 CRT "RECORD NOT FOUND"
0063 END
0064 RETURN
0065 DISPLAY:
0066 CRT "DISPLAY BLOCK"
0067 CRT"INPUT USER ID PLS:"
0068 INPUT Y.ID
0069 READ R.TRAINER FROM F.TRAINER1,Y.ID SETTING V.ERR ELSE
0070 CRT "UNABLE TO READ"
0071 END
0072 CRT "NAME: ":R.TRAINER<1>
0073 CRT "CLASSIFICATION" :R.TRAINER<2>
0074 CRT "RESIGN: ":R.TRAINER<3>
0075 CRT "COURSES: ":R.TRAINER<4>
0076 RETURN
00770078 UPDATE:
0079 CRT "UPDATE BLOCK"
0080 CRT "YOU WANT TO UPDATE... GIVE THE ID"
0081 INPUT Y.ID
0082 READU R.TRAINER FROM F.TRAINER1, Y.ID LOCKED
0083 CRT "LOCKED BY PORT":SYSTEM(43):"-RETRYING"
0084 END ELSE
0085 CRT "RECORD DOES NOT EXIST"
0086 END
0087 Y.OPERATION= 'Y'
0088 LOOP
0089 WHILE Y.OPERATION EQ 'Y' DO
0090 CRT "ENTER THE FIELD NO. & THE NEW VALUE DELIMITED BY_"
0091 CRT" 1.NAME 2.CLASSIFICATION 3.RESIGN 4.COURSES"
0092 CRT"COURSES DELIMITED WITH ','"
0093 INPUT Y.FN.FV
0094 Y.FIELD.NUM = FIELD(Y.FN.FV,'_',1,1)
0095 Y.FIELD.VALUE = FIELD(Y.FN.FV,'_',2,1)
0096 IF Y.FIELD.NUM NE 4 THEN
0097 R.TRAINER<Y.FIELD.NUM>=Y.FIELD.VALUE
0098 END
0099 ELSE
0100 R.TRAINER<4>=''
0101 Y.COUNT=DCOUNT(F.FIELD.VALUE,',')
0102 FOR I=1 TO Y.COUNT
0103 Y.CD=FIELD(Y.FIELD.VALUE,',',I,1)
0104 R.TRAINER<4,-1>=Y.CD
0105 NEXT I
0106 END
0107 CRT"DO YOU WISH UPDATE ANOTHER FIELD? Y/N"
0108 INPUT Y.OPERATION
0109 REPEAT
0110 WRITE R.TRAINER TO F.TRAINER1,Y.ID SETTING V.ERR
0111 CRT"RECORD NOT WRITTEN"
0112 * END
0113 RETURN
0114
0115 DELETE:
0116 CRT "DELETE BLOCK"
0117 INPUT Y.ID
0118 DELETE F.TRAINER1, Y.ID SETTING Y.ERRRR ON ERROR
0119 CRT"UNABLE TO DELETE RECORD"
0120 CRT"REASON: ":Y.ERR.VAR
0121 END
PROGRAM TRAINER.TEST2
$INSERT ..\T24_BP I_COMMON
$INSERT ..\T24_BP I_EQUATE
*F.TRAINER=''
OPEN "TRAINER1" TO F.TRAINER THEN
CRT "OPEN SUCCESSFUL"
END ELSE
CRT "UNABLE OPEN"
END
SELECT.STATEMENT ='SELECT TRAINER1 WITH CLASSIFICATION EQ TECH'
* EXECUTE SELECT.STATEMENT RTNLIST KEY.LIST
CALL EB.READLIST(SELECT.STATEMENT, KEY.LIST,'',Y.REC,V.ERROR)
LOOP
REMOVE Y.ID FROM KEY.LIST SETTING POS
* CRT "POSITION : ":POS
WHILE Y.ID:POS
CRT "ID : ":Y.ID
DIM Y.MAT.REC(10)
MATREAD Y.MAT.REC FROM F.TRAINER, Y.ID ELSE
CRT "UNABLE TO READ"
END
Y.COURSES=Y.MAT.REC(4)
CRT "COURSE : ":Y.COURSES
Y.COUNT=DCOUNT(Y.COURSES,@VM)
CRT "COUNT : ":Y.COUNT
IF Y.COUNT GT 5 THEN
Y.MAT.REC(5)<1>= 'SENIOR'
END ELSE
Y.MAT.REC(5)<1>= 'JUNIOR'
END
MATWRITE Y.MAT.REC ON F.TRAINER, Y.ID
REPEAT
* RETURN
STOP