Programmeren in COBOL/Bestandsorganisatie/Sequentiële bestanden: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Sephiroth (overleg | bijdragen)
kGeen bewerkingssamenvatting
Sephiroth (overleg | bijdragen)
kGeen bewerkingssamenvatting
Regel 14:
In dit sequentieel bestand worden de naam, adres en geslacht van een persoon opgeslagen.
==Sequentiële bestanden lezen==
{{zieook| Zie ook [[Programmeren in COBOL/Statements/READ|READ]] voor meer informatie. }}
We gaan een klein programma schrijven dat de gegevens inleest en alleen de achternaam, voornaam en geslacht op het scherm toont.
{{code
Regel 33 ⟶ 34:
FD invoer.
01 persoon.
02 achternaam PIC X(20).
02 voornaam PIC X(15).
02 geslacht PIC X.
 
WORKING-STORAGE SECTION.
77 PIC X VALUE "n".
88 eof VALUE "j".
 
PROCEDURE DIVISION.
Regel 130 ⟶ 131:
 
==Sequentiële bestanden schrijven==
{{zieook| Zie ook [[Programmeren in COBOL/Statements/WRITE|WRITE]] voor meer informatie.}}
Een bestand schrijven volgt natuurlijk het omgekeerde principe van een bestand lezen. Je verwerkt eerst de gegevens je plaatst die in het groepsveld van de uitvoer en vervolgens schrijf je het bestand. We zullen in dit voorbeeld een bestand openen en daarna lezen wat er in zit om dat te verwerken en uit te schrijven. Je moet natuurlijk niet een bestand lezen; je kan gewoon de gegevens inlezen via een ''ACCEPT'', maar dat neemt tijd in beslag. We gebruiken in dit voorbeeld hetzelfde sequentieel bestand om te lezen als in het vorige.
{{code
Regel 166 ⟶ 168:
 
WORKING-STORAGE SECTION.
77 PIC X VALUE "n".
88 eof VALUE "j".
 
PROCEDURE DIVISION.
Regel 234 ⟶ 236:
 
WORKING-STORAGE SECTION.
77 PIC X VALUE "n".
88 eof VALUE "j".
 
PROCEDURE DIVISION.
Regel 253 ⟶ 255:
Niet zo moeilijk dus gewoon in de plaats van ''OPEN OUTPUT'' moet je ''OPEN EXTEND'' gebruiken.
==Record herschrijven==
{{zieook| Zie ook [[Programmeren in COBOL/Statements/REWRITE|REWRITE]] voor meer informatie.}}
Het is mogelijk bij een sequentieel bestand een record te herschrijven. Dit is echter onpraktisch. Als je één bepaald record wilt aanpassen heb je twee keuzes ofwel ga je alle records één voor één af tot je de juiste record hebt gevonden ofwel schrijf je een programma die zelf alle records afgaat en vind wat je zoekt. Daardoor zijn sequentiële bestanden niet de goede oplossing als je weet dat je uw records vaak zult moeten aanpassen. Hiervoor zijn betere bestandsorganisaties die later nog aan bod komen. In het volgende programma krijgt de gebruiker ieder record te zien en wordt hem gevraagd of hij ze wilt herschrijven.
{{code
Regel 279 ⟶ 282:
 
WORKING-STORAGE SECTION.
77 PIC X VALUE "n".
88 eof VALUE "j".
77 invoer PIC X.
 
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.