Listing of file='INVT040A' on disk='vmedia/701-2616C.wvd.zip'
# Sector 251, program filename = 'INVT040A' 0010 REM INVT040A, RELEASE 2.3, (12/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, STOCK STATUS REPORT 0040 REM PROGRAM FUNCTION = REPORT ON ALLOCATED, ON HAND INVENTORY STATUS 0050 REM DATE WRITTEN = 08/11/78 MK 0060 REM LAST REVISION = 12/10/80 MAF 0065 REM THIS PROGRAM WAS UPGRADED TO 2.2 BY ERRATA 1158 0067 REM THIS PROGRAM WAS UPGRADED TO 2.3 BY ERRATA 1186 0070 REM ------------------------------------------------------------------ 0170 DIM K$1,K1$Q0,K2$Q0,K3$24 0198 GOTO 4000 3996 REM *********************** 3997 REM ! STOCK STATUS REPORT ! 3998 REM *********************** 3999 REM 4000 SELECT @PARTS0$ 4010 GOSUB '93(" ") : REM IS PRINTER AVAILABLE? 4020 IF I0$=" "THEN 4650 : REM DID WE GET THE PRINTER? 4030 K2$=ALL(7F) : REM END OF 'ALL' LISTING 4040 REM %ACQUIRE REPORT TYPE 4050 GOSUB '100("A,R","AaRr",1,1,"ENTER OPTION DESIRED (A=ALL, R=RANGE)", 2) 4060 IF Q6$=HEX(1F) THEN GOSUB '31 4070 K$=Q6$ 4072 Q6$ = "Full Report Range Report" 4074 K3$ = STR(Q6$,Q9*12-11,12) 4076 K3$ = K3$& " OPTION" 4080 IF K$="R"THEN 4170 4090 REM FIND FIRST 4100 GOSUB '235(1,0) 4110 GOSUB '91 4120 IF J0=0THEN 4390 4130 IF J0=7 THEN 4050 4140 GOTO 4650 4150 REM %ACQUIRE RANGE OF NUMBERS 4160 PRINT AT(3,0,80);HEX(07);"Starting ID must be lower than ending ID, r e-enter." 4170 C6=0 4180 GOSUB '34("STARTING") : REM ACQUIRE STARTING ID 4190 IF Q6$="END"THEN 4560 4200 K1$=Q6$ 4210 GOSUB '34("ENDING") : REM ACQUIRE ENDING ID 4220 IF Q6$="END" THEN Q6$=ALL(7F) 4230 K2$=Q6$ 4240 IF K2$ < K1$ THEN 4160 4250 REM %FIND BEGINNING OF RANGE 4260 GOSUB '232(1,0,K1$) 4270 IF Q$="N" THEN 4330 4280 GOSUB '91 4290 IF J0=0 THEN 4390 4300 IF J0=7 THEN 4170 4310 GOTO 4650 4320 REM %FIND NEXT PRODUCT 4330 IF J0=7 THEN GOSUB '92 4340 GOSUB '237(1,0) 4350 IF Q$="E" THEN 4450 4360 GOSUB '91 4370 IF J0=7 THEN 4330 4380 IF J0>0THEN 4650 4390 GOSUB '52(2) : REM READ INVENTORY RECORD 4400 PRINT AT(5,0);"Processing product ID ";STR(F1$);HEX(06) 4410 IF F1$ > K2$ THEN 4450 : REM RANGE CHECK 4420 GOSUB 6330 : REM PRINT DETAIL LINE 4430 GOTO 4330 4440 REM %PRINT TOTALS 4450 IF K$="A" THEN 4560 4460 PRINT AT(5,0,80) 4470 L = L + 3 4480 GOSUB '90 4490 PRINT HEX(0A) 4500 PRINT TAB(103);"RANGE TOTAL "; 4510 PRINTUSING 6310,C6 4520 PRINT " " 4530 SELECT PRINT 005(80) 4540 GOTO 4170 4550 REM %END OF REPORT 4560 L = L + 2 4570 GOSUB '90 4580 PRINT HEX(0A) 4590 PRINT TAB(102);"REPORT TOTAL "; 4600 PRINTUSING 6310,C7 4610 PRINT HEX(0C) 4620 SELECT PRINT 005(80) 4630 J0=0 4640 REM %END OF PROGRAM 4650 DEFFN'31 4660 IF J0>0 THEN GOSUB '254 4670 LOAD TM$ 6000 REM %^SUBROUTINES 6010 REM %ACQUIRE PRODUCT ID 6020 DEFFN'34(Q7$) 6030 PRINT AT(1,0,80);"ENTER ";Q7$;" PRODUCT ID (OR END)" 6040 GOSUB '100(" ",HEX(7F),Q0,0," ",2) 6050 IF Q6$=HEX(1F) THEN GOSUB '31 6060 IF Q6$="end"THEN Q6$="END" 6070 IF Q6$="END"THEN RETURN 6080 GOSUB '96(2) 6090 RETURN 6100 REM %PAGE-EJECT ROUTINE 6110 DEFFN'90 6120 SELECT PRINT 005(80) 6130 Q6$=" " 6140 KEYIN Q6$,6150,6150 : REM OPERATOR INTERRUPT CHECK 6150 IF Q6$="P"THEN GOSUB '254 6160 IF Q6$=HEX(1F)THEN GOSUB '31 6170 SELECT PRINT <I0$>(132) 6180 IF L < L0 THEN RETURN : REM LINE COUNT CHECK 6190 P1 = P1 + 1 6200 PRINT HEX(0C0A0E);TAB(3);N2$ : REM COMPANY NAME 6210 PRINT K3$; TAB(57);"STOCK STATUS REPORT";TAB(110);Q1$;TAB(122);"PAGE ";P1 6220 PRINT HEX(0A) 6230 PRINT TAB(41);"LAST";TAB(52);"ON";TAB(71);"NET";TAB(91);"ON";TAB(99); "BACK-";TAB(113);"UNIT";TAB(124);"TOTAL" 6240 PRINT "PRODUCT ID";TAB(Q0+2);"DESCRIPTION";TAB(39);"ACTIVITY";TAB(51) ;"HAND";TAB(57);"ALLOCATED";TAB(70);"AVAIL";TAB(78);"MINIMUM";TAB(89);"OR DER";TAB(97);"ORDERED";TAB(113);"COST";TAB(126);"COST" 6260 PRINT HEX(0A) 6270 L=7 6280 RETURN 6290 REM %PRINT DETAIL LINE 6300 %###,###- 6310 %##,###,###.##- 6320 %###,###.##- 6330 L = L + 1 6340 GOSUB '90 6350 GOSUB '123(H0) 6360 PRINT F1$;TAB(Q0+2);STR(F2$,,MIN(36-Q0,LEN(F2$)));TAB(39);U9$;TAB(48) ; 6370 PRINTUSING 6300,E; 6380 PRINT TAB(58); 6390 PRINTUSING 6300,E3; 6400 PRINT TAB(68); 6410 PRINTUSING 6300,E-E3; 6420 PRINT TAB(78); 6430 PRINTUSING 6300,E4; 6440 PRINT TAB(87); 6450 PRINTUSING 6300,E1; 6460 PRINT TAB(97); 6470 PRINTUSING 6300,E2; 6480 PRINT TAB(107); 6490 PRINTUSING 6320,F; 6500 PRINT TAB(120); 6510 Q9=ROUND((F*E,2) 6520 IF Q9>0THEN PRINTUSING 6320,Q9; 6530 PRINT 6540 C6=C6+MAX(Q9,0) 6550 C7=C7+MAX(Q9,0) 6560 SELECT PRINT 005(80) 6570 RETURN 9000 REM %^VARIABLES 9010 REM C6 = RANGE TOTAL ACCUMULATOR 9020 REM C7 = REPORT TOTAL ACCUMULATOR 9030 REM K$ = REPORT OPTION 9040 REM K1$ = STARTING PRODUCT ID 9050 REM K2$ = ENDING PRODUCT ID 9060 REM $ 9998 DEFFN'29"Q$=";HEX(22);"INVT040A";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 - Stock status report.";HEX(22);":SELECT#15<I0$>:$OPEN#15:SELECT LIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':$CLOSE#15:SELECTLIST00 5(80)";HEX(0D)