Esportare su file le fatture di vendita emesse con Titano

Il seguente script SQL permette di esportare su file di testo l'elenco delle fatture di vendita di Titano emesse in un periodo.

-- INIZIO FILE


-- INIZIO PARAMETRI


/*
definire di seguito i parametri, secondo la sintassi:
[nomeparametro]=valore

Esempi:
-------
esempio con date:                 [data]='2014-12-31'
esempio con stringhe:             [nomecliente]='rossi'
esempio con importi con decimali: [importomin]=1234.56
esempio con nomi di file:         [fileesportato]="c:\file.txt"
ATTENZIONE, quando si specificano dei nomi di file:
ASSICURARSI DI SPECIFICARE CARTELLE DOVE SI ABBIANO I PERMESSI IN SCRITTURA
(ad esempio la cartella C:\ non  accessibile in scrittura in Windows 8!)
*/

[data1]='2015-01-01'
[data2]='2015-12-31'
[file_csv]="c:\dati.csv"

-- FINE PARAMETRI



-- INIZIO SCRIPT SQL


select RifLav,TipoDoc,RifCli,RifMezzo,NumDoc as NumeroFattura,DataDoc as DataFattura,Cliente,cast(0 as float) as OreLavorate,TotDoc as TotaleDocumento
 into "\memory\ft"
 from lav
 where tipodoc in (3,6,7,10) and datadoc>=[data1] and datadoc<=[data2]
 order by datadoc,numdoc;

update "\memory\ft" f
 set f.Cliente=trim(both ' ' from c.RagSoc+' '+C.NomeBattesimo)
 from "\memory\ft" f
 join cli c
 on f.rifcli=c.rifcli;

update "\memory\ft" f
 set f.OreLavorate=f.OreLavorate+coalesce(dl2.Ore,0)
 from "\memory\ft" f
 join dettlav2 dl2
 on f.riflav=dl2.riflav;

update "\memory\ft" set OreLavorate=round(OreLavorate,2);

export table "\memory\ft" to [file_csv]
 delimiter ';'
 with headers
 columns (NumeroFattura,DataFattura,Cliente,OreLavorate,TotaleDocumento)
 date 'dd/mm/yyyy'
 time 'hh:mm'
 decimal ',';

drop table if exists "\memory\ft";

-- FINE SCRIPT SQL


-- FINE FILE

(una volta selezionato, premere CTRL+C per copiare il testo negli appunti)

Come si utilizza lo script ?

Questi i passaggi da eseguire:

1) copiare lo script di sopra negli appunti di Windows (cliccare sul pulsante rosso, quindi premere CTRL+C)
2) aprire ExtraUtil dall'icona sul desktop

quindi, in ExtraUtil:

3) andare nella pagina SQL
4) premere il pulsante "Inserisci o modifica lo script SQL"
5) incollare lo script copiato (tasto destro > incolla, oppure CTRL+V)
6) impostare correttamente i parametri
7) premere il pulsante "Conferma"
8) premere il pulsante "Esegui lo script SQL"

Se tutto è stato fatto correttamente, verrà visualizzato un messaggio di conferma di "Script SQL eseguito".
Se invece dovessero esserci errori, verificare di che errori si tratta, premere il pulsante "Inserisci o modifica lo script SQL", correggere gli errori, quindi tornare al punto 7).

Come impostare i parametri dello script

Il significato dei parametri è intuitivo:

[data1]='2015-01-01'
[data2]='2015-12-31'

rappresentano il periodo da considerare. Le date devono essere rappresentate come aaaa-mm-gg (anno di 4 cifre, trattino, mese di due cifre, trattino, giorno di due cifre), e devono essere comprese tra apici semplici (NON virgolette).

L'altro parametro fa riferimento al file che risulterà dall'esportazione:

[file_csv]="c:\dati.csv"

il nome del file e relativo percorso devono essere indicati per esteso, compresi tra virgolette (NON apici nè doppi apici, MA VIRGOLETTE!) ; assicurarsi di avere i permessi di scrittura per la cartella che si indica come destinazione (ad esempio la cartella C:\ è accessibile sotto XP, ma NON lo è sotto Windows 8).

Che tipo di risultati fornisce lo script ?

Per ciascuna fattura vengono riportati:

- numero e data fattura
- nome cliente
- la somma delle ore lavorate, calcolata ricavandola dal dettaglio dei "lavori/varie" di ciascuna singola fattura in Titano
- l'importo totale del documento