V programovacím jazyce COBOL definujete všechny proměnné a datová pole v části vašeho programu nazvané Data Division. Zde nastavíte záznamy pro soubory na disku, rozvržení tisku, počítadla a pracovní úložiště pro výpočty. Většinu datových polí definujete tak, že jim dáte jedinečné názvy, ale klíčové slovo FILLER vám umožní vyhradit místo v paměti, aniž byste potřebovali název.
PLNIVO
FILLER je vyhrazené slovo, což znamená, že slovo nemůžete použít pro pojmenování polí nebo záznamů jinak než k definování jednotlivých prvků paměti. FILLER použijete bezprostředně za číslem úrovně a před klauzulí PICTURE, která definuje velikost pole a datový typ. COBOL omezuje použití FILLER na datovou divizi; nevztahuje se na oddělení identifikace, životního prostředí nebo řízení.
Video dne
Rozvržení záznamu
Jedno z nejběžnějších použití FILLER je pro definice datových záznamů. Pokud používáte datový soubor s délkou záznamu 150 znaků a nepotřebujete označit každé pole v něm, můžete nepotřebné znaky definovat jako FILLER, jako v následujícím kódu:
01 zákaznický záznam. 05 VÝPLŇ OBRÁZEK X(10). 05 jméno zákazníka PIC X(30). 05 zákaznická adresa PIC X(30). 05 zákazník-město PIC X(30). 05 VÝPLŇ OBRÁZEK X(50).
To vám umožní přečíst záznam o délce 150 znaků a identifikovat požadovaná pole – jméno zákazníka, adresu a město – a zbytek záznamu ignorovat.
Extrakce podřetězců
Klíčové slovo FILLER můžete použít jako pomoc při extrakci podřetězců z většího řetězce. Chcete-li například extrahovat prvních pět číslic PSČ, můžete v části Pracovní úložiště nastavit následující příkazy:
01 celé PSČ. 05 primární zip PIC X(5). 05 VÝPLŇ OBRÁZEK X(5).
V oddělení procedur přesunete kód ZIP-plus-4 do celého PSČ a poté přesunete primární kód do cílového pole. Přitom zahodíte vše po prvních pěti číslicích.
VÝPLŇ a HODNOTA
Pole FILLER v záznamu rezervuje paměťový prostor a přijímá jakýkoli druh dat, která do něj přesunete. Můžete také definovat pole FILLER, aby mělo hodnotu. Programátoři často používají tuto techniku pro nastavení záhlaví sestav, jako v následujícím příkladu:
01 tiskový řádek. 05 FILLER OBRÁZEK X(10) HODNOTA MEZER. 05 FILLER PIC X(15) VALUE "REPORT KONCOVÉHO ROKU". 05 FILLER OBRÁZEK X(20) HODNOTA MEZER. 05 FILLER PIC X(5) VALUE "PAGE". 05 číslo strany OBRÁZEK ZZZ9.
Všimněte si, že nadpisy a mezery záhlaví stránky sestavy jsou všechny provedeny pomocí FILLER, kromě jednoho pojmenovaného pole, které zobrazuje číslo stránky.