Programmeren in COBOL/Statements/REWRITE
REWRITE is een statement van COBOL. Deze statement dient om records te herschrijven. Hier wordt de vorm en de betekenis uitgelegd samen met voorbeelden.
Formaatbeschrijving bewerken
REWRITE bestandsnaam [FROM veld]
- [INVALID KEY code]
- [NOT INVALID KEY code]
[END-REWRITE]
[]: geeft aan dat het optioneel is. {}: geeft aan dat dit één stuk is die samen hoort. onderstreept: geeft aan dat het verplicht is dit te schrijven. Als het tussen [] staat betekent dat je dit minstens moet schrijven, als je dat deel van de statement wilt gebruiken. niet-onderstreept: betekent dat je het mag schrijven maar is niet verplicht. ...: Geeft aan dat je nog velden of constanten mag bijschrijven of stukjes die tussen [] of {} staan herhalen.
Uitleg bewerken
REWRITE bewerken
Als je iets wilt herschrijven met REWRITE moet het bestand eerst geopend zijn als een INPUT-OUTPUT.
INVALID KEY(optioneel) bewerken
Werkt enkel als het bestand random of dynamisch wordt gelezen. Bij een random en vaak ook dynamisch wordt er eerst een sleutel gevraagd. Met die sleutel wordt dan het record gezocht, als de sleutel fout is kun je hierachter een stukje programmacode schrijven zoals een foutbericht.
NOT INVALID KEY(optioneel) bewerken
Hetzelfde principe als INVALID KEY maar dan wanneer de sleutel wel juist is.
END-REWRITE(optioneel) bewerken
Sluit de statement af.
Voorbeelden bewerken
Simpel voorbeeld bewerken
COBOL-code: REWRITE - simpel voorbeeld
REWRITE record
Comple voorbeeld bewerken
COBOL-code: REWRITE - complex voorbeeld
REWRITE record FROM INVALID KEY DISPLAY "Sleutel is fout." NOT INVALID KEY DISPLAY "Record herschreven." END-REWRITE
Zie ook bewerken
- Hoofdstukken sequentiële bestanden, relatieve bestanden zonder hash, relatieve bestanden met hash en index-sequentiële bestanden
- Statements READ, WRITE en DELETE.
COBOL statements |
ACCEPT | ADD | CALL | CLOSE | COMPUTE | DELETE | DISPLAY | DIVIDE | EVALUATE | IF | INSPECT | MOVE | MULTIPLY | OPEN | PERFORM | READ | REWRITE | START | STOP | STRING | SUBTRACT | UNSTRING | WRITE |