Stampe Documenti con Gea.Net Pro

Per ogni scheda gestita da Gea.Net, e soprattutto per i documenti, è possibile eseguire una stampa / anteprima di stampa. Per impostazione predefinita tutte le schede hanno un layout standard ma l’utente è libero di personalizzarle. Vediamo come è possibile configurarle.

Per prima cosa occorre aprire l’elenco di riferimento dell’entità (documento o scheda) che ci interessa stampare. Nell’esempio di seguito vedremo come operare per le fatture ma la stessa procedura vale per tutti le altre entità.

Nel modulo Fatture selezionare la voce Fatture quindi fare click su un documento qualsiasi o inserirne uno nuovo. Il layout di stampa si può modificare tramite il comando “Impostazioni di stampa” presente nel menu “Opzioni” che si trova sulla barra comandi del documento aperto, ma a scanso di equivoci, occorre precisare che la modifica avrà effetto su tutti i tipi di scheda/documento dello stesso gruppo. Dunque, per ogni tipo di scheda/documento viene fornita una impostazione predefinita che si genera automaticamente alla prima stampa ma che l’operatore potrà scegliere di modificare secondo le proprie esigenze, spostando e modificando i valori da stampare.

Selezionando “Impostazioni di stampa” si apre l’elenco delle tabelle associate al documento che possono essere personalizzate. Nell’esempio di seguito vedremo che al tipo Fattura sono associati due gruppi documento (Fattura Diretta e Fattura Differita).

Attenzione ! Se non è stata eseguita almeno una stampa (anche in passato) non vedremo nessuna tabella e non avremo la possibilità di modificare le impostazioni. Eseguire una stampa prima serve per acquisire le impostazioni predefinite e rendere più semplice la modifica delle Impostazioni.

Vediamo che le tabelle sono composte da una o più coppie (nell’esempio FATTURA e FATTURA_DETAIL per la stampa dei moduli delle Fatture Differite e FATTACC e FATTACC_DETAIL per la stampa dei moduli delle Fatture Dirette). La prima voce identifica la tabella principale che contiene tutte le impostazioni della scheda mentre nella seconda (_DETAIL) viene specificata la formattazione delle righe del documento con una rappresentazione molto più semplice che vedremo successivamente. Aprendo la tabella di testata notiamo che abbiamo indicativamente una riga per ogni cella di testata e per ogni riga abbiamo una serie di informazioni che specificano come deve essere riportato in stampa il valore.

Selezionando la riga si apre una schermata di popup che consente di modificare i parametri.

E’ possibile inserire voci non presenti o togliere alcune di quelle presenti e per ognuna è possibile modificare :

  • Descrizione (DescFieldName) : Intestazione che solitamente compare in stampa sopra al valore.
  • Tipo (Type) : Riporta il tipo di stampa previsto e non dovrebbe mai essere modificato dall’operatore. Solitamente deve essere stampato un TESTO (caratteri) ma potrebbe essere un’IMMAGINE, un CODICE A BARRE o un CAMPO NASCOSTO.
  • Posizione Orizzontale Inizio e Fine (PosX_IN, PosX_END) : Questi due valori sono espressi in centimetri ed indicano il punto di inizio e di fine (sull’asse X-orizzontale) in cui deve essere stampato il campo.
  • Posizione Verticale Inizio e Fine (PosY_IN, PosY_END) : Questi due valori sono espressi in centimetri ed indicano il punto di inizio e di fine (sull’asse Y-verticale) in cui deve essere stampato il campo.
  • Lunghezza (Length) : Numero di caratteri da stampare.
  • Pagina (Page) : Pagina in cui deve essere presente il dato se la scheda si snoda su più pagine. Indicare 0  se si vuole riportarlo su tutte le pagine, 99 se riportarlo sull’ultima.
  • Righe (Lines) : Numero di righe da stampare. Questo valore è solitamente uguale a uno tranne per i campi note che possono essere su più righe.
  • Bordatura (Printline) : Esegue una bordatura del campo in base ai valori di posizionamento orizzontale e verticale
  • Visualizza Zero (ViewZero) : Se indicato non stampa un eventuale voce che assumi il valore zero.
  • Nome Font (FontName) : Tipo di font da utilizzare. Il font deve essere presente sul PC nel momento in cui verrà stampato il documento, quindi è bene usare caratteri standard come Arial o Times New Roman. In questa sede non viene eseguito alcun controllo.
  • Dimensioni Font (FontSize ) : Dimensioni del font o percentuale ridimensionamento immagine su file PDF. Dalla versione 2.31, è possibile indicare in questo campo la percentuale con cui  si vuole ridimensionare l’immagine sulle stampe in formato PDF (ad. Esempio se si indica 60, l’immagine sarà ridimensionata al 60%). L’inserimento del parametro di ridimensionamento dell’immagine è consigliato ma può anche essere omesso. Nel caso sia omesso il calcolo sarà automatico secondo un algoritmo che valuta diversi fattori ma potrebbe non rispecchiare le aspettative dell’utente.
  • Colore (Color) : Colore del font. La descrizione del colore deve essere formattata in un modo particolare altrimenti verrà ignorata. Il formato deve essere simile a “Color [Black]” per il colore nero. Naturalmente il valore “Black” può essere sostituito con il nome (in inglese) di altri colori.
  • Grassetto (Bold) : Esegue la stampa in grassetto della voce.
  • Stampa dell’intestazione ( PrintHeader ) : Se indicato viene sempre stampata anche la descrizione della voce e non solo il suo valore. Anche per la descrizione è possibile scegliere Font, dimensioni, colore e grassetto.

Se scorriamo la tabella notiamo che la maggior parte dei campi ha la coordinate (POSX e POSY) uguale a 0. Questo significa che il campo non viene stampato a meno che l’operatore non intervenga a modificarne i valori.

Nei Documenti (ma non nelle altre schede) dovremmo notare anche una o due righe con Descrizione (DescFieldName) “Mittente”. Queste riportano l’intestazione della ditta e devono essere “azzerate” se si possiede una risma di carta preintestata. Anche qualora nel Profilo fosse stato definito un Logo aziendale, queste dovrebbero avere coordinate di stampa uguali a zero, ma contemporaneamente dovremmo vedere una riga con Descrizione “Logo”. Si veda di seguito “Stampa documenti e stampa logo aziendale su documenti” per maggiori dettagli.

Notiamo anche una riga con Descrizione (DescFieldName) “RIGHE”. Qui viene definito un rettangolo virtuale all’interno del quale si occuperà di stampare la tabella FATTURA_DETAIL. In pratica quest’area viene destinata a stampare le righe del documento. Si veda di seguito “Stampa righe documenti” per maggiori dettagli.

Area di Stampa

Per impostazione predefinita l’area di stampa della pagina è il formato A4 (21×29,7 cm.). Dalla versione 5.0b è possibile definire un’area di stampa diversa che può essere impostata e identificata in tabella dal nome COLL.PAGESIZE. Le proprietà POSX_END e POSY_END identificano la dimensione della pagina in centimetri.

Stampa di oggetti statici

Tra le impostazioni di stampa si trovano alcuni oggetti particolari che non fanno riferimento a valori presenti sul database ma riguardano oggetti statici che possono essere stampati in un determinato punto della stampa.

Questi oggetti sono identificabili perché il loro nome (FeldName) inizia per “COLL.LIBERO_” e per impostazione hanno la Descrizione (DescFieldName) vuota.

Gli oggetti statici che possiamo stampare sono :

  • Linee : i diversi oggetti linee rappresentano un rettangolo o una linea. Deve essere impostato un punto di inizio e di fine per mezzo di POSX e POSY in base al quale viene disegnata una linea retta o un rettangolo. La colonna Printline deve essere impostata a true. La descrizione del campo (DescFieldName) può essere lasciata vuota.
  • Testo : sono disponili oggetti testo che rappresentano un testo fisso. Per utilizzare questi oggetti devono essere impostate le coordinate (POSX* e POSY*), deve essere indicato il testo da stampare nella descrizione (DescFieldName) e deve essere impostata a vero la colonna Stampa dell’intestazione ( PrintHeader ). Possono essere modificati font, dimensione e colore.
  • Immagine : Per stampare un immagine nel campo descrizione (DescFieldName) deve essere indicato il nome del file da stampare (compreso il percorso). Per stampare l’oggetto devono anche essere impostate le coordinate (POSX* e POSY*).
  • Codice a Barre : Per stampare un codice a barre nel campo descrizione (DescFieldName) deve essere indicato il codice a barre da stampare seguito dal prefisso “[BC]” ( esempio : “[BC]12345678” stampa il codice a barre 12345678. Per stampare l’oggetto devono anche essere impostate le coordinate (POSX* e POSY*). Per definire la dimensione del codice a barre stampato si vedano i valori salvati nella funzione Impostazioni.

Gli oggetti Linee possono essere usati autonomamente o in abbinamento agli altri tipi di oggetto. Per non stampare la linea di contorno per un oggetto testo, immagine o codice a barre, la Bordatura (Printline) non deve essere selezionata.

Oggetti stampabili

Si consideri che la struttura di cui sopra è comune a tutti gli oggetti stampabili pertanto devono essere fatte alcune considerazioni:

  • Se l’oggetto da stampare è un Testo (stringa di caratteri) il punto di fine stampa non viene considerato ovvero la stringa viene stampata dal punto di origine definito per il numero di caratteri impostati. Agire eventualmente sul tipo e la dimensione del carattere per modificare il punto di fine stampa.
  • La stampa di un oggetto Immagine si comporta diversamente qualora si tratti di una stampa normale o di una stampa in formato PDF/Fax. Nel primo caso, se sono definiti i punti di fine stampa l’immagine viene ridimensionata nell’area stampabile. Nel caso di stampa in formato PDF il punto di fine stampa non viene considerato ma è possibile definire una percentuale di ridimensionamento dell’immagine impostandone il valore nel campo “Dimensioni”.
  • Alcuni dei valori da stampare possono essere in formato tabella (cioè disposti su più colonne) come nel caso delle righe documento o dei totali imponibili. La separazione per colonne è virtuale infatti per questi tipi di valori l’applicazione genera un campo testo formattato su più righe e il posizionamento delle colonne e’ calcolato in base alla larghezza del font usate. Se si usano font diversi da “courier” o “system” la larghezza dei vari caratteri e’ diversa e quindi e’ molto importante non intervenire sul font con cui stampare queste tabelle (“courier” per impostazione predefinita) altrimenti le colonne potrebbero risultare disallineate.

Stampa documenti e stampa logo aziendale su documenti

Le schede gestite in Gea.Net sono diverse e tra queste rivestono particolare caratteristiche le schede dei documenti quali Ordini, Documenti di Trasporto, Fatture. Nel momento in cui si stampa per la prima volta un documento questo viene preimpostato secondo una disposizione standard e, come detto, l’utente avrà la possibilità di modificare le impostazioni dei documenti per adattarle ad un proprio modulo o stile aziendale. Ricordiamo che, se ancora non è stato fatto, è bene stampare una prima volta il documento in modo da fare creare la configurazione standard e operare in un secondo momento intervenendo sulle impostazioni che si desidera modificare.

Durante la creazione, al momento della prima stampa, Gea.Net valuta se nella configurazione del Profilo aziendale è presente un file di logo. Qualora questo non fosse impostato viene generato un logo a caratteri, obbligatorio sui documenti e posizionato nell’angolo in alto a sinistra (vengono create una o due righe con Descrizione = “Mittente”). Se nel Profilo viene inserito il file di logo in un secondo momento, alla prima occasione questo verrebbe inserito, ma non sarebbe tolto quello a caratteri precedentemente generato. Sarà l’utente che dovrà agire tramite Impostazioni di stampa ed in particolare sulle righe “Mittente” azzerandone i valori.

Per il ridimensionamento di un file di logo aziendale valgono i concetti applicati ai file immagine trattati in precedenza. Ma è anche da valutare se non sia meglio ridimensionare un immagine con Microsoft Paint o altro software di gestione immagini.

Tutte le schede/documenti possono sempre essere stampate in diversi formati :

  • Su stampante. Viene richiesta di indicare una delle stampanti presenti su pannello di controllo quindi la stampa viene inviata al driver.
  • Anteprima di stampa. La stampa viene presentata a video e se richiesto inviata a stampante
  • Stampa in formato PDF. Viene generato un file PDF e solitamente aperto con il browser.
  • Invio EMail : Viene creato un file PDF, richiesto il l’indirizzo email e quindi inviata come allegato.
  • Invio Fax : Per questa operazione deve essere presente ZetaFax o altro software di gestione fax. Se si utilizza Linkfax questo deve essere presente sul server fax e sul PC client deve essere attivo il servizio “Messenger” (Vedi Pannello di Controllo, Strumenti di Amministrazione, Servizi ). Viene richiesto il numero di fax, creato un file PDF contenente nel nome il numero a cui deve essere inviato e depositato tale file in una cartella di fax in uscita.

Nei casi dove è possibile il numero di fax o l’indirizzo Email viene proposto automaticamente, ad esempio se si stampa un ordine o una fattura i dati vengono ricavati dalla scheda anagrafica.

Stampa Righe Documento

Alla stampa delle righe di dettaglio è riservata un’area identificata in tabella dal nome “COLL.DETAILSPACE” (Descrizione = “Righe”). Le Coordinate di Stampa di questo oggetto, identificano un rettangolo all’interno del quale saranno stampate le righe di dettaglio. Si consiglia di utilizzare il carattere Courier per consentire un corretto allineamento dei caratteri e una migliore leggibilità.

L’area riservata alle righe del documento è gestita dalla tabella con suffisso _DETAIL.

Sulla tabella di dettaglio la gestione dei parametri è molto più semplice in quanto tutte i parametri come le coordinate, il carattere, ecc. sono state impostate nell’oggetto “Righe” della tabella principale.

Qui deve solamente essere indicato l’ordine delle colonne (Pos.X Iniziale) e la lunghezza espressa in caratteri (Lunghezza).

Dall’immagine riportata possiamo vedere che la prima colonna è destinata al codice articolo per 18 caratteri, la seconda alla descrizione per 30 caratteri, la terza all’unita di misura, ecc.

Nella colonna Descrizione (DescFieldName)viene riportata l’intestazione della colonna come sarà riportata in stampa e che può essere modificata dall’utente.