Een variabele heet in COBOL ook wel veld. Een variabele (een veld) moet in COBOL worden beschreven in de data division. Een veldbeschrijving bestaat gewoonlijk uit een niveaunummer, de naam van de variabele en een of meer clausules. Dat ziet er dan bij voorbeeld zo uit:
01 auto-kenteken picture X(6).
Het niveaunummer is 01, de naam van de variabele is auto-kenteken en er is één clausule vermeld: de picture-clausule. De veldbeschrijving moet afsluiten met een punt.
Niveaunummer 01 is het eerste niveau. Voorlopig hebben alle velden niveaunummer 01. Het niveaunummer 01 moet beginnen in gebied A (zie paragraaf 2.4). We zullen later zien dat we een veld kunnen onderverdelen door andere nummers te gebruiken. Het veld auto-kenteken is niet onderverdeeld.
onthoud
Een veld dat op zichzelf staat, heet een enkelvoudig veld. Het is niet onderverdeeld en maakt geen deel uit van een groter geheel.
Na het niveaunummer volgt de naam van de beschreven variabele. Het is een zelfgekozen naam. Dat wil zeggen dat de programmeur de naam bepaalt. De eisen waaraan zo'n naam moet voldoen, zijn beschreven in paragraaf 2.7.
De picture-clausule bestaat uit het woord picture, gevolgd door een tekenreeks, de zogenaamde picture-string.
onthoud
De picture-string bepaalt de categorie en de lengte van een veld.
De categorie van een veld kan alfanumeriek (aangeduid met X) of numeriek (aangeduid met 9) zijn. Met een numeriek veld kunnen we rekenen, met een alfanumeriek veld niet. Na de 9 of de X volgt tussen haakjes een getal dat de lengte van het veld aangeeft. Bij een numeriek veld geldt een maximale lengte van 18 cijfers. Bij een alfanumeriek veld kent COBOL geen limiet.
01 korte-inhoud picture X(1200). 01 gewicht picture 9(3).
Deze twee regels beschrijven twee enkelvoudige velden. Het veld 'korte-inhoud' is alfanumeriek en kan maximaal 1200 tekens bevatten. Het numerieke veld 'gewicht' kan de waarden 0 tot en met 999 aannemen (de inhoud is dan respectievelijk 000 tot en met 999). De picture-clausule bezit nog vele fraaie andere mogelijkheden. Daarop komen we later terug. Later zullen we ook andere clausules tegenkomen.
Zoals gezegd, geven we via een getal tussen haakjes aan, uit hoeveel tekens een variabele bestaat. We mogen de lengte ook aangeven door de 9 of de X net zoveel keer te schrijven als het veld lang is.
01 auto-kenteken picture XXXXXX. 01 gewicht picture 999.
De picture-string heeft een maximale lengte van 30 tekens, maar uiteraard zullen we het uitschrijven met negens of x'jes alleen doen bij heel korte velden. Als een veld langer is dan 6 tekens, dan is het verstandiger om de methode met de haakjes te gebruiken.