| Altre pagine: | 1] Migrazione dati da RM/Cobol | 3] Migrazione con programma Cobol | |
|---|---|---|---|
| 2] Formato interno dei dati | 4] Migrazione con utility recover2.cob |
Conversione dei file di RM/Cobol.
In queste pagine vorrei dare qualche consiglio a chi desidera eseguire la migrazione di schedari creati con RM/Cobol verso altri linguaggi di programmazione.
Devo dire subito che l’accesso diretto ai file di RM/Cobol da parte di programmi non Cobol è impossibile.
L’unica possibilità consiste nella creazione di un file sequenziale formato ASCII per lo scambio dati.
Quanto descritto si riferisce ad RM/Cobol della Liant dalla versione 7.5 in avanti, ma penso che alcuni consigli possono essere utili anche per Cobol di altri produttori.
Un semplice esempio
Utilizzerò un file index a lunghezza record fissa di nome DEMO.DIX composto di tre record popolato con i seguenti dati:
In questo esempio ho definito il formato dei campi che, a mio parere, sono maggiormente utilizzati.
In genere, per i campi numerici, trattasi dei formati COMP-3 e COMP-6.
Troverete anche dei campi numerici con segno non paccati che nella pratica sono poco usati, ma comunque da tenere in considerazione visto la loro particolarità.
Il primo approccio ...
Di solito chi vuole leggere un file Cobol cerca dapprima di aprirlo con un comune editor di testi.
Putroppo otterrà un risultato molto simile a questo:
Anche un dump del file darebbe delle informazioni poco utili:
In entrabi i casi è impossibile interpretare in modo completo il contenuto di questo semplice file.
Con file di grandi dimensioni sui quali sono state fatte più operazioni di rewrite o con indici multipli, il contenuto diventa quasi totalmente illeggibile.
Si rende perciò necessaria una conversione.
Due varianti di conversione
La prima consiste nella realizzazione di programma RM/Cobol che legge il file da convertire e crea un file di output nel formato di scambio desiderato (di regola si tratta di un file del tipo ASCII Line Sequential).
Con questa variante abbiamo la possibilità di elaborare tutte le organizzazioni di file ossia:
Sequenziali.
Relativi.
Index.
Questa variante richiede però tre elementi di base:
Il compilatore di RM/Cobol.
Conoscenze di programmazione Cobol.
La descrizione della struttura record del file da convertire.
La seconda è certamente quella che state cercando (visto che siete giunti su questa pagina).
Essa è indirizzata a chi non è in possesso di uno o più elementi di base indicati sopra.
RM/Cobol mette da disposizione dell’utente il programma utilitario RECOVER2.COB che, come si può dedurre dal nome, serve alla ricostruzione dei file index corrotti.
Tale programma prevede anche la funzione di Drop,ossia la creazione di un file sequenziale che contiene tutti i record presenti nel file di input.

Pagina successiva ![]() |




