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 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 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" 202@->* "Tabella agenti" 203@->* "Tabella porto" 204@->* "Tabella banche" 205@->* "Tabella vettori" 206@->* "Tabella apsetto beni" END GENERAL BEGIN OFFSET 0 0 FONT "Courier New" SIZE 12 MODULE BUFFETTI_FATTURA_ACCOMPAGNATORIA_01 PRI_DECIMALS 0 3 QTA_DECIMALS 3 3 IMP_DECIMALS 0 3 EXCLUDE "," END SECTION HEADER ODD 27 STRINGA 1 36 1 BEGIN KEY "nome ditta" PROMPT 5 1 "" MESSAGE _DITTA,!RAGSOC END STRINGA 2 36 1 BEGIN KEY "indirizzo ditta" PROMPT 5 2 "" MESSAGE _DITTA,!IND END STRINGA 3 5 1 BEGIN KEY "cap ditta" PROMPT 5 3 "" MESSAGE _DITTA,!CAP END STRINGA 4 30 1 BEGIN KEY "comune ditta" PROMPT 12 3 "" MESSAGE _DITTA,!COM END STRINGA 5 5 1 BEGIN KEY "scritta p.iva" PROMPT 5 4 "P.IVA" END STRINGA 6 16 1 BEGIN KEY "partita iva ditta" PROMPT 11 4 "" MESSAGE _DITTA,!IVA END STRINGA 7 9 1 BEGIN KEY "scritta cod.fisc." PROMPT 5 5 "COD.FISC" END STRINGA 8 16 1 BEGIN KEY "codice fiscale ditta" PROMPT 15 5 "" MESSAGE _DITTA,!CF END NUMERO 9 30 1 BEGIN KEY "reg.soc.trib...." PROMPT 5 6 "REG.SOC.TRIB.R.E. " MESSAGE _DITTA,!REGSOC END NUMERO 10 30 1 BEGIN KEY "c.c.i.a.a. 143011" PROMPT 5 7 "C.C.I.A.A. " MESSAGE _DITTA,!CCIAA END STRINGA 11 36 2 BEGIN KEY "destinatario, ditta" PROMPT 44 10 "" MESSAGE _CLIENTE,!RAGSOC END STRINGA 12 36 2 BEGIN KEY "destinatario, indirizzo" PROMPT 44 12 "" MESSAGE _CLIENTE,!INDNUM END STRINGA 13 5 1 BEGIN KEY "destinatario, cap" PROMPT 44 14 "" MESSAGE _CLIENTE,CAPCF END STRINGA 14 30 2 BEGIN KEY "destinatario, comune" PROMPT 50 14 "" MESSAGE _CLIENTE,!COM->DENCOM END STRINGA 15 2 1 BEGIN KEY "destinatario, provincia" PROMPT 77 15 "" MESSAGE _CLIENTE,!COM->PROVCOM END STRINGA 16 10 1 BEGIN KEY "data bolla" PROMPT 58 19 "" FIELD DATADOC END STRINGA 17 7 BEGIN KEY "numero bolla" PROMPT 67 19 "" FIELD 33->NDOC END STRINGA 18 30 1 BEGIN KEY "destinazione, indirizzo" PROMPT 1 10 "" FIELD 16->INDIR END STRINGA 19 30 1 BEGIN KEY "destinazione, cap" PROMPT 1 12 "" FIELD 16->CAP END STRINGA 20 50 1 BEGIN FLAGS "H" PROMPT 1 1 "" FIELD 16->COM END STRINGA 21 30 1 BEGIN KEY "destinazione, comune" PROMPT 1 14 "" MESSAGE _ISAMREAD,13,COM=#20,DENCOM END STRINGA 22 2 1 BEGIN KEY "destinazione, provincia" PROMPT 31 14 "" MESSAGE _ISAMREAD,13,COM=#20,PROVCOM END STRINGA 23 26 1 BEGIN KEY "ordine" PROMPT 1 19 "" FIELD NUMDOCRIF END DATA 24 10 BEGIN KEY "data conferma" PROMPT 28 19 "" FIELD DATADOCRIF FORMAT "1444-" END STRINGA 25 48 1 BEGIN KEY "condizioni di pagamento" PROMPT 1 21 "" FIELD 201@->S0 END STRINGA 26 29 1 BEGIN KEY "banca d'appoggio" PROMPT 50 21 "" FIELD 204@->S0 END STRINGA 27 8 1 BEGIN KEY "codice cliente" PROMPT 5 23 "" FIELD CODCF END STRINGA 28 16 1 BEGIN KEY "partita iva cliente" PROMPT 16 23 "" MESSAGE _CLIENTE,PIVA END STRINGA 29 25 1 BEGIN KEY "porto" PROMPT 35 23 "" FIELD 203@->S0 END STRINGA 29 3 1 BEGIN KEY "codice agente" PROMPT 1 23 "" FIELD CODAG END STRING 30 28 BEGIN KEY "nome agente" PROMPT 5 23 "" FIELD 202@->S0 END STRINGA 31 21 1 BEGIN KEY "vettore" PROMPT 59 23 "" END END SECTION BODY ODD 5 STRINGA 51 13 1 BEGIN KEY "codice articolo" PROMPT 1 1 "" FIELD 34->CODART END STRINGA 52 30 4 BEGIN KEY "descrizione articolo" PROMPT 17 1 "" MESSAGE _DESCRIGA END STRINGA 53 2 BEGIN KEY "unita' di misura" PROMPT 46 1 "" FIELD 34->UMQTA MESSAGE _ALIGN,#52,BOTTOM END NUMBER 54 10 BEGIN KEY "quantita'" PROMPT 49 1 "" PICTURE "######" GROUP 30 FIELD 34->QTA MESSAGE _ALIGN,#52,BOTTOM END NUMBER 55 15 BEGIN KEY "prezzo unitario" PROMPT 59 1 "" PICTURE "###.###.###.###" GROUP 29 FIELD 34->PREZZO MESSAGE _ALIGN,#52,BOTTOM END STRINGA 56 20 BEGIN KEY "sconto" PROMPT 75 1 "" FIELD 34->SCONTO MESSAGE _ALIGN,#52,BOTTOM END NUMBER 57 15 BEGIN KEY "importo netto" PROMPT 68 1 "" FLAGS "H" GROUP 29 FIELD 34->IMPNN PICTURE "###.###.###.###" MESSAGE _ALIGN,#52,BOTTOM END STRINGA 58 3 1 BEGIN KEY "iva" PROMPT 81 1 "" FIELD 34->CODIVA MESSAGE _ALIGN,#52,BOTTOM END NUMBER 59 15 BEGIN KEY "prezzo unitario scontato" PROMPT 68 1 "" PICTURE "###.###.###.###" GROUP 29 FIELD 34->PREZZONS MESSAGE _ALIGN,#52,BOTTOM FLAGS "H" END NUMBER 60 15 BEGIN KEY "provvigione" PROMPT 68 1 "" PICTURE "###.###.###.###" MESSAGE _ALIGN,#52,BOTTOM FIELD 34->PROVVR GROUP 31 FLAGS "H" END NUMBER 61 15 BEGIN KEY "Imposta" PROMPT 68 1 "" PICTURE "###.###.###.###" MESSAGE _ALIGN,#52,BOTTOM FIELD 34->IMPOSTA GROUP 31 FLAGS "H" END END SECTION FOOTER LAST 19 STRINGA 81 5 1 BEGIN KEY "messaggio 'segue' in coda" PROMPT 68 19 "SEGUE" END END SECTION FOOTER ODD 19 NUMBER 101 15 BEGIN KEY "spese di trasporto" PROMPT 43 52 "" MESSAGE _TOTAL_CODA,SPTRAS PICTURE "###.###.###.###" GROUP 31 END NUMBER 102 115 BEGIN KEY "spese di incasso" PROMPT 55 50 "" MESSAGE _TOTAL_CODA,SPINC PICTURE "###.###.###.###" GROUP 31 END NUMBER 103 15 BEGIN KEY "spese bolli" PROMPT 55 52 "" MESSAGE _TOTAL_CODA,SPIMB PICTURE "###.###.###.###" GROUP 31 END STRINGA 104 21 1 BEGIN KEY "descrizione altri 1" PROMPT 22 48 "" END STRINGA 105 12 1 BEGIN KEY "imponibile 1" PROMPT 4 48 "" END STRINGA 106 3 1 BEGIN KEY "iva 1" PROMPT 17 48 "" END STRINGA 107 11 1 BEGIN KEY "imposta 1" PROMPT 22 48 "" END STRINGA 108 21 1 BEGIN KEY "descrizione altri 2" PROMPT 22 49 "" END STRINGA 109 12 1 BEGIN KEY "imponibile 2" PROMPT 4 49 "" END STRINGA 110 3 1 BEGIN KEY "iva 2" PROMPT 17 49 "" END STRINGA 111 11 1 BEGIN KEY "imposta 2" PROMPT 22 49 "" END STRINGA 112 21 1 BEGIN KEY "descrizione altri 3" PROMPT 22 50 "" END STRINGA 113 12 1 BEGIN KEY "imponibile 3" PROMPT 4 50 "" END STRINGA 114 3 1 BEGIN KEY "iva 3" PROMPT 17 50 "" END STRINGA 115 11 1 BEGIN KEY "imposta 3" PROMPT 22 50 "" END STRINGA 116 21 1 BEGIN KEY "descrizione altri 4" PROMPT 22 51 "" END STRINGA 117 12 1 BEGIN KEY "imponibile 4" PROMPT 4 51 "" END STRINGA 118 3 1 BEGIN KEY "iva 4" PROMPT 17 51 "" END STRINGA 119 11 1 BEGIN KEY "imposta 4" PROMPT 22 51 "" END STRINGA 120 21 1 BEGIN KEY "descrizione altri 5" PROMPT 22 52 "" END STRINGA 121 12 1 BEGIN KEY "imponibile 5" PROMPT 4 52 "" END STRINGA 122 3 1 BEGIN KEY "iva 5" PROMPT 17 52 "" END STRINGA 123 11 1 BEGIN KEY "imposta 5" PROMPT 22 52 "" END STRINGA 124 6 1 BEGIN KEY "stampa totali" PROMPT 1 54 "" END STRINGA 125 12 1 BEGIN KEY "totale imponibile" PROMPT 4 54 "" END STRINGA 126 11 1 BEGIN KEY "totale imposta" PROMPT 22 54 "" END STRINGA 127 11 1 BEGIN KEY "totale importi netti" PROMPT 68 48 "" END STRINGA 128 11 1 BEGIN KEY "spese di imballo" PROMPT 43 50 "" END STRINGA 129 2 1 BEGIN KEY "cancella 'iva' per sp. tras" PROMPT 43 51 "" END STRINGA 130 8 1 BEGIN KEY "scritta spese di trasporto" PROMPT 45 51 "" END STRINGA 131 11 1 BEGIN KEY "totale imposta" PROMPT 68 52 "" END STRINGA 132 11 1 BEGIN KEY "totale fattura" PROMPT 68 54 "" END LISTA 133 1 1 BEGIN KEY "trasporto a cura del mitt." PROMPT 1 57 "" ITEM "|" ITEM "M|x" FIELD CODSPMEZZO END LISTA 134 1 1 BEGIN KEY "trasporto a cura del dest." PROMPT 7 57 "" ITEM "|" ITEM "D|x" FIELD CODSPMEZZO END STRINGA 135 1 1 BEGIN KEY "trasporto a cura del vett." PROMPT 15 57 "" ITEM "|" ITEM "V|x" FIELD CODSPMEZZO END DATA 136 8 1 BEGIN KEY "data inizio trasporto" PROMPT 45 57 "" FIELD DATAPART FORMAT "1444-" END STRINGA 137 5 1 BEGIN KEY "ora inizio trasporto" PROMPT 57 57 "" FIELD ORAPART END STRINGA 138 40 1 BEGIN KEY "nominativo vettore" PROMPT 1 59 "" FIELD 205@->S0 END STRINGA 139 40 1 BEGIN KEY "indirizzo vettore" PROMPT 1 60 "" FIELD 205@->S1 END STRINGA 140 41 1 BEGIN KEY "aspetto esteriore dei beni" PROMPT 1 63 "" FIELD 206@->S0 END STRINGA 141 12 1 BEGIN KEY "peso" PROMPT 44 63 "" FIELD PNETTO END STRINGA 142 8 1 BEGIN KEY "colli" PROMPT 57 63 "" FIELD NCOLLI 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 // INIZIALE // FINALE // 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 // Dove e' il numero del gruppo // e' il numero di decimali per i documenti in lire // 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: ",". 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,,[!!...],{|[!!...]} // dove: è il numero logico del file o il nome della tabella // è un'espressione del tipo = // è un'espressione di costanti numeriche, stringhe e valori di campi della form (indicati con il loro numero preceduto da #) // è un'espressione del tipo = (se è un gruppo deve essere seguito da @) oppure solo (il campo della form è quello corrente) // // _TABLEREAD: // lettura generica di un campo di una tabella // sintassi: _TABLEREAD,,, // dove: nome tabella da leggere // costante stringa o riferimento a campo della form (preceduto da '#') da usare come chiave di ricerca // identificativo del campo da leggere dalla tabella // // _DITTA: // lettura dei dati della ditta // sintassi: _DITTA,{|} // dove: è un riferimento alla relazione di gestione dei dati della ditta (es. 113@->DENCOM è la denominazione del comune di residenza della ditta) // è 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,{|} // dove: è un riferimento alla relazione di gestione dei dati del cliente // è 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-> accede ai campi del comune di residenza cliente // !COMN-> 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,[,][,...] // dove: è il campo della form (preceduto da '#') da cui prendere l'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,,, // dove: è 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: è 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: è 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, // dove: funge da filtro per la somma degli imponibili // vedi _RIEPILOGOIVA per la spiegazione dei filtri selettivi // // _SCADENZE: // messaggio per stampare le scadenze // sintassi: _SCADENZE,, // dove e' uno dei seguenti: // DATA : stampa la data di scadenza // IMPORTO : stampa l'importo in scadenza // dove 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