Comment gérer des macros dans les documents
De Opera Wiki.
(→Macro di automazione del testo) |
(→Macro per la costruzione di bolle e fatture) |
||
Ligne 220 : | Ligne 220 : | ||
==Macro per la costruzione di bolle e fatture== | ==Macro per la costruzione di bolle e fatture== | ||
+ | Queste macro consentono di costruire DDT e fatture. | ||
+ | |||
+ | * '''//Cliente_DescPagamento// ''': Se il cliente è salvato in rubrica come “cliente”, questa macro stampa la descrizione del tipo di pagamento presente. | ||
+ | |||
+ | * '''//Imponibile// ''': Stampa il valore dell’imponibile della commessa. | ||
+ | |||
+ | * '''//Iva// ''': Stampa il valore dell’IVA. | ||
+ | |||
+ | * '''//Ora:hh:mm[:ss]// ''': Imposta l’ora corrente. | ||
+ | Es. | ||
+ | //Ora://Campo:Ora di partenza;5//// | ||
+ | |||
+ | * '''//PercIva// ''': Stampa l’aliquota IVA. | ||
+ | |||
+ | * '''//RigaTpg:Numero righe pagina;Posizione campo[llunghezza campo][(S|D|C)]”Nome campo”// ''': Consente di inserire in un modulo prestampato le righe relative alle tipologie della commessa. Posizione campo specifica la posizione del campo da sinistra in mm. Le lettere S, D o C specificano l’allineamento del campo (Sinistra, Destra o Centrato) rispetto alla posizione. I valori per il parametro nome campo sono: | ||
+ | Nome nome della tipologia | ||
+ | Descrizione descrizione della tipologia | ||
+ | PezziLettere n° pezzi in lettere | ||
+ | Pezzi n° pezzi | ||
+ | Dimensioni dimensioni LxH della tipologia | ||
+ | PrzUnitario prezzo unitario tipologia iva esclusa | ||
+ | PrzTotale prezzo totale tipologia | ||
+ | Imponibile imponibile totale tipologia | ||
+ | IVA IVA totale tipologia | ||
+ | PercIva aliquota iva | ||
+ | Es. | ||
+ | //RigaTpg:16;1,7d"Pezzi" 2,2l5"Descrizione" 10,8d"PrzUnitario" 13,8d"PrzTotale"// | ||
+ | //TotPag// | ||
+ | Stampa il n° delle pagine del documento (solo se si utilizza la macro RigaTpg). | ||
+ | //Totale// | ||
+ | Stampa l’importo totale della commessa. | ||
+ | //TotTpg// | ||
+ | Stampa il n° pezzi delle tipologie presenti nella commessa. | ||
+ | |||
==Macro generiche== | ==Macro generiche== | ||
==Dichiarazione CE di conformità== | ==Dichiarazione CE di conformità== |
Version du 4 février 2011 à 08:28
Le macro sono un potente strumento messo a disposizione da Opera per la creazione dei documenti. Si tratta di stringhe di testo che iniziano e terminano con i caratteri "//" e permettono di creare di modelli di documenti i cui campi verranno generati e caricati coi valori reali al momento della stampa. Per tale motivo, uno stesso documento che rappresenta un modello di preventivo, potrà essere utilizzato per tutti i propri preventivi senza ulteriori modifiche.
Le macro possono essere "semplici" o "con parametri". (Ad esempio, una macro che inserisce un'immagine all'interno del foglio potrebbe avere come parametri la larghezza e l'altezza dell'immagine). Tali parametri, come vedremo in seguito, possono essere obbligatori o opzionali e vanno specificati dopo il titolo della macro stessa, separati da ";". L'ordine dei parametri è importante, per tale motivo, nelle spiegazioni seguenti essi sono riportati nell'ordine esatto in cui Opera si aspetta di trovarli all'interno della macro. Quando si desidera omettere un parametro opzionale, è comunque necessario inserire il carattere ";" dopo il precedente parametro.
Di seguito le principali macro di Opera Gestione Commesse:
Sommaire |
Macro di inserimento dati (solo testo)
- //Anno// : Stampa l'anno corrente.
- //AnnoXX// : Stampa le ultime due cifre dell’anno presente nel campo in data del quadro dati generali commessa'.
- //AnteprimaCommessa: // : Stampa l’anteprima delle tipologie presenti all’interno della commessa
- NOTE:
Parametri- si/no: abilita o meno la visualizzazione anche delle tipologie congelate.
- base X (opzionale): lo scostamento dal bordo sinistro del foglio
- base Y (opzionale): lo scostamento dal bordo superiore del foglio
- larghezza (opzionale): la larghezza dell’area di stampa partendo dal riferimento base X
- altezza (opzionale): l'altezza dell’area di stampa partendo dal riferimento base Y
- N.B: Esempio : //AnteprimaCommessa:no;4;;12;//
- //Cantiere_CAP//: Stampa il CAP della città del cantiere del quadro Cantiere che si trova all'interno dei dati della commessa.
- //Cantiere_Citta//: Stampa la città del cantiere.
- //Cantiere_Indirizzo//: Stampa l’indirizzo del cantiere così come inserito nel campo “Indirizzo”.
- //Cantiere_nome//: Stampa il testo inserito nel campo “Cantiere” del quadro Cantiere.
- //Cantiere_Prov//: Stampa la sigla della provincia della città del cantiere.
- //Cliente_CAP// : Stampa il CAP della città del cliente.
- //Cliente_Citta// : Stampa la città del cliente.
- //Cliente_Indirizzo// : Stampa l’indirizzo del cliente, così come inserito nel campo “Indirizzo”.
- //Cliente_note// : Stampa le note presenti nel campo Note del quadro Dati cliente commessa se il cliente è salvato in archivio.
- //Cliente_Prov// : Stampa la sigla della provincia della città del cliente.
- //Cliente_RagioneSociale// : Stampa la ragione sociale del cliente inserita nei dati della commessa riferiti al cliente.
- //Commessa// : Stampa il progressivo e l’anno della commessa nel formato 01/2009.
- //data// : Stampa la data corrente nel formato gg/mm/aaaa
- //dataest// : Stampa la data corrente nel formato gggg nn mmmm aaaa
- //DescizioneTipologia: // : Stampa la descrizione presente del quadro Dati tipologia
- NOTE:
Parametri- Quantità caratteri: limite massimo di caratteri della descrizione da mostrare.
- N.B: Esempio : Una descrizione di 57 battute, con //DescrizioneTipologia:10// diventa da Finestra a due ante con ribalta ed accessori color ottone a Finestra a ...
- //ditta// : Stampa il nome della ditta corrispondente alla prima riga dell’intestazione inserita nel quadro Setup stampe.
- //ElencoFornitori// : Stampa l'elenco di quei nominativi presenti in rubrica caricati come tipo Fornitore ed avente il flag su No stampa FPC deselezionato.
- //finitura// : Stampa le colorazioni delle varie tipologie della commessa.
- //listaallegaticerttermica// : Stampa gli schemi trasmittanza termica e gli allegati degli ITT presenti nelle tipologie della commessa, inserisce per punti assegnandogli un nome (es: Allegato A, Allegato B)i riferimenti che identificano gli ITT, come utilizzo questa macro è stata separata tramite le nuove macro //listaallegatischemitrasmittanza// e //listaallegatiITT//. Funziona con quei documenti che sono caricati come Tipo: Dichiarazione di conformità
- //listaallegatiITT// : Stampa gli allegati degli ITT presenti nelle tipologie della commessa, inserisce per punti assegnandogli un nome (es: Allegato A, Allegato B) i riferimenti che identificano gli ITT. Funziona con quei documenti che sono caricati come Tipo: Dichiarazione di conformità
- //listaallegatichemitrasmittanza// : Stampa gli schemi trasmittanza termica delle tipologie della commessa, inserisce per punti assegnandogli un nome (es: Allegato A) i riferimenti che identifica l’allegato. Funziona con quei documenti che sono caricati come Tipo: Dichiarazione di conformità
- //nome// : Stampa il nome della commessa.
- //NPag// : Stampa il n° della pagina corrente nel punto del documento in cui è stato scritta la macro.
- //NomeTipologia// : Stampa il nome della tipologia presente nel campo Nome del quadro Dati generali tipologia oppure del quadro Dati tipologia.
- //NumPag: // : Imposta la visualizzazione del numero della pagina a piè pagina.
- NOTE:
Parametri- Si/No: Abilita/Disabilita la visualizzazione del numero.
- N.B: Esempio : //NumPag:Si//
- //Operatore: // : inserisce il nome dell'operatore corrispondente alla sigla della mansione specificata come parametro.
- NOTE:
Parametri- [Nome della mansione]: Il titolo della mansione da mostrare
- N.B: Esempio : //Operatore:RFPC// Se Piero Verdi ha come mansione RFPC, il suo nome comparirà nella stampa.
- //Ora// : Stampa l’ora corrente nel formato hh:mm
- ////PosizioneTipologia// : Stampa il codice presente nel campo “Prefisso profili” nei Dati generali tipologia.
- ////RegistroManutenzioni// : Stampa il registro delle manutenzioni dei macchinari presenti nel Registro manutenzione del macchinario/Attrezzatura, menù Normativa, sotto-menù Attrezzature
Macro di inserimento immagini e impostazione grafica
- //Abaco// : Inserisce l’abaco delle tipologie con le informazioni impostate nel Setup stampe -> Abaco tipologie.
- //logofile// : Inserisce il percorso del logo caricato nel quadro Setup intestazione stampe
- //bitmap: // : La macro bitmap consente di inserire un’immagine nella stampa del documento.
- NOTE:
Parametri- nome_file: il percorso del file che contiene l'immagine da mostrare. (è possibile usare anche macro che scrivono percorsi di immagini, come ad esempio //logofile//)
- sfondo (opzionale): imposta l'immagine specificata come sfondo della pagina (per stampare ad esempio la fincatura della Dichiarazione CE di conformità).)
- larghezza (opzionale): la larghezza dell’area di stampa partendo dal riferimento base X
- altezza (opzionale): l'altezza dell’area di stampa partendo dal riferimento base Y
- Se si omette l’altezza (o la larghezza) la quota mancante viene calcolata in proporzione alle dimensioni dell’immagine.
- N.B: Esempio : //bitmap:logo.bmp;sfondo;18// inserisce l'immagine logo.bmp come sfondo del documento, con larghezza pari a 18 cm
- Esempio : //bitmap://logofile//;6// inserisce con larghezza pari a 6 cm il logo caricato nel quadro Setup intestazione stampe, anche se non sono state attivate le opzioni Intestaz.BitMaP e Int nel documento.
- //Clichè// : Stampa l’intestazione aziendale racchiusa in un riquadro se è stata inserita nel campo Int del quadro Setup intestazione stampe.
- //Linea: // : Traccia una linea all'interno del documento. Lunghezza e punto di partenza sono specificati dai parametri
- NOTE:
Parametri- x0;y0 (opzionale) : specificano il punto di origine della linea in cm; se omessi la linea verrà tracciata a partire dal punto corrente.
- dx;dy : rispettivamente la distanza in cm dal punto di origine della linea, rispetto all'asse x e all'asse y
- N.B: Esempio : //Linea: 1;1;4;0 // traccia una linea orizzontale di 4cm a partire dal punto (1;1) rispetto al margine superiore del foglio
- //OffsetX: // : Sposta orizzontamente tutto il testo che segue dei cm indicati nel parametro.
- NOTE:
Parametri- spostamento : valore in cm dello spostamento da effettuare
- N.B: Esempio : //OffsetX: 2// sposta tutta la stampa di 2cm a destra rispetto al margine sinistro del documento
- //OffsetY: // : Sposta verticalmente tutto il testo che segue dei cm indicati nel parametro.
- NOTE:
Parametri- spostamento : valore in cm dello spostamento da effettuare
- N.B: Esempio : //OffsetY: 3// sposta tutta la stampa di 3cm in basso rispetto al margine superiore del documento
- //Rettangolo:// : Traccia un rettangolo a schermo
- NOTE:
Parametri- x0;y0 (opzionale) : specificano lo spostamento in cm del punto in alto a sinistra del rettangolo rispetto al margine in alto a sinistra del documento; se omessi il rettangolo verrà tracciata a partire dal punto corrente.
- x1;y1 : le coordinate del punto inferiore destro del rettangolo.
- N;offset (opzionale): se specificati, permettono di tracciare rettangoli all'interno del principale, a distanza l'uno dall'altro pari ad offset (valore in mm) per un massimo di N. Quindi il valore di N indica il totale dei rettangoli da tracciare, compreso quello più esterno.
- N.B: Esempio : //Rettangolo: 1;1;5;3;2;5// crea un rettangolo dal punto (1:1) al punto (5:3) con al suo interno un altro rettangolo a 5mm di distanza.
Macro di formattazione del testo
- //Centrato// : Da questa macro il poi le righe del testo vengono centrate rispetto all'area di stampa impstata.
- //Corpo:corpo carattere// : Da questa macro in poi il testo viene stampato con il corpo specificato (altezza carattere).
- //Destra// : Da questa macro il poi le righe del testo vengono allineate a destra.
- //Font:// : Da questa macro in poi il testo viene stampato con il tipo di carattere specificato. La macro non è compatibile se il testo a cui cambiare il carattere contiene la macro //tab//
- NOTE:
Parametri- tipo carattere: il nome del carattere da utilizzare.
- N.B: Esempio : //Font:Arial//
- //Giustificato// : Da questa macro il poi le righe del testo vengono giustificate.
- //Interlinea: // : Da questa macro il poi le righe del testo vengono stampate con l’interlinea specificata.
- NOTE:
Parametri- valore dell’interlinea[ri]: Il valore della nuova interlinea espresso in mm. Se il numero è seguito dal suffisso ri il valore numero verrà interpretato come frazione di riga.
- N.B: Esempio : //Interlinea:5,5//: imposta il valore dell'interlinea a 5,5mm
- Esempio : //Interlinea:2ri// imposta il valore dell'interlinea a mezza riga
- //intest// : Stampa la riga corrente con un margine sinistro pari a 3/5 della larghezza di stampa.
- //Pagina// : Inserisce una interruzione di pagina.
- //Posiziona: // : Definisce una nuova area di stampa secondo i parametri forniti. Da questo punto in poi il documento viene racchiuso all'interno dell'area definita dai parametri
- NOTE:
Parametri- base X (opzionale): la distanza in cm del nuovo margine rispetto al bordo sinistro del documento
- base Y (opzionale): la distanza in cm del nuovo margine rispetto al bordo superiore del documento
- larghezza (opzionale): la larghezza della nuova area. se omessa viene presa in automatico la dimensione massima del foglio
- altezza (opzionale): l'altezza della nuova area. se omessa viene presa in automatico la dimensione massima del foglio
- N.B: Esempio : //posiziona:1;2;19;26// Crea un'area di stampa di lato 19x26 con il vertice superiore sinistro ad 1 cm dal bordo sinistro del foglio ed a 2 cm dal bordo superiore.
- Esempio : //posiziona:2;;16;// In questo caso viene creata un'area di stampa larga 16 cm e alta fino alla fine del documento, che si scosta 2 cm rispetto al margine sinistro corrente
- //Sinistra// : Da questa macro il poi le righe del testo vengono allineate a sinistra.
Macro di automazione del testo
Queste macro permettono di compilare alcune parti manualmente in fase di stampa e di inserire del testo solo al verificarsi di certe condizioni.
- //Campo:// : Inserisce nel testo un valore che viene richiesto prima della stampa. Se il nome inizia con la parola Data o Ora verrà utilizzato il formato adatto a quel tipo di campo. Se il nome invece proprio Data o Ora verrà creato un campo contenente come valore predefinito rispettivamente la data e l'ora correnti.
- NOTE:
Parametri- Nome campo : Il nome del campo che verrà richiesto prima della fase di stampa
- Lunghezza (opzionale): la lunghezza del campo
- Valore predefinito' (opzionale): il valore predefinito che conterrà il campo
- N.B: Esempio : //Campo:Validità preventivo;3;30// Insersce un campo chiamato Validità preventivo, di 3 caratteri e con valore predefinito 30
- Esempio: //Campo:Data;8// Inserisce un campo di lunghezza 8 che conterrà la data corrente come valore predefinito
- //VeroFalso: // : Il funzionamento è identico alla macro //Campo// ma i valori possibili sono solo Si e No. Questa macro è solitamente usata abbinata alla macro //If// spiegata in seguito.
- NOTE:
Parametri- Nome campo : Il nome del campo che verrà richiesto prima della fase di stampa
- Lunghezza (opzionale): la lunghezza del campo
- SI/NO
- //Data:gg/mm/aaaa// : Imposta la data corrente.
- N.B: Esempio : //Data://Campo:Data documento;8////
- //If:condizione//[TESTO DA MOSTRARE]//EndIf// :
Questa macro consente di inserire delle parti di testo solo se si verificano determinate condizioni. È composta da due macro: una di inizio, //If//, nella quale è contenuta la condizione da verificare, e una finale //EndIf// che chiude la macro. Se la condizione all'interno della parte //If// è vera, verrà mostrato tutto il testo contenuto tra le parti //If// e //EndIf//. Può essere usata in abbinamento alla macro //VeroFalso// oppure per confrontare il valore della pagina corrente (Npag) con quello totale delle pagine(TotPag).
- N.B: Esempio : //If://VeroFalso:Stampa il sistema// Serramenti// //serie// //sistema//.//EndIf//
- Esempio //If:NPag=TotPag//Fine//EndIf//
Macro per la costruzione di bolle e fatture
Queste macro consentono di costruire DDT e fatture.
- //Cliente_DescPagamento// : Se il cliente è salvato in rubrica come “cliente”, questa macro stampa la descrizione del tipo di pagamento presente.
- //Imponibile// : Stampa il valore dell’imponibile della commessa.
- //Iva// : Stampa il valore dell’IVA.
- //Ora:hh:mm[:ss]// : Imposta l’ora corrente.
Es. //Ora://Campo:Ora di partenza;5////
- //PercIva// : Stampa l’aliquota IVA.
- //RigaTpg:Numero righe pagina;Posizione campo[llunghezza campo][(S|D|C)]”Nome campo”// : Consente di inserire in un modulo prestampato le righe relative alle tipologie della commessa. Posizione campo specifica la posizione del campo da sinistra in mm. Le lettere S, D o C specificano l’allineamento del campo (Sinistra, Destra o Centrato) rispetto alla posizione. I valori per il parametro nome campo sono:
Nome nome della tipologia Descrizione descrizione della tipologia PezziLettere n° pezzi in lettere Pezzi n° pezzi Dimensioni dimensioni LxH della tipologia PrzUnitario prezzo unitario tipologia iva esclusa PrzTotale prezzo totale tipologia Imponibile imponibile totale tipologia IVA IVA totale tipologia PercIva aliquota iva Es. //RigaTpg:16;1,7d"Pezzi" 2,2l5"Descrizione" 10,8d"PrzUnitario" 13,8d"PrzTotale"// //TotPag// Stampa il n° delle pagine del documento (solo se si utilizza la macro RigaTpg). //Totale// Stampa l’importo totale della commessa. //TotTpg// Stampa il n° pezzi delle tipologie presenti nella commessa.