|
|
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;