File SCHUEB.CO

Directory of image this file is from
This file as a plain text file


PROGRAM-ID.
	SCHECKUEBERWEISUNG.
COMMENTS.
	BEARBEITUNG VON SCHECKS UND UEBERWEISUNGEN.
AUTOR.
	THOMAS PFEIFER.
FILE-CONTROL.
	SELECT KONTEN ASSIGN TO DSK ACCESS MODE IS  RANDOM
	ACTUAL KEY IS SATZNR.
DATA DIVISION.
FILE SECTION.
FD KONTEN.
01 BILD.
	02 NUMMER     PIC    9(3).
	02 NAME       PIC     X(25).
	02 STRASSE    PIC     X(25).
	02 WOHNORT    PIC     X(25).
	02 GEBOREN    PIC     X(10).
	02 MAXIMALKREDIT  PIC  S9(7)V99.
	02 ALTSTAND  PIC   S9(7)V99.
	02 DATUM     PIC     X(10).
	02 BEWART    PIC     X(30).
	02 BEWEGUNG   PIC     S9(7)V99.
	02 NEUSTAND     PIC   S9(7)V99.
	02 ZINSSPEICHER PIC   S9(7)V99.
	02 SCHECKNUMMER PIC  9(3).
	02 AUSZUGSNUMMER PIC  9(3).
WORKING-STORAGE SECTION.
01 BETRAG	PIC	S9(7)VV99.
01 KNR          PIC   9(3).
01 SATZNR       PIC   9(3).
01 E-NEUSTAND	PIC	-------.99.
01 DAT1		PIC    	X(10).
01 SPEICHER     PIC    S9(7)V99 .
01 ENDE	    PIC     9      VALUE 1.
01 ENTSCHEIDUNG  PIC    X.
01 ANTWORT     PIC    X.
PROCEDURE DIVISION.
	PERFORM AENDERN.
	CALL GELHAU.
AENDERN.
	PERFORM OEFFNEN.
	PERFORM LESEN.
	PERFORM PRUEFEN.
	PERFORM AUSZAHLEN.
OEFFNEN.
	DISPLAY "IST KONTEN DA VORHANDEN J/N "(LINE).
	ACCEPT ANTWORT.
	IF ANTWORT  = "J" THEN OPEN I-O KONTEN
	ELSE CALL GELHAU.
	DISPLAY "DATUM:  (..,..,....) " (LINE).
	ACCEPT DAT1.
LESEN.
	DISPLAY "KONTONUMMER DES AUFTRAGGEBERS " (LINE).
	ACCEPT KNR.
	SUBTRACT 99 FROM KNR GIVING SATZNR.
	IF SATZNR IS EQUAL TO 0 THEN MOVE 1 TO ENDE
	ELSE READ KONTEN , INVALID KEY
	DISPLAY " FALSCHE NUMMER !!! " PERFORM SCHLIESSEN.
PRUEFEN.
	IF NAME = " "
	THEN DISPLAY "KONTO NICHT BELEGT "
	WRITE BILD PERFORM SCHLIESSEN.
LESEN2.
	DISPLAY "KONTONUMMER DES EMPFAENGERS " (LINE).
	ACCEPT KNR.
	SUBTRACT 99 FROM KNR GIVING SATZNR.
	IF SATZNR IS EQUAL TO 0 THEN MOVE 1 TO ENDE
	ELSE READ KONTEN  ,INVALID KEY
	DISPLAY " FALSCHE NUMMER " PERFORM SCHLIESSEN.
PRUEFEN2.
	IF NAME = " "
	THEN DISPLAY "KONTO NICHT BELEGT " WRITE BILD
	PERFORM SCHLIESSEN.
AUSZAHLEN.
	MOVE DAT1 TO DATUM.
	DISPLAY "AUFTRAGGEBER: ".
	DISPLAY NAME.
	DISPLAY NUMMER.
	DISPLAY STRASSE.
	DISPLAY WOHNORT
	DISPLAY " ALTER KONTOSTAND:" ALTSTAND
	DISPLAY "LETZTE BEWEGUNG:" BEWART BEWEGUNG
	MOVE NEUSTAND TO E-NEUSTAND.
	DISPLAY "NEUER KONTOSTAND:" E-NEUSTAND 
	DISPLAY "MAXIMALKREDIT:" (LINE).
	MOVE MAXIMALKREDIT TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY " BETRAG DES AUFTRAGS " (LINE).
	ACCEPT BETRAG.
	MOVE BETRAG TO BEWEGUNG.
	DISPLAY " HANDELT ES SICH UM EINEN SCHECK ODER "
	DISPLAY "UM EINE UEBERWEISUNG S/U " (LINE).
	ACCEPT ENTSCHEIDUNG.
	IF ENTSCHEIDUNG = "S" THEN DISPLAY  "SCHECKNUMMER " (LINE) ,
	ACCEPT SCHECKNUMMER
	ELSE DISPLAY " VERWENDUNGSZWECK " (LINE) ,
	ACCEPT BEWART.
	DISPLAY BEWEGUNG.
	SUBTRACT BEWEGUNG FROM NEUSTAND GIVING SPEICHER.
	SUBTRACT SPEICHER FROM 0 GIVING SPEICHER.
	DISPLAY "O.K. "
	IF SPEICHER > MAXIMALKREDIT
	DISPLAY "O.K."
	THEN DISPLAY " KONTO ZU STARK UEBERZOGEN ",
	PERFORM SCHLIESSEN
	ELSE MOVE NEUSTAND TO ALTSTAND ,
	SUBTRACT BEWEGUNG FROM NEUSTAND GIVING NEUSTAND,
	WRITE BILD,
	PERFORM LESEN2,
	PERFORM PRUEFEN2,
	PERFORM EINZAHLEN,
	PERFORM SCHLIESSEN.
EINZAHLEN.
	MOVE DAT1 TO DATUM.
	DISPLAY " EMPFAENGER: ".
	DISPLAY NAME.
	DISPLAY NUMMER.
	DISPLAY STRASSE.
	DISPLAY WOHNORT.
	DISPLAY "KONTOSTAND:"
	MOVE NEUSTAND TO E-NEUSTAND.
	DISPLAY E-NEUSTAND.
	DISPLAY " BETRAG DES AUFTRAGS " (LINE).
	DISPLAY BETRAG.
	MOVE BETRAG TO BEWEGUNG.
	MOVE NEUSTAND TO ALTSTAND.
	ADD BEWEGUNG TO NEUSTAND.
	DISPLAY " ZWECK DES AUFTRAGS " (LINE).
	ACCEPT BEWART.
	WRITE BILD.
SCHLIESSEN.
	CLOSE KONTEN.



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search