La gestione delle declaratives.

Ogni programma Cobol che accede a dei files dovrebbe prevedere una gestione degli errori e delle eccezioni includendo nel programma la divisione DECLARATIVES.
Solo in questo modo potremo evitare l’interruzione del programma dovuta ad eccezioni o errori derivanti dall’accesso ai file.
Il mio motto: Un programma senza DECLARATIVES non è un programma !
Gli esempi di programmi Cobol pubblicati in rete, forse per questione di semplificazione, ne sono generalmente privi.

In questa pagina vorrei illustrare in modo semplice l’uso.

Definizione necessarie per il controllo dello status I-O di un file

(Per semplicità ho indicato solo degli spezzoni di programma)



La prima sezione della procedure division




Per ogni file deve essere definita una SECTION.
Dovranno essere adattati i campi ERF01 e la costante che verrà copiata nel campo FILEN.
Alle fine delle varie section deve essere definito il tag di chiusura END DECLARATIVES.

Vai a inizio pagina




Questa è la routine per il controllo dello status di I-O



Si potrà notare il CALL al programma c$rerr il quale ha il compito di restituire lo status esteso a quattro digit.
Questo è molto utile per i codici di errori primari generici.
Se prendiamo come esempio lo status primario 94 esso viene generato per più di 50 differenti motivi.

Dopo la visualizzazione del messaggio di errore, l’utente può interrompere l’esecuzione del programma (far abortire) impostando il carattere $.
L’immissione del carattere # è riservata a scopo di debug ignorando lo status di errore.
Il flag SLF viene utilizzato per ripetere l’operazione di I-O nel caso si presentasse una situazione di record lock.


Vai a inizio pagina




Questo potrebbe essere un utilizzo pratico della routine di verifia dello status di I-O del file F01






Ecco come viene visualizzato un errore di I-O


Status file




Vai a inizio pagina

Come prelevare questi codici

  Pagina successiva  Pagina successiva