Spiegazione del filler in un programma COBOL

Nel linguaggio di programmazione COBOL, definisci tutte le variabili e i campi dati in una sezione del tuo programma chiamata Divisione dati. Qui si impostano i record per i file su disco, i layout di stampa, i contatori e la memoria di lavoro per i calcoli. Definisci la maggior parte dei campi dati assegnando loro nomi univoci, ma la parola chiave FILLER ti consente di riservare spazio di memoria senza la necessità di un nome.

RIEMPITIVO

FILLER è una parola riservata, il che significa che non è possibile utilizzare la parola per denominare campi o record se non per definire singoli elementi di memoria. Si utilizza FILLER immediatamente dopo un numero di livello e prima di una clausola PICTURE che definisce la dimensione e il tipo di dati di un campo. COBOL limita l'utilizzo di FILLER alla Divisione Dati; non si applica alle divisioni Identificazione, Ambiente o Procedura.

Video del giorno

Layout di registrazione

Uno degli usi più comuni di FILLER è per le definizioni dei record di dati. Se utilizzi un file di dati con una lunghezza record di 150 caratteri e non hai bisogno di etichettare ogni campo in esso, puoi definire i caratteri non necessari come FILLER, come nel codice seguente:

01 scheda cliente. 05 FIGURA DI RIEMPIMENTO X(10). 05 nome-cliente PIC X(30). 05 indirizzo cliente PIC X(30). 05 cliente-città PIC X(30). 05 RIEMPITORE PIC X(50).

Ciò ti consente di leggere un record di 150 caratteri e identificare i campi desiderati - il nome del cliente, l'indirizzo e la città - ignorando il resto del record.

Estrazione di sottostringhe

È possibile utilizzare la parola chiave FILLER per facilitare l'estrazione di sottostringhe da una stringa più grande. Ad esempio, per estrarre le prime cinque cifre di un CAP, è possibile impostare le seguenti dichiarazioni nella Sezione Working-Storage:

01 CAP intero. 05 cerniera primaria PIC X(5). 05 FIGURA DI RIEMPIMENTO X(5).

Nella Divisione Procedure, sposti un CAP-plus-4 in un intero CAP, quindi sposti lo ZIP primario in un campo di destinazione. In tal modo, si elimina tutto dopo le prime cinque cifre.

RIEMPITIVO e VALORE

In un record, un campo FILLER riserva spazio di memoria e accetta qualsiasi tipo di dato che sposti al suo interno. Puoi anche definire un campo FILLER per avere un valore. I programmatori utilizzano spesso questa tecnica per impostare le intestazioni dei report, come nell'esempio seguente:

01 linea di stampa. 05 FILLER PIC X(10) SPAZI VALORE. 05 FILLER PIC X(15) VALORE "RELAZIONE DI FINE ANNO". 05 FILLER PIC X(20) SPAZI VALORE. 05 FILLER PIC X(5) VALORE "PAGINA". 05 numero di pagina PIC ZZZ9.

Si noti che i titoli e la spaziatura dell'intestazione della pagina del report sono tutti eseguiti con FILLER, ad eccezione di un campo denominato che visualizza un numero di pagina.