campo-sirio/ve/vebolbmp.frm
angelo 0442364208 Sistemazione messaggi cliente sull'applicazione di stampa e
relativi forms per versione 97_03


git-svn-id: svn://10.65.10.50/trunk@4783 c028cbd2-c16b-5b4b-a496-9718f37d4682
1997-06-28 11:29:43 +00:00

610 lines
15 KiB
Plaintext
Executable File
Raw Blame History

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 %CPG TO 33 ALIAS 201 INTO CODTAB==CODPAG
JOIN %AGE TO 33 ALIAS 202 INTO CODTAB==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
33->* "Documenti di vendita"
34->* "Righe documenti di vendita"
16->* "Indirizzi di spedizione (destinazione)"
47->* "Anagrafica magazzino"
201@->* "Tabella condizioni di pagamento"
202@->* "Tabella agenti"
203@->* "Tabella porto"
204@->* "Tabella banche"
205@->* "Tabella vettori"
206@->* "Tabella aspetto beni"
207@->* "Tabella causali di trasporto"
END
GENERAL
BEGIN
OFFSET 0 0
FONT "Courier New"
SIZE 12
MODULE "BUFFETTI_BOLLA_01"
PRI_DECIMALS 0 3
QTA_DECIMALS 3 3
IMP_DECIMALS 0 3
EXCLUDE ","
END
SECTION GRAPHICS ODD
FIGURA 99 80 65
BEGIN
PROMPT 1 1 "bolla.bmp"
END
END
SECTION HEADER ODD 29
STRING 1 36 1
BEGIN
KEY "nome ditta"
PROMPT 5 5 ""
MESSAGE _DITTA,!RAGSOC
END
STRING 2 36 1
BEGIN
KEY "indirizzo ditta"
PROMPT 5 6 ""
MESSAGE _DITTA,!IND
END
STRING 3 5 1
BEGIN
KEY "cap ditta"
PROMPT 5 7 ""
MESSAGE _DITTA,!CAP
END
STRING 4 30 1
BEGIN
KEY "comune ditta"
PROMPT 12 7 ""
MESSAGE _DITTA,!COM
END
STRING 5 5 1
BEGIN
KEY "scritta P.IVA"
PROMPT 5 8 "P.IVA"
END
STRING 6 16 1
BEGIN
KEY "partita iva ditta"
PROMPT 11 8 ""
MESSAGE _DITTA,!IVA
END
STRING 7 9 1
BEGIN
KEY "scritta COD.FISC."
PROMPT 5 9 "COD.FISC."
END
STRING 8 16 1
BEGIN
KEY "codice fiscale ditta"
PROMPT 15 9 ""
MESSAGE _DITTA,!CF
END
STRING 9 35 2
BEGIN
KEY "destinatario, ditta"
PROMPT 44 14 ""
MESSAGE _CLIENTE,!RAGSOC
END
STRING 10 35 2
BEGIN
KEY "destinatario, indirizzo con numero civico"
PROMPT 44 16 ""
MESSAGE _CLIENTE,!INDNUM
END
STRING 11 5 1
BEGIN
KEY "destinatario, cap"
PROMPT 44 18 ""
MESSAGE _CLIENTE,CAPCF
END
STRING 12 30 2
BEGIN
KEY "destinatario, comune"
PROMPT 50 18 ""
MESSAGE _CLIENTE,!COM->DENCOM
END
STRING 13 2
BEGIN
KEY "destinatario, provincia"
PROMPT 72 19 ""
MESSAGE _CLIENTE,!COM->PROVCOM
END
DATE 14 8 1
BEGIN
KEY "data bolla"
PROMPT 60 21 ""
FIELD 33->DATADOC
FORMAT "1442-"
END
NUMBER 15 7
BEGIN
KEY "numero bolla"
PROMPT 71 21 ""
FIELD NDOC
END
STRING 16 30 2
BEGIN
KEY "destinazione, indirizzo"
PROMPT 5 14 ""
FIELD 16->INDIR
END
STRING 17 5 1
BEGIN
KEY "destinazione, cap"
PROMPT 5 16 ""
FIELD 16->CAP
END
STRING 18 5 1
BEGIN
KEY ""
PROMPT 1 1 ""
FLAGS "H"
FIELD 16->COM
END
STRING 19 21
BEGIN
KEY "destinazione, comune"
PROMPT 5 18 ""
MESSAGE _ISAMREAD,13,COM=#18,DENCOM
END
STRING 20 2 1
BEGIN
KEY "destinazione, provincia"
PROMPT 28 18 ""
MESSAGE _ISAMREAD,13,COM=#18,PROVCOM
END
NUMBER 21
BEGIN
KEY "ordine"
PROMPT 3 21 ""
FIELD NUMDOCRIF
END
DATE 22 8 1
BEGIN
KEY "data conferma"
PROMPT 43 21 ""
FIELD DATADOCRIF
FORMAT "1442-"
END
STRING 23 48 1
BEGIN
KEY "condizioni pagamento"
PROMPT 3 23 ""
FIELD 201@->S0
END
STRING 24 29 1
BEGIN
KEY "banca appoggio"
PROMPT 53 23 ""
FIELD 204@->S0
END
STRING 25 7 1
BEGIN
KEY "codice cliente"
PROMPT 8 25 ""
FIELD CODCF
END
STRING 26 11 1
BEGIN
KEY "partita iva cliente"
PROMPT 18 25 ""
MESSAGE _CLIENTE,PIVA
END
STRING 27 18 1
BEGIN
KEY "porto"
PROMPT 41 25 ""
FIELD 203@->S0
FLAGS "D"
END
NUMBER 28
BEGIN
KEY "codice agente"
PROMPT 2 25 ""
FIELD CODAG
END
STRING 29 28 1
BEGIN
KEY "nome agente"
PROMPT 33 29 ""
FIELD 202@->S0
FLAGS "D"
END
END
SECTION BODY ODD 5
STRING 51 13 1
BEGIN
KEY "codice articolo"
PROMPT 5 1 ""
FIELD 34->CODART
END
STRING 52 29 4
BEGIN
KEY "descrizione articolo"
PROMPT 48 1 ""
MESSAGE _DESCRIGA
END
STRING 53 2
BEGIN
KEY "unit<69> di misura"
PROMPT 30 1 ""
FIELD 34->UMQTA
MESSAGE _ALIGN,#52,TOP
END
NUMBER 54 10
BEGIN
KEY "quantita"
PROMPT 17 1 ""
PICTURE "######"
GROUP 30
FIELD 34->QTA
MESSAGE _ALIGN,#52,TOP
END
NUMBER 55 20
BEGIN
KEY "quantita' lettere"
PROMPT 72 1 ""
FIELD 34->QTA
PICTURE "LETTERE"
MESSAGE _ALIGN,#52,BOTTOM
FLAGS "D"
END
END
SECTION FOOTER ODD 15
STRING 81 5
BEGIN
KEY "scritta SEGUE"
PROMPT 72 13 "SEGUE"
END
END
SECTION FOOTER LAST 15
LIST 101 1 1
BEGIN
KEY "trasporto a cura del mittente"
PROMPT 2 4 ""
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 9 4 ""
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 17 4 ""
FIELD CODSPMEZZO
ITEM "|" // default
ITEM "D| "
ITEM "M| "
ITEM "V|X" MESSAGE DISABLE,5@|ENABLE,6@
END
STRING 104 45 1
BEGIN
KEY "nome vettore"
PROMPT 3 6 ""
FIELD 205@->S0
END
STRING 105 45 1
BEGIN
KEY "indirizzo vettore"
PROMPT 3 8 ""
FIELD 205@->S1
END
DATE 106 8 1
BEGIN
KEY "data inizio trasporto/consegna"
PROMPT 48 4 ""
FIELD DATAPART
FORMAT "1442-"
GROUP 5
END
STRING 107 5 1
BEGIN
KEY "ora inizio trasporto/consegna"
PROMPT 60 4 ""
PICTURE "## ##"
FIELD ORAPART
GROUP 5
END
DATE 108 8 1
BEGIN
KEY "data ritiro"
PROMPT 51 7 ""
FIELD DATAPART
FORMAT "1442-"
FLAGS "D"
GROUP 6
END
STRING 109 5 1
BEGIN
KEY "ora ritiro"
PROMPT 60 7 ""
PICTURE "## ##"
FIELD ORAPART
FLAGS "D"
GROUP 6
END
STRING 110 27 1
BEGIN
KEY "aspetto beni"
PROMPT 1 8 ""
FIELD 206@->S0
END
STRING 111 7 1
BEGIN
KEY "peso"
PROMPT 45 10 ""
FIELD PNETTO
END
STRING 112 5 1
BEGIN
KEY "colli"
PROMPT 60 10 ""
FIELD NCOLLI
END
STRING 113 15
BEGIN
KEY "causale"
PROMPT 25 4 ""
FIELD 207@->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> <20> il numero logico del file o il nome della tabella
// <espressione input> <20> un'espressione del tipo <campo file>=<espressione campi form>
// <espressione campi form> <20> un'espressione di costanti numeriche, stringhe e valori di campi della form (indicati con il loro numero preceduto da #)
// <espressione output> <20> un'espressione del tipo <campo form o gruppo>=<campo file> (se <20> un gruppo deve essere seguito da @) oppure solo <campo file> (il campo della form <20> 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> <20> un riferimento alla relazione di gestione dei dati della ditta (es. 113@->DENCOM <20> la denominazione del comune di residenza della ditta)
// <macro> <20> uno delle macro seguenti:
// !RAGSOC ragione sociale
// !IND indirizzo (fiscale se c'<27>, oppure di residenza)
// !NUM numero civico (fiscale se c'<27>, oppure di residenza)
// !CAP CAP (fiscale se c'<27>, oppure di residenza)
// !COM comune (fiscale se c'<27>, oppure di residenza)
// !PROV provincia (fiscale se c'<27>, 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 <20> cos<6F> 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> <20> un riferimento alla relazione di gestione dei dati del cliente
// <macro> <20> 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 <20> cos<6F> 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> <20> il campo della form (preceduto da '#') da cui prendere l'allineamento
// <allineamento> <20> 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> <20> 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> <20> 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> <20> 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