image of READY prompt

Wang2200.org

Listing of file='INVT090B' on disk='vmedia/701-2616C.wvd.zip'

# Sector 448, program filename = 'INVT090B'
0010 REM INVT090B, RELEASE 2.3, (09/11/80) THIS PROGRAM IS A COPYRIGHT PRODUCT
      OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITED
0020 REM ---------------------------------------------------------------------
     --
0030 REM SYSTEM & MODULE   =  GBS/MVP INVENTORY SYSTEM, P.O. ACTIVITY FILE REO
     RG
0040 REM PROGRAM FUNCTION  =  REORGANIZE THE P.O. ACTIVITY FILE
0050 REM DATE WRITTEN      =  08/25/78 MK
0060 REM LAST REVISION     =  12/29/80 MF
0065 REM THIS PROGRAM WAS UPGRADED TO 2.1 BY ERRATA 1125
0066 REM THIS PROGRAM WAS UPGRADED TO 2.2 BY ERRATA 1156 + 1167
0067 REM THIS PROGRAM WAS UPGRADED TO 2.3 BY ERRATA 1197
0070 REM ---------------------------------------------------------------------
     --
0170     COM D6$(4)64,D7$(3)3
0172     COM K$8,K1$8,Q,V$18,V1$8
0198     GOTO 4000
3996 REM *****************************
3997 REM ! P.O. ACTIVITY FILE REORG  !
3998 REM *****************************
3999 REM
4000     SELECT @PARTS$
   : REM SELECT UNIVERSAL GLOBAL
4030     V$=@V$
4040     SELECT @PARTS0$
   : REM SELECT LOCAL GLOBAL
4050     D7$()=M$()
4060     SELECT #1<D7$(1)>,#2<D7$(2)>,#3<D7$(3)>
4070     PRINT AT(3,0);"Any errors during this process will render the P.O. ac
     tivity file useless.";HEX(07)
4080     GOSUB '100("Y,N","YyNn",1,1,"IS THERE A RECENT BACKUP FOR THE P.O. AC
     TIVITY FILE (Y OR N)",2)
4090     IF Q6$="N"THEN 5050
4100 REM OPEN WORK FILE
4110     GOSUB '217(S$(3),3,S2,0,4," ",D7$(3),0)
4120     Q6$="Work file"
4130     IF Q$>" "THEN 4990
4140 REM OPEN P.O. ACTIVITY FILE
4150     K$,K1$=S$(1)
   : REM USER FILE NAME
4160     GOSUB '230(1,2,1,1,K$,4," ",D7$(2),D7$(1))
4170     Q6$="P.O. Activity file"
4180     IF Q$>" "THEN 4990
4190     N3=VAL(Q0$(2))+VAL(Q0$(4))
   : REM KEY LENGTH
4200     N2=INT(253/(N3+1))
   : REM BLOCKING FACTOR
4210     MAT REDIM D6$(N2)N3
   : REM WORK FILE BUFFER
4220     INIT(FF)D6$()
4230     D6=1
4240     GOSUB '235(1,0)
4250     IF Q$="N"THEN 4420
4260     PRINT AT(7,0,80);"Processing vendor";HEX(06)
4270     Q6$="P.O. Activity file"
4280     IF Q$>" "THEN 4990
4290     D6$(D6) = T7$
   : REM SAVE KEY
4300     PRINT AT(7,19,18);T7$
4310     D6 = D6 + 1
4320     IF D6 <= N2 THEN 4360
   : REM TEST FOR FULL BLOCK
4330     DATA SAVE DC #3,D6$()
   : REM WRITE TEMPORARY SEQUENTIAL RECORD
4340     INIT(FF)D6$()
4350     D6 = 1
4360     GOSUB '237(1,0)
   : REM GET NEXT KEY
4370     IF Q$="E"THEN 4420
4380     Q6$="P.O. Activity file"
4390     IF Q$>" "THEN 4990
4400     GOTO 4290
4410 REM %CLOSE FILES, INITIALIZE P.O. ACTIVITY FILE
4420     GOSUB '239(1)
4430     DATA SAVE DC #3,D6$()
4440     GOSUB '218(S$(3),3," ",0)
4450     K=1
   : REM USER FILE DEVICE
4460     K1=2
   : REM KEY FILE DEVICE
4470     $OPEN #K,#K1
4480     STR(K1$,5,2)="K1"
   : REM KEY FILE NAME
4490     LIMITS T#K,K$,Q9,L2,Q9
4500     DATA LOAD DC OPEN T#K,K$
4510     DATA SAVE DC #K,END
4520     M$()=HEX(A00002FD)&"MUX "&K$
4530     DATA SAVE BA T$#K,(L2)M$()
   : REM WRITE ACCESS TABLE - USER FILE
4540 REM %INITIALIZE KDR - KEY FILE
4550     DATA LOAD DC OPEN T#K1,K1$
   : REM OPEN KEY FILE
4560     DATA LOAD DC #K1,Q9,T$()
   : REM READ OLD KEY DESCRIPTOR RECORD (KDR)
4570     DBACKSPACE #K1,1S
4580     $UNPACK(F=V$)T$(2)TO T0,T2$,Q2$,V2$,T8,V6$,V3$,Q3$,V8$
4590     Q9=VAL(V6$)
4600     IF Q9>0THEN Q2$=BIN(Q9-1,2)
   : ELSE Q2$=BIN(52000,2)
   : REM UPPER BOUND
4601 REM  Q2$=BIN(Q9-1,2) X OR ALL(FF)
   : REM LAST SECTOR USED (NEGATIVE),UF
4610     V1$=STR(T$(2),18)
   : REM IMPORTANT INFO, INCLUDING KEY LENGTH
4620     T4=VAL(STR(V1$,5))
   : REM KEY LENGTH
4630     T2$,V2$,T9$=HEX(0001)
   : REM HIGH LEVEL SECTOR - ADDRESS
4640     T0=1
   : REM NUMBER OF LEVELS
4650     T8=0
   : REM RECORD COUNT
4660     INIT(5A)T$(1)
   : REM COMPLETION CODES  - 'MUX' VERSION
4670     INIT(FF)STR(T$(1),17)
   : REM PROTECTED SECTORS - 'MUX' VERSION
4680     $PACK(F=V$)T$(2)FROMT0,T2$,Q2$,V2$,T8
4690     T$(3)=Q3$ & V8$ & STR(T$(3))
   : REM LAST RECORD IN BLOCK, PER STATION
4700     DATA SAVE DC $#K1,0,T$()
   : REM SAVE KEY DESCRIPTOR RECORD (KDR)
4710     INIT(FF)T0$()
   : REM FIRST KEY INDEX RECORD (KIR)
4720     INIT(00)STR(T0$(1),,T4)
   : REM DUMMY KEY INDEX ENTRY (KIE)
4730     DATA SAVE DC $#K1,T9$,T0$()
   : REM SAVE FIRST KIR
4740     DATA SAVE DC $#K1,END
   : REM WRITE END OF KEY FILE
4750 REM SAVE RECOVERY INFORMATION - USER FILE
4760     M$()=HEX(A0FD)&T$()
4770     DATA SAVE BA T$#K,(L2-1)M$()
4780 REM SET T9=0 TO SUPPRESS THE SAVING OF KDR PARAMETERS WITH NEXT KFAM ACCE
     SS
4790     T9=0
4800 REM %RE-OPEN P.O. ACTIVITY FILE AND ADD NEW KEYS
4810     GOSUB '230(1,2,1,1,K$,4," ",D7$(2),D7$(1))
4820     IF Q$>" " THEN 4960
4830     DBACKSPACE #1,BEG
   : REM START AT BEGINNING OF WORK FILE
4835     DBACKSPACE #3,BEG
4840     J=0
4850     PRINT AT(7,0,80);"Processing vendor";HEX(06)
4860     J=MOD(J,N2)+1
4870     IF J=1 THEN DATA LOAD DC #3,D6$()
4880     IF END  THEN 5030
4890     IF STR(D6$(J),,1)=HEX(FF) THEN 5030
4900     PRINT AT(7,11,18);D6$(J)
4910     T4$=HEX(000001)
   : REM DUMMY POINTER
4915     V8=.2
4920     GOSUB '234(1,0,D6$(J),0)
   : REM FINDNEW (HERE) - DUMMY USER FILE
4930     IF Q$>" " THEN 4960
4940     GOTO 4860
4950 REM %ERROR EXIT
4960     PRINT AT(5,0,240);"Remaining records in the P.O. activity file have j
     ust been lost."
4970     PRINT "They can only be recovered from a backup disk."
4980     Q6$=" "
4990     GOSUB '91
5000     PRINT AT(1,0,80);HEX(07);"Program will be terminated."
5010     GOSUB '254
5020 REM %END OF FILE
5030     GOSUB '239(1)
5040     GOSUB '219(S$(3),3,S2," ",0)
5050     COM CLEAR I
5060     LOAD TM$
9010 REM %^VARIABLES
9030 REM      D6 = COUNTER FOR P.O. ACTIVITY RECORDS
9040 REM   D6$() = BUFFER FOR P.O. ACTIVITY RECORDS
9050 REM   D7$() = BUFFER FOR FILE ADDRESSES
9060 REM $
9998 DEFFN'29"Q$=";HEX(22);"INVT090B";HEX(22);":SCRATCH TQ$:SAVET$()Q$";HEX(0D
     )
9999 DEFFN'30"DIM Z$57:IF STR(I0$,,1)=HEX(20)THENI0$=HEX(323135):Z$=";HEX(22);
     "GBS/MVP - P.O. Activity file reorganization.";HEX(22);":SELECT#15<I0$>:$
     OPEN#15:SELECTLIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':$CLOSE#1
     5:SELECTLIST005(80)";HEX(0D)