|
DataMuseum.dkPresents historical artifacts from the history of: Q1 computer |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Q1 computer Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7979 (0x1f2b) Types: Q1_Text, reclen=79 Notes: q1file Names: »SREPA«
└─⟦934333717⟧ Bits:30008597 DDMQ1-0029_Demonstration_Disk_SOURCE_Single_Density_Sept_77 └─⟦this⟧ »SREPA«
DCL LINE BINARY; DCL STOL FLOAT(9); DCL B112 CHAR(111); DCL F7 CHAR(7); PSTOL: PROCEDURE; PUT SKIP(3) EDIT(B112)(A(112))('TOTAL: ')(A(13))(STOL)(P'ZZZZZZZZZV.99'); PUT SKIP(3); ICOUNT=ICOUNT+4; STOL=0; RETURN; END; DCL 1 TRAN, 2 T CHAR(25); DCL 1 STOCKMAS_REC, 2 M_STOCKNO CHAR(6), 2 M_DESCRIPTION CHAR(30), 2 M_UNIT CHAR(6), 2 M_UNITPRICE(4) FLOAT(5), 2 ON_HAND FLOAT(5); DCL TRANFL2 FILE, STOCKFL FILE; DCL B24 CHAR(23), B12 CHAR(11), B7 CHAR(6),B5 CHAR(4), TOL FLOAT(10), DE FLOAT(8); DCL SNO CHAR(6), SV# CHAR(5), SQS FLOAT(5), SAMT FLOAT(8); PR: PROCEDURE; PUT SKIP EDIT(B12)(A(12))(SNO)(A(7))(' ')(A(6))(M_DESCRIPTION) (A(31))(' ')(A(6)); PUT EDIT(SV#)(A(6))(' ')(A(6))(SQS)(P'ZZZZZ')(' ')(A(4)); PUT EDIT (SAMT)(P'ZZZZZZZV.99')(B7)(A(7)); STOL=STOL+SAMT; DE=M_UNITPRICE(1)*SQS*(0.6);SAMT=SAMT-DE; PUT EDIT(DE)(P'ZZZZZZZV.99')(B7)(A(7))(SAMT)(P'ZZZZZZZV.99')(B7)(A(7)); ICOUNT=ICOUNT+1; IF L=1 THEN GO TO RE; PUT EDIT(ON_HAND)(P'ZZZZZ')(' ')(A(4))(ON_HAND*M_UNITPRICE(1)*0.6) (P'ZZZZZZZV.99'); PUT SKIP; ICOUNT=ICOUNT+1; RE: TOL=TOL+DE; RETURN; END; DCL 1 CLENTMAS_REC, 2 CACCT_NO CHAR(6), 2 M_NAME(4) CHAR(30), 2 M_BALANCE FLOAT(8); DCL CLENTMA FILE; DCL B95 CHAR(94),B67 CHAR(66), B14 CHAR(13),B10 CHAR(9) INIT(' '), B20 CHAR(19) INIT(' '), B85 CHAR(82), X CHAR(1), Z CHAR(20) INIT('ARRANGE PAPER PLEASE'), S CHAR(1), P FLOAT(1), PAGE BINARY INIT(1), NO CHAR(6), V# CHAR(5), AMT FLOAT(8), CH9 CHAR(9), C CHAR(2), Q FLOAT(2), DATE CHAR(12); HEAD: PROCEDURE; PUT SKIP; PUT SKIP EDIT(B67)(A(67))('S A L E S R E P O R T')(A(24))(B24)(A(24)); PUT EDIT(B12)(A(12))('PAGE')(A(5)); PUT EDIT(PAGE)(P'ZZ'); PUT SKIP(3) EDIT(B67)(A(67))('(B Y P R O D U C T)')(A(27)); PUT SKIP(3) EDIT(B67)(A(67))('D A T E : ')(A(12))(DATE)(A(13)); PUT SKIP(4) EDIT(B12)(A(12)); PUT EDIT('STOCK#')(A(7))(' ')(A(6))('DESCRIPTION ') (A(13)); PUT EDIT(B14)(A(14))(B7)(A(7))(' REF NO')(A(9)); PUT LIST(F7,' QTY',F7,'SALES AMT',F7,' COST',F7,' PROFIT'); PUT LIST(F7,' STOCK ON HAND'); PUT SKIP EDIT(B112)(A(112))(B12)(A(12))(B7)(A(7)); PUT EDIT(' QTY')(A(8))(' ')(A(6))(' VALUE')(A(7)); PUT SKIP(3); RETURN; END; TOL=0; STOL=0; ICOUNT=0; ASK1: PUT FILE(DISPLAY)SKIP LIST('HAVE YOU SORTED THE TRANSACTION FILE?'); GET SKIP LIST(X); IF X='N' THEN GO TO ST; IF X¬='Y' THEN GO TO ASK1; B67=' 'ööB67; B85=' 'ööB85; B14=' 'ööB14; B24=' 'ööB24; B12=' 'ööB12; B112=' 'ööB112; B95=' 'ööB95;B7=' 'ööB7;B5=' 'ööB5;F7=' 'ööF7; PUT FILE(DISPLAY) SKIP LIST(Z); GET SKIP LIST(X); OPEN TRANFL2; REA: READ FILE(TRANFL2) INTO (TRAN); IF SUBSTR(T,1,1)='7' THEN GO TO MAKEDATE; GO TO REA; MAKEDATE: DATE=SUBSTR(T,5,2)öö' / 'ööSUBSTR(T,3,2)öö' / 'ööSUBSTR(T,1,2); PUT SKIP EDIT(B67)(A(67))('S A L E S R E P O R T')(A(24)); PUT SKIP(3) EDIT(B67)(A(67))('(B Y C U S T O M E R)')(A(26)); PUT SKIP(3) EDIT(B67)(A(67))('D A T E : ')(A(11))(DATE)(A(13)); PUT SKIP(4) EDIT(B20)(A(20))(' CUS. TYPE')(A(12))(B10)(A(10)); PUT EDIT('ACC NO.')(A(8))(B12)(A(12))('REF NO. ')(A(9)); PUT EDIT(B12)(A(12))('CO. NAME')(A(9))(B24)(A(24))(B12)(A(12))(' INV.AMT') (A(9)); PUT SKIP(3); OPEN TRANFL2; OPEN CLENTMA; OPEN STOCKFL; READ FILE(TRANFL2) INTO (TRAN); REP1: S=SUBSTR(T,2,1); NO=SUBSTR(T,1,6); V#=SUBSTR(T,7,5); CH9=SUBSTR(T,17,9); AMT=CH9; C=SUBSTR(T,12,2);Q=C; UNSPEC(CLENTMA)=Q-1;READ FILE(CLENTMA) INTO (CLENTMAS_REC); PUT SKIP EDIT(B24)(A(24))(' ')(A(3))(S)(A(2))(' ')(A(13)); PUT EDIT(NO)(A(7))(' ')(A(14))(V#)(A(7))(' ')(A(13)); PUT EDIT(M_NAME(1))(A(31))(' ')(A(13))(AMT)(P'ZZZZZZZV.99'); ICOUNT=ICOUNT+1; TOL=TOL+AMT; STOL=STOL+AMT; READ FILE(TRANFL2) INTO (TRAN); IF SUBSTR(T,2,1)>S THEN CALL PSTOL; IF SUBSTR(T,1,2)='11' THEN GO TO PTOL; GO TO REP1; PTOL: CALL PSTOL; PUT SKIP(4) EDIT(B95)(A(95))('G R A N D T O T A L : ')(A(30)) (TOL)(P'ZZZZZZZZZV.99'); TOL=0; ICOUNT=49-ICOUNT;DO J=1 TO ICOUNT;PUT SKIP; END; ICOUNT=0; CALL HEAD; REP3: C=SUBSTR(T,4,2); Q=C; UNSPEC(STOCKFL)=Q-1; READ FILE(STOCKFL) INTO (STOCKMAS_REC); SNO=SUBSTR(T,1,6); SV#=SUBSTR(T,7,5); CH9=SUBSTR(T,12,5); SQS=CH9; CH9=SUBSTR(T,17,5); SAMT=CH9; READ FILE(TRANFL2) INTO (TRAN); IF SUBSTR(T,1,6)=SNO THEN L=1; IF SUBSTR(T,1,6)¬=SNO THEN L=0; CALL PR; IF SUBSTR(T,1,1)='7' THEN GO TO FIN; IF ICOUNT>40 THEN GO TO SKIPAGE; GO TO REP3; SKIPAGE: ICOUNT=49-ICOUNT; PUT SKIP(4); PAGE=PAGE+1; CALL HEAD; ICOUNT=0; GO TO REP3; FIN: PUT SKIP EDIT(B85)(A(85))(' --------')(A(10))(' ')(A(6)); PUT EDIT(' -------')(A(12))(' ')(A(6))(' -------')(A(10)); PUT SKIP(3) EDIT(B67)(A(67))('T O T A L : ')(A(16))(STOL)(P'ZZZZZZZV.99'); PUT EDIT(' ')(A(6))(TOL)(P'ZZZZZZZZV.99'); PUT EDIT(' ')(A(7))(STOL-TOL)(P'ZZZZZZZV.99'); ICOUN=49-ICOUNT; DO I=1 TO ICOUNT; PUT SKIP; END; ST: END;