Elaborazioni SQL
Note generali sui database¶
Un database può essere visto come un insieme di tabelle, ogni tabella rappresenta generalmente un'entità che viene utilizzata nel database e interagisce con le altre: ad esempio i Clienti sono un'entità e saranno memorizzati in una tabella. Ogni entità possiede diversi attributi come ad esempio Nome, Cognome, Data di Nascita, Età ecc... Ovviamente queste informazioni sono di tipi e dimensioni diverse che variano in funzione del dato che deve essere memorizzato. Il campi presenti nel database di Mon Ami 3000 possono essere di tipo Stringa, Numero, Logical, Data e Memo; per quanto riguarda i campi Stringa, Memo e Data il valore deve essere indicato tra apici: 'STRINGA'
Descrizione delle funzionalità¶
Tramite questa finestra è possibile eseguire delle elaborazioni sui dati utilizzando il linguaggio SQL. Questo linguaggio permette di eseguire qualsiasi operazione sugli archivi, dalla ricerca alla cancellazione dei dati fino alla creazione e alla distruzione delle tabelle che compongono il database.
Info
Ogni istruzione scritta tramite il linguaggio SQL è detta QUERY e, in funzione delle operazioni eseguite, assume attributi differenti; ad esempio le query di SELEZIONE permettono di estrapolare dei dati dall'archivio in base ad una serie di filtraggi e condizioni e il risultato sarà esportato in un file XML che può essere facilmente visualizzato tramite Excel.
Mon Ami 3000 permette di creare un elenco di query da richiamare quando necessario e consente all'utente di creare delle query parametrizzate che possono essere riutilizzate per effettuare interrogazioni senza essere costretti a riscrivere l'intera query.
Nome¶
In questo campo è visibile un elenco di tutte le query presenti all'interno degli archivi; per inserire una nuova query selezionare il valore Nuova... Nella parte destra dello stesso gruppo di campi sono presenti tre piccoli pulsanti che permettono rispettivamente di Caricare, Eliminare e Salvare la query SQL specificata. Il pulsante di caricamento è abilitato solamente nel caso in cui si stia scrivendo una nuova query e permette di caricare il contenuto di un file di testo con estensione ".sql"; il nome della nuova query viene richiesto al momento del salvataggio.
Query SQL¶
In questo campo è possibile inserire la query SQL che si desidera eseguire.
Info
Mon Ami 3000 consente di creare delle query standard dove i valori da utilizzare sono variabili e potranno essere specificati di volta in volta tramite una finestra creata dinamicamente senza dover riscrivere l'intera query con il rischio di compiere degli errori. Importante. Per utilizzare questa funzione è fondamentale conoscere la struttura del database del software gestionale poichè, ogni valore specificato in una query parametrizzata, contiene riferimenti alle tabelle e ai campi contenuti nella tabella stessa.
Query SQL semplici In una query SQL semplice tutte le informazioni per la ricerca dei dati sono inserite direttamente nell stringa. Esempi: - Tutte le informazioni di tutti i clienti. select * from Controparti where Controp='Cliente' - Solo la descrizione (DescrContr) di tutti i clienti select DescrContr from Controparti where Controp='Cliente' - Numero (NumDoc) e data (DataDoc) dei documenti emessi nel mese di Gennaio 2007 select NumDoc, DataDoc from Documenti where DataDoc >= '01/01/2007' and DataDoc <= '31/01/2007' Query parametrizzate Poniamo il caso che periodicamente si vuole esportare in file XML differenti vari documenti emessi in un determinato periodo, ad esempio si vogliono esportare le fatture immediate e le fatture differite emesse in un determinato periodo. In tal caso si devono eseguire più query semplici che devono essere modificate ogni volta oppure una sola query parametrizzata... Esempi: - select * from Documenti where CodDoc = '00001' and DataDoc >= '01/01/2007' and DataDoc <= '31/01/2007' - select * from Documenti where CodDoc = '00001' and DataDoc >= '01/01/2007' and DataDoc <= '31/01/2007' Oppure... - select * from Documenti where CodDoc = '#Tipo documento:F:TipiDocumento|CodDoc:DescrDoc#' and DataDoc >= '#Dal:D#' and DataDoc <= '#Al:D#'
Struttura dei campi parametrizzabili¶
Ogni parametro è racchiuso tra i caratteri "#" ed è composto da varie opzioni separata dal carattere ":".
La sintassi generale con cui deve essere espresso il parametro è la seguente:
#
Tipologie di parametri¶
Parametro di tipo Carattere e/o Stringa
Sintassi: #
select CodDoc, NumDoc, DataDoc from Documenti where Controp = 'Cliente' and CodContr = '#Cliente:F:Controparti|CodContr:DescrContr:Cliente#' and CodDoc = '#Tipo doc.:F:TipiDocumento|CodDoc:DescrDoc#'