image of READY prompt

Wang2200.org

Listing of file='INVT120A' on disk='vmedia/701-2661A.wvd.zip'

# Sector 320, program filename = 'INVT120A'
0010 REM INVT120A, RELEASE 1-0, (06/12/79)  THIS PROGRAM IS A COPYRIGHT PRODUC
     T OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITE
     D, DISPLAY/REPORT PROFILE
0170 DIM A6$1,B6$1,K$1,K1$Q7,K2$Q7,K3$17,G8$64,G9$4,P$(12)3
   : DIM G7$(39)1,B6(13)
4000 SELECT @PARTS0$
4030 K2$=ALL(7F)
   : A6$="N"
   : B6$="Y"
   : K=0
   : P$()="JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
   : P=12
   : P1=0
   : GOSUB 7180
   : PRINT AT(1,0,240)
   : IF K$<>"A"THEN 4240
   : GOSUB '235(1,0)
   : IF Q$=" "THEN 4590
   : ELSE GOSUB '91
   : IF J0=7THEN 4030
   : ELSE GOTO 5420
4240 IF K$="R"THEN 4370
4250 GOSUB '34(HEX(08))
   : IF Q6$="END"THEN 5130
   : K1$,K2$=Q6$
   : GOSUB '232(1,0,K1$)
   : GOSUB '91
   : IF J0<>0THEN PRINT AT(3,LEN(J$(J0))+1);"- PROFILE ID ";K1$
   : ON J0GOTO 5420,5420,4250,5420,5420,5420,4250,5420
   : PRINT AT(1,0,240)
   : GOTO 4590
4370 GOSUB '34("STARTING")
   : K1$=Q6$
   : IF Q6$="END"THEN 5130
   : GOSUB '34("ENDING")
   : K2$=ALL(7F)
   : IF Q6$="END"THEN Q6$=ALL(7F)
   : K2$=Q6$
   : IF K2$>=K1$THEN 4510
   : PRINT AT(3,0,80);"Starting ID must be lower than Ending ID.";HEX(07)
   : GOTO 4370
4510 PRINT AT(1,0,240)
   : GOSUB '232(1,0,K1$)
   : J$(3)=" "
   : GOSUB '91
   : IF J0>0AND J0<>3THEN PRINT AT(3,LEN(J$(J0))+1);"- PROFILE ID ";K1$
   : ON J0GOTO 5420,5420,5050,5420,5420,5420,4030,5420
4590 GOSUB '79(2)
   : IF G1$>K2$OR A6$="N"OR C5$="P"THEN 4650
   : C5$="P"
   : DBACKSPACE #2,1S
   : GOSUB '69(2)
4650 GOSUB '238(1)
   : IF G1$>K2$THEN 4850
   : K=K+1
   : IF B6$="N"THEN 4780
   : PRINT AT(4,0,1600)
   : GOSUB 5470
4780 IF A6$="N"THEN 4850
   : IF B6$="N"THEN PRINT AT(5,0,80);"Processing Profile ID ";G1$
   : GOSUB '90
   : GOSUB 6020
   : SELECT PRINT 005(80)
4850 IF K$="I"THEN 4240
   : IF G1$<K2$THEN 5010
   : IF A6$="N"THEN 4980
4910 IF K=0THEN 4950
   : SELECT PRINT <I0$>(132)
   : PRINT HEX(0A)
   : PRINT "NO. OF RECORDS PROCESSED = ";K
4950 SELECT PRINT 005(80)
   : K=0
4980 IF K$="R"THEN 4370
   : GOTO 5130
5010 IF B6$="Y"THEN GOSUB '254
   : GOSUB 5340
5050 IF J0=7THEN GOSUB '92
   : GOSUB '237(1,0)
   : J$(1)=" "
   : GOSUB '91
   : IF J0>1THEN PRINT AT(3,LEN(J$(J0))+1);"- PROFILE FILE"
   : ON J0+1GOTO 4590,4980,5420,5420,5420,5420,5420,5050,5420
5130 SELECT PRINT 005(80)
5150 GOSUB '100("R,M","MmRr",1,1,"KEY R TO RESTART, M FOR MENU",2)
   : GOSUB 5340
   : IF Q6$="R"THEN 4030
5200 DEFFN'31
   : LOAD TM$
5240 DEFFN'32
   : Q6$=" "
   : KEYIN Q6$,5270,5280
5270 RETURN
5280 IF Q6$=HEX(1F)OR Q6$=HEX(7E)THEN GOSUB '31
   : RETURN
5340 IF Q6$<>HEX(1F)THEN RETURN
   : GOSUB '31
   : PRINT AT(3,0);HEX(07);"RE-ENTER"
5390 RETURN
5420 PRINT AT(1,0,80)
   : GOSUB '254
   : GOSUB '31
5470 PRINT AT(5,0);"PROFILE ID: ";G1$;TAB(40);"    DESCRIPTION: ";L2$
   : PRINT
   : PRINT TAB(13);"1.0       2.0       3.0"
   : IF L2=0AND L4$(1)=" "THEN G9$=" "
   : ELSE G9$="S"
   : IF G9$=" "THEN 5570
   : CONVERT STR(L4$(1),1,2)TO C6
   : C7=C6+L2-1
   : CONVERT STR(L4$(1),3,2)TO B9
   : B8=-INT(-C7/12)
   : PRINT AT(7,51+3*B8);"SALES"
5570 PRINT AT(8,4);"!----+----+----+----+----+----+----+----! INDEX";
   : IF G9$=" "THEN 5630
   : FOR B6=1TO B8
   : PRINTUSING "   ## ",B9+B6-1;
   : NEXT B6
5630 FOR I=1TO 12
   : PRINT AT(8+I,0);P$(I);" !";
   : Q9=ROUND((10*B(I),0)
   : G8$=" "
   : IF Q9<40THEN 5700
   : STR(G8$,39,1)="H"
   : Q9=38
5700 IF Q9>0THEN INIT("*")STR(G8$,1,Q9)
   : PRINT G8$;TAB(44);"! ";
   : PRINTUSING "#.## ",B(I);
   : IF G9$=" "THEN 5790
   : FOR B6=1TO B8
   : Q9=I+12*(B6-1)
   : IF Q9<C6OR Q9>C7THEN PRINT "      ";
   : ELSE PRINTUSING " #####",L(B6,I);
   : NEXT B6
   : PRINT
5790 NEXT I
   : PRINT AT(21,4);"!----+----+----+----+----+----+----+----!"
   : IF G9$=" "THEN RETURN
   : PRINT TAB(4);"SCALE: ";
   : CONVERT L1TO Q6$,(#,###,###,###)
   : Q9=POS(Q6$="1")
   : G8$=STR(Q6$,Q9,14-Q9)
   : PRINT G8$
   : IF L5=0THEN RETURN
   : PRINT TAB(4);"INDICES WERE GENERATED FROM";L5;"PERIODS OF SALES DATA BEGI
     NNING ";L4$(2);
   : RETURN
5950 PRINT TAB(5);"+";
   : FOR B6=0TO 5*P
   : PRINT "-";
   : NEXT B6
   : PRINT "+"
   : RETURN
6020 PRINT HEX(0E);L2$
   : PRINT "ID CODE = ";G1$;TAB(59);L5$
   : IF A5$<>C5$THEN 6100
   : PRINT HEX(0A0A);"*** PROFILE GENERATOR HAS NOT BEEN RUN ON THIS FILE ***"
   : PRINT HEX(0A0A)
   : GOTO 6600
6100 GOSUB 5950
   : MAT B6=ZER
   : INIT("N")G7$()
   : INIT(" ")G8$
   : PRINT TAB(5);"! ";
   : FOR B6=1TO P
   : GOSUB '32
   : B7=INT(B(B6)*10+.5)
   : IF B7=0THEN 6340
   : IF B7<39THEN 6320
   : G9$="HHHH"
   : IF B7>39THEN 6270
   : G9$="****"
6270 PRINT TAB(5*B6+2);G9$;
   : STR(G8$,5*B6-4,4)="****"
   : B7=39
6320 G7$(B7)="Y"
6340 B6(B6)=B7
   : NEXT B6
   : PRINT TAB(7+5*P);"!"
   : FOR B6=38TO 1STEP -1
   : GOSUB '32
   : IF B6/5<>INT(B6/5)THEN 6450
   : PRINTUSING " #.# + ",B6/10;
   : G9$="+"
   : GOTO 6480
6450 PRINT TAB(5);"! ";
   : G9$="!"
6480 IF G7$(B6)="N"THEN 6550
   : FOR B7=1TO P
   : IF B6(B7)<>B6THEN 6530
   : STR(G8$,5*B7-4,4)="****"
6530 NEXT B7
6550 PRINT G8$;TAB(7+5*P);G9$
   : NEXT B6
   : GOSUB 5950
6600 PRINT TAB(5);
   : FOR B6=1TO P
   : PRINTUSING "  ###",P$(B6);
   : NEXT B6
   : PRINT
   : PRINT TAB(6);
   : FOR B6=1TO P
   : PRINTUSING " #.##",B(B6);
   : NEXT B6
   : PRINT
   : IF A5$="B"THEN 6960
   : CONVERT STR(L4$(1),3,2)TO B9
   : PRINT HEX(0A);"YEAR    SALES";TAB(40);"SCALE - ";L1
   : CONVERT STR(L4$(1),1,2)TO Q9
   : C8=L2+Q9-1
   : IF MOD(C8,P)>0THEN B8=INT(C8/P)+1
   : ELSE B8=INT(C8/P)
   : FOR B7=1TO B8
   : GOSUB '32
   : PRINTUSING " ##   ",B9+B7-1;
   : FOR B6=1TO P
6860 IF (B7-1)*P+B6<Q9OR (B7-1)*P+B6>L2+(Q9-1)THEN 6890
   : PRINTUSING " ####",L(B7,B6);
   : GOTO 6900
6890 PRINTUSING " ####"," ";
6900 NEXT B6
   : PRINT
   : NEXT B7
   : IF L5<POR A5$=C5$THEN RETURN
   : CONVERT STR(L4$(2),1,2)TO Q9
   : PRINT HEX(0A);"INDICES WERE GENERATED WITH";L5;"PERIODS OF DATA BEGINNING
      - ";P$(Q9);STR(L4$(2),3,2)
6960 RETURN
7010 DEFFN'90
   : GOSUB '32
   : SELECT PRINT 005(80)
   : Q6$=" "
   : KEYIN Q6$,7070,7070
7070 IF Q6$="P"THEN GOSUB '254
   : ELSE GOSUB 5340
   : SELECT PRINT <I0$>(132)
   : P1=P1+1
   : PRINT HEX(0C0E);TAB(3);N2$
   : PRINT K3$;TAB(34);"PROFILE FILE";TAB(58);Q1$;"  PAGE";P1
   : PRINT HEX(0A)
   : RETURN
7180 GOSUB '100("Y,N","NnYyY ",1,1,"PRINT REPORT  (Y OR N)",2)
   : GOSUB 5340
   : A6$=Q6$
   : IF Q6$="Y"THEN 7250
   : $CLOSE#15
   : GOTO 7340
7250 GOSUB '93(" ")
   : IF I0$=" "THEN A6$="N"
   : GOSUB '100("Y,N","NnYyY ",1,1,"SCREEN DISPLAY  (Y OR N)",2)
   : GOSUB 5340
   : B6$=Q6$
   : IF Q6$="N"AND A6$="N"THEN 5130
7340 PRINT AT(4,0,1600)
   : GOSUB '100("A,R,I","AaRrIiA ",1,1,"ENTER INQUIRY TYPE  (A=ALL, R=RANGE, I
     =INDIVIDUAL)",2)
   : GOSUB 5340
   : K$=Q6$
   : Q6$="ALL       RANGE     INDIVIDUAL"
   : K3$=STR(Q6$,10*Q9-9,10)
   : STR(K3$,LEN(K3$)+2,6)="OPTION"
   : RETURN
7460 DEFFN'34(Q7$)
   : PRINT AT(1,0,80);"ENTER ";Q7$;" PROFILE ID  (OR END)"
   : GOSUB '100(" ",HEX(7F),VAL(Q0$(7)),0," ",2)
   : GOSUB 5340
   : IF Q6$="end"THEN Q6$="END"
   : IF Q6$="END"THEN RETURN
   : GOSUB '96(7)
   : RETURN
7760 DEFFN'29"Q$=";HEX(22);"INVT120A";HEX(22);":SCRATCHTQ$:SAVET$()Q$";HEX(0D)