USE 33
JOIN 34 INTO CODNUM==CODNUM ANNO==ANNO PROVV==PROVV NDOC==NDOC
JOIN 16 TO 33 INTO TIPOCF==TIPOCF CODCF==CODCF CODIND==CODINDSP
JOIN 47 INTO CODART==CODART
JOIN 13 TO 16 INTO STATO=STATO COM=COM
JOIN %CPG TO 33 ALIAS 201 INTO CODTAB==CODPAG
JOIN 122 TO 33 INTO CODAGE==CODAG
JOIN %POR TO 33 ALIAS 203 INTO CODTAB==CODPORTO
JOIN %BAN TO 33 ALIAS 204 INTO CODTAB==CODABIA+CODCABA
JOIN %VET TO 33 ALIAS 205 INTO CODTAB==CODVETT1
JOIN %ABE TO 33 ALIAS 206 INTO CODTAB==ASPBENI1
JOIN %CTR TO 33 ALIAS 207 INTO CODTAB==CAUSTRASP
JOIN %BAN TO 33 ALIAS 208 INTO CODTAB==CODABIA
JOIN %NDO TO 33 ALIAS 209 INTO CODTAB==CODNOTESP1

END
DESCRIPTION
BEGIN
  33->* "Documenti di vendita"
  34->* "Righe documenti di vendita"
  16->* "Indirizzi di spedizione (destinazione)"
  47->* "Anagrafica magazzino"
  201@->* "Tabella condizioni di pagamento"
  122->* "Archivio agenti"
  203@->* "Tabella porto"
  204@->* "Tabella banche istituto"
  205@->* "Tabella vettori"
  206@->* "Tabella aspetto beni"
  207@->* "Tabella causali di trasporto"
  208@->* "Tabella banche agenzia"
  209@->* "Tabella note documento"
END

GENERAL
BEGIN
  OFFSET 0 0
  FONT "Courier New"
  SIZE 11
  MODULE "BOLLA STANDARD AGA"
  PRI_DECIMALS 0 3
  QTA_DECIMALS 3 3
  IMP_DECIMALS 0 3
  EXCLUDE "08,"
END


SECTION GRAPHICS ODD 

FIGURA 99 84 63
BEGIN
  PROMPT 1 2 "bolla.bmp"
END

END

SECTION HEADER ODD 32

STRINGA 200 1 
BEGIN
 KEY "abilita/disabilita stampa intestazione ditta "
 PROMPT  1 1 ""
 MESSAGE ENABLE,15@
 FLAGS "H"
END

STRING 1 36 1
BEGIN
 KEY "nome ditta"
 PROMPT 5 5 ""
 MESSAGE _DITTA,!RAGSOC
 GROUP 15
 FLAGS "D"
END

STRING 2 36 1
BEGIN
 KEY "indirizzo ditta"
 PROMPT 5 6 ""
 MESSAGE _DITTA,!IND
 GROUP 15
 FLAGS "D"
END

STRING 3 5 1
BEGIN
 KEY "cap ditta"
 PROMPT 5 7 ""
 MESSAGE _DITTA,!CAP
 GROUP 15
 FLAGS "D"
END

STRING 4 30 1
BEGIN
 KEY "comune ditta"
 PROMPT 12 7 ""
 MESSAGE _DITTA,!COM
 GROUP 15
 FLAGS "D"
END

STRING 5 5 1
BEGIN
 KEY "scritta P.IVA"
 PROMPT 5 8 "P.IVA"
 GROUP 15
 FLAGS "D"
END

STRING 6 16 1
BEGIN
 KEY "partita iva ditta"
 PROMPT 11 8 ""
 MESSAGE _DITTA,!IVA
 GROUP 15
 FLAGS "D"
END

STRING 7 9 1
BEGIN
 KEY "scritta COD.FISC."
 PROMPT 5 9 "COD.FISC."
 GROUP 15
 FLAGS "D"
END

STRING 8 16 1
BEGIN
 KEY "codice fiscale ditta"
 PROMPT 15 9 ""
 MESSAGE _DITTA,!CF
 GROUP 15
 FLAGS "D"
END

STRINGA 9 2
BEGIN
 KEY "Numero di pagina"
 PROMPT  81 25 ""
 MESSAGE _PAGENO
END

STRING 10 35 2
BEGIN
 KEY "destinatario, ditta"
 PROMPT 45 16 ""
 MESSAGE _CLIENTE,!RAGSOC
END

STRING 11 35 2
BEGIN
 KEY "destinatario, indirizzo con numero civico"
 PROMPT 45 18 ""
 MESSAGE _CLIENTE,!INDNUM
END

STRING 12 35 1
BEGIN
 KEY "destinatario, localita"
 PROMPT 45 20 ""
 MESSAGE _CLIENTE,LOCALITACF
END

STRING 13 5 1
BEGIN
 KEY "destinatario, cap"
 PROMPT 45 21 ""
 MESSAGE _CLIENTE,!CAP
END

STRING 14 30 2
BEGIN
 KEY "destinatario, comune"
 PROMPT 51 21 ""
 MESSAGE _CLIENTE,!COM->DENCOM
 MESSAGE COPY,16
 FLAGS "H" 
END

STRING 15 2 
BEGIN
 KEY "destinatario, provincia"
 PROMPT 73 22 ""
 MESSAGE _CLIENTE,!COM->PROVCOM
 MESSAGE APPEND,16
 FLAGS "H"
END

STRING 16 30 2
BEGIN
 KEY "destinatario, comune + prov."
 PROMPT 51 21 ""
END

DATE 17 8 1
BEGIN
 KEY "data bolla"
 PROMPT 60 25 ""
 FIELD 33->DATADOC
 FORMAT "1442-"
END

NUMBER 18 7
BEGIN
 KEY "numero bolla"
 PROMPT 72 25 ""
 FIELD NDOC
END

STRING 19 5 1
BEGIN
 KEY "test indirizzo di spedizione"
 PROMPT 1 1 ""
 FLAGS "H"
 FIELD CODINDSP
 MESSAGE EMPTY ENABLE,10@|DISABLE,11@|DISABLE,30
 MESSAGE DISABLE,10@|ENABLE,11@|DISABLE,30
END

STRING 20 35 2
BEGIN
 KEY "destinazione, Rag Sociale"
 PROMPT 3 16 ""
 FIELD 16->RAGSOC
 GROUP 11
 FLAGS "D"
END

STRING 21 35 1
BEGIN
 KEY "destinazione, indirizzo"
 PROMPT 3  18 ""
 FIELD 16->INDIR
 MESSAGE COPY,23
 FLAGS "H"
END

STRING 22 10 1
BEGIN
 KEY "destinazione, indirizzo"
 PROMPT 3  18 ""
 FIELD 16->CIV
 MESSAGE APPEND,23
 FLAGS "H"
END

STRING 23 35 2
BEGIN
 KEY "destinazione, indirizzo+N.civico"
 PROMPT 3  18 ""
 GROUP 11
 FLAGS "D"
END

STRING 24 35 1
BEGIN
 KEY "destinazione, localita"
 PROMPT 3  20 ""
 FIELD 16->LOCALITA
 GROUP 11
 FLAGS "D"
END

STRING 25 5 1 
BEGIN
 KEY "destinazione, cap"
 PROMPT 3 21 ""
 FIELD 16->CAP
 GROUP 11
 FLAGS "D"
END

STRING 26 5 1
BEGIN
 KEY ""
 PROMPT 1 1 ""
 FLAGS "H"
 FIELD 16->COM
END

STRING 27 25 2 
BEGIN
 KEY "destinazione, comune"
 PROMPT 9 21 ""
 FIELD 13->DENCOM
 MESSAGE COPY,29
 FLAGS "H"
END

STRING 28 2 
BEGIN
 KEY "destinazione, provincia"
 PROMPT 31 21 ""
 FIELD 13->PROVCOM
 MESSAGE APPEND,29
 FLAGS "H"
END

STRING 29 27 2 
BEGIN
 KEY "destinazione, comune+provincia"
 PROMPT 9 21 ""
 GROUP 11
 FLAGS "D"
END

STRING 30 30 1
BEGIN
 KEY "destinazione, idem"
 PROMPT 3 16 "IDEM"
 FLAGS "D"
END

STRING 31 35 2
BEGIN
 KEY "destinatario, ditta dest"
 PROMPT 3 16 ""
 MESSAGE _CLIENTE,!RAGSOC
 GROUP 10
 FLAGS "D"
END

STRING 32 35 2
BEGIN
 KEY "destinatario, indirizzo con numero civico dest"
 PROMPT 3 18 ""
 MESSAGE _CLIENTE,!INDNUM
 GROUP 10
 FLAGS "D"
END

STRING 33 35 1
BEGIN
 KEY "destinatario, localita"
 PROMPT 3 20 ""
 MESSAGE _CLIENTE,LOCALITACF
 GROUP 10
 FLAGS "D"
END

STRING 34 5 1
BEGIN
 KEY "destinatario, cap dest"
 PROMPT 3 21 ""
 MESSAGE _CLIENTE,CAPCF
 GROUP 10
 FLAGS "D"
END

STRING 35 21 2
BEGIN
 KEY "destinatario, comune dest"
 PROMPT 9 21 ""
 MESSAGE _CLIENTE,!COM->DENCOM
 FLAGS "H"
 MESSAGE COPY,37 
END

STRING 36 2 
BEGIN
 KEY "destinatario, provincia dest"
 PROMPT 31 22 ""
 MESSAGE _CLIENTE,!COM->PROVCOM
 FLAGS "H"
 MESSAGE APPEND,37
END

STRING 37 21 2
BEGIN
 KEY "destinatario, comune dest + prov"
 PROMPT 9 21 ""
 FLAGS "D"
 GROUP 10
END

STRING 38 10
BEGIN
 KEY "ordine"
 PROMPT 3 25 ""
 FIELD NUMDOCRIF
END

DATE 39 8 1
BEGIN
 KEY "data conferma"
 PROMPT 17 25 ""
 FIELD DATADOCRIF
 FORMAT "1442-"
END

STRING 40 25 1
BEGIN
 KEY "condizioni pagamento"
 PROMPT 3 27 ""
 FIELD 201@->S0
END

STRING 41 27 1
BEGIN
 KEY "banca appoggio istituto"
 PROMPT 30 27 ""
 FIELD 208@->S0
END

STRING 42 25 1
BEGIN
 KEY "banca appoggio agenzia"
 PROMPT 58 27 ""
 FIELD 204@->S0
 END

STRING 43 7 1
BEGIN
 KEY "codice cliente"
 PROMPT 3 29 ""
 FIELD CODCF
END

STRING 44 11 1
BEGIN
 KEY "copy partita iva"
 PROMPT 1 1 ""
 MESSAGE _CLIENTE,PAIV
 MESSAGE COPY,45
 FLAGS "H"
END

STRING 45 11 1
BEGIN
 KEY "test PIVA/CF"
 PROMPT 1 1 ""
 MESSAGE EMPTY ENABLE,47
 MESSAGE ENABLE,46
 FLAGS "H"
END

STRING 46 11 1
BEGIN
 KEY "partita iva cliente"
 PROMPT 12 29 ""
 MESSAGE _CLIENTE,PAIV
 FLAGS "D"
END

STRING 47 16 1
BEGIN
 KEY "codice fiscale cliente"
 PROMPT 10 29 ""
 MESSAGE _CLIENTE,COFI
 FLAGS "D"
END

STRING 48 24 1
BEGIN
 KEY "porto"
 PROMPT 30 25 ""
 FIELD 203@->S0
END

STRING 49 3
BEGIN
 KEY "codice agente"
 PROMPT 30 29 ""
 FIELD CODAG
END

STRING 50 28 1
BEGIN
 KEY "nome agente"
 PROMPT 36 29 ""
 FIELD 122->RAGSOC
END

STRING 51 18 
BEGIN
 KEY "causale"
 PROMPT 65 29 ""
 FIELD 207@->S0
END

END

SECTION BODY ODD 5

STRING 81 13 1
BEGIN
 KEY "codice articolo"
 PROMPT 3 1 ""
 FIELD 34->CODART
END

STRING 82 36 24
BEGIN
 KEY "descrizione articolo"
 PROMPT 24 1 ""
 MESSAGE _DESCRIGA
END

STRING 83 2 
BEGIN
 KEY "unit� di misura"
 PROMPT 65 1 ""
 FIELD 34->UMQTA
 MESSAGE _ALIGN,#82,TOP
END

NUMBER 84 11
BEGIN
 KEY "quantita"
 PROMPT 70 1 ""
 PICTURE "###.###.###"
 GROUP 30 
 FIELD 34->QTA
 MESSAGE _ALIGN,#82,TOP
END

NUMBER 85 20
BEGIN
 KEY "quantita' lettere"
 PROMPT 72 1 ""
 FIELD 34->QTA
 PICTURE "LETTERE"
 MESSAGE _ALIGN,#82,BOTTOM
 FLAGS "D"
END

END

SECTION FOOTER ODD -53

STRING 100 5 
BEGIN
 KEY "scritta SEGUE"
 PROMPT 72 12 "SEGUE"
END

END

SECTION FOOTER LAST -53

LIST 101 1 1
BEGIN
 KEY "trasporto a cura del mittente"
 PROMPT 4 2 ""
 FIELD CODSPMEZZO
 ITEM "|" MESSAGE DISABLE,6@|ENABLE,5@
 ITEM "D| "
 ITEM "M|X" MESSAGE DISABLE,6@|ENABLE,5@
 ITEM "V| "
END

LIST 102 1 1
BEGIN
 KEY "trasporto a cura del destinatario"
 PROMPT 15 2 ""
 FIELD CODSPMEZZO
 ITEM "|" MESSAGE DISABLE,6@|ENABLE,5@
 ITEM "D|X" MESSAGE DISABLE,6@|ENABLE,5@
 ITEM "M| "
 ITEM "V| "
END

LIST 103 1 1
BEGIN
 KEY "trasporto a cura del vettore"
 PROMPT 28 2 ""
 FIELD CODSPMEZZO
 ITEM "|" // default
 ITEM "D| "
 ITEM "M| "
 ITEM "V|X" MESSAGE DISABLE,5@|ENABLE,6@
END

STRING 105 45 1
BEGIN
 KEY "nome vettore"
 PROMPT 3 4 ""
 FIELD 205@->S0
END

STRING 106 35 1
BEGIN
 // nella versione 05 togliere MESSAGE COPY
 KEY "indirizzo vettore"
 PROMPT 3 5 ""
 FIELD 205@->S1[1,35]
 MESSAGE COPY,109
 FLAGS "H"
END

STRING 107 45 1
BEGIN
 // nella versione 05 sostituire FLAGS "D" con FLAGS "H"
 KEY "indirizzo vettore"
 PROMPT 3 5 ""
 MESSAGE _STREXPR,TRIM(#106)
 FLAGS "D"
 MESSAGE COPY,109
END

STRING 108 10 1
BEGIN
 KEY "num.civico vettore"
 PROMPT 3 5 ""
 FIELD 205@->S1[36,45]
 MESSAGE APPEND,109
 FLAGS "H"
END

STRING 109 45 1
BEGIN
 KEY "indirizzo vettore+num.civico"
 PROMPT 3 5 ""
END

STRING 110 45 1
BEGIN
 KEY "localita vettore"
 PROMPT 3 6 ""
 FIELD 205@->S1[46,70]
END

STRING 111 5 1 
BEGIN
 KEY "vettore, cap"
 PROMPT 3 7 ""
 FIELD 205@->S7
END

STRING 112 5 1
BEGIN
 KEY ""
 PROMPT 1 1 ""
 FLAGS "H"
 FIELD 205@->S9
END

STRING 113 35 1 
BEGIN
 KEY "vettore, comune"
 PROMPT 9 7 ""
 MESSAGE _ISAMREAD,13,COM=#112,DENCOM
 MESSAGE COPY,115
 FLAGS "H"
END

STRING 114 2 1
BEGIN
 KEY "vettore, provincia"
 PROMPT 45 7 ""
 MESSAGE _ISAMREAD,13,COM=#112,PROVCOM
 MESSAGE APPEND,115
 FLAGS "H"
END

STRING 115 38 1 
BEGIN
 KEY "vettore, comune+provincia"
 PROMPT 9 7 ""
END

DATE 116 8 1
BEGIN
 KEY "data inizio trasporto/consegna"
 PROMPT 52 4 ""
 FIELD DATAPART
 FORMAT "1442-"
 GROUP 5
 FLAGS "D"
END

STRING 117 5 1
BEGIN
 KEY "ora inizio trasporto/consegna"
 PROMPT 62 4 ""
 PICTURE "##.##"
 FIELD ORAPART
 GROUP 5
 FLAGS "D"
END

DATE 118 8 1
BEGIN
 KEY "data ritiro"
 PROMPT 52 4 ""
 FIELD DATAPART
 FORMAT "1442-"
 FLAGS "D"
 GROUP 6
END

STRING 119 5 1
BEGIN
 KEY "ora ritiro"
 PROMPT 62 4 ""
 PICTURE "##.##"
 FIELD ORAPART
 FLAGS "D"
 GROUP 6
END

STRING 120 27 1
BEGIN
 KEY "aspetto beni"
 PROMPT 38 2 ""
 FIELD 206@->S0
END

STRING 121 7 1
BEGIN
 KEY "peso"
 PROMPT 76 2 ""
 FIELD PNETTO
END

STRING 122 5 1
BEGIN
 KEY "colli"
 PROMPT 70 2 ""
 FIELD NCOLLI
END

STRING 123 50 1
BEGIN
 KEY "note documento"
 PROMPT 2 9 ""
 FIELD 209@->S0
END

END

END

//   NOTE SULLA COMPILAZIONE DEI FORM DI STAMPA
//
//   SEZIONE GENERAL
//   ===============
//   Posizionamento:
//    e' possibile effettuari posizionamenti manuali dei form con le seguenti istruzioni:
//    CARATTERE <S> 
//    INIZIALE  <N> <N>
//    FINALE    <N> <N>
//   dove:
//      CARATTERE indica il carattere da stampare per contrassegnare il posizionamento, racchiuso tra doppi apici (eg "X")
//      INIZIALE  indica le coordinate X ed Y per il posizionamento iniziale (dove stampare il primo carattere)
//      FINALE    indica le coordinate X ed Y per il posizionamento finale (dove stampare il secondo carattere)
//   FINALE puo' essere omesso; se definito e' comunque buona norma tenere la coordinata verticale (Y) uguale
//   a quella indicata in INIZIALE, se diversi il programma tiene conto solo della prima.
//   Non e' possibile definire sia posizionamenti manuali che OFFSET, quindi o l'uno o l'altro, preferibilmente
//   e' meglio scegliere OFFSET.
//
//   Modificatori di pictures:
//   i parametri IMP_DECIMALS, QTA_DECIMALS, e PRI_DECIMALS settano i decimali da stampare/arrotondare
//   per i seguenti: importi in genere, quantita', e prezzi. Il primo parametro intero e' per gli importi in lire
//   il secondo per gli importi in valuta. Naturalmente per le quantita' non ha senso fare una cosa del genere, ma per completezza
//   e' stata implementata.
//   PRI_DECIMALS corrisponde al gruppo 29
//   QTA_DECIMALS corrisponde al gruppo 30
//   IMP_DECIMALS corrisponde al gruppo 31
//   pertanto tutti i campi che apparterranno al gruppo 29,30 o 31 avranno gli importi stampati al numero di decimali impostati a
//   seconda se il documento e' in lire o valuta. Se il numero di decimali e' 0 la picture rimarra' invariata.
//   Altri gruppi definiti dall'utente saranno cosi' sintatticamente impostati:
//   NEW_GROUP <n> <lit_dec> <val_dec>
//   Dove <n> e' il numero del gruppo
//        <lit_dec> e' il numero di decimali per i documenti in lire
//        <val_dec> e' il numero di decimali per i documenti in valuta
//   
//   Definizione di liste di esclusione (facoltativo):
//   EXCLUDE esclude dalla stampa le righe che soddisfano la condizione specificata.
//   Si indicano in questo modo: "<tipo riga>,<cod. art>". Naturalmente si possono indicare tutti gli EXLCUDE che si vogliono.
//   Es: EXCLUDE "V01,ART1" escludera' tutte le righe di tipo V01 con codice articolo ART1
//       EXCLUDE ",ART1" escludera' tutte le righe che hanno codice articolo ART1
//       EXCLUDE "V01," escludera' tutte le righe che hanno tipo riga V01
//       EXCLUDE "," non escludera' nulla.
//
//  MESSAGGI UTENTE
//  ===============
//  Note sui messaggi della testata/body/footer:
//
//  _ISAMREAD:
//    lettura generica di un file del database
//    sintassi: _ISAMREAD,<file>,<espressione input>[!<espressione input>!...],{<campo file>|<espressione output>[!<espressione output>!...]}
//    dove: <file> � il numero logico del file o il nome della tabella
//       <espressione input> � un'espressione del tipo <campo file>=<espressione campi form>
//       <espressione campi form> � un'espressione di costanti numeriche, stringhe e valori di campi della form (indicati con il loro numero preceduto da #)
//       <espressione output> � un'espressione del tipo <campo form o gruppo>=<campo file> (se � un gruppo deve essere seguito da @) oppure solo <campo file> (il campo della form � quello corrente)
//  
//  _TABLEREAD:
//    lettura generica di un campo di una tabella
//    sintassi: _TABLEREAD,<tabella>,<chiave>,<campo file>
//    dove: <tabella> nome tabella da leggere
//       <chiave> costante stringa o riferimento a campo della form (preceduto da '#') da usare come chiave di ricerca
//       <campo file> identificativo del campo da leggere dalla tabella
//
//  _DITTA:
//    lettura dei dati della ditta
//    sintassi: _DITTA,{<campo relazione>|<macro>}
//    dove: <campo relazione> � un riferimento alla relazione di gestione dei dati della ditta (es. 113@->DENCOM � la denominazione del comune di residenza della ditta)
//         <macro> � uno delle macro seguenti:
//         !RAGSOC  ragione sociale
//         !IND     indirizzo (fiscale se c'�, oppure di residenza)
//         !NUM     numero civico (fiscale se c'�, oppure di residenza)
//         !CAP     CAP (fiscale se c'�, oppure di residenza)
//         !COM     comune (fiscale se c'�, oppure di residenza)
//         !PROV    provincia (fiscale se c'�, oppure di residenza)
//         !IVA     partita iva
//         !CF      codice fiscale
//         !TEL     numero di telefono (con prefisso)
//         !FAX     numero di fax (con prefisso)
//         !REGSOC  numero di registrazione presso il Tribunale
//         !CCIAA   numero di registrazione presso la camera di commercio
//    nota: la relazione della ditta � cos� strutturata:
//       %NDITTE (9) Dati ditte
//       + %ANAGR (6) Anagrafica generale (indirizzo, ecc.)
//          + %COMUNI (113@) Comune di residenza
//          + %COMUNI (213@) Comune di residenza fiscale
//    viene utilizzato perche' non e' possibile stabilire altrimenti una relazione con il file ditte
//    dall'interno del form.
//
//  _CLIENTE
//    lettura dei dati del cliente
//    sintassi: _CLIENTE,{<campo relazione>|<macro>}
//    dove: <campo relazione> � un riferimento alla relazione di gestione dei dati del cliente
//         <macro> � uno delle macro seguenti:
//         !RAGSOC  ragione sociale
//         !CAP     Codice Avviamento Postale (viene implementato un messaggio perche' sugli occasionali ha un nome campo diverso!!)
//         !IND     indirizzo
//         !NUM     numero civico
//         !INDNUM  indirizzo + numero civico
//         !INDSPED indirizzo spedizione + numero civico
//         !TEL     primo numero di telefono (con prefisso)
//         !TEL2    secondo numero di telefono (con prefisso)
//         !TEL3    terzo numero di telefono (con prefisso)
//         !FAX     numero di fax (con prefisso)
//         !COM-><FIELD>  accede ai campi del comune di residenza cliente
//         !COMN-><FIELD> accede ai campi del comune di nascita del cliente
//    nota: la relazione del cliente � cos� strutturata:
//       CLIFO (20) Clienti/fornitori
//       + CFVEN (17) Clienti/fornitori per vendite
//       + %COMUNI (113@) Comune di residenza
//       + %COMUNI (213@) Comune di nascita
//    viene utilizzato al posto del file 17 collegato perche' vi sono particolari
//    accorgimenti per quanto riguarda i clienti occasionali.
// 
//  _DESCRIGA:
//    Messaggio per reperire e formattare anche la descrizione estesa sulle righe del documento
//
//  _ALIGN:
//    allineamento della posizione di un campo rispetto ad un altro
//    sintassi: _ALIGN,<campo form>[,<allineamento>][,<allineamento>...]
//    dove: <campo form> � il campo della form (preceduto da '#') da cui prendere l'allineamento
//       <allineamento> � uno dei seguenti valori:
//        TOP    allinea sulla riga d'inizio
//        MIDDLE allinea al centro (effettivo)
//        BOTTOM allinea sulla riga di fine (effettiva, non preimpostata)
//        LEFT   allinea sulla colonna d'inizio
//        RIGHT  allinea sulla colonna di fine
//
//  _PAGENO:
//    Messaggio per stampare il numero di pagina corrente
//
//  _RIEPILOGOIVA:
//    messaggio per stampare la tabella ripelogativa delle aliquote IVA e relative imposte
//    sintassi: _RIEPILOGOIVA,<selettore>,<macro>,<cambio codice>
//    dove: <selettore> � uno dei seguenti:
//        1 = codici IVA a regime normale
//        2 = codici IVA da ventilare
//        4 = codici IVA esenti
//        8 = codici IVA non imponibili
//       16 = codici IVA non soggetti
//       oppure la combinazione di uno o piu' di essi:
//       12 = 4+8, 19 = 1+2+16, 29 = 1+4+8+16 ecc...
//       pertanto per avere i non imponibili in totale il selettore sara' 1,
//       per avere gli esenti il selettore sara' 4; per avere i non soggetti + esenti
//       il selettore sara' 20  e cosi' via.
//    dove: <macro> � uno dei seguenti:
//        COD     colonna dei codici
//        IMP     colonna degli imponibili
//        IVA     colonna delle imposte
//        ALI     colonna delle aliquote
//        DES     colonna delle descrizioni (stampata solo se il regime IVA non e' normale)
//    dove: <cambio codice> � uno dei seguenti:
//        0        indica di non leggere il successivo codice IVA nella tabella riepilogativa
//        1        indica di leggere il successivo codice IVA nella tabella riepilogativa
//
//  _TOTIMPONIBILI:
//    messaggio per stampare diverse totalizzazioni di imponibili
//    sintassi: _TOTIMPONIBILI,<selettore>
//    dove: <selettore> funge da filtro per la somma degli imponibili
//    vedi _RIEPILOGOIVA per la spiegazione dei filtri selettivi
//
//  _SCADENZE:
//    messaggio per stampare le scadenze
//    sintassi: _SCADENZE,<macro>,<cambio codice>
//    dove <macro> e' uno dei seguenti:
//      DATA    : stampa la data di scadenza 
//      IMPORTO : stampa l'importo in scadenza
//    dove <cambio codice> vale 0 o 1 se indica di rendere corrente la prossima scadenza
//
//  CAMPI VIRTUALI
//  ==============
//  Oltre a stampare i campi normali del file e' anche possibile stampare i campi virtuali
//  definiti nei profili semplicemente indicandoli nella istruzione FIELD:
//  per la testata del documento:
//  BOLLI, BASESCONTO, IMPOSTE, PROVVD, SCONTOD, SPESEINC, TOTDOC, TOTMER, TOTNS, TOTPRE, TOTSPE
//  per le righe:
//  IMPLN, IMPLS, IMPNN, IMPNS, IMPOSTA, PREZZOLN, PREZZOLS, PREZZONN, PREZZONS, PROVVR, SCONTOR
//  oltre, naturalmente a quelli definiti dall'utente