Listing of file='IDS2PR12' on disk='vmedia/701-2716B.wvd.zip'
# Sector 189, program filename = 'IDS2PR12'
1000 REM "IDS2PR12" - Release 2.1 - REPORT GENERATOR - SAVE CONTROL FILE
1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
: E$="Saving "&HEX(22)&STR(E$(),2,8)&HEX(22)&" report control file"
: GOSUB '53(E$)
: GOSUB '43(17)
: F1=Q
: C6=MAX(1,ABS(INT(-Q*9/249)))
: D2=MAX(1,ABS(INT(-Q*8/249)))
: GOSUB '43(20)
: D4=Q
: J5=MAX(1,ABS(INT(-Q*9/249)))
: GOSUB '43(21)
: F5=Q
: GOSUB '43(22)
: F7=Q+5
: CONVERT STR(E$(),854,2)TO F6
: X=INT(256/F7)
1110 Y=MAX(1,ABS(INT(-F5/X)))
: C9=8+C6+D2+J5+Y
1130 GOSUB '39(STR(E$(),10,8),3)
: IF Q=2AND M-A+1>=C9THEN 2000
: IF Q=0THEN 1500
: SCRATCH T#P,F5$
: E7$="JUNK"
: J1=-1
1160 J1=J1+1
: CONVERT J1TO STR(E7$,5),(####)
: LIMITS T#P,E7$,A,B,C,D
: IF D<>0THEN 1160
: SAVE T#P,(STR(E$(),10,8))E7$1000,1000
: SCRATCH T#P,E7$
1500 DATA SAVE DC OPEN T#P,(C9)STR(E$(),10,8)
: DSKIP #P,C9-2S
: DATA SAVE DC #P,END
: GOTO 1130
2000 E6=A
: D1=P
: MAT REDIM E$(18)83
: DATA SAVE DA T#D1,(E6)E$()
: MAT REDIM E$(250)2,E2$(250)2,F$(249)9,E3$(249)8,E4$(250)1
: MAT MOVE F$()(6,1)TO E4$(1)
: STR(E4$(),F1+1)=ALL(FF)
: MAT REDIM E4$(249)1
: MAT SORTE4$()TO E2$(),E$()
: MAT REDIM E2$(249)9
: MAT MOVE F$(),E$()TO E2$()
: MAT MOVE E2$()TO F$()
2070 MAT REDIM E2$(249)8
: MAT MOVE E3$(),E$()TO E2$()
: MAT MOVE E2$()TO E3$()
: MAT REDIM E4$(16)16,E$(E8)1,F$(C6*3)83,E3$(D2*3)83
: MAT REDIM E2$(27)83
: DATA LOAD DA T#3,(E4+25)E2$()
: MAT REDIM E2$(3*J5)83
: DATA SAVE DA T#D1,(E6+6,E6)F$()
: DATA SAVE DA T#D1,(E6,E6)E3$()
: DATA SAVE DA T#D1,(E6,E6)E2$()
: MAT REDIM F$(E9)1,E3$(249)8,E2$(250)9
: MAT REDIM E2$(250)9
2145 K=0
: F$()=" "
: IF F5=0THEN 2290
: FOR I=0TO F6-1
: DATA LOAD BA T#3,(E4+33+I+1)E4$()
: $TRAN(STR(E4$(),3,2)," 0")R
: IF STR(E4$(),3)=" "THEN 2270
: K=K+1
: OR (STR(E4$(),1,4),10)
: HEXPACKF9$FROMSTR(E4$(),1,4)
: E8$=STR(E4$(),5,4)&ALL(00)
: ADD(STR(E8$,1,4),E0)
: FOR J=4TO 1STEP -1
: ROTATEC(STR(E8$,J),2)
: NEXT J
2260 STR(F$(),MOD(K-1,X)*F7+1)=STR(F9$,,2)&STR(E8$,,3)&STR(E4$(),9)
2270 IF MOD(K-1,X)<X-1AND K<F5OR K=0OR F$()=" "THEN 2280
: DATA SAVE BA T#D1,(E6,E6)STR(F$(),,256)
: F$()=" "
: IF K>=F5THEN I=98
2280 NEXT I
2290 COM CLEAR E3
: MAT REDIM E$(24)83
: DATA LOAD DA T#3,(E4)E$()
: MAT REDIM E$(E8)1
2300 GOSUB '63("Control File Sav","ed. Touch EXEC to Generate Report Program,
FN'31 to CANCEL"," ")
: F6$(11)="N"
: GOSUB '34(250)
: IF Q=31OR Q=32THEN 2350
: PRINT HEX(07)
: GOTO 2300
2350 IF Q=32THEN LOAD T#2,"IDS2PR17"1000,
: IF R3$(1)<>"IDS2CRXX"THEN COM CLEAR F1()
: GOSUB '40(STR(R3$(),,8))
: STOP #
: ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PR12"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"