Comment gérer des macros dans les documents

De Opera Wiki.

(Différences entre les versions)
(Macro di inserimento dati (solo testo))
 
(29 versions intermédiaires masquées)
Ligne 47 : Ligne 47 :
* '''//dataest// ''': Stampa la data corrente nel formato gggg nn mmmm 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.}}
 
 +
* '''//DescizioneTipologia: // ''': Stampa la descrizione presente del quadro Dati tipologia
 +
:{{NOTE| Parametri: <br/> '''Quantità caratteri''': limite massimo di caratteri della descrizione da mostrare.}}
:{{NB|Esempio : Una descrizione di 57 battute, con //DescrizioneTipologia:10// diventa da ''Finestra a due ante con ribalta ed accessori color ottone'' a  ''Finestra a ...''}}
:{{NB|Esempio : Una descrizione di 57 battute, con //DescrizioneTipologia:10// diventa da ''Finestra a due ante con ribalta ed accessori color ottone'' a  ''Finestra a ...''}}
Ligne 73 : Ligne 71 :
* '''//NumPag: // ''': Imposta la visualizzazione del numero della pagina a piè pagina.
* '''//NumPag: // ''': Imposta la visualizzazione del numero della pagina a piè pagina.
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/> '''Si/No''': Abilita/Disabilita la visualizzazione del numero.}}
-
: '''Si/No''': Abilita/Disabilita la visualizzazione del numero.}}
+
-
 
+
:{{NB|Esempio : ''//NumPag:Si//''}}
:{{NB|Esempio : ''//NumPag:Si//''}}
* '''//Operatore: // ''': inserisce il nome dell'operatore corrispondente alla sigla della mansione specificata come parametro.
* '''//Operatore: // ''': inserisce il nome dell'operatore corrispondente alla sigla della mansione specificata come parametro.
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/> '''[Nome della mansione]''': Il titolo della mansione da mostrare}}
-
: '''[Nome della mansione]''': Il titolo della mansione da mostrare}}
+
-
 
+
:{{NB|Esempio : ''//Operatore:RFPC//'' Se Piero Verdi ha come mansione RFPC, il suo nome comparirà nella stampa.}}
:{{NB|Esempio : ''//Operatore:RFPC//'' Se Piero Verdi ha come mansione RFPC, il suo nome comparirà nella stampa.}}
Ligne 89 : Ligne 83 :
* '''////RegistroManutenzioni// ''': Stampa il registro delle manutenzioni dei macchinari presenti nel [[Attrezzature|Registro manutenzione]] del macchinario/Attrezzatura, menù Normativa, sotto-menù Attrezzature
* '''////RegistroManutenzioni// ''': Stampa il registro delle manutenzioni dei macchinari presenti nel [[Attrezzature|Registro manutenzione]] del macchinario/Attrezzatura, menù Normativa, sotto-menù Attrezzature
 +
 +
* '''CertificatoTipologia ''': serve per la stampa della Dichiarazioni CE e della Macatura CE delle tipologie SAC1, che non ha prestazioni di alcun tipo, ma solo il Nome, la Descrizione, la Data e la Descrizione.
 +
Le macro da utilizzare sono:
 +
** '''//CertificatoTipologia:Nome// ''': Stampa il nome della tipologia.
 +
** '''//CertificatoTipologia:Descrizione// ''': Stampa la descrizione.
 +
** '''//CertificatoTipologia:Data// ''': Stampa la data.
 +
** '''//CertificatoTipologia:Laboratorio// ''': Stampa il nome del laboratorio.
==Macro di inserimento immagini e impostazione grafica==
==Macro di inserimento immagini e impostazione grafica==
Ligne 96 : Ligne 97 :
* ''' //bitmap: //  ''': La macro bitmap consente di inserire un’immagine nella stampa del documento.
* ''' //bitmap: //  ''': La macro bitmap consente di inserire un’immagine nella stampa del documento.
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/> '''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//'') <br/> '''sfondo''' ''(opzionale)'': imposta l'immagine specificata come sfondo della pagina (per stampare ad esempio la fincatura della Dichiarazione CE di conformità).) <br/> '''larghezza''' ''(opzionale)'': la larghezza dell’area di stampa partendo dal riferimento base X <br/> '''altezza''' ''(opzionale)'': l'altezza dell’area di stampa partendo dal riferimento base Y <br/> Se si omette l’altezza (o la larghezza) la quota mancante viene calcolata in proporzione alle dimensioni dell’immagine.}}
-
: '''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//'')
+
:{{NB|<br/> Esempio : '''//bitmap:logo.bmp;sfondo;18//''' inserisce l'immagine ''logo.bmp'' come sfondo del documento, con larghezza pari a 18 cm <br/> '''//bitmap://logofile//;6//''' inserisce con larghezza pari a 6 cm il logo caricato nel quadro [[Setup stampe|Setup intestazione stampe]], anche se non sono state attivate le opzioni ''Intestaz.BitMaP'' e ''Int nel documento''.}}
-
: '''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.}}
+
-
 
+
-
:{{NB|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 stampe|Setup intestazione stampe]], anche se non sono state attivate le opzioni ''Intestaz.BitMaP'' e ''Int nel documento''.}}
+
Ligne 110 : Ligne 104 :
* ''' //Linea: // ''': Traccia una linea all'interno del documento. Lunghezza e punto di partenza sono specificati dai parametri
* ''' //Linea: // ''': Traccia una linea all'interno del documento. Lunghezza e punto di partenza sono specificati dai parametri
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/> '''x0;y0''' ''(opzionale)'' : specificano il punto di origine della linea in cm; se omessi la linea verrà tracciata a partire dal punto corrente. <br/> '''dx;dy''' : rispettivamente la distanza in cm dal punto di origine della linea, rispetto all'asse x e all'asse y}}
-
: '''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}}
+
-
 
+
:{{NB|Esempio : '''//Linea: 1;1;4;0 //''' traccia una linea orizzontale di 4cm a partire dal punto (1;1)  rispetto al margine superiore del foglio }}
:{{NB|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.
* ''' //OffsetX: // ''': Sposta orizzontamente tutto il testo che segue dei cm indicati nel parametro.
:{{NOTE| Parametri: '''spostamento''' : valore in cm dello spostamento da effettuare}}
:{{NOTE| Parametri: '''spostamento''' : valore in cm dello spostamento da effettuare}}
-
 
:{{NB|Esempio : '''//OffsetX: 2//''' sposta tutta la stampa di 2cm a destra rispetto al margine sinistro del documento }}
:{{NB|Esempio : '''//OffsetX: 2//''' sposta tutta la stampa di 2cm a destra rispetto al margine sinistro del documento }}
Ligne 125 : Ligne 114 :
* ''' //OffsetY: // ''': Sposta verticalmente tutto il testo che segue dei cm indicati nel parametro.
* ''' //OffsetY: // ''': Sposta verticalmente tutto il testo che segue dei cm indicati nel parametro.
:{{NOTE| Parametri : '''spostamento''' : valore in cm dello spostamento da effettuare  }}
:{{NOTE| Parametri : '''spostamento''' : valore in cm dello spostamento da effettuare  }}
-
 
:{{NB|Esempio : '''//OffsetY: 3//''' sposta tutta la stampa di 3cm in basso rispetto al margine superiore del documento }}
:{{NB|Esempio : '''//OffsetY: 3//''' sposta tutta la stampa di 3cm in basso rispetto al margine superiore del documento }}
* ''' //Rettangolo:// : Traccia un rettangolo a schermo
* ''' //Rettangolo:// : Traccia un rettangolo a schermo
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri :<br/>: '''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.<br/> '''x1;y1''' : le coordinate del punto inferiore destro del rettangolo. <br/>'''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.}}
-
: '''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.}}
+
-
 
+
:{{NB|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.}}
:{{NB|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.}}
{{BR}}
{{BR}}
Ligne 147 : Ligne 131 :
* '''//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//  
* '''//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
+
:{{NOTE| Parametri: <br/> '''tipo carattere''': il nome del carattere da utilizzare.}}
-
: '''tipo carattere''': il nome del carattere da utilizzare.}}
+
-
 
+
:{{NB|Esempio : '''//Font:Arial//'''}}
:{{NB|Esempio : '''//Font:Arial//'''}}
Ligne 156 : Ligne 138 :
* '''//Interlinea: // ''': Da questa macro il poi le righe del testo vengono stampate con l’interlinea specificata.  
* '''//Interlinea: // ''': Da questa macro il poi le righe del testo vengono stampate con l’interlinea specificata.  
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/>'''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. }}
-
: '''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. }}
+
:{{NB|<br/>Esempio: <br/> '''//Interlinea:5,5//''': imposta il valore dell'interlinea a 5,5mm <br/>'''//Interlinea:2ri//''' imposta il valore dell'interlinea a mezza riga}}
-
 
+
-
:{{NB|Esempio : '''//Interlinea:5,5//''': imposta il valore dell'interlinea a 5,5mm
+
-
:Esempio : '''//Interlinea:2ri//''' imposta il valore dell'interlinea a mezza riga}}
+
Ligne 168 : Ligne 147 :
* '''//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  
* '''//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
+
:{{NOTE| Parametri: <br/> '''base X''' ''(opzionale)'': la distanza in cm del nuovo margine rispetto al bordo sinistro del documento <br/>'''base Y''' ''(opzionale)'': la distanza in cm del nuovo margine rispetto al bordo superiore del documento <br/> '''larghezza''' ''(opzionale)'': la larghezza della nuova area. se omessa viene presa in automatico la dimensione massima del foglio <br/>'''altezza''' ''(opzionale)'': l'altezza della nuova area. se omessa viene presa in automatico la dimensione massima del foglio }}
-
: '''base X''' ''(opzionale)'': la distanza in cm del nuovo margine rispetto al bordo sinistro del documento
+
:{{NB|<br/>Esempio :<br/> '''//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. <br/>'''//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}}
-
: '''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 }}
+
-
 
+
-
:{{NB|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}}
+
Ligne 185 : Ligne 158 :
Queste macro permettono di compilare alcune parti manualmente in fase di stampa e di inserire del testo solo al verificarsi di certe condizioni.
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.
+
* '''//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 ora correnti.
-
:{{NOTE| Parametri
+
:{{NOTE|''Parametri: <br/> '''Nome campo''' : Il nome del campo che verrà richiesto prima della fase di stampa <br/> '''Lunghezza''' ''(opzionale)'': la lunghezza del campo<br/>'''Valore predefinito''' ''(opzionale)''': il valore predefinito che conterrà il campo}}  
-
: '''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}}
+
-
 
+
-
:{{NB|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}}
+
 +
:{{NB|<br/>Esempio :<br/> '''//Campo:Validità preventivo;3;30//''' Insersce un campo chiamato ''Validità preventivo'', di 3 caratteri e con valore predefinito 30 <br/> '''//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.
* '''//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
+
:{{NOTE| Parametri: <br/> '''Nome campo''' : Il nome del campo che verrà richiesto prima della fase di stampa <br/> '''Lunghezza''' ''(opzionale)'': la lunghezza del campo <br/>'''SI/NO'''}}
-
: '''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.
* '''//Data:gg/mm/aaaa// ''': Imposta la data corrente.
-
:{{NB|Esempio : '''//Data://Campo:Data documento;8////'''}}
+
:{{NB|Esempio : '''/<nowiki>/Data://Campo:Data documento;8////</nowiki>'''}}
-
 
+
-
* '''//If:condizione//[TESTO DA MOSTRARE]//EndIf// ''':  
+
* '''//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).
-
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).
+
-
:{{NB|Esempio : '''<nowiki>//If://VeroFalso:Stampa il sistema// Serramenti// //serie// //sistema//.//EndIf//</nowiki>'''
+
:{{NB|<br/>Esempio : <br/>'''<nowiki>//If://VeroFalso:Stampa il sistema// Serramenti// //serie// //sistema//.//EndIf//</nowiki>'''<br/>'''<nowiki>//If:NPag=TotPag//Fine//EndIf//</nowiki>'''}}
-
: Esempio '''<nowiki>//If:NPag=TotPag//Fine//EndIf//</nowiki>'''}}
+
{{BR}}
{{BR}}
Ligne 228 : Ligne 190 :
* '''//RigaTpg:// ''': Consente di inserire in un modulo prestampato le righe relative alle tipologie della commessa.  
* '''//RigaTpg:// ''': Consente di inserire in un modulo prestampato le righe relative alle tipologie della commessa.  
-
:{{NOTE| Parametri
+
:{{NOTE| Parametri: <br/> '''Numero righe pagina''' : il numero di righe da inserire <br/> '''<nowiki>Posizione campo[lunghezza campo][(S|D|C)] </nowiki>''': 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 a tale posizione posizione.<br/> '''Nome campo''' : I valori per il parametro nome campo sono: <br/>-''Nome'' - nome della tipologia <br/>-''Descrizione'' - descrizione della tipologia<br/>-''PezziLettere'' - n° pezzi in lettere <br/>-''Pezzi'' - n° pezzi <br/>-''Dimensioni'' - dimensioni LxH della tipologia<br/>-''PrzUnitario'' - prezzo unitario tipologia iva esclusa<br/>-''PrzTotale'' - prezzo totale tipologia<br/>-''Imponibile'' - imponibile totale tipologia<br/>-''IVA'' - IVA totale tipologia<br/>-''PercIva'' - aliquota iva}}
-
: '''Numero righe pagina''' : il numero di righe da inserire
+
-
:'''<nowiki>Posizione campo[lunghezza campo][(S|D|C)] </nowiki>''': 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 a tale posizione posizione. :
+
-
:'''Nome campo''' : 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}}
+
:{{NB|Esempio : '''//RigaTpg:16;1,7d"Pezzi" 2,2l5"Descrizione" 10,8d"PrzUnitario" 13,8d"PrzTotale"//'''}}
:{{NB|Esempio : '''//RigaTpg:16;1,7d"Pezzi" 2,2l5"Descrizione" 10,8d"PrzUnitario" 13,8d"PrzTotale"//'''}}

Version actuelle en date du 12 juin 2013 à 09:03



Image:iconawip.png page en cours de mise à jours


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 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
Note 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 NOTE:
Parametri:
Quantità caratteri: limite massimo di caratteri della descrizione da mostrare.
Note 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 NOTE:
Parametri:
Si/No: Abilita/Disabilita la visualizzazione del numero.
Note N.B: Esempio : //NumPag:Si//
  • //Operatore: // : inserisce il nome dell'operatore corrispondente alla sigla della mansione specificata come parametro.
Note NOTE:
Parametri:
[Nome della mansione]: Il titolo della mansione da mostrare
Note 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
  • CertificatoTipologia : serve per la stampa della Dichiarazioni CE e della Macatura CE delle tipologie SAC1, che non ha prestazioni di alcun tipo, ma solo il Nome, la Descrizione, la Data e la Descrizione.

Le macro da utilizzare sono:

    • //CertificatoTipologia:Nome// : Stampa il nome della tipologia.
    • //CertificatoTipologia:Descrizione// : Stampa la descrizione.
    • //CertificatoTipologia:Data// : Stampa la data.
    • //CertificatoTipologia:Laboratorio// : Stampa il nome del laboratorio.

Macro di inserimento immagini e impostazione grafica

  • //Abaco// : Inserisce l’abaco delle tipologie con le informazioni impostate nel Setup stampe -> Abaco tipologie.
  • //bitmap: // : La macro bitmap consente di inserire un’immagine nella stampa del documento.
Note 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.
Note N.B:
Esempio : //bitmap:logo.bmp;sfondo;18// inserisce l'immagine logo.bmp come sfondo del documento, con larghezza pari a 18 cm
//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 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
Note 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 NOTE:
Parametri: spostamento : valore in cm dello spostamento da effettuare
Note 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 NOTE:
Parametri : spostamento : valore in cm dello spostamento da effettuare
Note 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 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.
Note 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 NOTE:
Parametri:
tipo carattere: il nome del carattere da utilizzare.
Note 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 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.
Note N.B:
Esempio:
//Interlinea:5,5//: imposta il valore dell'interlinea a 5,5mm
//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 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
Note 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.
//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 ora correnti.
Note 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
Note N.B:
Esempio :
//Campo:Validità preventivo;3;30// Insersce un campo chiamato Validità preventivo, di 3 caratteri e con valore predefinito 30
//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 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.
Note 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).
Note N.B:
Esempio :
//If://VeroFalso:Stampa il sistema// Serramenti// //serie// //sistema//.//EndIf//
//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.
Note N.B: Esempio : //Ora://Campo:Ora di partenza;5////
  • //PercIva// : Stampa l’aliquota IVA.
  • //RigaTpg:// : Consente di inserire in un modulo prestampato le righe relative alle tipologie della commessa.
Note NOTE:
Parametri:
Numero righe pagina : il numero di righe da inserire
Posizione campo[lunghezza campo][(S|D|C)] : 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 a tale posizione posizione.
Nome campo : 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
Note N.B: Esempio : //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 di impostazioni stampa

  • //Porta:(LPT1|LPT2|COM1|COM2|FILE)// : Specifica su quale porta andrà stampato il documento.
  • //Stampante:tipo di stampante; risoluzione// : Specifica su quale stampante andrà stampato il documento e a quale risoluzione.
  • //Formato:formato pagina// : Specifica su quale formato pagina andrà stampato il documento


Outils personnels