Render

Genera gli output in vari formati.

E’ possibile generare nello stesso script più file di formato diverso o anche dello stesso formato.

Parametri generali:

  • file | filename | name: specifica il nome (senza estensione) del file di ouput. Se non specificato utilizza il nome del report.

Suggerimento

Per i formati :html, :xlsx e :pdf render! apre direttamente il file di output.

html

Genera il report in formato HTML.

  • il layout è modificabile atraverso fogli stili CSS
  • indice con link alle tabelle
1
 render :html

xlsx

Genera il report in formato Excel Open XML Format Spreadsheet (*.xlsx).

Suggerimento

E’ possibile generare più fogli di uno stesso insieme di tabelle, contenenti statistiche differenti delle tavole in ciascun foglio.

Anche se nello script sono stati specificati più pannelli separati è possibile generare un unico pannello complessivo.

Parametri:

  • single_panel: pannelli originari (false) o unione in un pannello unico (true)
  • stats: array delle statistiche da includere nelle tabelle. :all per includerle tutte. Se il valore è :all o il parametro non è specificato verranno incluse tutte le statistiche.
  • sheet: nome del foglio. Se non specificato è uguale al nome del file. Attenzione: un nome di foglio troppo lungo viene troncato rendendo i link non funzionanti.
  • sheets: permette di specificare più fogli in uno stesso file. Hash con i nomi dei fogli e gli array delle statistiche da includere nelle tabelle
  • index: false non genera l’indice; nome nome del foglio dell’indice
  • sections => :sheet|:file: separa le sezioni in fogli differenti (:sheet) oppure in file differenti (:file)
  • numbers => :section: ricomincia da 1 la numerazione delle tabelle nell’indice per ciascuna sezione
  • multiple_sheets => true|:prefix|"prefix": genera fogli diversi per ciascuna tabella. Indicando un simbolo o una stringa, verrrà utilizzato come prefisso per il nome del foglio
  • freeze => ref: la posizione rispetto a cui bloccare lo scorrimento dei fogli delle tavole. Esempi: A1 non blocca nulla; A2 blocca solo la prima riga; D3 blocca le prime due righe e le prime tre colonne.
  • zoom => perc: imposta la percentuale di zoom dei fogli delle tavole alla percentuale data
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
 render :xlsx, :single_panel => true, :stats => [:colpct, :base, :mean, :stdev]
 render :xlsx, :single_panel => true, :stats => :all, :file => "altro_nome"

 # viene generato un file con tre fogli di tabelle: il primo con tutte le statistiche, il secondo con solo le percentuali, il terzo con solo i valori assoluti
 render :xlsx, :single_panel => true, :freeze => "B4", :zoom => 120,
               :sheets => { "VA %" => [:all],
                            "%"    => [:tcount, :trowcol,         :rowpct, :colpct, :mresp, :base, :mean, :stdev],
                            "VA"   => [:tcount, :trowcol, :count,                   :mresp, :base, :mean        ] }

 render :xlsx, :sections => :file, :numbers => :section

Suggerimento

Creando le sezioni con la sintassi section "key" => "Title" la chiave verrà utilizzata per il nome del foglio/file invece dell’etichetta.

xlsx3 e xls3

Generano un file Excel con alcune opzioni tipiche:

  • pannello unico
  • tre fogli con: le statistiche complete, le percentuali, i valori assoluti

Nomi e statistiche dei fogli possono essere modificate con i parametri di configurazione:

  • xlsx3_sheet1_name
  • xlsx3_sheet2_name
  • xlsx3_sheet3_name
  • xlsx3_sheet1_stats
  • xlsx3_sheet2_stats
  • xlsx3_sheet3_stats

xlsx4 e xls4

Generano un file Excel con alcune opzioni tipiche:

  • pannello unico
  • tre fogli con: le statistiche complete, le percentuali, i valori assoluti, le significatività

Nomi e statistiche dei fogli possono essere modificate con i parametri di configurazione:

  • xlsx4_sheet1_name
  • xlsx4_sheet2_name
  • xlsx4_sheet3_name
  • xlsx4_sheet4_name
  • xlsx4_sheet1_stats
  • xlsx4_sheet2_stats
  • xlsx4_sheet3_stats
  • xlsx4_sheet4_stats

xls o excel

Genera il report in formato Excel 97-2003 (*.xls).

Accetta gli stessi parametri di xlsx tranne freeze e zoom.

La dimensione massima di ciascun foglio è di 65536 righe per 256 colonne.

I colori disponibili sono i seguenti:

_images/excel_colors.png

Suggerimento

xls riesce a generare report con un numero complessivo di celle maggiore di xlsx.

Alcuni codici di colore HEX vengono convertiti automaticamente, per quelli non riconosciuti utilizzare nel file yml del tema la sintassi:

1
2
3
:colors_xls:
  'DAF7FE': :lightcyan
  '284EC1': :royalblue

o direttamente nello script:

1
add_colors_xls 'DAF7FE' => :lightcyan, '284EC1' => :royalblue

pdf

Genera il report in formato PDF. [1]

  • il layout è modificabile atraverso fogli stili CSS
  • intestazione e piè di pagina modificabile
  • numerazione pagine e pagine totali
  • impaginazione tabelle lunghe su più pagine
  • indice delle tabelle nei segnalibri
  • logo nella prima pagina e nel piè di pagina
1
2
 render :pdf
 render :pdf, :file => "altro_nome"

sss

MODULO AGGIUNTIVO

Genera un file di dati e un file xml in formato Triple-s delle variabili utilizzate nelle tavole.

Per ogni variabile con i pesi (w) viene inoltre generata anche una variabilie quantity con i valori pesati.

Parametri:

  • vars: i nomi di ulteriori variabili da esportare oltre a quelle utilizzate nelle tavole; verranno posizionate prima delle variabili delle tavole
  • vars2: i nomi di ulteriori variabili da esportare oltre a quelle utilizzate nelle tavole; verranno posizionate dopo le variabili delle tavole
  • drop: i nomi delle variabili che devono essere escluse dall’esportazione (utilizzare i nomi delle variabili generate)
  • weight_suff: il suffisso da aggiungere ai nomi delle variabili pesate
  • net_suff: il suffisso da aggiungere ai nomi delle variabili dei net
  • net_only => true: se è attivo il parametro save_sng_net, esporta solo la variabile multipla che contiene i net e non la variabile singola originaria
  • encoding => [data_encoding, meta_encoding]: specifica l’encoding del file di dati e del file dei metadati. Utilizzare nil al posto di un encoding per specificare solo l’altro encoding.
  • rewrite => true|false: se riscrivere o meno variabili di fiancata già presenti in altre tavole (default: true)
  • panel => true|false: esporta le variabili di pannello (default: true)

Suggerimento

Attivando il parametro di configurazione save_filter verranno esportate anche le variabili logiche corrispondenti ai filtri impostati.

Attivando il parametro di configurazione save_sng_net verranno esportate anche le variabili corrispondenti ai net delle variabili singole. In particolare verrà creato un set di variabili multidicotomy contenete gli item originari della variabile più i net.

Il parametro di configurazione sss_xml_version permette di specificare la versione di scrittura dei file Triple-S. Valori consentiti: 1.1, 1.2, 2.0 e 3.0.

1
2
3
4
5
6
7
 save_filter!
 save_sng_net!
 sss_xml_version 2.0

 # ... tavole

 render :sss, :vars => [:ser_no, :peso], :vars2 => [:cognome, :nome, :telefono]

Encoding

  • File XML:
    • Versione 3.0: UTF-8 (default) oppure Windows-1252. Altri encoding vengono sconsigliati.
    • Versioni precedenti: UTF-8 (default) oppure ISO-8859-1.
  • File di dati:
    • Versione 3.0: Windows-1252 (default) oppure UTF-8.
    • Versioni precedenti: solo ISO-8859-1.

pulsar / galileo

MODULO AGGIUNTIVO

Genera un file di dati (dat), un file var e un file css in formato InSPIRE/Pulsar/Galileo delle variabili utilizzate nelle tavole.

Per ogni variabile con i pesi (w) viene inoltre generata anche una variabilie quantity con i valori pesati.

Parametri:

  • vars => varlist: i nomi di ulteriori variabili da esportare oltre a quelle utilizzate nelle tavole; verranno posizionate prima delle variabili delle tavole
  • vars2 => varlist: i nomi di ulteriori variabili da esportare oltre a quelle utilizzate nelle tavole; verranno posizionate dopo le variabili delle tavole
  • drop => varlist: i nomi delle variabili che devono essere escluse dall’esportazione (utilizzare i nomi delle variabili generate)
  • classes => name|[name, title]: la classe di default. Indicare il nome se la classe è già presente, oppure un vettore con il nome e il titolo (default: XX)
  • weight_suff => text: il suffisso da aggiungere ai nomi delle variabili pesate
  • net_suff => text: il suffisso da aggiungere ai nomi delle variabili dei net
  • net_only => true: se è attivo il parametro save_sng_net, esporta solo la variabile multipla che contiene i net e non la variabile singola originaria
  • rewrite => true|false: se riscrivere o meno variabili di fiancata già presenti in altre tavole (default: true)
  • panel => true|false: esporta le variabili di pannello (default: true)
  • skip => classlist|:noclass: l’elenco delle classi che non devono essere esportate oppure :noclass per indicare le tabelle/variabili senza classe

Suggerimento

Attivando il parametro di configurazione save_filter verranno esportate anche le variabili logiche corrispondenti ai filtri impostati.

Attivando il parametro di configurazione save_sng_net verranno esportate anche le variabili corrispondenti ai net delle variabili singole. In particolare verrà creato un set di variabili multidicotomy contenete gli item originari della variabile più i net.

E’ possibile definire le classi delle tabelle/variabili con il comando section utilizzando le sintassi section "class" => "title", section "class>subclass" => "title", ecc.

Inoltre è possibile specificare la classe di singole variabili con la sintassi: format :varname => {:classes => ["class", "Description"]} o format :varname => {:classes => ["class"]}. La classe definita sulla variabile prevale sulla classe definita nella sezione.

1
2
3
4
5
6
7
8
 save_filter!
 save_sng_net!

 # ... tavole

 render :pulsar, :vars => [:ser_no, :peso], :rewrite => false, :classes => ["GE", "GENERALE"]

 render :galileo, :file => "parzclass", :skip => ["X1", "X2"]

dump

MODULO AGGIUNTIVO

Genera un file contenente dati utilizzati da altre procedure. Vedi Charts Report.

Parametri:

  • items => []: i tipi di oggetto da esportare: :chart, :table, ecc.
1
render :dump, :items => :chart

outfiles

Restituisce i nomi dei file dei report generati.

Parametri:

  • :path => true|false: include anche il percorso nel nome del file
  • :type => :type|[:type1, :type2, ...]: include solo i nomi dei file dei tipi di report specificati

clear

clear elimina tutte le tabelle presenti nel report. In questo modo è possibile generare più report all’interno dello stesso script.

Note

[1]I file PDF sono generatti attraverso wkhtmltopdf.