|
|
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: 5530 (0x159a)
Types: Q1_Text, reclen=79
Notes: q1file
Names: »VERIFUT1«
└─⟦aeb45b905⟧ Bits:30008623 DDMQ1-0063__LMC_Original_Generella_pgm_for_bokforing_Sid1_PL1_Sid2_kompil_781105_side1
└─⟦this⟧ »VERIFUT1«
/*FÖRSTA RADEN*/
/*VERIFUT UTMATNING AV VER.TRANSAR UNDER RESP ANGIVEN MÅNAD GENERELLT PGM.
KLART: 781104 PROGR:TD */
DCL VERFIL FILE;
DCL 1 VER,2 KO FIXED(4),2 AVD CHAR(3),2 DAT FIXED(4),
2 VERNR FIXED(7),2 VTXT CHAR(20),2 BEL FIXED(11,2),2 KOD CHAR(1);
DCL 1 DATREC,2 XDAG CHAR(6),2 MON CHAR(3),2 MNR FIXED(2),2 SK(14) CHAR(1),
2 CO FIXED(1);
DCL DATFIL FILE,S CHAR(1),RAD FIXED(2),SIDA FIXED(4),IND FIXED(1),
DAG CHAR(6),VD FIXED(13,2),VK FIXED(13,2),
TD FIXED(13,2),TK FIXED(13,2),XVERNR FIXED(7),XDAT FIXED(4),DATTEST FIXED(2),
OFFSET BINARY INIT(8); /* BOKFÖRINGSÅRETS OFF */
RUB:PROC;
SIDA=SIDA+1;PUT SKIP(RAD)EDIT('VERIFIKATIONSLISTA AVSEENDE MÅNAD ')(A)
(MON)(A(9))('DATUM:')(A)(DAG)(A(10))('SIDA:')(A)(SIDA)(A)SKIP(2)EDIT
('VER.NR')(A(10))('TEXT')(A(23))('BOKF.DATUM')(A(12))('KONTO')(A(7))
('AVD.')(A(14))('DEBET')(A(15))('KREDIT')(A)SKIP;RAD=45;
RETURN;
END;
CALL KFILE(VERFIL);
OPEN DATFIL;OPEN VERFIL;
READ FILE(DATFIL)INTO(DATREC);IF XDAG='XXXXXX' THEN GO TO SLUT;
DAG=XDAG;XDAG='XXXXXX';
REWRITE FILE(DATFIL)FROM(DATREC);
PUT FILE(D) SKIP EDIT(' ')(A(37))('*** VERIFIKATIONSLISTA ***')
(A(74))('STÄLL IN PERFORERINGEN')(A(37))('TRYCK SEDAN RETURN.')(A(37));
GET SKIP LIST(S);PUT FILE(D) SKIP EDIT(' ')(A(43))
('*** UTSKRIFT PÅGÅR ***')(A(68));
RAD=5;SIDA=0;IND=1;VD=0;VK=0;TD=0;TK=0;
ST:ON ENDFILE GO TO SISTA;READ FILE(VERFIL)INTO(VER);
DATTEST=DAT/100;IF(MNR+OFFSET)¬=DATTEST&(MNR-OFFSET)¬=DATTEST THEN GO TO FEL;
IF IND THEN DO;XVERNR=VERNR;XDAT=DAT;END;
SKRIV:IF VERNR¬=XVERNRöIND=1 THEN DO;
IF VERNR¬=XVERNR THEN DO;
IF RAD<11 THEN CALL RUB;
PUT SKIP EDIT('* TOTALT VERIF.')(A(16))(XVERNR)(A(40))
(VD)(P'-----------9V.99**')(VK)(P'----------9V.99**')SKIP EDIT
('')(A(59))(' - - - -')(A);
RAD=RAD-2;
TD=TD+VD;TK=TK+VK;VD=0;VK=0;
END;
IF VERNR=9999999 THEN GOTO UT;
IF RAD<13 THEN CALL RUB;
PUT SKIP EDIT(VERNR)(A(10));RAD=RAD-1;
END;
ELSE DO;IF RAD<13 THEN CALL RUB;
PUT SKIP EDIT('')(A(10));RAD=RAD-1;END;
IF DAT¬=XDATöIND=1 THEN PUT EDIT(VTXT)(A(28))(DAT)(P'99.99',X(3));
ELSE PUT EDIT(VTXT)(A(36));
IND=0;XVERNR=VERNR;XDAT=DAT;
PUT EDIT(KO)(A(6))(AVD)(A(6));
IF KOD='K' THEN PUT EDIT(' ')(A(16));
PUT EDIT(BEL)(P'---------9V.99');
IF KOD='D' THEN VD=VD+BEL;IF KOD='K' THEN VK=VK+BEL;IF VERIFY(KOD,'DK')=0
THEN GO TO FEL;
GO TO ST;
SISTA:VERNR=9999999;GOTO SKRIV;
UT:IF RAD<11 THEN CALL RUB;
PUT SKIP(2)EDIT('TOTALT UNDER MÅNADEN:')(A(56))(TD)(P'-----------9V.99')
(TK)(P'------------9V.99')SKIP(RAD-7);GO TO SLUT;
FEL:PUT SKIP EDIT('*** FEL DATUM ELLER ANNAT I NÄSTA TRANSAKTION. ')(A)
('RÄTTA TILL, OCH KÖR LISTAN EN GÅNG TILL.')(A)SKIP(RAD-7);
DO J=1 TO 5;CALL OUTPUT(1,6);DO JJ=1 TO 300;END;END;
SLUT:CALL LOAD('BOKRUT',6);END;