Inhalt
Index
Support Über uns
Home

2.4.26 RECEIVE


 
Format:
RECEIVE [SCREEN] [USING] {Datenfeld1 / Konstante1} [{Datenfeld2 / Konstante2} ...] [ON ESCAPE GO TO Marke]


Die RECEIVE - Anweisung dient zur Consoleneingabe mit der Möglichkeit Bildschirmmasken zu verarbeiten.

Die RECEIVE - Anweisung ohne USING-Zusatz verhält sich wie der ACCEPT - Befehl.

Wird bei der Eingabe die ESCAPE - Taste betätigt, wird der RECEIVE beendet und das Programm bei Marke fortgesetzt.

Wird bei der Eingabe die maximale Anzahl von Zeichen für das Datenfeld eingegeben, erfolgt automatisch ein Sprung zum nächsten Eingabefeld.

Die RECEIVE-Anweisung mit USING - Zusatz beinhaltet in Datenfeld1 bzw. Konstante1 entweder eine Format-Anweisung oder eine zuvor abgespeicherte Maske (CALL MKSAV).

Die Angabe SCREEN bewirkt, daß am Ende des RECEIVE - Befehls der Cursor nicht auf den Beginn der nächsten Zeile positioniert wird.



USING - Format:

Die Format-Anweisung für SEND bzw. RECEIVE USING setzt sich wie folgt zusammen:

Alle Befehle beziehen sich nur auf das aktuelle Fenster.

 
ZeichenBedeutung
"Text"Auszugebende feste Texte werden in Apostroph gesetzt
*Alpha-Platzhalter für das nächste Datenfeld in der Receive-Anweisung
#Numerischer Platzhalter für das nächste Datenfeld ohne Vorzeichen (Darstellung immer positiv)
ZahlSpaltenadresse im Fenster
Zahl:Zeilenadresse im Fenster d.h. 12:20 ist Zeile 12 Spalte 20
Asz:sp ez:esSetzen des aktuellen Attributs im Bereich von Startzeile (sz) Startspalte (sp) bis Endzeile (ez) Endspalte(es). Wahlweise kann mit L der Bereich gelöscht werden. Bsp.: H+A23:01 24:10L
B+Schaltet Blinkattribut ein
B-Schaltet Blinkattribut aus
CLöscht das aktuelle Fenster, positioniert auf unterste Zeile 1. Spalte.
EAusschalten des Editboxen-Modus (Windows)
H+Schaltet Helligkeitsattribut ein
H-Schaltet Helligkeitsattribut aus
I.Initialisiert die Platzhalter der Anzeige mit dem nächsten Zeichen (hier ein Punkt) Numerische Datenfelder werden mit 0 Alphafelder mit Leerzeichen vorbesetzt.
K+Schaltet Invertierung ein
K-Schaltet Invertierung aus
LLöscht bis zum Ender der Zeile
M+Einschalten der manuellen Bestätigung, d.h. die Eingabe im Datenfeld muß mit der Return-Taste beendet werden.
M-Ausschalten der manuellen Bestätigung
NWie M, nur kann die Eingabe mit auch mit der TAB-Taste beendet werden.
Owie I, nur ohne vorbesetzen der Datenfelder
PGibt einen Beepton aus
QGibt ein Apostroph am Bildschirm aus (Quote)
RPositioniert auf nächste Zeile 1. Spalte
S#Numerischer Platzhalter für das nächste Datenfeld mit führendem Vorze chen
#SNumerischer Platzhalter für das nächste Datenfeld mit nachgestelltem Vorzeichen
U+Schaltet Unterstreichen ein
U-Schaltet Unterstreichen aus
Wss:eeScrollen des Bildschirms im Bereich der Startzeile ss bis zur Endzeile ee Ist ss < ee wird aufwärts, ansonsten abwärts gescrollt
fxySetzen der Farbattribute: x ist die Schriftfarbe, y die Hintergrundfarbe. Zulässig sind die Farben von 0-7. Wird statt einer Farbnummer X angegeben, bleibt die aktuelle Farbe unverändert. Bsp.: f74 Weiße Schrift auf blau fX1 Weiße Schrift auf rot
hAusgabe eines horizontalen Striches
h20z.B. Ausgabe von 20 horizontalen Strichen
pEinschalten des Passwort-Modus (alle Eingaben werden mit einem * ausgegeben).
rSprung in die nächste Zeile, aktuelle Spalte
vAusgabe eines vertikalen Striches
v20z.B. Ausgabe von 20 vertikalen Strichen



Nach der Eingabe von numerischen Datenfelder werden diese auf zulässige Eingabe geprüft. Hierbei kann es zu folgenden Meldungen kommen:

Zuviele Vorkommastellen

Zuviele Nachkommastellen

Eingabe ist nicht numerisch

und die Eingabe muß wiederholt werden.


Die Positionierung der einzelnen Datenfelder können mit MKSAV in einem Datenfeld abgespeichert werden (siehe CALL MKSAV)

Wird bei einem SEND USING oder RECEIVE USING ein MKSAV - Feld angegeben, werden nur noch die Datenfelder abgehandelt.

Bei RECEIVE USING werden alle angegebenen Datenfelder bis zur kleinsten Stufe aufgelöst, d.h. die Angabe eines Gruppenfeldes (Oberstufe) verhält sich so wie die Angabe aller Unterstufen.

Beispiel:
              01 KUNDENSATZ.
               05 K-NAME        PIC X(30).
               05 K-PLZ         PIC 9(6).
               05 K-ORT         PIC X(30).
               05 K-STRASSE     PIC X(30).


       RECEIVE USING 
           '10:05"Name"20*11:05"Plz/Ort"13#20*12:05"Strasse"20*'
                              KUNDENSATZ.


       ist identisch mit


       RECEIVE USING 
           '10:05"Name"20*11:05"Plz/Ort"13#20*12:05"Strasse"20*'
              K-NAME K-PLZ K-ORT K-STRASSE.                        






Zurück zu Acc-Cobol Read Statement    Hoch zu Procedure Divison in COBOL    Weiter zu RELEASE
Entwickler Portal Impressum AGB Kontakt


© 1980-2017 Acc Computertechnik GmbH All rights reserved.