Listing of file='IDS2PR13' on disk='vmedia/701-2716B.wvd.zip'
# Sector 201, program filename = 'IDS2PR13'
1000 REM "IDS2PR13" - Release 2.1 - REPORT GENERATOR OPERATIONS SPECIFICATIONS
1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
: COM J6$
1020 IF E0$="IDS2sR05"THEN GOSUB '33(E0$)
: ELSE GOSUB '32("IDS2sR05")
: E$=ALL(2F)
: PRINT HEX(0F)
: PRINT AT(16,1,37);STR(E$,,37)
: IF E$(1)="\F2"THEN E$="Report"
: ELSE E$="Batch"
: GOSUB '45(12,E$)
: GOSUB '45(13,E$)
: F0=11
: PRINT AT(18,1,40);"Touch SF'0 to Add Operation";AT(19,1,40);" EDIT t
o Modify operation"
1023 STR(E$(),1600,23)=" "
: E$(1622)="4"
: R3$(1)="IDS2PR05"
: MAT REDIM F$(27)83
: DATA LOAD DA T#3,(E4+25)F$()
: E8$=ALL(00)
: MAT SEARCHF$(),=STR(E8$,1,6)TO F9$STEP 9
: C6=INT(VAL(F9$,2)/9)
: J3=MAX(1,1+INT((C6-1)/63))
: GOSUB '55(10,J3)
: GOSUB '43(14)
: J5=MAX(1,MIN(J3,Q))
: GOSUB '36
: MAT REDIM F$(E9)1
: STR(F$(),2242)=ALL(00)
1077 GOSUB 1078
: GOTO 1150
1078 GOSUB '43(4)
: D1=Q
: GOSUB '55(9,J5)
: PRINT HEX(060F);
: IF C6=0THEN RETURN
: FOR I=(J5-1)*63TO MIN(C6-1,(J5-1)*63+62)
: PRINT AT(MOD(I,21)+2,INT((I-(J5-1)*63)/21)*13+41);
: CONVERT I+1TO E$,(###)
: IF I>248THEN PRINT " ";
: ELSE PRINT ;E$;
: IF I>248THEN 1130
: E8$=STR(F$(),I*9+1,9)&ALL(00)
: FOR J=1TO 12
: ROTATEC(STR(E8$,J),-2)
: NEXT J
: ADD(STR(E8$,1,11),20)
1123 PRINT " ";STR(E8$,1,8);
1130 NEXT I
: RETURN
1150 GOSUB '63("EXECUTE = Accept",", '0 = Add operation, EDIT = Modify, '09 =
Delete, '31 = Cancel"," ")
: R3$(1)="IDS2PR05"
: GOSUB '34(250)
: IF Q=0THEN 1200
: IF Q=9THEN 1300
: IF Q=33THEN 1400
: IF Q=31OR Q=32THEN 1500
: IF Q<5THEN 1750
: IF Q>16AND Q<21THEN 1260
1180 PRINT HEX(07);
: GOTO 1150
1200 IF C6=249THEN 1180
: CONVERT C6+1TO E8$,(###)
: E$="OPRTN"&E8$
: GOSUB '45(3,E$)
: R3$(1)="IDS2PR13"
: GOSUB '34(3)
: GOSUB 1600
: IF Q=0THEN 1250
: GOSUB '35("Operation name already exists. Enter new name or cancel ('31)
")
: R3$(1)="IDS2PR13"
: GOTO 1200
1250 GOSUB '55(4,C6+1)
: STR(E$(),1614,3)=HEX(003131)
: GOSUB '36
: COM CLEAR J6$
: LOAD T#2,"IDS2PR16"1000,
1260 J5=Q-16
: PRINT HEX(06);
: FOR I=2TO 22
: PRINT AT(I,40,40);
: NEXT I
: GOSUB 1078
: GOTO 1150
1300 J2=Q
: IF C6=0THEN 1180
: R3$(1)="IDS2PR13"
: GOSUB '34(3)
: GOSUB 1600
: IF Q=0THEN 1700
: X=Q
: GOSUB '55(4,X)
1310 GOSUB '53("Touch FN'9 to finish deletion, FN'31 to abort")
: GOSUB '34(250)
: IF Q=32THEN 1023
: IF Q<>9THEN 1310
: GOSUB '43(4)
: STR(F$(),Q*9-8)=STR(F$(),Q*9+1)&ALL(00)
: MAT REDIM F$(27)83
: DATA SAVE DA T#3,(E4+25)F$()
: MAT REDIM F$(E9)1
: GOSUB '43(11)
: IF Q=0THEN 1020
: GOSUB '43(1)
: J6$=E$
: IF E$=" "THEN 1020
: GOSUB '43(3)
: STR(J6$,9)=E$
: IF E$=" "THEN 1020
1350 MAT REDIM E$(24)83
: DATA SAVE DA T#3,(E4)E$()
: MAT REDIM E$(E8)1
: MAT REDIM F$(27)83
: DATA SAVE DA T#3,(E4+25)F$()
: MAT REDIM F$(E9)1
: R3$(1)="IDS2PR13"
: LOAD T#2,"IDS2PS95"1000,
1400 J2=Q
: IF C6=0THEN 1180
: R3$(1)="IDS2PR13"
: GOSUB '34(3)
: GOSUB 1600
: IF Q=0THEN 1700
: PRINT HEX(0F)
: PRINT AT(16,1,37);"Copy edits from a Report/Oper. FN '24"
: X=Q
: GOSUB '55(4,X)
: COM CLEAR J6$
: LOAD T#2,"IDS2PR16"1000,
1500 R3$(1)="IDS2MR01"
: COM CLEAR J6$
: LOAD T#2,"IDS2PR05"1000,
1600 E8$=STR(E$,1,8)ADDALL(E0)
: FOR I=12TO 1STEP -1
: ROTATEC(STR(E8$,I),2)
: NEXT I
: MAT SEARCHF$(),=STR(E8$,1,6)TO F9$STEP 9
: Q=0
: IF F9$=HEX(0000)THEN RETURN
: E8$=STR(F$(),VAL(F9$,2),9)&ALL(00)
: FOR I=1TO 12
: ROTATEC(STR(E8$,I),-2)
: NEXT I
: ADD(STR(E8$,1,11),20)
: STR(E$(),1611,3)=STR(E8$,9)
: E$(1614)=STR(E8$,12)
: GOSUB '55(11,VAL(E$(1614)))
: GOSUB '36
: Q=1+INT(VAL(F9$,2)/9)
: RETURN
1700 GOSUB '35("Operation does not exist. Enter new name or cancel")
: R3$(1)="IDS2PR13"
: IF J2=9THEN 1300
: GOTO 1400
1750 J5=Q
: GOSUB '43(15)
: IF J5>QTHEN 1180
: GOTO 1077
1799 STOP #
: ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PR13"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"