USE 33
JOIN 34 INTO CODNUM==CODNUM ANNO==ANNO PROVV==PROVV NDOC==NDOC
JOIN 17 TO 33 INTO TIPOCF==TIPOCF CODCF==CODCF
JOIN 20 TO 33 INTO TIPOCF==TIPOCF CODCF==CODCF
JOIN 16 TO 33 INTO TIPOCF==TIPOCF CODCF==CODCF CODIND==CODINDSP
JOIN 16 TO 17 ALIAS 116 INTO TIPOCF==TIPOCF CODCF==CODCF CODIND==CODINDSP
JOIN 47 TO 34 INTO CODART==CODART
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 %ASP TO 33 ALIAS 206 INTO CODTAB==ASPBENI1
JOIN %CTR TO 33 ALIAS 207 INTO CODTAB==CAUSTRASP

END

DESCRIPTION
BEGIN
  34->* "Righe documenti di vendita"
  33->* "Documenti di vendita"
  17->* "Clienti/Fornitori per vendite"
  20->* "Clienti/Fornitori"
  16->* "Indirizzi di spedizione (destinazione)"
  116@->* "Indirizzi di spedizione (destinatario)"
  47->* "Anagrafica magazzino"
  201@->* "Tabella condizioni di pagamento"
  122->* "Archivio agenti"
  203@->* "Tabella porto"
  204@->* "Tabella banche"
  205@->* "Tabella vettori"
  206@->* "Tabella aspetto beni"
END

GENERAL
BEGIN
  OFFSET 0 0
  FONT "Courier New"
  SIZE 12
  MODULE "STANDARD_FATTURA_01"
  PRI_DECIMALS 0 2
  QTA_DECIMALS 3 3
  IMP_DECIMALS 0 2
  EXCLUDE ","
END

SECTION GRAPHICS ODD 

FIGURA 99 82 70
BEGIN
  PROMPT 1 1 "fattura.bmp"
END

END

SECTION HEADER ODD 28

STRINGA 1 35 1
BEGIN
 KEY "nome ditta"
 PROMPT  3 4 ""
 MESSAGE _DITTA,!RAGSOC
END

STRINGA 2 35 1
BEGIN
 KEY "indirizzo ditta"
 PROMPT  3 5 ""
 MESSAGE _DITTA,!IND
END

STRINGA 3 5 1
BEGIN
 KEY "cap ditta"
 PROMPT  3 6 ""
 MESSAGE _DITTA,!CAP
END

STRINGA 4 30 1
BEGIN
 KEY "comune ditta"
 PROMPT  10 6 ""
 MESSAGE _DITTA,!COM
END

STRINGA 5 8 1
BEGIN
 KEY "scritta P.IVA"
 PROMPT  3 7 "P.IVA IT"
END

STRINGA 6 16 1
BEGIN
 KEY "partita iva ditta"
 PROMPT  12 7 ""
 MESSAGE _DITTA,!IVA
END

STRINGA 7 12 1
BEGIN
 KEY "scritta COD.FISC."
 PROMPT  3 8 "COD.FISC. IT"
END

STRINGA 8 16 1
BEGIN
 KEY "codice fiscale ditta"
 PROMPT  16 8 ""
 MESSAGE _DITTA,!CF
END

NUMERO 9 30 1
BEGIN
 KEY "reg.soc.trib...."
 PROMPT  3 9 "REG.SOC.TRIB.R.E.  "
 MESSAGE _DITTA,!REGSOC
 FLAGS "D"
END

NUMERO 10 30 1
BEGIN
 KEY "c.c.i.a.a. ....."
 PROMPT  3 10 "C.C.I.A.A.         "
 MESSAGE _DITTA,!CCIAA
 FLAGS "D"
END

STRINGA 11 10 1
BEGIN
 KEY "data fattura"
 PROMPT  58 21 ""
 FIELD 33->DATADOC
END

STRINGA 12 7
BEGIN
 KEY "numero fattura"
 PROMPT  73 21 ""
 FIELD 33->NDOC
END

STRINGA 13 6 1
BEGIN
 KEY "codice cliente"
 PROMPT  1 23 ""
 FIELD 33->CODCF
END

STRINGA 14 2 1
BEGIN
 KEY "codice agente"
 PROMPT  7 23 ""
 FIELD 33->CODAG
END

STRINGA 15 14 1
BEGIN
 KEY "porto"
 PROMPT  52 23 ""
 FIELD 203@->S0
END

NUMERO 16 7 1
BEGIN
 KEY "ordine"
 PROMPT  12 23 ""
 FIELD 33->NUMDOCRIF
END

DATA 17 10 1
BEGIN
 KEY "data conferma"
 PROMPT  20 23 ""
 FIELD 33->DATADOCRIF
 FORMAT "1444-"
END

STRINGA 18 49 1
BEGIN
 KEY "condizioni di pagamento"
 PROMPT  3 25 ""
 FIELD 201@->S0
END

STRINGA 19 28 1
BEGIN
 KEY "banca d'appoggio"
 PROMPT  53 25 ""
 FIELD 204@->S0
END

STRINGA 20 38 2
BEGIN
 KEY "cliente ragione sociale "
 PROMPT  44 11 ""
 MESSAGE _CLIENTE,!RAGSOC
END

STRINGA 21 35 2
BEGIN
 KEY "cliente indirizzo con numero civico"
 PROMPT  44 13 ""
 MESSAGE _CLIENTE,!INDNUM
END

STRINGA 22 2
BEGIN
 KEY "Numero di pagina"
 PROMPT  80 21 ""
 MESSAGE _PAGENO
END

STRINGA 23 5 1
BEGIN
 KEY "cliente cap"
 PROMPT  44 15 ""
 MESSAGE _CLIENTE,CAPCF
END

STRINGA 24 30 1
BEGIN
 KEY "cliente comune"
 PROMPT  50 15 ""
 MESSAGE _CLIENTE,!COM->DENCOM
END

STRINGA 25 2 1
BEGIN
 KEY "cliente provincia"
 PROMPT  73 16 ""
 MESSAGE _CLIENTE,!COM->PROVCOM
END

STRINGA 26 3 1
BEGIN
 KEY "cliente codice stato"
 PROMPT  44 17 ""
 MESSAGE _CLIENTE,STATOCF
 FLAGS "H"
END

STRINGA 27 25 1
BEGIN
 KEY "cliente nome stato"
 PROMPT  44 17 ""
 MESSAGE _TABLEREAD,%STA,#26,S0
END

STRING 28 11 1
BEGIN
 KEY "partita iva cliente"
 PROMPT 37 23 ""
 MESSAGE _CLIENTE,PAIV
END

STRING 29 2 1
BEGIN
 KEY "codice iso iva cliente"
 PROMPT 34 23 ""
 MESSAGE _CLIENTE,STATOPAIV
END

STRING 30 15 
BEGIN
 KEY "causale di trasporto"
 PROMPT 67 23 ""
 FIELD 207@->S0
END

END

SECTION BODY ODD 5

STRINGA 51 12 1
BEGIN
 KEY "codice articolo"
 FIELD 34->CODART
 PROMPT  2 1 ""
END

STRINGA 52 20 4
BEGIN
 KEY "descrizione articolo"
 MESSAGE _DESCRIGA
 PROMPT  16 1 ""
END

STRINGA 53 2
BEGIN
 KEY "unita' di misura"
 PROMPT  37 1 ""
 FIELD 34->UMQTA
 MESSAGE _ALIGN,#52,BOTTOM
END

NUMBER 54 9
BEGIN
 KEY "quantita'"
 PROMPT  40 1 ""
 FIELD 34->QTA
 PICTURE "#########"
 GROUP 30
 MESSAGE _ALIGN,#52,BOTTOM
END

NUMBER 55 11
BEGIN
 KEY "prezzo unitario"
 PROMPT  50 1 ""
 FIELD 34->PREZZO
 PICTURE "###.###.###"
 GROUP 29
 MESSAGE _ALIGN,#52,BOTTOM
END

STRINGA 56 3
BEGIN
 KEY "sconto"
 PROMPT  63 1 ""
 FIELD 34->SCONTO
 MESSAGE _ALIGN,#52,BOTTOM
END

NUMBER 57 12
BEGIN
 KEY "importo netto"
 PROMPT  66 1 ""
 FIELD 34->IMPNN
 PICTURE "###.###.###"
 GROUP 29
 MESSAGE _ALIGN,#52,BOTTOM
END

STRINGA 58 3 
BEGIN
 KEY "iva"
 PROMPT  79 1 ""
 FIELD 34->CODIVA
 MESSAGE _ALIGN,#52,BOTTOM
END

NUMBER 59 15
BEGIN
 KEY "prezzo unitario scontato"
 PROMPT  68 1 ""
 PICTURE "###.###.###.###"
 FIELD 34->PREZZONS
 GROUP 29
 MESSAGE _ALIGN,#52,BOTTOM
 FLAGS "H"
END

NUMBER 60 15
BEGIN
 KEY "provvigione"
 PROMPT  68 1 ""
 PICTURE "###.###.###.###"
 FIELD 34->PROVVR
 MESSAGE _ALIGN,#52,BOTTOM
 GROUP 31
 FLAGS "H"
END

NUMBER 61 15
BEGIN
 KEY "Imposta"
 PROMPT  68 1 ""
 PICTURE "###.###.###.###"
 FIELD 34->IMPOSTA
 MESSAGE _ALIGN,#52,BOTTOM
 GROUP 31
 FLAGS "H"
END

END

SECTION FOOTER ODD -52

STRINGA 81 5 1
BEGIN
 KEY "stampa 'segue' in coda"
 PROMPT  73 13 "SEGUE"
END

END

SECTION FOOTER LAST -52

NUMBER 101 12 
BEGIN
 KEY "spese"
 PROMPT  69 1 ""
 PICTURE "###.###.###"
 FIELD SPESE
 GROUP 31
END

NUMBER 102 15 
BEGIN
 KEY "spese di trasporto"
 PROMPT  56 1 ""
 PICTURE "###.###.###"
 FIELD SPESE
 FLAGS "H"
 GROUP 31
END

NUMBER 103 15 
BEGIN
 KEY "spese di imballo"
 PROMPT  56 1 ""
 PICTURE "###.###.###"
 FIELD SPESE
 FLAGS "H"
 GROUP 31
END

NUMBER 104 7 
BEGIN
 KEY "spese di incasso"
 PROMPT  54 11 ""
 PICTURE "###.###"
 FIELD SPESINC
 GROUP 31
END

NUMBER 105 11 
BEGIN
 KEY "spese bolli"
 PROMPT  60 11 ""
 FIELD BOLLI
 GROUP 31
 FLAGS "D"
END

STRING 106 3 
BEGIN
 KEY "codice iva 1"
 PROMPT  1 3 ""
 MESSAGE _RIEPILOGOIVA,1,COD,0
END

NUMBER 107 12 
BEGIN
 KEY "imponibile 1"
 PROMPT  6 3 ""
 MESSAGE _RIEPILOGOIVA,1,IMP,0
 PICTURE "###.###.###"
 GROUP 31
END

NUMBER 108 2 
BEGIN
 KEY "iva 1"
 PROMPT  18 3 ""
 MESSAGE _RIEPILOGOIVA,1,ALI,0
 PICTURE "##"
END

NUMBER 109 10 
BEGIN
 KEY "imposta 1"
 PROMPT  22 3 ""
 MESSAGE _RIEPILOGOIVA,1,IVA,1
 PICTURE "##.###.###"
 GROUP 31
END

STRING 110 3 
BEGIN
 KEY "codice iva 2"
 PROMPT  1 4 ""
 MESSAGE _RIEPILOGOIVA,1,COD,0
END

NUMBER 111 12 
BEGIN
 KEY "imponibile 2"
 PROMPT  6 4 ""
 MESSAGE _RIEPILOGOIVA,1,IMP,0
 PICTURE "###.###.###"
 GROUP 31
END

NUMBER 112 2 
BEGIN
 KEY "iva 2"
 PROMPT  18 4 ""
 MESSAGE _RIEPILOGOIVA,1,ALI,0
 PICTURE "##"
END

NUMBER 113 10 
BEGIN
 KEY "imposta 2"
 PROMPT  22 4 ""
 MESSAGE _RIEPILOGOIVA,1,IVA,1
 PICTURE "##.###.###"
 GROUP 31
END

STRING 114 3 
BEGIN
 KEY "codice iva 3"
 PROMPT  1 5 ""
 MESSAGE _RIEPILOGOIVA,1,COD,0
END

NUMBER 115 12 
BEGIN
 KEY "imponibile 3"
 PROMPT  6 5 ""
 MESSAGE _RIEPILOGOIVA,1,IMP,0
 PICTURE "###.###.###"
 GROUP 31
END

NUMBER 116 2 
BEGIN
 KEY "iva 3"
 PROMPT  18 5 ""
 MESSAGE _RIEPILOGOIVA,1,ALI,0
 PICTURE "##"
END

NUMBER 117 10 
BEGIN
 KEY "imposta 3"
 PROMPT  22 5 ""
 MESSAGE _RIEPILOGOIVA,1,IVA,1
 PICTURE "##.###.###"
 GROUP 31
END

NUMBER 118 12
BEGIN
 KEY "imponibile 4"
 PROMPT  6 7 ""
 MESSAGE _RIEPILOGOIVA,30,IMP,0
 PICTURE "###.###.###"
 GROUP 31
END

STRINGA 119 3 
BEGIN
 KEY "codice iva 4"
 PROMPT  1 7 ""
 MESSAGE _RIEPILOGOIVA,30,COD,0
END

STRINGA 120 45 
BEGIN
 KEY "descrizione altri 4"
 PROMPT  34 7 ""
 MESSAGE _RIEPILOGOIVA,30,DES,1
END

NUMBER 121 12 
BEGIN
 KEY "imponibile 5"
 PROMPT  6 8 ""
 MESSAGE _RIEPILOGOIVA,30,IMP,0
 PICTURE "###.###.###"
 GROUP 31
END

STRINGA 122 3 
BEGIN
 KEY "codice iva 5"
 PROMPT  1 8 ""
 MESSAGE _RIEPILOGOIVA,30,COD,0
END

STRINGA 123 45 
BEGIN
 KEY "descrizione altri 5"
 PROMPT  34 8 ""
 MESSAGE _RIEPILOGOIVA,30,DES,1
END

NUMBER 124 15 
BEGIN
 KEY "totale imponibile"
 PROMPT  4 11 ""
 MESSAGE _TOTIMPONIBILI,29
 PICTURE "#.###.###.###"
 GROUP 31
END

NUMBER 125 14 
BEGIN
 KEY "totale imposta"
 PROMPT  18 11 ""
 FIELD IMPOSTE
 PICTURE "##.###.###.###"
 GROUP 31
END

NUMBER 126 10 
BEGIN
 KEY "totale esenti"
 PROMPT  34 11 ""
 MESSAGE _TOTIMPONIBILI,28
 PICTURE "##.###.###"
 GROUP 31
END

NUMBER 127 15 
BEGIN
 KEY "totale importi netti (non scontati)"
 PROMPT  2 1 ""
 FIELD TOTMER
 PICTURE "###.###.###"
 GROUP 31
END

NUMBER 128 12 
BEGIN
 KEY "totale fattura"
 PROMPT  69 11 ""
 FIELD TOTDOC
 PICTURE "###.###.###"
 GROUP 31
END

DATA 129 10 1
BEGIN
 KEY "scadenza pagamento 1"
 PROMPT  1 13 ""
 MESSAGE _SCADENZE,DATA,0
END

NUMBER 130 12 
BEGIN
 KEY "importo scadenza 1"
 PROMPT  13 13 ""
 MESSAGE _SCADENZE,IMPORTO,1
 PICTURE "###.###.###"
 GROUP 31
END

DATA 131 10 1
BEGIN
 KEY "scadenza pagamento 2"
 PROMPT  27 13 ""
 MESSAGE _SCADENZE,DATA,0
END

NUMBER 132 12
BEGIN
 KEY "importo scadenza 2"
 PROMPT  39 13 ""
 MESSAGE _SCADENZE,IMPORTO,1
 PICTURE "###.###.###"
 GROUP 31
END
        
DATA 133 10 1
BEGIN
 KEY "scadenza pagamento 3"
 PROMPT  51 13 ""
 MESSAGE _SCADENZE,DATA,0
END

NUMBER 134 12 
BEGIN
 KEY "importo scadenza 3"
 PROMPT  65 13 ""
 MESSAGE _SCADENZE,IMPORTO,1
 PICTURE "###.###.###"
 GROUP 31
END

DATA 135 10 1
BEGIN
 KEY "scadenza pagamento 4"
 PROMPT  1 14 ""
 MESSAGE _SCADENZE,DATA,0
END

NUMBER 136 12 
BEGIN
 KEY "importo scadenza 4"
 PROMPT  13 14 ""
 MESSAGE _SCADENZE,IMPORTO,1
 PICTURE "###.###.###"
 GROUP 31
END

DATA 137 10 1
BEGIN
 KEY "scadenza pagamento 5"
 PROMPT  27 14 ""
 MESSAGE _SCADENZE,DATA,0
END

NUMBER 138 15 
BEGIN
 KEY "importo scadenza 5"
 PROMPT  39 14 ""
 MESSAGE _SCADENZE,IMPORTO,1
 PICTURE "###.###.###"
 GROUP 31
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
//         !IND     indirizzo
//         !NUM     numero civico
//         !INDNUM  indirizzo + 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