24.01.2014 Views

Parte ii - IIS Marconi Latina - Area didattica

Parte ii - IIS Marconi Latina - Area didattica

Parte ii - IIS Marconi Latina - Area didattica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Manuale COBOL 895<br />

|000000 01 RECORD-MOVIMENTI-DI-MAGAZZINO.<br />

|000000 10 MM-NUMERO-REGISTRAZIONE PIC 99999.<br />

|000000 10 MM-DATA-REGISTRAZIONE.<br />

|000000 20 MM-DATA-REGISTRAZIONE-ANNO PIC 9999.<br />

|000000 20 MM-DATA-REGISTRAZIONE-MESE PIC 99.<br />

|000000 20 MM-DATA-REGISTRAZIONE-GIORNO PIC 99.<br />

|000000 10 MM-CARICO.<br />

|000000 20 MM-CARICO-QUANTITA PIC 9(8)V999.<br />

|000000 20 MM-CARICO-COSTO-UNITARIO PIC 999999V99.<br />

|000000 10 MM-SCARICO.<br />

|000000 20 MM-SCARICO-QUANTITA PIC 9(8)V999.<br />

|000000 20 MM-SCARICO-VALORE-UNITARIO PIC 999999V99.<br />

|000000 10 MM-DESCRIZIONE PIC X(200).<br />

Come si può comprendere dall’esempio e come già accennato in precedenza, per le porzioni di<br />

record che non si scompongono ulteriormente, si devono specificare le dimensioni, sommando<br />

le quali si ottiene la dimensione dei vari raggruppamenti e infine del record complessivo. La<br />

sintassi per rappresentare i livelli si potrebbe semplificare in questa fase nel modo seguente,<br />

dove però non si usa la notazione standard del linguaggio COBOL:<br />

|<br />

|nn<br />

nome-campo [PIC[TURE] [IS] modello_della_variabile [opzioni]].<br />

|<br />

Ciò che non è stato descritto fino a questo punto è la parte di dichiarazione successiva al nome<br />

del campo, che inizia con la parola chiave ‘PICTURE’, spesso abbreviata soltanto con ‘PIC’.<br />

Ciò che appare qui serve a definire il modello della variabile, ovvero la sua dimensione e le<br />

sue caratteristiche.<br />

Il modello di definizione della variabile è una stringa che va composta seguendo regole precise.<br />

Con questo modello si specifica se la variabile è di tipo numerico o alfanumerico, la sua dimensione,<br />

la presenza eventuale di una virgola (ovviamente per i valori numerici), il segno ed<br />

eventualmente una maschera di trasformazione. Dopo il modello di definizione della variabile<br />

possono apparire delle opzioni, in forma di dichiarazioni ulteriori, che servono a precisare la<br />

modalità con cui la variabile deve essere rappresentata internamente alla memoria centrale.<br />

Quando si dichiara una variabile numerica, è importante chiarire quale rappresentazione<br />

deve avere. A seconda del compilatore, la variabile numerica potrebbe essere gestita in<br />

forma binaria oppure in forma BCD (Binary coded decimal), che a sua volta può essere<br />

«normale», dove ogni cifra occupa un byte, oppure packed, dove ogni cifra occupa mezzo<br />

byte (4 bit, noto anche come nibble). Questa caratteristica della variabile si definisce con le<br />

dichiarazioni opzionali che seguono il modello di definizione della variabile.<br />

Il modo in cui si dichiara il modello di definizione della variabile è descritto nella sezione 82.9,<br />

mentre per una visione complessiva del modo in cui si dichiara una variable, si deve consultare<br />

la sezione 82.6; tuttavia, in questa fase si può cominciare ugualmente a interpretare l’esempio<br />

mostrato in precedenza, osservando in particolare i campi seguenti:<br />

• il campo ‘MM-NUMERO-REGISTRAZIONE’ può contenere un numero intero senza segno<br />

di cinque cifre: da zero a 99999;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!