Spiegazione di Filler in un programma COBOL

November 1

Nel linguaggio di programmazione COBOL, è possibile definire tutte le variabili e campi di dati in una sezione del programma chiamato la Divisione Data. Qui, è possibile impostare record per file su disco, layout di stampa, contatori e memoria di lavoro per i calcoli. Si definisce la maggior parte dei campi di dati, dando loro nomi univoci, ma la parola chiave FILLER consente di mettere da parte lo spazio di memoria, senza la necessità di un nome.

FILLER

FILLER è una parola riservata, significa che non è possibile utilizzare la parola per la denominazione campi o record diversi per definire elementi di memoria individuali. Si utilizza FILLER immediatamente dopo un numero di livello e che precede una clausola quadro che definisce le dimensioni e il tipo di dati di un campo. COBOL limita l'uso di filler alla divisione dei dati; non si applica alle divisioni di identificazione, ambiente o procedura.

Record layout

Uno degli usi più comuni per filler è per le definizioni del set di dati. Se si utilizza un file di dati con una lunghezza record di 150 caratteri e non c'è bisogno di etichettare ogni campo in esso, è possibile definire i caratteri non necessari come riempitivo, come nel codice seguente:

01 clienti-record.

05 FILLER PIC X(10).
05 customer-name PIC X(30).
05 customer-address PIC X(30).
05 customer-city PIC X(30).
05 FILLER PIC X(50).

Questo permette di leggere un record di 150 caratteri e identificare i campi desiderati - il nome del cliente, indirizzo e città - ignorando il resto del record.

sottoStringa Estrazione

È possibile utilizzare la parola chiave FILLER per assistere l'estrazione di sottostringhe da una stringa più grande. Ad esempio, per estrarre i primi cinque cifre di un codice ZIP, è possibile impostare le seguenti dichiarazioni nella sezione lavoro-Storage:

01 intero-CAP.

05 primary-zip PIC X(5).
05 FILLER PIC X(5).

Nella Divisione procedura, si sposta un CAP-plus-4 per tutto il CAP, quindi spostare primaria-zip per un campo di destinazione. In tal modo, si lascia cadere tutto dopo le prime cinque cifre.

FILLER E VALORE

In un record, un campo RIEMPIMENTO spazio di memoria riserve e accetta qualsiasi tipo di dati si sposta in esso. È inoltre possibile definire un campo di riempimento per avere un valore. I programmatori usano questa tecnica di frequente per la creazione di intestazioni dei report, come nel seguente esempio:

01 print-line.

05 FILLER PIC X(10) VALUE SPACES.
05 FILLER PIC X(15) VALUE “YEAR END REPORT”.
05 FILLER PIC X(20) VALUE SPACES.
05 FILLER PIC X(5) VALUE “PAGE “.
05 page-number PIC ZZZ9.

Si noti che le pagine del rapporto titoli di intestazione e la spaziatura è tutto fatto con FILLER, ad eccezione di un campo di nome che visualizza un numero di pagina.