MICROSOFT VISUAL FOXPRO GUIDA UTENTE TRADUZIONE DALL’EDIZIONE INGLESE DI: “Users Guide Visual FoxPro®" di Microsoft© Traduzione e Adattamento di: Baldarelli Gian-Carlo e Daniela Alvisi [email protected] http://www.foxitaly.com Lo scopo di questa traduzione è quello di offrire anche al pubblico di lingua italiana una guida per muovere i primi passi con questo bellissimo strumento di programmazione Tutti i diritti dei marchi citati sono dei legittimi proprietari FoxPro e Visual FoxPro® sono un marchi registrati da Microsoft Corporation© Come avviareVisual FoxPro Per avviare Visual FoxPro ● Fate un doppio click sull’icona di Microsoft Visual FoxPro. Quando avviate Visual FoxPro, il Project Manager crea un nuovo progetto in cui potete aggiungere voci precedentemente create oppure crearne delle nuove da includere. Utilizzando il Project Manager, potete velocemente familiarizzare con Visual FoxPro. Il Project Manager fornisce un facile metodo visuale per organizzare tabelle, form, database, report, queries, e altri file quando dovete creare una applicazione. Il Project Manager organizza i vostri dati. Se avete tabelle provenienti da precedenti versioni di FoxPro®, potete aggiungerle immediatamente e vedere come lavora Visual FoxPro. Se avete altri dati che volete organizzare ( siano fogli di calcolo, file di testo, o tabelle di altre applicazioni, potete importarle in Visual FoxPro e aggiungerle nel progetto). Potete anche creare un nuovo progetto in ogni momento scegliendo l’opzione [new] dal menu [file]. Per creare una nuova applicazione 1. 2. 3. 4. Dal menu File, scegliete New. Selezionate Project e scegliete New File. Nella finestra Create, digitate il nome che volete assegnare al nuovo progetto. Quindi cliccate su Save. Per aiutarvi a familiarizzare con Visual FoxPro, potete utilizzare l’esempio fornito con il pacchetto. Questi esempi sono contenuti nella cartelle di Visual Studio …\Samples\Vfp98. (Utilizzato anche negli esempi della guida Users Guide Visual FoxPro® di Microsoft©) Testdata.dbc Questo database contiene un semplice set di tabelle correlate con cui potete fare esperienza mentre familiarizzate con Visual FoxPro. Tastrade.pjx Questo progetto contiene una applicazione completamente sviluppata che potete utilizzare per comprendere che tipo di applicazioni potete creare con Visual FoxPro. Aprendo e esaminando come è strutturato il progetto potrete comprendere come si costruiscono le applicazioni. Introduzione a Project Manager Il Project Manager è fondamentalmente uno strumento di organizzazione quando si deve lavorare con dati e oggetti in Visual FoxPro. Un progetto è una collezione di files, dati, documenti, e oggetti di Visual FoxPro che vengono salvati in un file con l’estensione .pjx. Il Project Manager è il vostro" centro di controllo" per lavorare con Visual FoxPro. Potete utilizzare il Project Manager per organizzare i files così come creare tabelle e database, scrivere query, impostare moduli (form) e stampe (report ), e costruire applicazioni. Potete iniziare a creare la vostra applicazione anche aggiungendo basi di dati Visual FoxPro già esistenti, oppure utilizzando i file di esempio di Visual Studio …\Samples\Vfp98\Data directory. Visualizzare i contenuti del Progetto Il Project Manager consente la visualizzazione organizzata e gerarchica dei dati. Per focalizzare su un particolare tipo di dati, file o oggetti del progetto, scegliere l’apposita linguetta. Quando state impostando tabelle e database o creando moduli (form), interrogazioni (query), viste (view), e prospetti stampa (report) lavorate principalmente con le voci mostrate nella scheda Data and Documents. Localizzare gli archivi dati (Data Files) Questa scheda contiene tutti i componenti di un progetto; gli archivi, tavole libere, queries, e viste This tab contains all the data for a project: the databases, free tables, queries, and views. Scheda Data del Project Manager Databases serie di tabelle, di solito relazionate fra di loro attraverso un campo comune. Per supportare le tabelle e le relazioni, potete includere viste, connessioni, procedure, regole, e triggers . I database si creano con il Database Designer, Gli archivi database hanno l’estensione .dbc Le Free tables sono tabelle che non sono parti di un database e sono memorizzate in un archivio con l’estensione .dbf. Le Queries sono un modo strutturato di richiedere delle informazioni specifiche memorizzate in una tabella. Utilizzando il Query Designer, formulate una domanda che estrae i record dalle tabelle secondo il criterio voluto. Le Queries sono comandi SQL-Select salvate in un file di testo con l’estensione .qpr . Le Views sono query specializzate che consentono l’accesso sia locale che remoto e consentono l’aggiornamento dei dati con la modifica dei record ottenuti dalla query. Le Views esistono solamente all’interno di un database e non sono file indipendenti. Visualizzare Form and Report La scheda Documents contiene tutti i documenti che utilizzate quando lavorate con i dati, i form utilizzati per l’immissione e la visualizzazione dei dati, i report e le etichette per la formattazione delle stampe di tabelle e il risultato delle query. Scheda Documents del Project Manager Forms sono utilizzati per mostrare e editare i contenuti delle tabelle. I Reports sono files che dicono a Visual FoxPro come impostare i dati provenienti dall’azione di query su tabelle per la stampa. Le Labels sono report speciali per impostare i dati per la stampa su etichette. Le altre schede Classes, Code, and Other — sono principalmente utilizzate quando si creano applicazioni per l’utenza finale. Visualizzare i dettagli degli archivi (Files) Le voci nel Project Manager sono organizzate in una vista che potete espandere o colassare in modo da visualizzare diversi livelli di dettaglio. Il segno (+) appare vicino ad un simbolo se ci sono uno o più voci di quel tipo nel progetto. Cliccate sul simbolo più (+) per visualizzare i nomi delle voci di quel tipo nel progetto. Per esempio, cliccate il segno più vicino alla voce Free Tables per visualizzare i nomi delle Free Tables contenute nel progetto. Il profilo mostra differenti livelli di dettaglio del progetto. Per colassare la lista una volta che è stata espansa, cliccate sul segno meno. Aggiungere e rimuovere archivi Files Attraverso il Project Manager, potete aggiungere archivi già esistenti o potete crearne di nuovi. Per esempio se avete una serie di archivi .dbf già esistenti e volete aggiungerli ad un progetto, selezionate semplicemente Free Tables nella scheda Data e cliccate sul tasto Add per aggiungerli al progetto. Per aggiungere un archivio ad un progetto 1. Selezionate il tipo di file che volete aggiungere. 2. Scegliete Add. 3. Nella finestra che appare Open , selezionate il nome del file che volete aggiungere e quindi cliccate su OK. Per rimuovere un archivio dal progetto 1. Selezionate l’elemento che volete rimuovere. 2. Selezionate Remove. 3. Alla richiesta di conferma scegliete ancora Remove. Se volete cancellare il file dal vostro computer scegliete Delete. Creazione e modifica di Files Il Project Manager semplifica la creazione e la modifica di files. Semplicemente selezionate il tipo di file che volete creare o modificare e quindi cliccate su tasto New or Modify. Visual FoxPro mostrerà lo strumento di progetto idoneo al tipo di file che avete selezionato. Per creare un file da aggiungere al Project Manager 1. Selezionate l’elemento che volete creare. 2. Cliccate su New. Con alcuni elementi, avete l’opzione di utilizzare un wizard (procedura automatica) che vi aiuterà nella creazione del file. Per modificare un file 1. Selezionate un file esistente. 2. Cliccate su Modify. Per esempio, per modoficare una tabella, selezionate il nome della tabella e scegliete Modify per visualizzare la tabella nel Table Designer. Aggiungere un descrizione ad un File Quando create o aggiungete un nuovo file, potete aggiungere una descrizione al file. Questa descrizione è visualizzata in basso alla finestra del Project Manager quando viene selezionato il file. Per aggiungere una descrizione ad un file 1. 2. 3. 4. Nel Project Manager, selezionate il file. Dal menu Project, selezionate Edit Description. Nella finestra di dialogo Description, scrivete la descrizione per il file. Cliccate su OK. Visualizzazione dei dati delle Tabelle Dal Project Manager, potete scorrere il contenuto delle tabelle del progetto. Per scorrere la tabella 1. Selezionate la scheda Data. 2. Selezionate la tabella e scegliete Browse. Condividere files fra vari progetti Potete riusare il vostro lavoro di un progetto condividendo gli archivi con un altro progetto. Questi files non sono duplicati, perché il progetto immagazzina solamente un riferimento ai files. I files possono essere simultaneamente condivisi con progetti differenti. Per condividere files fra progetti 1. In Visual FoxPro, aprite i due progetti che devono condividere i file. 2. Nel Project Manager contenenti il file, selezionate il file. 3. Trascinate il file nel contenitore dell’altro progetto. Personalizzare il Project Manager Potete personalizzare l’area di visualizzazione modificando la vista del Project Manager o settando il doppio click per attivare i files nel Project Manager. Modificare la vista Inizialmente il Project Manager appare in una finestra separata, voi potete muovere la finestra, modificarne le dimensioni, chiuderla in modo da vederne solo le voci delle etichette. Per muovere il Project Manager ● Mettere ilpuntatore del mouse sulla barra dei titoli e trascinatela nella nuova posizione. Per ridimensionare Project Manager ● Mettere il puntatore nell’angolo inferiore o superiore della finestra Project Manager, e trascinate cliccando per aumentare o diminuire la dimensione. Per chiudere il Project Manager ● Cliccate sulla freccia all’insù nell’angolo superiore destro. Nella vista chiusa vengono mostrate solo le etichette delle schede Potete facilmente tornare alla vista iniziale del Project Manager. Per resettare il Project Manager ● Cliccate la freccia all’ingiù nell’angolo superiore destro. Quando il contenitore è chiuso, potete separare le varie scede e sistemarle sullo spazio di lavoro a vostra preferenza. Quando separate la scheda, essa fluttua indipendentemente nella finestra principale di Visual FoxPro. Per separare una scheda 1. Chiudere il contenitore. 2. Selezionate una linguetta e trascinatela fuori dal Project Manager. Quando la scheda e fluttuante potette accedere alle opzioni del menu Progetto cliccando cin il punsante destro del mouse nella scheda fluttuante. Se volete che la scheda rimanga sempre in vista, cliccate sull’icona fermaglio in alto alla scheda. La scheda resterà sopra tutte le altre schermate di Visual FoxPro. Potete impostare più finestre con l’opzione sempre in vista. Per rimuovere questa funzione cliccate nuovamente sul fermaglio. Schede del Project Manager Ripristino di una scheda ● Cliccate su tasto Close della scheda. ❍ -orTrascinate di nuovo la scheda sul Project Manager. Potete anche collocare il Project Manager alla barra dei tasti di Visual FoxPro. Per trasformare il Project Manager ● Trascinare il Project Manager sulla barra dei tasti della finestra Visual FoxPro. Quando il Project Manager è ancorato diventa una parte della barra dei tasti. Potete espandere il Project Manager quando è ancorato cliccando sulle varie linguette delle sue schede e potete ancora separare le varie schede trascinandole via. Introduzione al Visual FoxPro Designers Il Project Manager vi fornisce un rapido accesso al Visual FoxPro designers. Questo strumento facilita la creazione di tabelle, forms, databases, queries e report per la gestione dei vostri dati. Questa sezione descrive come utilizzare il designer. Potete anche assemblare le voci che create con il designer in una applicazione. Potete anche utilizzare il designer indipendentemente dal Project Manager utilizzando le opzioni di New dal menu File. La seguente tabella indica quale designer utilizzare a secondo dell’obiettivo: Per Utilizzare questo designer Creare tabelle e definire indici nella tabella Table Designer Azionare delle queries su una tabella Query Designer Azionare queries su una sorgente di dati remota; Creare queries aggiornabili View Designer Creare un form per visualizzare e editare i dati nella vostra tabella Form Designer Creare un report per mostrare e stampare i vostri dati Report Designer Definire un database; visualizzare e creare relazioni fra le tabelle Database Designer Creare una connessione per una vista remota Connection Designer Per usare il designer per creare un nuovo files ● dal Project Manager, selezionare il tipo di file che volete creare e scegliete New. Utilizzo delle Toolbars Ogni designer ha una o più barre di pulsanti che vi fornisce l’accesso alle funzioni o azioni utilizzate con maggior frequenza dello strumento. Per esempio, il Form Designer ha delle barre pulsanti diverse per i controlli, la forma dei controlli e la palette dei colori. Potete sistemare tutte le barre pulsanti a vostro piacimento secondo le vostre necessità per il vostro lavoro. Potete ancorare le barre pulsanti in alto in basso o a lato in modo da personalizzare l’area di lavoro. Visual FoxPro salverà la posizione delle toolbars in modo da riposizionarle al succesivo riavvio. Per mostrare le barre pulsanti (toolbars) 1. Dal menu View selezionare Toolbars. 2. Nella finestra di dialogo Toolbars, selezionate quella che volete utilizzare. 3. Cliccate su OK. Per ancorare una toolbar ● Trascinate la barra pulsanti in alto o in basso o a lato del vostro schermo. Utilizzo delle procedure automatiche Wizards I Wizards sono dei programmi iterattivi che vi aiutano a portare a termine gli obiettivi più comuni come quelli di creare dei forms, di impostare dei reports e di preparare delle queries Per avere maggiori informazioni su ogni Wizard premete F1 quando lo richiamate. Rispondendo semplicemente alle domande o scegliendo delle opzioni nelle varie schermate del wizard voi direte alla procedura di eseguire il lavoro in base alle vostre impostazioni. Per esempio, se scegliete Report Wizard, voi potrete selezionare il report che volete creare. Il Wizard vi chiderà quale tabella deve utilizzare e fornirà delle scelte per la impostazione del report. Avviare un Wizard Quando create una nuovo oggetto voce utilizzando il Project Manager o il menu File, potete scegliere di utilizzare un wizard che vi aiuterà nella creazione dell’oggetto. Per avviare un Wizard 1. Nel Project Manager, selezionate il tipo di file che volete creare e scegliete New. 2. Potete anche scegliere New dal menu File e selezionare il tipo di file che volete creare. 3. Selezionate l’opzione Wizard. Potete anche accedere alla maggior parte dei wizard direttamente scegliendo il comando Wizard dal menu Tools. Se utilizzate un wizard di Visual FoxPro applicandoli ai dati di una tabella in un database potete utilizzare Stili e Formattazioni immagazzinate nel database per i forms, le tabelle, le Etichette (labels), le queries ed i reports. Navigare nelle schermate dei Wizard Una volta attivato il wizard, rispondete alle domande che appaiono in ogni schermata. Quando siete pronti per procedere alla schermata successiva, cliccate sul tasto Next. Se commettete un errore o cambiate idea, scegliete uil tasto Back per visualizzare la schermata precedente così potrete apportare le modifiche. Cliccando su Cancel uscirete dalla procedura wizard senza produrre alcun risultato. Se avete delle domande circa il wizard premete F1 per ottenere l’Help ( in inglese L ) Quando arrivate all’ultima schermata, cliccate su fine per uscire dal wizard. Se avete fretta, potete scegliere il tasto Finish per procedere alla fine della sequenza del wizard, saltanto tutte le informazioni opzionali e utilizzando solamente quelle fornite dal wizard. Salvataggio del risultato del Wizard L’ultima schermata di ogni wizard potrebbe chiedervi di fornire un titolo oppure, dipendentemente dall’oggetto chje stavate creando, fornirvi alcune opzioni ( salvare, modificare, stampare il risultato). Utilizate l’opzione Preview per vedere i risultati del wizard prima ancora di aver terminato, potrete riavviare iol wizard nuovamente se vorrete fare delle scelte differenti per cambiare il risultato. Quando sarete sodddisfatti potrete sceglie il tasto Finish. Modifica di un oggetto creato con il Wizard Una volta creato la tabella, il form, la query o il report, potete aprirla nell’apposito strumento di disegno e fare delle successive modifiche. Non è possibile riaprire un oggetto creato con un wizard con il wizard stesso, ma potete prevedere i risultati prima di salvare l’oggetto e uscire dal wizard. Uso del Builders I Builders sono finestre di dialogo contenenti varie schede che semplificano la creazione e la modifica di forms, controlli complessi e codice di integrità referenziale. Ogni Builder dispone una serie di schede e opzioni che vi consentono di impostare le varie proprietà degli oggetti da creare. Per costruire un controllo ● ❍ Dalla barra pulsanti Form Controls, scegliete iltasto Builder Lock. Ogni volta che aggiungete un nuovocontrollo ad un form, Visual FoxPro mostrerà l’appropriato builder. -oSelezionate un controllo nel form e scegliete il tasto Builder nella finestra Properties. Utilizzo del Form Builder ● Dal menu Form, scegliere Quick Form. Quando avete diversi controlli su un form, potete formattarli tutti insieme scegliendo l’ AutoFormat Builder. Per formattare una serie di controlli 1. Nel Form Designer selezionate i controlli. 2. Dalla barra pulsanti del Form Designer, scegliete il tasto AutoFormat. Quando viene mostrato un Builder, selezionate le opzioni in ogni scheda e quindi scegliete OK per salvare le modifiche. Per Utilizzare Costruire una casella combinata (combo box) Combo Box Builder Costruire gruppo di comandi Command Group Builder Costruire casella di modifica ( editing box) Edit Box Builder Costruire form Form Builder Costruire griglia Grid Builder Costruire casella lista (List Box) List Box Builder Costruire gruppo di opzioni (Option Group) Option Group Builder Costruire casella di testo (Text Box) Text Box Builder Impostare gruppi di controlli AutoFormat Builder Creare controlli dell’integrità referenziale fra diverse tabelle Referential Integrity Builder Creare una nuova tabella Le tabelle sono gli elementi comuni per lavorare con i dati, creare database relazionali e applicazioni. Quando avete la necessità di creare una nuova tabella, potete ricorrere all’assistenza del Tabel Wizard oppure utilizzare il Table Designer e impostare la tabella con i campi di cui necessitate. Ricordatevi questi punti principali quando create una tabella: ● Fate corrispondere il tipo di dati del campo con l’informazione che andrete ad immagazzinarvi( per maggiore informazione leggete la parte successiva " Scelta del tipo di dati " ). ● Il campo deve essere sufficientemente largo per accomodare il dato che dovrà mostrare. ● Impostate un numero adeguato di decimali per i campi numerici e variabili. ● Selezionate NULL se volete che il campo accetti "nullo" come valore. Scegliere un tipo di dati Ogni campo nella vostra tabella contiene un particolare tipo di dati. Potete impostare il tipo di dati per i campi in base ala seguente tabella. Tipo di dati Descrizione Esempio Character Testo alfanumerico Indirizzo di un cliente Currency Unità monetarie Prezzo di acquisto Numeric Numeri interi o decimali Quantità di pezzi ordinati Float Lo stesso di numerico Date Mese, Giorno, Anno Data di inserimento dell’ordine DateTime Mese, giorno, anno, ora, minuto, secondo Data di arrivo di un impiegato al lavoro Double Cifra in doppia precisione Calcoli che richiedono elevata precisione Integer Valore numerico non decimale Numero della riga di un ordine Logical Vero o Falso Se un ordine è stato compilato o meno Memo Testo alfanumerico di lunghezza non precisata Note di una chiamata telefonica in una rubrica General OLE Foglio di calcolo Microsoft Excel ® Character (Binary) Lo stesso di carattere ma i valori non sono modificati quando cambia il il codepage della nazione Una password memorizzata in una tabella utilizzata in più paesi Memo (Binary) Lo stesso di memo ma i valori non sono tradotti quando cambia il code page Uno script di accesso usato in Paesi differenti Usare il Wizard Quando dovete creare una nuova tabella, potete utilizzare il Table Wizard per farvi aiutare nell’impostazione della tabella. IL wizard vi formulerà una serie di domande e costruirà la tabella per voi in base alle vostre risposte. Per creare una tabella con il wizard 1. 2. 3. 4. Nel Project Manager, selezionate la scheda Data e selezionate Free Tables. selezionate New. Selezionate il bottone Table Wizard. Seguite le istruzioni sulle videate del wizard. Potete anche accedere al wizard dal menu File quando scegliete New e Table e poi successivamente l’opzione Table Wizard. Se basate la vostra tabella su un database, potete utilizzare gli stili, l’impostazione dei campi o la chiave primaria e le relazioni delle tabelle del database. Avvio del Table Designer Se volete creare le vostre tabelle direttamente da soli senza il wizard, usate dal Project Manager la scheda Table oppure scegliete New dal menu File, selezionate Tabella e quindi New File. Creare una nuova tabella nel Table Designer Se volete creare una tabella da aggiungere ad un database, aprite il database prima di creare la tabella che così diventerà parte integrante del database, potete comunque aggiungerla successivamente. Successivamente troverete maggiori informazioni sulle tabelle di database. Per creare una nuova tabella 1. 2. 3. 4. 5. 6. 7. 8. 9. Dal Project Manager, scegliete Tables sotto Databases, oppure Free Tables. Scegliete New, e poi New Table. Nella finestra di dialogo Create, inserite il nome della tabella e quindi scegliete Save. Nella scheda Fields del Table Designer, inserite il nome del primo campo nella cella Name. Nel campo Type, selezionate la tipologia del dato che verrà inserito. Nella colonna Width (larghezza), impostate il valore della larghezza del campo. Se Type è di tipo Numeric o Float, impostate il numero decimali che devono essere mostrati nel campo Decimal. Se volete impostare un Indice al campo selezionate l’ordinamento nella colonna Index. Se volete accettare valori nulli come inserimento valido, selezionate NULL. Potete anche scegliere di inserire immediatamente i dati, oppure riaprire la tabella e inserire i records successivamente. Per aggiungere records alla tabella 1. 2. 3. 4. Nel Project Manager, selezionate il nome della tabella. Scegliete Browse. Dal menu View, scegliete Append Mode. Inserite il nuovo record nella finestra Browse. Se preferite vedere ogni campo in una riga differente, cambiate la vista in modo Edit scegliendolo dal menu View. Salvare e visualizzare informazioni nelle tabelle Le tabelle salvano i vostri dati nel formato righe e colonne, simile ai fogli elettronici. Ogni riga corrisponde ad un record e ogni colonna rappresenta un campo di quel record. Righe e colonne nelle tabelle Potete creare due tipi di tabelle in Visual FoxPro: tabelle database, che sono incorporate come parti di database, e tabelle libere (free tables) che sono indipendenti da qualsiasi database. Visualizzare il contenuto delle tabelle IL metodo più veloce per visualizzare il contenuto di una tabella e di vederla in una finestra di scorrimento detta Browse window. La Browse window mostra i contenuti della tabella come una serie di righe e colonne che potette scorrere. Per scorrere una tabella 1. Dal menu File, scegliete Open e selezionate il nome della tabella che volete visualizzare. 2. Dal menu View, scegliete Browse. Potete anche selezionare una tabella dal Project Manager, e cliccare sul bottone Browse. Vista di una Tabella nella finestra Browse Per un facile inserimento dei dati potete impostare la finestra di Browse in modalità Edit. In modo Edit, il nome delle colonne sono mostrate nella parte sinistra della finestra. Per cambiare la finestra Browse in modo Edit Dal menu View, scegliete Edit. Table in Edit mode In entrambi i modi potete scorrere i records, cercare uno specifico record e fare delle modifiche direttamente nel contenuto della tabella. Muoversi all’interno di una Tabella Utilizzate la barra di scorrimento per muovervi all’interno di una tabella e visualizzare differenti record o campi. Potete anche utilizzare le frecce cursore e il tasto TAB per muovervi attorno. Per visualizzare diversi records 1. Dal menu Table, scegliete Go to Record. 2. Nel submenu, scegliete Top, Bottom, Next, Previous, or Record #. (il pound o diesis # significa n°) 3. Se scegliete Record #, inserite il numero del record che volete vedere nella finestra di dialogo Go to Record, e quindi scegliete Go To. Editare i campi della tabella Per cambiare i dati di un campo Character, Numeric, Logical, Date or DateTime, potete cliccare col mouse nel campo e cambiare l’informazione o selezionare l’intero campo e inserire i nuovi dati. Per editare i dati in un campo di tipo Memo, fate un doppio click nel campo oppure premete i tasti CTRL+PGDN, apparirà una finestra di editing con il contenuto attuale di quel campo. Un campo General contiene un oggetto di tipo OLE ( sia linkato che incluso ). Potete editare questo oggetto facendo un doppio click nel campo General della finestra Browse oppure editare il documento direttamente ( come con un documento Microsoft Word o Excel ) oppure facendo un doppio click sull’oggetto per aprire l’applicazione generatrice come ad esempio un oggetto creato con Microsoft Paint. Aggiungere record a una tabella Per aggiungere velocemente record ad una tabella, potete impostare la finestra di Browse o di Edit in modalità Append. In modalità Append, una serie di campi vuoti appariranno in fondo alla tabella, così potete inserirvi i dati per creare il nuovo record. Per aggiungere un nuovo record vuoto Dal menu View, selezionate Append Mode. Riempite i campi del nuovo record, spostandovi col tasto TAB da una campo all’altro, ogni volta che completerete il record verrà creata una nuova riga di campi vuoti pronti per l’inserimento di dati. Modalità Append della finestra Browse Cancellare i record La cancellazione di record in una tabella è un processo composto da due fasi. Prima dovete spuntare i record da cancellare cliccando nella casella all’estrema sinistra di ogni record. Record spuntati per la cancellazione La spunta non cancella i record. Per rendere effettiva la cancellazione, dovete scegliere Remove Deleted Records dal menu della Tabella. Questa procedura cancella i records che avete spuntato, e unifica i records rimanenti della tabella. La procedura di rimozione dei records spuntati termina con la chiusura della tabella che dovrete quindi riaprire per continuare a lavorare. Per cancellare i records da una tabella 1. Spuntare i records che si vogliono cancellare cliccando nella casella di sinistra. 2. Dal menu Table, scegliete Remove Deleted Records. 3. Scegliete Yes in risposta alla richiesta se volete procedere con la ricompattazione ( pack ) della tabella. Potete anche selezionare un gruppo di records da cancellare impostando le condizioni nella finestra di dialogo della procedura Delete. Scegliete Delete Records dal menu Table per impostare i criteri di cancellazione. Finestra di dialogo della procedura Delete Cliccate sul tasto Scope per impostare la sequenza dei records da cancellare. Se è possibile descrivere il set di record da cancellare, potete costruire una espressione basata su questa descrizione . Scegliete il tasto FOR per attivare il costruttore di espressioni (Expression Builder) così potete crearla. Per esempio, utilizzando l’espressione FOR Country = 'UK' selezionerà tutti i records che contengono il dato UK preimpostandoli per la successiva cancellazione. Personalizzare la finestra Browse Per personalizzare la finestra Browse per soddisfare le vostre necessità, potete you riorganizzare o cambiare la larghezza delle colonne, impostare la griglia visibile o trasparente, oppure dividere la finestra di Browse in due pannelli. Riorganizzare le colonne Potete riorganizzare le colonne della finestra Browse nell’ordine che più vi piace. Questo non influisce sulla struttura della tabella. Per riorganizzare le colonne nella finestra di Browse ● Trascinate l’intestazione della colonna fino alla nuova posizione. ❍ -oDal menu Table, scegliete Move Field, e utilizzate il tasto freccia a sinistra o freccia di destra per spostare le colonne. Premere quindi Invio quando avete finito. Modificare la larghezza delle Colonne Potete anche cambiare la larghezza delle colonne nella finestra di Browse. Questo ridimensionamento non ha effetti sulla lunghezza del campo né sulla struttura della tabella. Se volete cambiare l’attuale larghezza del campo, modificate la struttura della attraverso il Table Designer . Per cambiare la larghezza della colonna ● ❍ Posizionate il cursore nell’intestazione della colonna fra i due nomi di campo, trascinate il puntatore per ridimensionare la colonna. -oSelezionate un campo. E dal menu Table, scegliete Size Field, e usate le frecce cursore sinistra destra per ridimensionare la colonna. Premete quindi il tasto invio. Attivare e disattivare la griglia Potete anche disattivare la visualizzazione della griglia nella finestra di Browse. Per attivare o disattivare la griglia ● Dal menu View, scegliete Gridlines. Separare una finestra Browse Potrebbe essere utile dividere la finestra di lettura ( browse window ) in modo da poter guardare due aree diverse della tabella, oppure guardare allo stesso record nella modalità Browse e nella modalità Edit simultaneamente. Dividere la finestra Browse Per dividere la finestra di Browse 1. Posizionate il puntatore del mouse nella barra di separazione nella parte bassa all’angolo sinistra della vista. 2. Trascinate la barra di separazione verso destra in modo da dividere la finestra Browse in due pannelli. -oppure3. Dal menu Table, scegliere Resize Partitions. 4. Premere il TASTO FRECCIA DESTRA per muovere la barra di separazione ( split bar ). 5. Premere INVIO. Per ridimensionare i pannelli di una delle parti della finestra Browse. 1. Posizionate il puntatore sulla barra di separazione. 2. Trascinate la barra verso destra o sinistra per cambiare la dimensione dei pannelli -oppure3. Dal menu Table, scegliete Resize Partitions. 4. Premete i tasti FRECCIA DESTRA O SINISTRA per muovere la barra di separazione. 5. Premete INVIO. Di default, i due pannelli della finestra di scorrimento sono legati insieme; questo significa, che selezionate records differenti in un pannello, le modifiche si riflettono anche nell’altro. Se volete separare i due pannelli in modo che funzionino indipendentemente, ( ovvero lo scorrimento di un pannello non si riflette sull’altro, deselezionate il Link Partitions nel menu Table. Modificare una tabella Quando avete la necessità di modificare la struttura di una tabella, usate il Table Designer. Con il Table Designer, potete aggiungere o eliminare campi, impostare il tipo di dati e la larghezza del campo, visualizzare o impostare gli indici che organizzano i contenuti di una tabella. Se la tabella che state modificando fa parte di un database sono disponibili campi specifici e proprietà di tabella. Per modificare una Tabella ● Nel Project Manager, selezionate il nome della tabella e scegliete Modify. La struttura di una tabella è mostrata nel Table Designer. Il Table Designer mostra la struttura della tabella attiva Per aggiungere un campo ad una tabella 1. Dal Table Designer, selezionate Insert. 2. 3. 4. 5. Nella colonna Name, inserite il nome del nuovo campo. Nella colonna Type, selezionate il tipo di dati per quel campo. Nella colonna Width, impostate o inserite la larghezza di quel campo. Se il campo ha è di tipo Numeric o Float, impostate il numero di cifre decimali che prenderanno posto nella colonna Decimal. 6. Se desiderate accettare valori nulli, selezionate la colonna NULL. 7. Cliccate su OK. 8. Cliccate su Yes per attivare le modifiche. Per eliminare un campo dalla tabella ● Selezionate il campo e cliccate su Delete. Personalizzare le tabelle Potete personalizzare le tabelle in modo che solamente alcuni record siano visualizzati attraverso la creazione di un filtro. Potete anche limitare l’accesso a un determinato campo sempre attraverso un filtro di campo, che vi consente di mostrare solo alcuni campi. Filtrare una Tabella Se volete vedere solo alcuni tipi di record, potete impostare un filtro che limita i record mostrati nella finestra di Browse. I filtri sono utili quando volete ad esempio mostrare Per impostare un filtro usate la finestra di dialogo Work Area Properties, disponibile attraverso il comando proprietà nel menu Table. Finestra di dialogo Work Area Properties Per impostare un filtro su una tabella 1. Scorrete la tabella che volete filtrare. 2. Dal menu Table, scegliete Properties. 3. Nella finestra di dialogo della Work Area Properties, inserite l’espressione filtro direttamente nel campo Data filter. ❍ -oppureCliccate sul tasto sotto Data Filter, e nell’ Expression Builder, create una espressione che selezioni il tipo di record che volete vedere e cliccate su OK. Quando scorrerete la tabella, vedrete solo i record che sono selezionati dal filtro. Risultato di un filtraggio di tabella Restringere l’accesso ad un campo Quando desiderate tenere alcuni campi nascosti quando la tabella viene visualizzata o utilizzata in una form, potete impostare un filtro di campo che restringa l’accesso a quei campi. Selezionate i campi che volete mostrare in modo che automaticamente resteranno nascosti tutti gli altri. Per impostare un filtro di campo 1. Da menu Table scegliete Properties. 2. Nella finestra di dialogo Work Area Properties, sotto Allow access to, selezionate Only fields specified by 'field filter' e scegliete Field Filter. 3. Nella finestra di dialogo Field Picker, aggiungete i campi nella colonna Selected fields e scegliete OK. Filtri di campo e suoi effetti sulla finestra Browse Quando scorrerete la tabella, solo i campi che avete selezionato saranno visualizzati. Ordinare i dati attraverso un indice Quando create una tabella, potete ordinare i dati per velocizzare il recupero dei dati utilizzando gli indici. Con gli indici potete velocemente processare i vostri records per la visualizzazione, o per l’interrogazione o la stampa. Potete anche selezionare i record, controllare se vengono inseriti valori duplicati, e mantenere relazioni fra tabelle. Potete utilizzare indici per incrementare la velocità con cui i record sono estratti o ricercati per la visualizzazione o la stampa. Gli indici sono importanti anche per la creazione di relazioni fra tabelle di un database. Gli indici in Visual FoxPro sono come gli indici di un libro: una lista di numeri di pagine che portano il lettore ad una pagina specifica del libro. Nello stesso modo, un indice della tabella è una lista di numeri di record che puntano ad uno specifico record da processare e determinano l’ordine di processo per quel record. Un indice di una tabella immagazzina una lista di puntatori ai records. Per esempio, potete visualizzare un record nella tabella clienti in ordine alfabetico, oppure in ordine di denominazione dell’azienda, prepararlo per la stampa di etichette in ordine di CAP, oppure organizzarli solo per velocizzare la ricerca. Gli indici non cambiano l’ordine con cui sono salvati i dati nella tabella ma solamente l’ordine con cui VFP legge ogni record. Potete creare più di un indice per una tabella, ognuno rappresenterà un modo diverso per processare i vostri records. Gli indici che create sono salvati in un file indice a struttura composta che viene aperto e aggiornato ogni volta che viene utilizzata la tabella. Il nome per il file indice è lo stesso della tabella associata e ha l’estensione .cdx Gli indici sono molto semplici da creare che potreste essere tentati di indicizzare ogni campo, tuttavia, gli indici che vengono utilizzati solo raramente possono ridurre le prestazioni. Creare un Indice Una volta che avete una tabella, potete creare un campo o una espressione. Per usare gli indici con efficienza, create indici su campi che usate con maggiore frequenza nelle tabelle, queries o nei reports. Se impostate un indice in un campo che non è molto utile per l’applicazione di filtri o query, come ad esempio l’indirizzo di casa, potreste rallentare inutilmente le prestazioni del database. Per creare un indice 1. Nel Project Manager, selezionate la tabella a cui volete aggiungere un indice, e scegliete Modify. 2. Nel Table Designer, selezionate la scheda Indexes. La scheda Indexes del Table Designer 3. Nela campo Name, inserite il nome per l’indice. 4. Dalla lista Type, selezionate il tipo di indice. Maggiori informazioni nella sezione seguente, Scegliere una tipologia di indice Nella finestra Expression, inserite il nome del campo con cui volete creare l’ordine. -oppureCostruite una espressione selezionando il tasto in fondo alla finestra in modo da attivare l’ Expression Builder. Maggiori informazioni nella sezione seguente Ordinare attraverso Campi Multipli Se volete selezionare records, immettete una espressione nella finestra Filter oppure selezionate il tasto alla fine della finestra per costruire una espressione.. (Per maggiori informazioni consultate la sezione Filtrare un record) 5. Cliccate su OK. Una volta che avete creato un indice per la tabella, potete utilizzarlo per ordinare i vostri record. Per ordinare i record utilizzando un indice 1. 2. 3. 4. Nel Project Manager, selezionate la tabella con l’indice che avete creato. Selezionate Browse. Dal menu Table, scegliete Properties. Nella finetra Index order, selezionate l’indice che volete utilizzare. 5. Scegliete OK. La tabella apparirà nella finestra di Browse, mostrando i records nell’ordine in base all’indice che avete specificato. Potete anche ordinare il risultato di queries o di reports azionandoli quando è selezionato l’indice Scegliere il tipo di Indice Potete scegliere fra quattro tipi di indici: ● primario (Primary) ● candidato (Candidate ) ● regolare (Regular ) ● unico (Unique ) Gli indici Primary assicurano che solamente valori unici siano inseriti in un campo e determinano l’ordine con cui vengono processati i records. Potete creare solamente un indice primario per ogni tabella se la tabella è inserita in un database. Se la tabella ha già un indice primario potete aggiungere un indice Candidate. Anche gli indici Candidate forzano l’inserimento di valori unici nei campi e determinano in che ordine i records vengono processati, così come i Primary ma è possibile averne più di uno per ogni tabella del database e per le free tables. Gli indici Regular determinano l’ordine in cui i records vengono processati ma consentono anche l’inserimento di valori duplicati. E’ possibile utilizzare più di un indice di tipo Regular in una tabella. Per questioni di compatibilità con le precedenti versioni sono disponibili anche indici di tipo unique che selezionano e ordinano un sottordine di record basati sul primo valore di un campo che specificate. Se volete selezionare record in questo modo è preferibile creare una query o una view. Ordinamento per campi multipli Per aumentare la velocità delle queries o delle views che hanno filtri in più di un campo, potete ordinare i vostri record specificando più di un campo per l’espressione indice. I campi saranno considerati nello stesso ordine con cui appaiono nell’espressione. Se create una espressione filtro utilizzando campi numerici, l’indice ordinerà i records attraverso la somma dei valori dei campi, non solamente quello di un campo. Per ordinare i records utilizzando più di un campo Dal Project Manager, selezionate la tabella a cui volete aggiungere un indice e scegliete Modify. 1) Nella scheda Indexes, inserite il nome e il tipo dell’indice. 2) Nel campo Expression, inserite l’espressione che elenca i campi con cui volete l’ordinamento. Per esempio, poterste volere un ordinamenti per Nazione, CAP all’interno delle nazioni e Ragione Sociale all’interno del codici CAP. Potete utilizzare il segno (+) per creare una espressione indice da un campo carattere. Cliente.nazione + cliente.cap + cliente.ragsociale Fate caso che il campo che cambia di meno è il primo della lista indice. 3) Scegliete OK. Se volete utilizzare campi di tipo diverso, potete convertire i valori dei campi non carattere in valori carattere includendo il campo con la funzione STR( ). Per esempio potete provare a ordinare i record per MassimoImportoOrdine e quindi per RagioneSociale in questo modo ( considerando che MassimoImportoOrdine è di tipo Currency mentre RagioneSociale è di tipo Character) STR(cliente.maximpord,20,4) + cliente.ragsoc Filtrare i record Potete decidere quali records saranno inclusi in un indice aggiungendo una espressione filtro. Per filtrare i records 1. Dal Project Manager, selezionate la tabella a cui volete aggiungere in indice e cliccate su Modify. 2. Nella scheda Indexes, create o selezionate un indice. 3. Nella casella Filter, inserite l’espressione filtro. Per esempio, volendo creare un filtro che selezioni solamente i clienti residenti in Canada: customer.country = "Canada" 4. cliccate su OK. Uso degli Indici Potete aumentare le prestazioni creando e utilizzando gli indici che rispondano a determinate operazioni ricorrenti per esempio, ordinamenti e relazioni fra tabelle, è possibile soddisfare diversi compiti in base al tipo di indice utilizzato. Se volete Usate Organizzare i record per aumentare la velocità di visualizzazione o di interrogazione o di stampa Un indice di tipo regular, candidate, o primary Controllare l’inserimento di valori duplicati e ordinare i records Un indice primary or candidate per tabelle di database e un candicate index per le free table. Ordinare i records Potete ordinare i record in base al nome del campo oppure attraverso un’altra espressione indice. L’indice valuta l’espressione per determinare l’ordine in cui i records andranno organizzati dopodiché salva una lista di puntatori au records per l’esecuzione dell’ordinamento. Per creare un indice per organizzare records 1. Nel Project Manager, selezionate la tabella a cui volete aggiungere un indice e selezionate Modify. 2. Nella scheda Indexes, inserite il nome e tipo di indice. 3. Nella colonna Expression, inserite il nome del campo con cui volete organizzare l’ordinamento. -oppureScrivete l’espressione che volete utilizzare per ordinare i records o costruite una espressione cliccando sul tasto alla fine della finestra per visualizzare l’ Expression Builder. 4. Se volete che i records appaiano in ordine discendente o ascendente, selezionate la freccia alla sinistra del nome dell’indice. 5. Cliccate su OK. Controllare l’inserimento in un campo di valori duplilcati Potreste voler controllare l’inserimento di valori duplicati in un campo, per esempio ogni cliente deve avere un unico valore Codice.Cliente nel campo Codice della tabella Clienti. Un indice può obbligare l’inserimento di un valore unico in un campo Potete utilizzare un campo come campo chiave che identifica il record. Se la tabella è parte del database, si può utilizzare sia un indice Primary che un indice Candidate, se invece la tabella è di tipo Free Table oppure possiede già un indice Primary, dovete utilizzare un indice Candidate. Per creare un indice che forzi l’inserimento di un valore unico in un campo 1. Nel Project Manager, selezionate la tabella a cui volete creare l’indice e selezionate Modify. 2. Nella scheda Indexes, create l’indice. 3. Nella colonna Type, selezionate Primary o Candidate. 4. Cliccate su OK. Lavorare con un database Un database fornisce un ambiente di lavoro dove potete immagazzinare tabelle, stabilire relazioni fra tabelle e inpostare relazioni fra le tabelle e le regole di convalida che controlli come le tabelle relazionate lavorano insieme. Un database viene salvato in un file con l’estensione.dbc Contenuto di un database Potete untilizzare databases indipendentemente oppure incorporandoli in un progetto aggiungendoli al Project Manager. Per accedere alle tabelle di un database, il database deve essere prima aperto. Per aprire un database 1. Dal Project Manager, selezionate il nome di un database che volete utilizzare. 2. Cliccate su Modify. Potete anche scegliere Open dal menu File e quindi sceglire il nome del database. Per visualizzare la struttura di un database di esempio, provate ad aprire Testdata.dbc che si trova nel database Visual Studio …\Samples\Vfp98\Data directory. Quando aprite un database, appare il Database Designer, che vi mostra le tabelle con cui è formato il database e le relazioni fra le tabelle. Tabelle nel Database Designer Tramite la barra pulsanti del Database Designer potete accedere velocemente accedere alle opzioni relative al database. I comandi del Database sono disponibili dal Menu Database, potete avere una scorciatoia ai comandi cliccando col tasto destro del mouse nel Database Designer. Potete ridimensionare le tabelle nel Database Designer in modo da visualizzar più o meno campi e indici contenuti nella tabella, oppure colassare la tabella per visualizzare solamente il nome della tabella che può essere utile se il database contiene molte tabelle. Per espandere o colassare una singola tabella 1. Posizionate il puntatore del mouse nel Database Designer e cliccate col tasto destro del mouse 2. Scegliete Expand oppure Collapse. Per Espandere o colassare tutte le tabelle contemporaneamente 1. Posizionate il puntatore del mouse nel Database Designer cliccate col destro del mouse 2. Scegliete quindi Expand All oppure Collapse All. Vista di tabelle colassate in un database Potete cambiare il modo di visualizzazione delle tabelle di un database, per esempio, dopo aver lavorarto con il database potreste voler riportare le tabelle all’impostazione di partenza oppure migliorarne l’estetica allineandole tutte. Per sistemare le tabelle in un database ● Dal menu Database, scegliete Arrange, e quindi selezionate le opzioni appropriate nella finestra di dialogo Find Table o View. Nel Database Designer, la barra dei titoli della tabella selezionata appare evidenziata. Per Selezionate Impostare le tabelle ordinate in ordine alfabetico By name Sistemate per tipo By type Allineare le tabelle in una riga Horizontally Allineare le tabelle in una colonna Vertically Riportare le tabelle alle dimensioni originali Resize objects to default height and width E’ possibile memorizzare anche commenti ad un database. Per aggiungere una descrizione ad un database Da menu Database, scegliete Properties, e quindi inserite il vostro commento nella finestra di dialogo Comment. Creare un nuovo database Per inserire dati in un database, prima create un nuovo database, dopo aggiungete le tabelle con cui volete lavorare e definite le relazioni fra le tabelle. Potete anche creare delle viste sia a dati locali che remoti attraverso il Database Designer e inserirle nel database. Usare il wizard per costruire i database Potete utilizzare il Database Wizard per aiutarvi a creare un nuovo database. Il wizard fornisce uno schema e formula una serie di domande per aiutarvi a creare un nuovo database impostato in base alle vostre risposte. Per creare un databse utilizzando il wizard 1. 2. 3. 4. Dal Project Manager, selezionate la scheda Data e quindi selezionate Databases. Selezionate New. Selezionate il tasto Database Wizard . Seguite le istruzioni che compaiono nella finestra del wizard. Potete anche accedere al Database Wizard dal menu scegliendo New dal menu File, selezionate Database e selezionate l’opzione Wizard. Il wizard fornisce una maschera ( template ) per le tabelle e le viste, indicim chiavi primarie e relazioni che potete scelgliere e editare. Per creare un nuovo database 1. Nel Project Manager, selezionate Databases. 2. Scegliete New. Quado create un nuovo database, uviene mostrata una finestra del Database Designer vuota insieme ad una barra pulsanti. Un nuovo database nel Database Designer Aggiungere una tabella ad un database Iniziate a costruire il vostro database aggiungendo le tabelle che volete utilizzare. Potete selezionare qualsiasi tabella che non sia attualmente parte di un altro database. Poiché una tabella può appartenere ad un database alla volta, dovete rimuovere una tabella dal database per utilizzarla in un nuovo database. Per aggiungere una tabella ad un database 1. Dal menu Database, scegliete Add Table. 2. Nella finestra di dialogo Open, selezionate tabella e scegliete OK. Potete rimuovere una tabella dal database se non è più necessaria, oppure se vi serve in un altro database. Per rimuovere una tabella dal database 1. Selezionate la tabella. 2. Dal menu Database, scegliete Remove. 3. Nella finestra di dialogo, scegliete Remove. Creare e aggiungere Viste Le viste mostrano i records da una o più tabelle e possono essere utilizzate per aggiornare queste tabelle di origine. Se volete aggiumgere una vista locale al vostro database, potete crearne una dalle viste o dalle tabella attualmente esistenti nel vostro database, oppure dalle tabelle libere al di fuori del vostro database. Se le informazioni di cui necessitate si trovano su una sorgente remota, potete creare una vista remota e incorporarla nel vostro database locale. Poiché le viste esistono esclusivamente all’interno di un contesto, dovete creare le viste all’interno del database allo scopo di poterle incorporare. Cercare una tabella o una vista in un database Se il vostro database contiene molte tabelle e molte viste, potreste voler localizzare velocemente una tabella specifica. Potete utilizzare allo scopo il comando find per evidenziare la tabella o la vista coin cui volete lavorare. Per trovare una tabella in un database ● Dal menu Database, scegliete Find Object, e quindi selezionate la tabella che volete ricercare nella finestra di dialogo Find Table or View. Se volete mostrare solamente le tabelle o solamente alcune viste, potete scegliere di mostrare solamente alcune viste o tabelle. Per mostrare solamente le tabelle o le viste ● Dal menu Database, scegliete Properties, e quindi selezionate le apposite opzioni di visualizzazione nella finestra di dialogo Database Properties. Relazionare le tabelle Il Database Designer rende molto semplice la procedura per creare relazioni tra le varie tabelle collegando i loro indici. La relazioni che create in un database si chiamano Relazioni Persistenti, perché vengono salvate come parte del database. Ogni volta che utilizzate una tabella nel Query or View Designers, o nel Data Environment Designer quando create un modulo, queste relazioni persistenti appaiono come collegamenti o unioni fra le tabelle. Impostare le Relazioni Prima che possiate creare delle relazioni fra le tabelle, le tabelle che volete creare devono avere alcuni campi e indici in comune. I campi sono chiamati primari o esterni, i campi primari identificano un record specifico all’interno del database. Dovete anche aggiungere un indice primario ad un campo chiave primario e un regular index ad un campo chiave estraneo Indici per supportare una relazione tra due tabelle. Per determinare quali tabelle hanno bisogno di campi, pensate come il vostro dato sia in relazione con un gruppo di record. Per esempio, un cliente può avere molti ordini. Cos’ la tabella dei clienti contiene il record principale. E le altre tabelle hanno i record in relazione. Per preparare la tabella principale per le relazioni alla tabella contenente i record correlati, dovete aggiungere in campo chiave primario nella tabella principale, che nel nostro esempio è Clienti. Voi siete a conoscenza di questo perché la tabella clienti conterrà un record per molti record relazionati nella tabella degli ordini. Per fornire un campo comune fra le due tabelle dovete aggiungere un campo chiave esterno alla tabella con i campi relazionati che nel nostro esempio è la tabella ordini. Il campo esterno deve combaciare il campo primario con lo stesso tipo di dati e solitamente lo stesso nome del campo chiave primario. Come preparare le relazioni 1. Determinare quale tabella ha i record principali e quali ha i record relativi (in relazione) 2. Nella tabella con i record principali, aggiungete un campo intero, quindi aggiungete l’indice sul nuovo campo. 3. Nella tabella con i campi in relazione, aggiungete un campo che corrisponda al campo primario dell’altra tabella, quiindi aggiungete un indice regolare su quel nuovo campo. Nota Utilizzate la stessa espressione per entrambi gli indici. Per esempio, se utilizzate una funzione nell’espressione nel campo primario, dovete aggiungere la stessa funzione nell’espressione nel campo chiave esterno aggiunto nell’altra tabella. Creare e revisionare relazioni Con i campi chiave e gli indici definiti, potete creare ora le relazioni. Se le vostre tabelle non sono ancora indicizzate, dovete aprirle nel Table Designer e aggiungervi gli indici. Creare una relazione fra tabelle ● ● Trascinate dall’indice di una tabella sull’indice corrispondente dell’altra. Una volta che definite la relazione, vedrete una linea che connette le due tabelle nel Database Designer. Nota Potete vedere le linee delle relazioni solamente se l’opzione relazioni della finestra di dialogo del Database Properties è selezionata. Potete accedere alle finestra di dialogo delle proprietà del database scegliendo proprietà dal menu scorciatoia nel Database Designer. Linee che mostrano le relazioni fra due tabelle. Potete anche modificare le relazioni. Per modificare una relazione fra tabelle ● Fate doppio click sulla linea della relazione fra le tabelle. E quindi selezionate le opzioni appropriate nella finestra di dialogo di Edit Relationship. Finestra di dialogo di Edit Relationship La tipologia di relazione è determinata dal tipo di indice utilizzato nella tabella figlia. Per esempio, se l’indice nella tabella figlia è primario oppure un indice candidato, la relazione è uno a uno, altrimenti ( per indici unici e regular ) è una relazione uno a molti. Definire la visualizzazione di un campo Quando aggiungfete delle tabelle ad un database, potete trarre immediatamente vantaggio dalle opzioni addizionali diversamente non disponibili nelle tabelle libere. Queste proprietà vengono salvate come parte del database stesso e restano con la tabella solamente fintantochè la tabella resta nel database. Uitilizzando le proprietà dei campi in un database, è possibile: ● Assegnare delle intestazioni ai campi. ● Inserire commenti circa lo scopo del campo. ● Impostare il valore di default per i campi. ● Impostare una maschera di inserimento e visualizzare il formato di un campo. ● Impostare una classe di controllo e una libreria per il campo. ● Impostare delle regole di convalida per restringere il tipo di dati inseribili in quel campo. La sezione seguente descrive alcune di queste proprietà. Impostare l’intestazione di un campo Potete visualizzare delle etichette descrittive per i campi che visualizzate nella finestra Browse o nei moduli (form) utilizzando la proprietà captions. Per assegnare una intestazione ad un campo 1. 2. 3. 4. Selezionate la tabella nel Database Designer e scegliete Modify. Selezionate il campo a cui volete aggiungere una intestazione. Nella casella Caption, inserite l’intestazione che volete visualizzate. Scegliete OK. Per esempio, se il nome del campo è Cust_ID, potete aggiungere una instestazione come: "Customer ID" al campo. Ogni volta che scorrerete la tabella, utilizzerete il campo in una query o in una vista, oppure aggiungerete il campo ad un modulo, vedrete l’intestazione al posto del nome come etichetta del campo. Nome di colonna utilizzando le instestazioni Inserire commenti per un campo Quando definite la struttura di una tabella, potreste voler inserire una nota di commento per ricordare cosa rappresenta il campo della tabella. Potete inserire commenti in ogni campo inserendo un messaggio nella casella Field Comment del Table Designer. Per chiarire lo scopo di un campo. Aggiungere un commento ad un campo 1. Nel Table Designer, selezionate il campo. 2. Nella casella Field Comment, inserite il vostro commento. Scegliete quindi OK. Controllare l’inserimento in un campo Potete facilitare l’inserimento dei dati nei campi fornendo valori di default e definando regole di convalida per i dati che devono essere imputati. Impostare i valori di default di un campo Se volete avere un determinato valore inserito automaticamente in un campo ogni volta che create un record, potete impostare un valore di default per quel campo utilizzando le proprietà del campo nel Table Designer. Per esempio, se la maggior parte delle vostre vendite provengono da una regione, potreste voler impostare questa regione come valore di default per quel campo. Definire il valore di default di un campo 1. Nel Database Designer, selezionate la tabella. 2. Dal menu Database, scegliete Modify. 3. Nel Table Designer, selezionate il campo a cui volete aggiunegere il valore di default. 4. Nella casella Default value, inserite il valore di default che volete visualizzare in ogni nuovo record (incluso campi carattere fra virgolette). 5. Scegliete OK. Ad esempio se volete che in ogni record nella tabella prodotti contenga il " riordinare a" 15 pezzi. Impostare un valore di default per un campo Impostare una regola di convalida e un testo di convalida Definendo una regola di convalida quando definiamo una struttura della tabella, potete controllare il tipo di inserimento che può essere eseguito in quel campo. Per esempio potete restringere le possibilità accettabili per l’inserimento di una lista di provincie, aprire numeri di acquisto, validi numeri di ID, ecc. ecc. Impostare regole di convalida e testi di convalida per un campo. Aprite una tabella nel Table Designer. 1. Nel Table Designer, selezionate il nome di un campo a cui volete definire una regola. 2. Scegliete il bottone di dialogo a fianco alla casella Rule. 3. Nell’ Expression Builder, definite una espresisone di convalida e cliccate su OK. 4. Nella casella Message, inserite il testo da visualizzare in caso di errore fra virgolette. 5. Cliccate su OK. Per esempio, provate a creare un semplice tabella di indirizzi e restringete l’inserimento dei dati nel campo Nazione a "UK" o "USA." Customer.country = "UK" OR Customer.country = "USA" Potete anche specificare il messaggio da visualizzare se non viene rispettata la regola di convalida. Per esempio potreste visualizzare il messaggio: "La nazione deve essere USA o UK. Per favore reinserire il dato." Quando create una regola di convalida, dovete creare un’espresione valida di Visual FoxPro che tiene conto della lunghezza del campo, che un campo può essere anche vuoto oppure contenere il valore desiderato ecc. ecc. L’espressione può contenere funzioni se le funzioni esprimono da vero a falsa. Ad esempio assumendo che stiate utilizzando la tabella Cliente della directory di Visual Studio …\Samples\Vfp98\Data, e volete essere sicuri che ogni nuovo codice ID cliente sia inferiore di 6 carattere di lunghezza, nella casella Validation Rule del campo Cust_ID, potete inserire: LEN(ALLTRIM(CUST_ID)) < 6 Quindi, nella casella Validation Text, potreste inserire il messaggio di errore: "IL codice cliente ID deve essere inferiore a 6 caratteri. Per cortesia reinseriscilo." Se tentate di inserire un codice cliente ID troppo lungo, il testo di convalida apparirà nella finestra di dialogo. Testo di convalida appare quando vengono inseriti dati errati. Controllare l’inserimento dei dati in un record Così come potete assegnare delle proprietò ad un database ad una singolo campo all’interno di una tabella, potete definire proprietà che vengono applicate all’intera tabella. Potete accedere alle proprietà dalla sceda Tabella del Table Designer. Impostare una regola di convalida per una tabella Se volete che due o più campi siano confrontati, o soddisfino determinate condizioni nel momento che i record vengono inserite nella tabella, potete impostare una regola di convalida per la tabella. Per impostare una regola di convalida 1. Selezionate la tabella e scegliete Modify. 2. Nel Table Designer, scegliete la scheda Table. 3. Nella casella Rule, inserite una espressione valida di Visual FoxPro che definisca la regola. Selezionate il tasto per utilizzare l’ Expression Builder. 4. Nella finestra di dialogo Message, inserite il messaggio che deve apparire se la regola non viene rispettata. 5. Cliccate su OK. 6. In the Table Designer, choose OK. Ad esempio, assumendo che stiate utilizzando la tabella Clienti disponibile nel database di esempio in Visual Studio nella directory …\Samples\Vfp98\Data, e che non desideriate ordini dei clienti di Washington eccedenti i $ 10.000 dollari. Potete forzare questa regola scrivendo la seguente espressione nella casella Validation Rule della scheda Tabella: IIF(Customer.region = "WA" and Customer.maxordamt > 10000, .F.,.T.) Il messaggio di avvertimento potrebbe essere il seguente: "Gli ordini da Washington non possono superare i $10,000" Inserimento rifiutato da una violazione di regola. Impostare un Trigger I Triggers sono espressioni che si attivano ogni volta che quando vengono inseriti, cancellati o aggiornati dati in una tabella. Di solito per creare trigger bisogna creare dei programmi o delle procedure che si attivano quando la tabella viene modificata. Gestire dati in un database Dopo aver impostato delle relazioni, potete anche impostare regole per la gestione dei dati relativi nel vostro database. Le regole governano l’integrità referenziale. Per esempio se aggiungete il record di un fornitore, potreste volere aggiungere informazioni circa i prodotti forniti alla tabella prodotti. Per aiutarvi ad impostare le regole per controllare come vengono inseriti, aggiornati, o cancellati i record nelle tabelle relazionate, potete utilizzare il costruttore (builder) dell’integrità referenziale. Tasto dell’integritaà referenziale nella finestra di dialogo Edit Relationship Per utilizzare il Referential Integrity Builder 1. Nel Database Designer, create una relazione tra due tabelle, oppure fate un doppio click sulla linea della realazione. 2. Nella finestra Edit Relationship, scegliete il tasto Referential Integrity. 3. Nel Referential Integrity Builder, selezionate la regola che volete far rispettare per l’aggiornamento, la cancellazione o l’inserimento dei records. 4. Scegliete OK, e quindi Yes per salvare le modifiche, generate il codice RI, e uscite dal builder. Creare una Query Potreste voler creare delle queries per varie ragioni: organizzare informazioni per una stampa, rispondere ad una veloce interrogazione, oppure esaminare un rilevante sottoinsieme di dati. Qualunque sia lo scopo, il processo di base è lo stesso. Utilizzando il Query Designer, selezionate la tabella o la vista da cui volete prelevare le informazioni, specificate i criteri con cui estrarre i records dalla tabella o dalla vista, e indirizzate i risultati della vostra query al tipo di uscita dei dati che desiderate, come ad esempio una finestra di visualizzazione, una stampa, una etichetta, e così via. Quando avete creato una query che volete mantenere, potete salvarla assegnandole un nome. Le queries sono salvate con l’estensione .qrp IL processo di progettazione di una query Dopo aver deciso di quale informazione avete bisogno di ricercare, e in quale tabella o vista sono inmagazzinate, dovrete seguire i seguenti passi per creare le queries: 1. Iniziate a creare la query con il query wizard del Query Designer 2. Selezionate la tabella o la vista che contiene le informazioni che volete ricuperare. 3. Definite i risultati della query scegliendo quali campi volete, l’ordine in cui volete appaiano, e quali record desiderate. 4. Organizzate i risultati attraverso l’ordinamento e il raggruppamento delle righe nel risultato. 5. Scegliete il tipo di emissione di dati per la query: Tabella, stampa, visualizzazione, ecc. 6. Run and verify the query. Uso del Query Wizard Se volete aiuto per creare una query velocemente, utilizzate quello fornito dal Visual FoxPro query wizards. Il query wizard vi porrà delle domande: da quale tabella o vista volete prelevare le informazioni, e imposterà una query in base alle risposte che fornirete alla serie di domande. Per ottenere più informazioni circa il query wizard, premete F1 per ottenere l’help mentre state utilizzando il query wizard. Per creare una query con il wizard 1. 2. 3. 4. 5. Nel Project Manager, selezionate la scheda Data e selezionate Queries. Selezionate New. Cliccate su tasto Query Wizard. Selezionate il tipo di query che volete creare. Seguite le istruzioni sulle finestre del wizard. Potete anche selezionare il Wizards dal menu Tools. Avvio del Query Designer Se non volete utilizzare il query wizard,potete utilizzare il Query Designer per creare la vostra query. Potete avviare il Query Designer dal Project Manager o dal menu File. Per avviare il Query Designer 1. 2. 3. 4. Nel Project Manager, selezionate la scheda Data. Selezionate Queries. Scegliete New. Scegliete New Query. Potete anche avviare il Query Designer scegliendo New dal menu File, selezionando l’opzione Query, e selezionando New File. Quando create una nuova query, vi verrà chiesto di selezionare la tabella o la vista da cui prelevare le informazioni dal database corrente. Selezionare una tabella o la query Dopo aver selezionato una tabella o una vista, Visual FoxPro mostra la finestra Query Designer. La finestra Query Designer Potete facilmente cambiare la tabella o la vista selezionata. Per utilizzare una tabella o una vista differente 1. Selezionate la tabella corrente e cliccate sul tasto Remove Table nella tastiera del Query Designer. Dalla tastiera del Query Designer, selezionate il tasto Add, quindi selezionate la tabella o la vista che desiderate. Definire i risultati Dopo che avete aerto il Query Designer e selezionato la tabella o la vista che contiene le informazioni che desiderate, potete definire i risultati. Almeno avrete bisogno di definire i campi che desiderate. Potete anche definire i risultati inpostando l’ordine in cui devono apparire i campi selezionati e definendo un filtro per definire quali records devono apparire. Selezionate i campi che volete Prima che possiate lanciare la query, dovete selezionare qualche campo da includere nel risultato. In alcuni casi, potreste volere tutti i campi della tabella o della vista. In altri casi potreste voler concentrare la query solo su alcuni campi selezionati, come ad esempio i campi che volete includere nella stampa. Assicuratevi di includere ogni campo che volete utilizzare per selezionare o raggruppare nel risultato della vostra query, Quando selezionate i campi potete anche definire l’ordine con cui dovranno apparire in uscita. Utilizzate la scheda Field nel pannello inferiore del Query Designer per selezionare i campi che volete includere nel risultato della vostra query. La scheda Fields nel Query Designer Per aggiungere un campo nel uscida dei dati di una query ❍ Selezionate il nome di un campo e scegliete Add. ❍ -oppureTrascinate il nome del campo nella cella Selected fields. Selezionare tutti i campo per l’uscita Potete anche selezionare tutti i campi attraverso il nome oppure utilizzando l’asterisco come carattere jolly ( valido quindi per qualsiasi caso ). Se selezionate i campi attraverso il nome, l’esatto nome è incluso nella query. Se lanciate la query dopo che avete inserito un nuovo campo nella tabella esso non sarà incluso nei risultati della query. Se utilizzate il carattere jolly ( asterisco ) l’asterisco viene incluso nella query e tutti i campi presrenti nella tabella nel momento in cui viene eseguita la query saranno disponibili nei risultati. Per aggiungere tutti i campi disponibili in un colpo solo ❍ Scegliete Add All per aggiungere i campi attraverso il nome. -oppure- ❍ Trascinate l’asterisco in cima alla tabella nella casella Selected fields. Mostrare un Alias ( pseudonimo ) per un campo Potete rendere i risultati della vostra query maggiormente comprensibili aggiungendo un titolo descrittivo al campo presente nei risultati. Ad esempio, potreste mostrare la parola "SumMaxOrd" in cima alla colonna dei risultati al postoi del nome o dell’espressione, SUM(MaxOrdAmount). Per aggiungere un alias 1. Nella cella Functions and expressions, inserite il nome del campo, e scrivete AS e il nome pseudonimo come nell’esempio: SUM(maxorderamt) AS SumMaxOrd 1. Scegliete Add per inserire il campo con l’alias nella cella Selected fields. Impostare l’ordine dei campi in uscita L’ordine con cui i campi appaiono nella scheda Fields determina l’ordine delle colonne o delle informazioni nel risultato della query. Impostare l’ordine delle colonne nel risultato in uscita ● Trascinate la cella di movimento, posizionata a sinistra del nome del campo, su o giù. Se volete modificare l’ordine con cui vengono mostrate le righe contenenti le informazioni, utilizzate invece la scheda Order By tab. Selezionare i records desiderati Selezionando i records che volete trovare è il passo chiave che determina i risultati della vostra query. Attraverso la scheda Filter Tab nel Query Designer, potete formulare la condizione WHERE di una dichiarazione per dire a Visual FoxPro quali records cercare per il ricupero. Potreste voler trovare una serie specifica di dati da includere in una stampa o in altri tipi di risultati d’uscita: per esempio tutti i clienti con sopesi, tutti i clienti di una specifica regione o codici postali, e così via. Per vedere solo i records che volete, inserite un valore o raggio d’azione per confrontare di nuovo i records. In Visual FoxPro, usate la scheda Filter tab per specificare i campi che volete utilizzare per i records selezionati, scegliete i criteri di confronto, e inserite un valore di riferimento con cui volete confrontare i campi. Definire i criteri dei risultati di una query Per specificare un filtro 1. Dalla lista Field Name, scegliete un campo da utilizzare come base per la selezione dei records. Nota Non potete utilizzare i campi General o Memo nei filtri. 2. Dalla lista Criteria, scegliete il tipo di comparazione da utilizzare. 3. Inserite il criterio comparativo nella cella Example. ● Utilizzate i segni virgolette solo se la stringa è uguale al nome di un campo nella tabella della query; altrimenti, non racchiudete le stringhe carattere fra le virgolette. ● Se utilizzate le date, non racchiudetele fra graffe Mettete i punti prima e dopo la lettera logica (.T.). ● Se inserite un nome di campo di una tabelle in una query, Visual FoxPro lo riconoscerà come campo. 1. Se volete ignorare le maiuscole nella ricerca dei dati carattere, selezionate il tasto Case. ● Se volete rovesciare il significato di un operatore logico, selezionate il tasto Not. Per esempio, se volete selewzionare i clienti di tutte le regioni eccetto Washington, utilizzate l’espressione di selezione nel seguente modo: Customer.region Not Like WA Per migliorare la ricerca, potete aggiungere più filtri nella scheda Filtri. To further tune your search, you can add more filters in the Filter tab. Se state utilizzando più di una tabella o vista nella vostra query, potete espandere i records che selezionate attraverso il tipo di join (unioni) che scegliete. Organizzare i risultati Una volta definiti il tipo di risultati, potete definire il modo in cui li volete organizzati ordinandoli o raggruppandoli. Se volete anche applicare un filtro sui dati in uscita risultanti dalla query. Ordirare il risultato di una query L’ordinamento , determina il modo in cui i records o le righe di dati vengonoo estratti quando appaiono nel risultato dell’applicazione della query. Ad esempio, potete ordinare i record in base alla provincia e quindi in base alla citta, oppure organizzandoli in ordine ascendente di saldi contanili insoluti. Utilizzate la scheda Order By per impostare l’ordine della vostra query. L’ordinamento determina in che modo vengono mostrati i record nel risultato della query. Innanzi tutto selezionate i campi che volete usare dalla finestra Selected Fields e spostateli nella finestra Ordering Criteria. Quindi sistemate i campi nell’ordine in cui desiderate appaia il risultato della query. Per impostare il criterio do ordinamento 1. Nella finestra Selected fields, selezionate il nome del campo. 2. Selezionate Add. Per imuovere un criterio di ordinamento 1. Selezionate uno o più campi che desiderate rimuovere. 2. Scegliete Remove. L’ordine in cuii appaiono i campi nella finestra Ordering Criteria determina l’ordine di importanza quando viene organizzato il risultato di una query. Il primo campo determina l’ordinamento principale. Per esempio, se il primo campo nella finestra Ordering Criteria è Cliente.regione e il secondo campo è Cliente.città il risultato srà ordinato prima per Cliente.regione, se più di un cliente abita nella medesima regione verrà applicato il secondo criterio Cliente.città. Impostare l’ordine mediante la scheda Order By Per aggiungere l’importanza di un ordinamento in base ai campi. Utilizzare il tasto a sinistra del campo e trascinatelo nella posizione desiderata nella finestra Ordering criteria. Potete ordinare i dati in ordine ascendente e discendente impostando il tasto nell’area opzioni ordinamento ( Order option ). Ogni campo ordinamento appare nella finestra Output Field nella scheda Filter con una freccia rivolta verso l’alto o verso il basso che indica se l’ordinamento deve essere fatto in senso ascendente o discendente. Raggruppare il risultato di una query Il raggruppamento fonde o raccoglie record simili in un record in modo da consentire calcoli basati su gruppi di record. Ad esempio, potreste voler trovare la somma di tutti gli di una regione specifica. Al posto di controllare tutti i records singolarmente, potete raggruppare tutti i records di una stessa regione in un solo record, e ottenere la somma di tutti gli ordini di quella regione. Per controllare il modo con cui i records vengono raggruppati, utilizzate la scheda Grup By Query Designer. To control how records are grouped, use the Group By tab in the Query Designer. Il raggruppamento è molto più utile quando viene utilizzata in unione con la funzione di somma come SUM, COUNT, AVG e così via. Ad esempio, supponiamo di volere il totale degli importi di ogni codice cliente nella tabella clienti. Avete bisogno di raggruppare tutti i records degli ordini per ogni codice cliente in un solo record, e quindi trovare la somma totale degli ordini. Prima di tutto dovete usare la scheda Fields per aggiungere l’espressione SUM(Ordini.ordine_netto) al risultato della query, quindi raggruppate i risultati in base al codice cliente. Il risultato mostra il totale netto degli ordini di ogni cliente. Impostare le opzioni di Group By Per impostare le opzioni di raggruppamento 1. Nella scheda Fields, inserite l’espressione nella cella Functions and expressions. -oppureCliccate sul tasto Expression Builder per inserire una espressione nella cella Functions and expressions. 2. Cliccate il tasto Add per inserire l’esspressione nella finestra Selected fields. 3. Nella scheda Group By, aggiungete l’espressione di raggruppamento. Si può inoltre applicare un filtro ai risultati di un raggruppamento. Selezionare i gruppi desiderati Per impostare un filtro si una raggruppamento o una fusione di records piuttosto che su ogni singolo records, scegliete dalla scheda Group By l’opzione Having. Potete usare il nome di un campo, una funzione di raggruppamento, oppure un’altra espressione nella cella Field Name. Segueno l’esempio precedente, si può utilizzare la query che mostra il totale delle vendite per codice cliente, quindi usando il tasto Having restringere il risultato a clienti che hanno più di $50.000 dollari di ordine netto. Impostare il criterio di un gruppo Per impostare l’opzione Having su un gruppo 1. Nella scheda Group By, scegliete Having. 2. Nella finestra di dialogo Having, selezionate una funzione e un nome di campo nel campo Field Name. 3. Cliccate su OK. Applicare le query Quando avete terminato la progettazione della vostra query, potete applicare la query attraverso il tasto Run. Visual FoxPro esegue le espressioni SQL che avete costruito con il Query Designer, e produce il risultato sulla Finestra Browser. Per applicare una query Nel Project Manager, selezionate il nome della query, quindi scegliete Run. Se desiderate che il risultato venga rappresentato in un'altra destinazione, potete redirigere il risultato su un modulo, tabella, stampa, o altra destinazione. Se desiderate conoscere come è scritta l’istruzione SQL potete visualizzarla. Redirigere il risultato delle query Potete inviare il risultato della query a diverse destinazioni. Se non avete selezionato la destinazione questa sarà una finestra di Browser. Quando scegliete una Query Destination nel Query menu, oppure scegliete il tasto Query Destination sulla Query toolbar, verrà mostrata una finestra di dialogo Destination, dove potete scegliere in che modo mostrare i risultati. Per scegliere la destinazione di una query 1. Dalla barra dei pulsanti del Query Designer, scegliete Query Destination. 2. Nella finestra di dialogo Query Destination, scegliete la destinazione del risultato, e compilate ogni campo addizionale per come richiesto. Scegliere una destinazione per una query Utilizzate questa tabella per scegliere la destinazione dei risultati di una query. Se desiderate Scegliete questa opzione Mostrare il risultati di una query in una finestra di scorrimento Browse Salvare il risultato di una query in una tabella temporanea di sola lettura Cursor Salvare i risultati di una query in una tabella assegnandole un nome Table Rendere il risultato disponibile per l’utilizza con Microsoft Graph, una applicazione separata acclusa Visual FoxPro Graph Mostrare i risultati di una query nella finestra principale di Visual FoxPro, o nella finestra attiva Screen Inviare alla stampa report (.frx) Report Inviare il risultato su una etichetta (.lbx) Label Molte di queste opzioni hanno delle ulteriori possibilità che modificano i risultati. Ad esempio, le opzioni di stampa report consentono di aprire un la stampa su un file consentendo la modifica prima ancora della stampa vera, oppure potete utilizzare il wizard per la configurazione della stampa. Verifica della query Se desiderate essere certi che la query sia definita propriamente, potete visualizzare l’istruzione SQL costruita dal Query Designer. Inoltre, potete aggiungere commenti alle query che ne descrivano lo scopo. I commenti delle query appaiono nella finestra di SQL. Visualizzare le istruzioni SQL In qualsiasi momento della fase di creazione delle vostre query, potete visualizzare l’istruzione SQL che si sta generando mediante il View SQL del menu Query, oppure cliccando sul tasto SQL della barra dei pulsanti. Una finestra di sola lettura mostra l’espressione SQL. Potete copiare il testo della finestra e passarlo nella finestra di Comando oppure incorporarla in un programma. Per vedere l’espressione SQL della query ❍ Nella barra pulsanti del Query Designer, scegliete il tasto SQL. L’espressione SQL di una query Aggiungere un commento ad una query Se volete identificare le vostre query in qualche modo, oppure aggiungere un commento alle vostre query in modo da potervi ricordare lo scopo per futuri riferimenti. Per aggiungere un commento in una query 1. Dal menu Query, scegliete Comments. 2. Nella finestra Comment, inserite le note che desiderate. 3. scegliete OK. Aggiungere un commento alle query I commenti che inserite appaiono in alto nella finestra SQL, preceduto da un asterisco. Personalizzazione delle queries Altre opzioni disponibili con il Query Designer rendono semplici future personalizzazioni. Potete utilizzare filtri per espandere o restringere le vostre ricerche. Potete anche aggiungere espressioni per effettuare calcoli o funzioni sui dati dei campi. Perfezionare la ricerca Potreste aver la necessità di aver maggior controllo sui risultati di una query, ad esempio. Potreste voler cercare records che soddisfino più di un criterio, come clienti di una provincia che hanno saldi passivi maggiori di 1000 dollari. Oppure, potreste aver necessità di ricuperare record che soddisfino sia un criterio che anche un altro: clienti di Washington o della California. In entrambi i casi dovete inserire più espressioni nella scheda Filter. In Visual FoxPro, le espressioni sono automaticamente combinate con l’operatore logico AND quando ne inserite più di una su altre righe della scheda Filter. Se dovete ricercare dati che soddisfino due o più condizioni alternative, dovete inserire l’operatore logico OR fra le varie righe con il tasto Add Or. Restringere la ricerca Se volete che la query estragga solamente i records che soddisfino uno o più criteri, elencate i criteri su righe separate nella scheda Filter. I criteri vengono combinati automaticamente con l’operatore AND, così solo i dati che soddisfano entrambi i criteri sono estratti. Ad esempio, supponiamo che stiate facendo delle ricerche in una tabella di impiegati e desideriate tutti gli Agenti Rappresentanti del Regno Unito. Dovete inserire le due condizioni su due linee separate: Combinazione di due filtri Per impostare la condizione AND ● Inserite il filtro nella scheda filtri Filter, scegliete AND nella colonna Logical. Espandere la ricerca Se desiderate che la query estragga i records che soddisfino una qualsiasi delle condizioni imposte le dovete combinare con l’operatore logico OR. Per esempio potreste voler ricercare tutti i clienti che vivono in California e nello stato di Washington: Aggiungere un OR fra due filtri Per impostare una condizione OR ● Selezionate il filtro e quindi scegliete OR nella colonna Logical. Combinare le condizioni di ricerca Potete anche combinare le condizioni And e Or per estrarre dei records specifici dalle tabelle. Combinare filtri diversi Eliminare i records duplicati da una query I record duplicati sono records in cui ogni campo del risultato combacia. Se desiderate rimuovere i record duplicati dal risultato di una query selezionate nella scheda Miscellaneus l'’pzione No Duplicates. Altrimenti, assicuratevi che l’opzione No Duplicates non sia selezionata. Nota Se è selezionata l’opzione No Duplicates, la parola DISTINCT precede i campi nella parte riferita a Select del comando Select. Estrarre una certa percentuale di dati nei primi records Potete specificare quanti o in che percentuale di records con il valore più alto o più basso di un certo campo devono essere restituiti dalla query. Ad esempio potete richiedere che la query vi mostri i records con i 10 maggiori o minori valori in un dato campo. Utilizzando l’impostazione Top della scheda Miscellaneus, potete impostare un numero di percentuale di records che volete visualizzare. Per impostare la parte più alta o la parte più bassa, impostate l’ordine con cui devono essere estratti i records in modo che siano mostrati in ordine ascendente per vedere i più alti o in ordine discendenti per vedere i più bassi. Per estrarre una certa percentuale dei primi records 1. Nella scheda Order By, selezionate il campo da cui volete prelevare i valori più alti, quindi scegliete Descending allo scopo di vedere questi valori oppure Ascending per vedere quelli più bassi. Se dovete impostare l’ordinamento anche su altri campi, sistemateli il secondo criterio dopo quello precedente, 2. Nella scheda Miscellaneous, inserite la percentuale di dati che volete estrarre nella cella Number of records. Per vedere la percentuale selezionate Percent. 3. Se non volete records duplicati, selezionate No duplicates. Aggiungere una espressione ad una Query Potete creare delle query molto più flessibili e potenti se incorporate delle espressioni Aggiungere una espressione al risultato di una query Potete anche includere funzioni e espressioni nel risultato di una query, utilizzando la cella alla fine della scheda Fields. Se volete, potete anche assegnare un nome al campo che ospita l’espressione, assegnandogli un alias Ad esempio potreste voler includere nel risultato di una query la somma di tutti gli ordini in un campo con l’alias Totale: SUM(orders.order_amt) AS Total Creare una espressione da includere nel risultato di una query Potete inserire l’espressione direttamente nella cella oppure utilizzare l’Espression Buider della scheda Fields Per aggiungere una espressione al risultato di una query 1. Nella scheda Fields, inserite l’espressione nella cella Functions and Expressions. -oppureScegliete il tasto Expression Builder e inserite l’espressione nella cella Functions and expressions. 2. Cliccate sul tasto Add per inserire l’espressione nella cella Selected fields. Nota Valori nulli vengono ignorati nei calcoli. Eseguire un filtro con una espressione Al posto di ricercare semplicamente un records che corrisponda a un o più campi, potete utilizzare una espressione che combini due campi, o esegua dei calcoli basati su un campo e quindi ricercare altri campi che combacino con i campi combinati o calcolati. Potete inserire l’espressione direttamente nella cella Example. Se desiderate aiuto, potete utilizzare l’Expression Builder, che è disponibile tramite il tasto vicino alla cella Expressions and Functions della scheda Fields. Ad esempio, nella scheda ordini, potreste controllare il totale sconto di un cliente combinando il totale ordini e lo sconto applicato in questo modo: Orders.order_amt * Orders.order_dsc Creare una espressione mediante l’ Expression Builder Pianificare la stesura del proprio modulo E' possibile impostare il proprio modulo in modo da visualizzare i dati in svariate modalità sulla pagina stampata. utilizzando Report Designer o l'autocomposizione del modulo. La progettazione di un modulo si compone di quattro passi principali: 1. 2. 3. 4. Determinare il tipo di modulo da creare. Creare un file di modello per l'impagianzione del modulo. Personalizzare il modello a seconda delle esigenze. Visualizzare un'anteprima del modulo e, quindi, procedere alla stampa. Il processo di creazione del modulo Stabilire il formato di base Prima di creare un modulo è necessario decidere il formato di base che si desidera attribuire al modulo. Il proprio modulo puo' essere semplice quanto una lista di numeri telefonici basata su un'unica tabella o, di contro, complesso come un fattura basata su tabelle molteplici. E' inoltre possibile creare delle tipologie speciali; ad esempio un modulo di etichette per buste (mailing label) potrà avere un'impaginazione specifico per un determinato tipo di carta. Formati generici di un modulo Come aiuto nella scelta di un formato di base, seguono le descrizioni delle tipologie più comuni, del loro utilizzo ed alcuni esempi. Formato Descrizione Esempi Per colonne Un record per riga con i campi disposti orizzontalmente lungo la pagina Riepilogo dei totali Moduli finanziari Inventari Resoconti di vendita Per righe Una colonna di record con i campi disposti verticalmente Liste Uno-a-molti Relazioni uno-a-molti Fatture Account statements Multi-colonna Più di una colonna di record con i campi disposti verticalmente e allineati a sinistra Cartelle telefoniche Business cards Più di una colonna di record con i campi disposti verticalmente e allineati a sinistra , predisposto per la stampa su un tipo particolare di carta Etichette per buste postali Etichette Biglietti da visita Dopo aver scelto il formato di base che più risponde alle proprie esigenze, è possibile procedere alla creazione del file contenente il modello di impaginazione con "Report Designer." I file modello per il modulo Ad un file di modello viene attribuita l'estensione .frx; in questo file vengono memorizzate le specifiche per il modulo da creare. Ad ognuno di questi file ne è associato un altro con l'estensione .frt. In questo file sono specificati i campi da comprendere nel modulo, il testo da stampare e la disposizione delle informazioni all'interno della pagina. Il file non memorizza i valori di ciascun campo di dati ma solamente il formato e la disposizione generale; è quindi possibile modificare i valori all'interno del database sorgendo mantenendo invariata la struttura della pagina di stampa. Creare un formato per il modulo Visual FoxPro consente la creazione di un formato-modulo in tre modi differenti: ● ● ● Utilizzando un "Report Wizard": è possibile creare un modulo basato su una o più tabelle Utilizzando "Quick Report": è possibile creare un modulo basato su una singola tabella. Utilizzando "Report Designer" per modificare un modulo esistente o per crearne uno ex-novo. Attraverso ognuno di questi metodi viene creato un file di modello modificabile con "Report Designer". L'uso dei "Report Wizard" costituisce il modo più facile per iniziare ed mette inoltre a disposizione molte delle caratteristiche di personalizzazione proprie di "Report Designer". Utilizzare "Quick Report" è invece il modo più veloce per creare un semplice modulo Se si sceglie di creare il modulo da "Report Designer" si partirà invece dal foglio bianco per costruire dal principio il proprio formato personalizzato. Usare un "Report Wizard" Ogni qual volta si desideri creare un modulo, è possibile utilizzare un "report wizard" per essere guidati nella sua composizione. La procedura porrà all'utente una serie di domande creando un formato basato sulle risposte fornite. I Report Wizard previsti da Visual FoxPro sono i seguenti: ● Resoconti (Report ) ● Uno-a-molti (One-to-Many) ● Etichette (Label) ● Sintesi di corrispondenza (Mail Merge) Il Wizard da scegliere dipende dal tipo e dalla complessità di modulo che si intende generare. Per utilizzare un Report Wizard 1. 2. 3. 4. 5. Selezionare Reports da Project Manager. Scegliere New. Scegliere quindi Report Wizard. Selezionare il tipo di modulo da creare. Seguire le indicazioni delle finestre di dialogo presentate dalla procedura guidata. Si può accedere ai Report Wizard selezionando Wizards dal menù Tools specificando la voce Report. Una volta utilizzato un wizard è possibile ricorrere a Report Designer per aggiungere controlli e personalizzare ulteriormente il modulo. Ulteriori informazioni verranno fornite più avanti all'interno di questo capitolo (vedi "Personalizzare il formato") Iniziare a progettare il modulo Se non si desidera ricorrere alla composizione guidata tramite Wizard, è possibile iniziare a tracciare la struttura del modulo a partire dal foglio vuoto stabilendo autonomamente ogni tipo di controllo. Per creare un nuovo modulo vuoto 1. Selezionare Reports da Project Manager. 2. Scegliere New. 3. Scegliere quindi New Report. Comparità Report Designer, da cui sarà dunque possibile costruire e personalizzare il modulo. Creare un formato etichette per buste Un'etichetta non è altro che un modulo multicolonna con impostazioni speciali per adeguardi ad un particolare tipo di carta. In Visual FoxPro si possono creare etichette molto velocemente ricorrendo all'apposito Wizard oppure a "Label Designer". Creare etichette tramite Wizard Il Wizard per la creazione di etichette costituisce un modo facile per raggiungere lo scopo. Una volta creato il file modello è comunque possibile ricorrere a Report Designer per aggiungere ogni tipo di personalizzazione necessaria. Per creare etichette tramite Wizard: 1. 2. 3. 4. Selezionare Labels in Project Manager. Scegliere New. Scegliere quindi Label Wizard. Seguire le istruzioni fornite dalle varie finestre di dialogo. Il formato ottenuto può essere utilizzato così com'è oppure modificato grazie alle procedure menzionate finora oppure lanciando il comando Add Label wizard cliccando il tasto "New Label" nel secondo passaggio del procedimento descritto sopra. Avviare Label Designer Se si desidera fare a meno del Wizard per la creazione delle proprie etichette, si puo' definire il modulo con Label Designer. Label Designer è concettualmente analogo a Report Designer e utilizza i suoi stessi menù e barre di strumenti; si differenziano solo per la pagina iniziale e per il tipo di carta su cui lavorano. Report Designer usa una pagina completa di carta standard mentre Label Designer organizza la propria pagina di inizio e la carta in adeguamento allo standard per la carta da etichette. Creare etichette con Label Designer 1. Selezionare Labels in Project Manager. 2. Scegliere New. 3. Scegliere New Label: verrà visualizzata la finestra di dialogo New Label. la finestra di dialogo New Label 4. Dalla finestra di dialogo New Label scegliere un formato per le etichette e premere quindi il tasto OK. Label Designer mostrerà un'anteprima per la pagina definita dal formato prescelto. La specifica della fonte dei dati e i controlli su di essi funzionano nello stesso modo rispetto ad un normale modulo. Ulteriori informazioni verranno fornite più avanti all'interno di questo capitolo (vedi "Personalizzare il formato") Modificare il formato Se il modulo che si è ottenuto non risponde del tutto alle proprie esigenze si può intervenire con modifiche ricorrendo a Report Designer che permette di inserire una varietà di controlli su etichette, campi, variabili ed espressioni nella modalità in cui appariranno sulla pagina stampata. Per esempio in una lista telefonica è possibile migliorare l'aspetto e la leggibilità del modulo aggiungendo linee, racchiudendo i titoli dei campi o addirittura inserendo immagini; ognuno di questi controlli è rappresentato in figura 63. File di modello e modulo risultante Aprendo il modulo con Report Designer il formato è modificabile e personalizzabile Per modificare la struttura di un modulo o di etichette 1. Scegliere report (o label) in Project Manager. 2. Scegliere Modify. Le barre di controllo visualizzate possono essere utilizzate per determinare l'aspetto di ogni parte costitutiva del modulo; uqeste barre sono ridimensionabili e, al loro interno, è possibile aggiungere controlli e gestire la disposizione di testo e campi. Pianificare la disposizione dei dati Una volta definita l'impaginazione del modulo si può modificare la disposizione dei dati sulla pagina; ricorrendo alle barre di controllo di Report Designer si può determinare la posizione della pagina in cui verrà stampato il dato. La propria struttura di modulo può comporsi di varie barre; nella tabella che segue ne sono riportati alcuni tipi assieme ai tipici contenuti per ciascuna. Nota: ogni dicitura sottostante a ciascuna barra identifica la barra stessa. Barre di controllo in Report Designer Un modulo può contenere diverse barre di controllo; queste si possono inserire utilizzando le procedure descritte in questo capitolo alle voci "Definire la pagina del modulo" e "Raggruppare i dati sul formato scelto". La tabella che segue può servire per determinare quali barre usare. Usa questa barra Per stampare Usa questo comando Titolo (title) Una volta per modulo Title/Summary dal menù Report Intestazione di pagina (page header) Una volta per pagina Disponibile di default Intestazione di colonna (Column Header) Una volta per colonna Page Setup dal menù File: impostare poi Column Number maggiore di 1 Intestazione del gruppo (Group header) Una volta per gruppo Data Grouping dal menù Report Dettaglio (Detail band) Una volta per record Disponibile di default Piè di pagina del gruppo (Group footer) Una volta per gruppo Data Grouping dal menù Report Piè di pagina di colonna (Column footer) Una volta per colonna Page Setup dal menù File; impostare poi Column Number maggiore di 1. Piè di pagina (Page Footer) Una volta per pagina Disponibile di default Sommario (Summary) Una volta per modulo Title/Summary dal menù Report . Ogni controllo per il modulo in oggetto può essere posizionato in ognuna delle barre; si possono includere anche funzioni definite dall'utente che verranno elaborate al momento dell'attivazione del modulo. Barre ridimensionabili Ogni barra di controllo è ridimensionabile: Per ridimensionare una barra ● Trascinare il bordo della barra alla giusta altezza; si può usare il righello di sinistra come guida; la misura del righello si riferisce strettamente all'altezza della barra e non include i margini della pagina. Suggerimento: Non è possibile rendere una barra più corta dell'altezza dei controlli; prima vanno trascinati all'interno della barra e poi si può procedere con il ridimensionamento. Aggiungere controlli al modulo In un modulo si possono inserire i seguenti tipi di controllo: Per visualizzare Scegli questo controllo Campi di tabella, variabili e altre espressioni Campo (Field) Testo letterale Etichetta (Label) Linee diritte Linea (Line) Bordi e contorni Rettangolo (Rectangle) Cerchi, ovali, contorni arrotondati, bordi Rettangolo arrotondato (Rounded Rectangle) Immagini bitmap o campi generici Immagine (Picture/OLE Bound) Dopo aver disposto i controlli si può modificare il loro formato, la loro dimensione, posizione e colore; si possono inoltre aggiungere commenti visibili solo da schermo che non verranno riportati in fase di stampa. Aggiungere controlli con Quick Report Quick Report rappresenta un modo rapido per creare un semplice formato di modulo automaticamente. Selezionando pochi componenti di base, Visual FoxPro crea il formato in base alla scelta fatta. Create un controllo con Quick Report 1. 2. 3. 4. 5. Selezionare Reports in Project Manager Scegliere New. Scegliere New Report. Scegliere Quick Report dal menù Report. Selezionare la tabella da usare e premere quindi OK. La finestra di dialogo di Quick Report 6. Selezionare il formato dei campi, il titolo e le opzioni necessarie. 7. Per selezionare campi per il modulo, scegliere Fields e completare la finestra di dialogo Field Picker La finestra di dialogo Field Picker . 8. Premere infine il tasto OK. Le opzioni scelte si rifleteranno nel formato del modulo. Esito delle operazioni di Quick Report in Report Designer Il modulo può essere salvato, visualizzato in anteprima e attivato così com'è. N.B. Quick Reports non include i campi generali al formato del modulo. Selezionare la fonte dei dati La fonte dei dati a cui si riferiscono i controlli nel modulo è facilmente definibile nel cosiddetto "data environment". E' possibile inoltre aggiungere tabelle o viste e ordinare i dati usando gli indici di queste ultime. Usare una vista come fonte dei dati Il "data environment" gestisce i dati nel seguente modo: ● Apre le tabelle o le viste nel momento in cui il modulo viene aperto o, comunque, attivato. ● Seleziona il set di dati richiesti dal report. Chiude le tabelle al momento della chiusura del modulo. ● Per aggiungere una tabella o una vista al data environment 1. Dal menu View scegliere Data Environment. 2. Dal menu Data Environment scegliere Add. 3. Nella finestra di dialogo Add Table or View selezionare un database. 4. Nell'area Select scegliere Tables o Views. La selezione determina quali campi appariranno nella lista Tables in database. Data Environment Designer 5. Nella lista Tables in Database, selezionare una tabella o una vista. 6. Premere quindi il tasto OK. Si può scegliere l'ordine in cui appariranno i record nel modulo creando un indice per il data environment. Per creare un indice per il data environment 1. Dal menù View, scegliere Data Environment e, quindi, Properties. 2. Nella finestra Properties scegliere Cursor1 dalla casella Object. 3. Scegliere la scheda Data e selezionare la proprietà Order. 4. Digitare un nome per l'indice - oppure - Selezionare un indice dall'elenco degli indici disponibili. Aggiungere controlli di campo Il proprio modulo può includere controlli di campo che rappresentano i valori di campi, variabili e calcoli. Per aggiungere campi di tabelle al "data environment " 1. Aprire il data environment del modulo. 2. Selezionare una tabella o una vista. 3. Trascinare i campi all'interno della struttura. Per aggiungere campi di tabelle dalla barra degli strumenti 1. Dalla barra e Report Controls inserire un controllo Field. 2. Nella finestra di dialogo Report Expression scegliere il bottone a fianco della casella Expression. 3. Nella casella Fields fare doppio-click sul nome del campo necessario. I nomi della tabella e del campo appariranno nella casella Expression for Field on Report . N.B. Se la casella Fields è vuota, aggiungere una tabella o una vista al data environment. Non è necessario mantenere nell'espressione l'alias del nome della tabella; si può cancellare oppure azzerare le opzioni Expression Builder. 4. Premere il tasto OK. 5. Selezionare infine OK nella finestra di dialogo Report Expression. Aggiungere controlli di etichetta I controlli di etichetta si riferiscono al tipo di testo che si desidera appaia nel modulo. Ad esempio l'etichetta "Grand Total" identifica i contenuti di un controllo di campo contenente un'espressione di totale. Per aggiungere un controllo di etichetta 1. Scegliere il tasto Label dalla barra strumenti Report Controls. 2. In Report Designer, fare click per posizionare il controllo. 3. Digitare i caratteri per l'etichetta come se fosse un editor: usare il tasto INVIO per andare a capo e il menù Edit per tagliare, copiare e incollare testo. Per visualizzare un controllo di etichetta 1. Scegliere il tasto Label in Report Designer e quindi fare click sull'etichetta da visualizzare. 2. Digita le eventuali modifiche. Dopo aver posizionato il testo è possibile modificarne il carattere e il colore; per ulteriori informazioni in proposito vedere le sezioni "Modificare il carattere" e "Modificare il colore dei controlli" più avanti in questo capitolo. Aggiungere un campo Generale All'interno del modulo è possibile inserire un campo "Generale" contenente oggetti OLE. Per inserire un campo "Generale" 1. Aggiungere un controllo Picture/OLE Bound in Report Designer. 2. Nell'area Picture From selezionare Field. La finestra di dialogo Report Picture 3. Nella casella Field digitare il nome di un campo -oppure- Scegliere il tasto di dialogo di dialogo per selezionare il campo o la variabile. 4. Scegliere OK. Il segnaposto per il campo Generale apparirà racchiuso in un'area personalizzabile. Di default l'immagine mantiene la sua dimensione originale. Selezionare, spostare e ridimensionare i controlli di un modulo In un modulo contenente controlli già esistenti è possibile modificarne il posizionamento e la dimensione. Ogni controllo è modificabile individualmente o per gruppi, gestibili come un'unica entità. Per spostare un controllo ● Selezionare il controllo e trascinarlo in una nuova posizione all'interno di una barra di controllo. Il controllo si muove in modo incrementale all'interno della struttura. Gli incrementi si basano sulle impostazioni della griglia; per ignorare la griglia premere il tasto CTRL trascinando il controllo. Per selezionare più di un controllo ● Trascinate per creare una griglia di selezione attorno ai controlli. Delle maniglie di selezione appariranno attorno ad ogni controllo. Mentre questi sono selezionati, potete spostarli, copiareli, o cancellarli tutti insieme. E’ possibile associare un gruppo di controlli insieme per più di uno scopo oltre a quello corrente, identificandoli come gruppo. Ad esempio potreste voler associare un controllo di etichetta ad un controllo di campo uno con l'altro, in modo da poterli spostare senza doverli selezionare separatamente. Questa caratteristica è utile anche dopo aver formattato ed allineato i controlli perchè preserva la loro posizione l’uno rispetto all’altro. Per raggruppare controlli insieme 1. Selezionate i controlli che volete trattare come gruppo. 2. Dal menu Format scegliete Group. Le maniglie di selezione si spostano al di fuori dell'intero gruppo. Potete gestire quindi il gruppo o come se fosse una singola unità. Per separare un gruppo di controlli 1. Selezionate un gruppo di controlli. 2. Dal menu Format, scegliere Ungroup. Le maniglie di selezione appariranno attorno a ciascun dei controlli che costituivano il gruppo Una volta che un controllo è nel vostro layout, potete cambiare le sue dimensioni individualmente oppure potete ridimensionare il gruppo di controlli in modo che combacino uno con l'altro. Potete ridimensionare qualsiasi controllo di un modulo ad eccezione delle etichette; la loro dimensione è determinata dal testo, dal font e dalla dimensione dei punti. Per ridimensionare un controllo ❍ Selezionate il controllo, quindi trascinate una delle maniglie di selezione in modo da ottenere la dimensione voluta. Per far combaciare la dimensione di più controlli 1. Selezionate il controllo di cui volete ottenere le stesse dimensioni 2. Dal menu Format scegliete Size. 3. Scegliete le opzioni appropriate in modo da far combaciare larghezza, altezza e dimensione. I controlli si ridimensioneranno in modo da combaciare con le opzioni selezionate. Copiare e cancellare i controlli-modulo Potete copiare e cancellare qualsiasi dei controlli presenti sulla layout individualmente o come gruppo. Per copiare i controlli 1. Selezionate i controlli 2. Dal menu Edit scegliete Copy e quindi Paste. Una copia del controllo apparirà al di sotto della sua posizione 3. Trascinate la copia nella posizione voluta. Per cancellare i controlli 1. Selezionate i controlli. 2. Dal menu Edit scegliete Cut oppure premete il tasto cancellazione. Allineare i controlli Potete allineare i controlli in relazione uno con l'altro oppure posizionarli secondo la griglia fornita da Report Designer. Potete allineare i controlli su un lato particolare oppure con il centro. Per allineare i controlli fra di loro 1. Selezionate i controlli che volete allineare 2. Dal menu Format menu, scegliete Align. 3. Dal sottomenu scegliete l’opzione di allineamento appropriate. Visual FoxPro utilizza il controllo il cui angolo è più vicino alla direzione selezionata come ancora per l'allineamento. Potete anche utilizzare e la barra degli strumenti Layout. Utilizzando questa barra potete allineare il controllo più lontano da quello selezionato premendo il tasto CTRL mentre cliccate il tasto di allineamento. Lo strumento di allineamento a sinistra Allineate i controlli con un margine in modo che tutti controlli selezionati siano equidistanti. I controlli che sono su una riga e sono selezionati per allinearsi con il loro lato destro o con il loro lato sinistro si sovrapporranno uno con l'altro. Allo stesso modo i controlli che sono in linea verticale e sono selezionati per allinearsi con la loro parte alta, o bassa, si sovrapporranno. Per maggiori informazioni sulle barra degli strumenti ricercate il nome della barra attraverso l'Help. Per centrare controllo all'interno della barra di controllo 1. Selezionate i controlli che volete allineare 2. Dal menu Format scegliete Align. 3. Dal sottomenu scegliete Center Vertically or Center Horizontally. I controlli si sposteranno verticalmente o orizzontalmente alla loro rispettiva barra di controllo. Sistemare la posizione dei controlli Potete posizionare un controllo in una posizione specifica sulla pagina utilizzando la barra di stato o la griglia. Di base, i controlli si posizionano automaticamente alla griglia. Potete scegliere di disattivare la funzione "calamita" oppure la visualizzazione della griglia. La griglia vi può aiutare nel posizionamento dei controlli. Per sistemare un controllo in una posizione specifica 1. Dal menu View scegliere Show Position. 2. Scegliete il controllo, quindi spostate il controllo nella posizione utilizzando le informazioni disponibili sulla barra di stato. Per allineare i controlli manualmente ● Dal menu Format deselezionare Snap to Grid. Per mostrare la griglia ● Dal menu View, scegliete Grid Lines. La griglia apparirà sulle barra di controllo del modulo. Per modificare le dimensioni della cella unitaria della griglia ● Dal menu Format scegliete Set Grid Scale inserite il numero di pixel per la larghezza orizzontale e l'altezza verticale di ogni cella della griglia. Raggruppare i dati sul vostro modulo Un volta progettata l'impostazione di base, potete decidere come raggruppare i records in base a certi campi o altri criteri che possono rendere più semplice la lettura. Il raggruppamento vi permette di separare i gruppi di raccordo visivamente e di mostrare dei riepiloghi di dati per ogni gruppo. L'interruzione del gruppo si basa su una espressione di raggruppamento. Questa espressione di solito si basa su campi di una o più tabelle ma può essere di qualsiasi complessità. Qualora vi siano dei gruppi, il vostro modulo avrà delle sezioni di intestazioni di gruppo e di piè di pagina a cui voi potete aggiungere controlli. Solitamente le sezioni dell'intestazione contengono i controlli di campo utilizzati per ogni gruppo. Voi potete aggiungere linee, rettangoli, rettangoli arrotondati, o qualsiasi etichetta che volete fare apparire prima del primo record di un gruppo. Il gruppo piè di pagina contiene di solito i totali o altri sommari per quel gruppo. Potete anche specificare altre opzioni per il gruppo: ● Stampare del testo sia nell'intestazione che nei piè di pagina per identificare gruppi specifici ● Stampare ogni gruppo in una nuova pagina ● Ridefinire il numero delle pagine quando i gruppi sono stampati su nuove pagine Se la sorgente dei dati è una tabella, i record saranno probabilmente ordinati in modo non appropriato per il raggruppamento. Potete riordinare i dati impostando un indice per quella tabella, oppure utilizzando una vista ordinata o una query per la visualizzazione dei dati nel gruppo. L'impostazione della stampa non effettua nessuna organizzazione ma estrae i dati nell'ordine in cui si trovano nella sorgente. L'organizzazione dei dati deve essere fatta attraverso delle viste o degli indici o altri modi al di fuori del report. Aggiungere un singolo gruppo Una stampa di un singolo gruppo ha un suo livello di dati raggruppati in base a una espressione. Ad esempio, potete decidere un gruppo o in base al campo nazione in modo da stampare i dati di una stessa nazione insieme. La sorgente dei dati deve essere organizzata sulla base di quel campo. Per aggiungere un gruppo 1. Dal menu Report scegliete Data Grouping. La finestra di dialogo Data Grouping 2. Nella casella del primo gruppo inserite l’espressione di raggruppamento. -oppureScegliete il tasto di dialogo per creare una espressione per mezzo di Expression Builder 3. Nell’area Group properties area, selezionate la proprietà desiderata. 4. Scegliete OK. Dopo aver aggiunto l'espressione, potete posizionare qualsiasi controllo che desiderate nelle sezioni. Di solito il controllo campo utilizzato per il raggruppamento è spostato dalla sezione "Dettaglio" alla sezione "Intestazione". Aggiungere ragggruppamenti con molti dati Potete definire fino a 20 livelli di raggruppamento all'interno di una stampa. I gruppi unificati sono molto utili per organizzare i dati con totali a differenti livelli. Per scegliere un livello di un gruppo valutate quanto spesso il valore può cambiare, quindi definite per primo il gruppo che cambia di più. Per esempio, la vostra stampa potrebbe aver bisogno di raggruppare i dati per ragione e quindi per città. Il valore di una città cambia più frequentemente rispetto al valore di una regione, quindi la città deve essere il primo criterio di raggruppamento e la regione il secondo. In questa stampa con più gruppi, la tabella deve essere organizzata e indicizzata sulla chiave di espressione Regione+Città. Per aggiungere più raggruppamenti 1. Dal menu Report scegliete Data Grouping. La finestra di dialogoData Grouping 2. Nella prima casella Group inserite l’espressione di gruppo. -oppure3. Cliccate sul tasto di dialogo per creare un espressione con Expression Builder. Nell’area Group properties scegliete la proprietà che desiderate. 4. Scegliete Insert e ripetete i passi 2 e 3 per ogni gruppo. 5. Cliccate su OK. I gruppi vengono numerati nella lista Data Grouping nell'ordine in cui sono creati. In Report Designer il nome delle sezioni dei gruppi contiene il numero del gruppo e un'espressione troncata per quel gruppo. Le intestazioni del gruppo e i piè di pagina con il numero più basso appaiono più vicino alla sezione "Dettaglio." Cambiare la sezione di un gruppo Potete cambiare l'espressione di un gruppo e le opzioni di stampa di un gruppo Per modificare la sezione di un gruppo 1. Dal menu Report scegliete Data Grouping. 2. Nella finestra di dialogo Data Grouping dialog box selezionate il gruppo di espressione da modificare. 3. Inserite la nuova espressione -oppureScegliete il tasto di dialogo in modo da modificare l'espressione attraverso Expression Builder 4. Modificate le opzioni di raggruppamento come necessario Proprietà di gruppo nella finestra di dialogo Data Grouping 5. Scegliete OK. 6. Nella finestra di dialogo Data Grouping scegliete OK. Cancellare una sezione raggruppamento Se non avete più necessità di un particolare gruppo sulla vostra stampa, potete cancellarlo. Per cancellare una sezione di gruppo 1. Dal menu Report scegliete Data Grouping 2. Selezionate il gruppo che volete cancellare 3. Scegliete Delete. La sezione del gruppo viene rimossa dalla stampa nel caso in cui il gruppo conteneva controlli e verrà richiesto se dovete cancellare anche i gruppi. Cambiare l’ordine di raggruppamento Potete cambiare l'ordine dei gruppi in un modulo di stampa una volta che essi sono definiti. Quando i gruppi sono riorganizzati, tutti i controlli definiti in un gruppo sono spostati nella nuova posizione. Riordinando i gruppi non si modifica qualsiasi precedente definizione dei controlli. Le celle e le linee sono state posizionate relativamente all'inizio o alla fine di una sezione di gruppo rimarranno ancorati alla sezione. Per modificare l'ordine dei gruppi 1. Dal menu Report scegliete Data Grouping. 2. Selezionate il tasto di spostamento alla sinistra del gruppo che volete spostare e trascinatelo nella nuova posizione. Personalizzare i vostri moduli Potete modificare l'ambiente dati, l'impostazione della pagina e dei controlli del modulo. L'ambiente dati definisce il sorgente dei dati da includere nella stampa; l'impostazione della pagina definisce un aspetto della pagina di stampa e delle sezioni, i controlli della stampa definiscono gli oggetti che appaiono sulla pagina Definizione della stampa Quando progettato un report, di solito avete idea di come dovrà apparire la pagina. Ad esempio, sapete i margini, il tipo di carta e l'aspetto che desiderate. Questa sezione descrive l'impostazione dei margini, l'orientamento della carta e l'altezza delle sezioni del modulo. Impostare i margini, la dimensione della carta, e l'orientamento Potete impostare il margine di sinistro, le dimensioni della carta e l'orientamento delle vostre stampe, così come la larghezza delle colonne e lo spazio fra le colonne per una stampa su colonne. In questo contesto la parola "colonne" si riferisce al numero dei record che saranno stampati attraverso la pagina e non al numero dei campi per un singolo report. Report Designer non mostra queste impostazioni; egli mostra solamente l'area all'interno del quale saranno contenuti i record in colonna quindi, se la vostra stampa ha delle colonne e voi modificate il margine di sinistra, la larghezza della colonna sarà automaticamente modificata per adeguarsi al nuovo margine. Se modificate la dimensione della carta e l'orientamento, assicuratevi che quest’ultimo sia adeguato al tipo di carta che selezionate. Ad esempio, se selezionate una busta, l'orientamento dev'essere quello verticale Per impostare il margine di sinistra 1. Dal menu File scegliete Page Setup. La finestra di dialogo Page Setup 2. Per impostare il margine, inserite il numero del margine nella casella di testo Left Margin. L'immagine della pagina si modificherà per mostrare il nuovo margine. 3. Per impostare le dimensioni della carta, scegliete Print Setup. 4. Nella finestra di dialogo Print Setup selezionate le dimensioni della carta dalla lista Size. 5. Per selezionare l'orientamento della carta, scegliete un orientamento nell'area Orientation, e quindi Cliccate su OK 6. Nella finestra di dialogo Page Setup Cliccate su OK Definire l'intestazione e il piè di pagina I controlli sistemati nella intestazione o nel piè di pagina appariranno in ogni pagina della stampa. Un modulo di stampa che contiene molte pagine deve includere il nome della stampa, il numero delle pagine, la data, e le etichette (se disponibili) nell’ intestazione e nel piè di pagina. Definire la sezione dettaglio Tipicamente, i controlli posizionati nella sezione dettaglio vengono stampati una volta per ogni singolo record. Aggiungere sezione titoli e sommario La sezione titolo contiene le informazioni che vengono stampate una volta all'inizio del modulo e la sezione sommario contiene le informazioni che vengono stampate una volta alla fine. Sia la sezione sommario che quella del titolo possono essere nella loro propria pagina. I campi con espressioni di totale diventano "gran totale" quando si posizionano nella sezione sommario. Per aggiungere una sezione titolo o sommario 1. 2. 3. 4. Dal menu Report scegliete Title/Summary. Selezionate la sezione che volete Se volete che la sezione appaia nella propria pagina selezionate "Nuova pagina" Scegliete OK. Report Designer mostrerà le nuove sezioni Formattare i controlli di campo Una volta che avete inserito un controllo di campo, potete modificare il formato dei dati di quel controllo. Il tipo di dati può essere; carattere, numerico o data. Ciascuno di questi tipi di dati ha le sue opzioni di formato, incluse le opzioni per creare una propria impostazione. Il formato determina come i dati saranno stampati o visualizzati. Tipicamente, potreste convertire tutti caratteri alfanumerici nel loro equivalente maiuscolo, inserire le virgolette o il punto decimale in un campo numerico e mostrare i caratteri numerici in formato valuta, oppure convertire una data da un formato a un altro. Definire il formato di un controllo campo Potete impostare una vasta serie di opzioni per ogni tipo di dati Per impostare un controllo campo 1. fate un doppio click sul controllo Field. 2. Nella finestra di dialogo Report Expression scegliete il tasto di dialogo dopo la casella Format. 3. Nella finestra di dialogo Format, selezionate il tipo di dati per il campo, Character, Numeric, o Date. L’area Editing mostra le opzioni disponibili di formattazione per quel tipo di dati. Nota Questo tipo di dati si applica solamente sui controlli di stampa. Essi si ripercuotono sul tipo di dati o sulle espressioni ma non cambiano il tipo di dati nel campo della tabella. 4. Selezionate la giustificazione e le opzioni di formato o che desiderate. La finestra di dialogo Format mostrerà diverse opzioni a seconda del tipo di dato scelto. E' anche possibile creare un nuovo stile inserendo i caratteri nella finestra di dialogo Format. Per maggiori informazioni cercare la voce "Tipi di formato" Giustificare il testo in un campo Potete giustificare il testo contenuto all'interno di un controllo in due modi. Questa impostazione non modifica la posizione del controllo sul modulo, ma solamente il contenuto all'interno del controllo. Per giustificare il testo in un controllo campo 1. Selezionati controllo che volete modificare. 2. Dal menu Format scegliete Text Alignment. 3. Dal sotto-menu, scegliete gli appropriati comandi. Per giustificare il testo in un campo 1. Fate un doppio click nel controllo del campo 2. Nella finestra di dialogo Report Expression scegliete il tasto di dialogo dopo la casella Format. Finestra di dialogo Format per una espressione numerica 3. Nella finestra di dialogo Format selezionate il tipo di dati per quel campo: Character, Numeric, or Date. 4. Selezionate la giustificazione e le opzioni di formato che volete Modificare i font Potete modificare i font e la dimensione del testo per ogni controllo di campo o etichetta oppure potete modificare il font di default per la stampa Per modificare font e dimensioni carattere di una stampa 1. Selezionate il controllo 2. Dal menu Format selezionare Font. Apparirà la finestra di dialogo Font. 3. Selezionate il font appropriato e la dimensione dei punti, e quindi Cliccate su OK Per modificare il font di default 1. Dal menu Report selezionate Default Font 2. Nella finestra di dialogo font selezionate il font appropriato e la dimensione in punti che volete impostare come di default e quindi Cliccate su ok. Solamente i controlli inseriti dopo una vostra modifica per i font di default saranno influenzati da questa nuova impostazione. Aggiungere linee, rettangoli, cerchi Linee, rettangoli, e cerchi possono rendere più attraente le vostre stampe. Potete utilizzarli per separare delle sezioni o per enfatizzarne delle altre Disegnare delle linee Potete aggiungere delle linee verticali o orizzontali ai vostre report con Line Control. Spesso potreste avere la necessità di inserire delle linee in mezzo a dei dettagli nel corpo del vostro report e le informazioni contenute nell'intestazione e nel piè di pagina Per disegnare una linea 1. Dalla barra strumenti Report Controls scegliete il tasto Line. 2. Da Report Designer, trascinate per dimensionare la linea Dopo aver disegnato la linea, la potete spostare o ridimensionare, o potete modificare il suo spessore e il suo colore. Disegnare dei rettangoli Potete disegnare dei rettangoli sul vostro Layout in modo da organizzare le informazioni che vengono stampate. Potete utilizzarli per creare dei bordi attorno alle vostre stampe, attorno a delle sezioni, attorno ai controlli, ecc. Per disegnare un rettangolo 1. Dalla barra degli strumenti Report Control scegliete il tasto Rectangle 2. In Report Designer, trascinare per creare il rettangolo. Disegnare rettangoli arrotondati e cerchi Potete disegnare cerchi e rettangoli con una serie di angoli arrotondati Per disegnare un rettangolo o cerchio 1. Dalla barra degli strumenti Report Control scegliete il tasto Rounded Rectangle. 2. In Report Designer trascinare per creare il controllo. 3. Fate un doppio click sul controllo Finestra di dialogo Round Rectangle 4. Nell’area Style selezionate lo stile dell'angolo che desiderate. 5. Scegliete OK. Modificare lo spessore lo stile delle linee Potete modificare lo spessore delle linee utilizzate orizzontalmente o verticalmente, dei rettangoli, dei rettangoli con angolo arrotondato, dal sottilissimo fino a sei punti di spessore. Potete anche modificare lo stile della linea da punteggiata a una combinazione di punti e linee. Per modificare le dimensioni e lo stile di una linea 1. Selezionate la linea, rettangolo, o il controllo con angolo arrotondato che volete modificare. 2. Dal menu Format scegliete Pen. 3. Dal sottomenu selezionate l’appropriato stile e dimensione. Aggiungere un'immagine Potete inserire un immagine come parte di una stampa. Ad esempio, il logo di una azienda può apparire nell'intestazione di una pagina o di una fattura. Le immagini di un file sono statiche, esse non cambiano per ogni record o gruppo di record. Se volete modificare l'immagine dipendentemente dai record, inserite invece un campo General. Per aggiugere un immagine 1. Dalla barra degli strumenti Report Controls, scegliete Picture/OLE Bound Control. 2. In Report Designer, trascinate per dimensionare l’immagine. Finestra di dialogo Report Picture 3. Nell’area Picture from selezionate File e quindi indicate l’origine -oppureCliccate sul tasto di dialogo per selezionare il file 4. Se appropriato, impostate dimensione, posizione, e opzioni di stampa. 5. Scegliete OK. Modificare il colore dei controlli Potete cambiare il colore di un campo, etichetta, linea, o rettangolo. Per cambiare i colori 1. Selezionare il controllo da modificare. 2. Nella barra degli strumenti Color Palette, scegliete Foreground Color o Background Color. 3. Selezionate il colore che desiderate. Aggiungere un commento a un controllo Mentre create o modificate un controllo potreste volere includere una descrizione. La finestra di dialogo di ogni controllo offre una casella per i commenti. Questi commenti vengono salvati all'interno del layout ma non appaiono sulla stampa. Per aggiungere un commento a un controllo 1. Fate doppio click sul controllo. 2. Nella finestra di dialogo del controllo, inserite il commento nella casella Comment. 3. Scegliete OK. Anteprima e stampa dei vostri report o delle vostre etichette Una volta che avete iniziato a impostare la vostra stampa, potete visualizzare una anteprima dei risultati del vostro lavoro oppure potete effettuare la stampa. L'anteprima è possibile in qualsiasi momento della progettazione. Anteprima dei risultati Con l'anteprima della stampa, potete visualizzare come apparirà la stampa senza stamparla. Ad esempio, potete verificare l'allineamento e il posizionamento delle colonne dei dati, o verificare se la stampa fornisce i dati desiderati. Voi avete due possibilità: visualizzare l'intera pagina o solamente una porzione della pagina. La finestra di anteprima alla propria barra degli strumenti con tasti che vi spostano da pagina pagina. Attenzione: se ottenete il messaggio: volete modificare i cambiamenti del vostro file? Voi avrete selezionato di chiudere non solo l'anteprima ma anche la progettazione in corso. Potete selezionare cancella per ritornare in anteprima oppure Salva per salvare i vostri cambiamenti e chiudere il file; se voi selezionate No, qualsiasi cambiamento abbiate fatto sul l'impostazione non sarà salvato. Per avere l'anteprima dei risultati 1. Dal menu View scegliete Preview. Anteprima del Report 2. 3. 4. 5. Nella barra degli strumenti Print Preview scegliete Previous Page o Next Page per cambiare pagina. Per modificare la dimensione della visualizzazione, scegliete Zoom. Per stampare il report scegliete Print. Per tornare alla progettazione cliccate su Close Preview. Stampa dei report La stampa o le etichette che voi avete creato utilizzando il Report Designer, è una serie di comandi che vi consente di impostare i dati in modo gradevole per la stampa. Egli processa i dati nell'ordine in cui appaiono nel sorgente. Se utilizzate i dati direttamente da una tabella, i dati non vengono estratti organizzati secondo i vari gruppi disponibili nel layout. Prima di passare alla stampa, dovete verificare che i dati del sorgente siano organizzati e ordinati nel modo appropriato. Se la tabella è parte di un database, create una vista e aggiungetela al Report Data environment. La vista ordina i dati al posto vostro. Se i dati vengono da una Free Table potete creare una query che usa la stampa come destinazione. Per stampare un report 1. Dal menu File cliccate su Print. 2. Cliccate su OK. Nota Se l'ambiente dati non è impostato, si aprirà una finestra di dialogo Open con una lista di tabelle da cui potete selezionare i dati, Visual FoxPro invierà il report alla stampante. Creare i form (moduli - maschera) I form mostrano i campi e i records nelle vostre tabelle e nelle viste, e di solito, includono i controlli per muoversi fra i vari records Potete creare form i Visual FoxPro in uno di questi modi: ● Utilizzate i form wizard per creare un form pronto all’uso. ● Scegliete Quick Form nel menu Form per creare un semplice form che potete personalizzare aggiungendo vostri controlli. ● Utilizzate il Form Designer per modificare dei form esistenti o per creare i vostri form. Utilizzare il Form Wizard Ogni volta che intendete creare un nuovo form, potete utilizzare il wizard per farvi aiutare. Il wizard formerà una serie di domande per aiutarvi a crearlo e per crearlo utilizzerà le vostre risposte. Potete utilizzare differenti stili e opzioni e avere delle anteprime prima di crearlo. Per creare un form con un wizard 1. 2. 3. 4. 5. Nel Project Manager, selezionate la scheda Document e quindi Forms. Scegliete New. Scegliete quindi Form Wizard. Scegliete il modello di form che intendete creare. Seguite le istruzioni che appariranno sullo schermo. Sono disponibili due generatori wizard per aiutarvi a creare form. Potete anche accedere al form wizard dal menu scegliendo il comando Wizard dal menu Tools, e quindi scegliendo la voce Form. Visual FoxPro fornisce due differenti wizard per i form: ● ● Per creare un form di base per una tabella, scegliete il Form Wizard Per creare un form che incorpora dati da due tabelle unite in una relazione uno-a-molti, scegliete One-to-Many-Form-Wizard. I form che create con il wizard hanno un set di strumenti di navigazioni in modo da visualizzare differenti record nel form, editarli, cercarli, ecc. ecc. il wizard può utilizzare maschere di inserimento e formattazioni immagazzinati nel database. Avviare il Form Designer Se desiderate creare il vostro form senza utilizzare il wizard, dovete utilizzare il Form Designer. Con il Form Designer, potete aggiungere campi e controlli nel vostro form, e personalizzarli successivamente. Il comando Quick Form è disponibile per velocizzare il processo di creazione di un form, esso attiva il Form Builder, che aggiunge i campi selezionati e le viste. Per creare un nuovo form 1. 2. 3. 4. Dal Project Manager, scegliete la scheda Document. Selezionate l’icona Forms. Scegliete New. Selezionate New Form. Apparirà quindi la finestra Form Designer così potete iniziare a creare il vostro form. La finestra Form Designer Aggiungere velocemente Campi Quando desiderate aggiungere velocemente campi da una tabella o da una vista in un form, scegliete Quick Form dal menu Form. Quick Form avvia il Form Builder, che aggiunge i campi selezionati di una tabella o da una vista nel vostro form, utilizzando lo stile che desiderate. Il Form Builder vi aiuta a creare un form da una tabella o da una vista. Per aggiungere campi a un form con il Form Builder 1. Nel Form Designer, selezionate Quick Form dal menu Form. 2. Fate le scelte riguardanti lo stile nel Form Builder e cliccate su OK per generare il form. Il Form Builder crea il form senza controlli di navigazione, così dovrete aggiungere i vostri. Potete anche utilizzare il Control Builder allo scopo, oppure potete scegliere quelli disponibili nella libreria di controlli forniti da Visual FoxPro. Salvare i Forms Quando il form è terminato potete salvarli per un futuro uso. Per salvare un form ● Nel Form Designer, scegliete Save dal menu File. I form vengono salvati con l’estensione .scx Utilizzare un Form Una volta salvato un form, potete avviarlo per vedere come si comporta. Per utilizzare un form ● Nel Project Manager, selezionate il nome di un form nella scheda Documents e quindi cliccate su Run. -oppure- ● Dal menu Form, scegliete Run Form. Potete anche utilizzare il tasto Run dalla barra degli strumenti standard. Suggerimento - quando avviate un form, potete passare velocemente alla modalità progettazione cliccando su Modify Form nella barra strumenti standard Aggiungere controlli ad un Form Potete aggiungere nuovi controlli selezionandoli dalla barra degli strumenti Form Controls e posizionandoli nella finestra del Form Designer. Ad esempio, potreste voler aggiungere nuove etichette per i campi del form, nuovi controlli come bottoni, caselle di testo, liste e così via, oppure immagini o linee e forme per migliorare l’aspetto del form. Per aggiungere un controllo ad un form 1. Scegliete un controllo nella barra degli strumenti Form Controls toolbar. 2. Nella finestra del Form Designer, trascinate il mouse in modo da creare un rettangolo dove volete sistemare il controllo, oppure cliccate per creare un controllo con dimensioni preimpostate. 3. Il nuovo controllo apparirà dove siete posizionati. Potete quindi spostarlo nella posizione finale sul form e ridimensionarlo per come necessario. Se avete bisogno di aiuto per aggiungere un controllo potete utilizzare un builder per aggiungerlo e per farlo lavorare nel form, oppure potete aggiungere i controlli utilizzando la barra degli strumenti Form Controls e la finestra delle proprietà. Aggiungere controlli tramite il Builder Così come i wizard possono essere utilizzati per costruire i moduli form molto velocemente, i builder possono essere utilizzati per aggiungere i controlli con la stessa facilità. Il buider porrà una serie di domande in relazione al controllo che volete aggiungere al form e imposterà le giuste proprietà in modo da far funzionare il controllo come desiderato. Ad esempio. Se volete aggiungere un finestra per il testo in un form, il builder chiede che stile di testo desiderate e quale campo della tabella deve mostrare. Per accedere ai Builders ci sono uno o due modi: dal menu scorciatoia del Form Designer, oppure attivando il tasto lock del builder nella barra degli strumenti Form Control. Per aggiungere un controllo tramite un builder 1. Nella barra degli strumenti Form Controls selezionate il tasto Builder Lock. 2. Selezionate il controllo che desiderate dalla barra degli strumenti Form Controls, e disegnatelo sul form. 3. Compilate le informazioni nelle schede del buider. Aggiungere campi ad un Form con il Form Builder Un modo veloce per aggiungere un nuovo campo ad un form è quello di utilizzare il Form Builder. Anche se avete già dei campi nel vostro form, potete aggiungere nuovi campi che si allineino allo stile degli altri campi esistenti. Potete anche scegliere sorgenti di dati differenti per il campo che aggiungete al form ad esempio da altre tabelle o viste. Per aggiungere campi ad un form 1. 2. 3. 4. 5. Nel Project Manager, aprite il form. Dal menu del Form, scegliete Quick Form. Apparirà il Form Builder. Nella scheda Style, selezionate lo stile desiderato per il nuovo controllo. Nella scheda Field Selection, selezionate la sorgente dei dati, e il o i campi che volete aggiungere. Cliccate su OK. Utilizzare i Builders per tutti i controlli Selezionando il tasto Builder Lock nella barra degli strumenti Form Control, potete automaticamente utilizzare un control builder ogni volta che aggiungete un controllo ad un form. Per attivare il Builder ● Nella barra strumenti Form Control cliccate sul tasto Builder Lock. Aggiungere controlli in un form tramite il Component Gallery Potete utilizzare il Component Gallery per aggiungere velocemente controlli speciali e oggetti in un form. Il Component Galleri contiene dozzine di oggetti e controlli speciali che possono ridurre notevolmente i lavoro di codifica on moduli form molto specializzati. Per aprire il Component Gallery. ● Da menu Tools, scegliete Component Gallery. Quando il Component Gallery è aperto, potete trascinare i controlli speciali e gli oggetti dal component Gallery e incollarli nel form attivo. Aggiungere controlli a un Form generato con wizard. Se create un form con uno dei wizard disponibili e quindi desiderate aggiungervi dei controlli, potete far si che lo stile del nuovo controllo sia identico allo stile dei controlli presenti nel form utilizzando i controlli nella libreria wizard controls, Wizstyle.vcx. Quando aprite la libreria wizards control, i controlli wizard-style (come: chiselfield, embossedmemo, e così via) sono disponibili nella barra degli strumenti Form Controls. Per scoprire quali controlli utilizzare, selezionate un controllo esistente e osservate la sua classe e la sua libreria. Per esempio, un wizard per campi standard si deve trovare nella classe Standardfield class, che si trova nel Wizstyle.vcx. Suggerimento: Utilizzate ToolTips nella barra degli strumenti Form Controls per aiutarvi ad identificare il nome della classe. Per confrontare i controlli in un form generato con wizard. 1. 2. 3. 4. Nel Form Designer, aprite il form. Dalla barra degli strumenti Form Controls, scegliete il tasto View Classes e cliccate su Add. Nella finestra di dialogo Open, localizzate Wizstyle.vcx nella sotto directory Wizards e cliccate su OK. Nella barra degli strumenti Form Controls, selezionate il controllo che corrisponde ad un controllo esistente nel form e trascinatelo nel form per aggiungerlo. Nota: Se spostate un form in un nuova directory in un altro sistema, dovete anche trasferire il la libreria dei controlli associata con quel form. Aggiungere Controlli e impostare le proprietà dei controlli Per aggiungere un nuovo controllo ad un form senza utilizzare un builder, basta semplicemente selezionare il controllo desiderato dalla barra strumenti del Form Control e trascinarlo nel from. Alcuni controlli come etichetta, forme e linee. Non mostrano dati da una tabella o da una vista, e non effettuano alcuna azione. Ma la maggior parte degli altri controlli lo fanno, e quindi occorre informare VFP quali campi volete che mostrino, o quale azione volete che essi eseguano. Ad esempio, di solito si desidera che una casella di testo mostri il contenuto di un campo, e in tasto esegua un determinato comando. Per far si che i controlli lavorino in modo corretto nei vostri fom, è necessario associarli, o unirli con una tabella e un campo che devono mostrare. I controlli vengono collegati alla sorgente controllata. I dati che volete che questi controlli mostrino o gestiscano vengono impostati tramite la proprietà ControlSource. Ad esempio, se volete aggiungere una casella di testo in un form, dovete dire a VFP dove dovrà attenere i valori di testo impostando la proprietà ControlSource in modo che essa punti ad uno specifico campo di una tabella o di una vista, potete poi impostare anche il modo con cui viene visualizzato il controllo stesso. Uno strumento chiamato Data Environment Designer rende estremamente semplice aggiungere un nuovo campo ad un form e impostare le proprietà per quel campo. Impostare l’ambiente dei dati Sistemando le tabelle e le viste associate con le vostre form nel data environment rendete semplice il loro collegamento a nuovi controlli per i campi della tabella o della vista. Quando avete terminato di impostare l’ambiente dati, le proprietà del ControlSource mostrerà i campi disponibili in modo da rendere possibile, con la semplice selezione, il collegamento al controllo associato. Se state modificando un form creato con un wizard, potrete constatare che il il data environment è popolato da tabelle o viste che avete impostato tramite il form wizard. Per mostrare l’ambiente dati ( data environment ) ● Nel Form Designer, scegliete Data Environment dal menu View. Finestra progetto Data Environment Designer Per aggiungere una tabella o una vista nel data environment Dal menu Data Environment, scegliete Add. Nota se il data environment è vuoto, la finestra di dialogo Add Table or View apparirà automaticamente. 1. Nella finestra di dialogo Add Table or View, selezionate Tables or Views. 2. Selezionate la tabella o la vista che volete aggiungere. 3. Cliccate su Add. Nota Per aggiungere delle viste al Data Environment Designer, dovete avere un database aperto. Aggiungere un controllo ad un Form La barra degli strumenti del Form Control rende semplifica l’aggiunta di un nuovo controllo ai vostri form in modo che possiate mostrare un campo dalla vostra tabella o dalla vostra vista.. Dovrete selezionare il tipo di controllo appropriato al tipo di dati che intendete visualizzare. Ad esempio, usate un controllo casella di testo, per mostrare un campo di una sola riga, oppure una controllo finestra di editing (edit box) per visualizzare un memo. La finestra proprietà mostra tutte le proprietà dei controlli che aggiungete al form. Utilizzate la proprietà nella finestra delle proprietà per collegare il controllo che avete aggiunto con uno specifico campo di una tabella definito nel Data Environment Designer. Per visualizzare la finestra delle Proprietà ● Dal menu View, scegliete Properties. Nota Se volete utilizzare la finestra delle proprietà per impostare le proprietà dei controlli dovete disattivare il Builder Lock. Per aggiungere un nuovo campo a un form 1. Nella barra degli strumenti Form Controls scegliete un controllo dati e trascinatelo nella finestra del Form Designer per creare il controllo. 2. Nella finestra Properties, scegliete la scheda Data, e selezionate la proprietà ControlSource. 3. Inserite il nome del campo. -oppureSelezionate un campo dalla lista dei campi disponibili. Campi disponibili nelle proprietà ControlSource di un controllo Aggiungere più Controlli in una volta Quando selezionate il tasto Button Lock, potete aggiungere più controlli dello stesso tipo senza dover cliccare il tasto del controllo più di una volta. Ad esempio, se desiderate aggiungere 5 caselle di testo ad un form, controllate che sia selezionato il Button Lock, cliccate sul controllo Casella di testo nella barra degli strumenti del Form Controls e aggiungete tutti e cinque le caselle al form. Il Button lock si attiva automaticamente se effettuate un doppio click su tasto del controllo della barra strumenti. Per disattivarlo cliccate nuovamente sul tasto Button Lock oppure cliccate il tasto puntatore nella barra strumenti. Aggiungere controlli velocemente Potete creare velocemente controlli singoli o multipli cliccando sui campi o nelle tabelle e trascinandoli direttamente in un form o in una classe contenitore che state progettando: ● ● ● Data Environment Designer Database Designer (tabelle singole, viste locali singole, viste remote singole, singoli campi) Project Manager (Singole tabelle, singole viste locali, singole viste remote, singoli campi) Quando trascinate un campo o una tabella su un form, VFP determina che tipo di controllo da creare basandosi sulle opzioni che avete impostato. Impostare le opzioni di associazione dei campi Potete specificare il tipo di controllo che deve essere creato quando trascinate un campo e una tabella su un form. Ad esempio potete creare una controllo casella di testo ogni volta che un campo carattere viene trascinato su un form. Per associare tipi di campi in classe 1. Dal menu Tools, scegliete Options. 2. Selezionate la scheda Field Mapping. 3. Per modificare l’associazione del tipo di campo, scegliete una voce nella finestra Map fields to classes for drag and drop e quindi cliccate su Modify. 4. Nella finestra Modify Field Mapping, selezionate il tipo di campo dalla lista Type list. Per impostare la classe che viene creata nel momento in cui trascinate una tabella o campi multipli, selezionate Multiple dalla lista Type. 5. Per selezionare la libreria di classe (.vcx file) che contiene il controllo a cui volete associare il tipo di campo che avete selezionato, scegliete browse. 6. Selezionate il nome della classe dalla lista Name. La classe che specificate qui verrà creata ogni volta che trascinerete un campo del tipo selezionato su un form. 7. Cliccate su OK per accettare l’associazione. 8. Impostare le opzioni nel Database options: Per … Selezionate… Creare una etichetta in aggiunta al controllo dei margini quando trascinate un campo o una tabella in un form o contenitore Drag and drop field caption Impostare la proprieta commento del controllo margini sul testo specificato nel campo Field Comment nella scheda Fields del Table Designer Copy field comment Impostare la proprietà della maschera di inserimento InputMask del controllo margini specificata nella scheda Fields del Table Designer Copy field input mask Impostare le proprietà di formattazione del controllo con il formato specificato nella scheda Fields del Table Designer Copy field format Nota Potete anche specificare le classi per il trascina e incolla nella finestra Display Class della scheda Fields del Table Designer. Le impostazioni del Table Designer sovrascrivono le impostazioni che impostate qui. Creare velocemente un Controllo singolo Potete creare un singolo controllo basato sull’associazione del tipo di campo che avete specificato nella scheda Field Mapping della finestra di dialogo Options. Potete anche sovrascrivere le associazioni di default e creare classi differenti. Per creare un controllo singolo ● Cliccate in qualsiasi campo del Data Environment e trascinate sul form. Nota la proprietà ControlSource del nuovo controllo viene impostata sulla proprietà Name del campo. Per creare un controllo singolo e sovrascrivere l’attuale associazione del campo 1. 2. 3. 4. Cliccate col destro in qualsiasi campo presente nel Data Environment e trascinatelo nel form. Dal menu scorciatoia, selezionate Create Other Control Here. Nella finestra di dialogo Open, scegliete un file della Visual Class Library (.vcx). Selezionate il tipo di controllo che volete creare dalla finestra Class Name e scegliete Open. Per creare velocemente controlli multipli Potete trascinare una intera tabella in un form. Di base, un controllo griglia viene creato quando trascinate una tabella su un form. Potete sovrascrivere questa impostazione e creare controlli multipli in corrispondenza con l’associazione del tipo di campi specificata per ogni singolo campo. Per creare un controllo griglia ● Scegliete qualsiasi tabella nel Data Environment, Database Designer, or Project Manager e trascinatelo su un form. Per creare controlli multipli ● Cliccate col destro del mouse su qualsiasi tabella o su uno o più campi selezionati in una tabella, nel Data Environment, Database Designer, or Project Manager, e trascinatelo sul form. Dal menu scorciatoia, selezionate Create Multiple Controls Here Modificare un form Se il form generato con wizard o con il buider non soddisfa pienamente le vostre necessità, potete modificarlo con il Form Designer. Utilizzando il Form Designer, è molto semplice spostare e ridimensionare i controlli, copiarli, cancellarli, allinearli e modificarne l’ordine di tabulazione. Per modificare un form 1. Nel Project Manager, selezionate la scheda Documents. 2. Cliccate sull’icona Forms e selezionate il nome del form. 3. Scegliete Modify. Usare la barra degli strumenti del Form Designer La barra degli strumenti del Form Designer vi fronisce un veloce accesso ai comandi usati con maggior frequenza e al controllo di layout, allineamento e ai controlli di colore quando progettate o modificate form. Per maggiori informazioni sullo scopo di ogni tasto o di ogni barra degli strumenti potete utilizzare ToolTips o fare la ricerca di "ToolBars". La barra degli strumenti del Form Designer Selezionare spostare e ridimensionare controlli Dopo aver creato un forma potreste avere la necessità di aggiustare la posizione una dimensione dei controlli sul form. Ad esempio potreste avere la necessità di spostare un campo di memoria o creare una casella di testo più larga. Per selezionare un controllo ❍ Utilizzate puntatore e cliccate in qualsiasi punto del controllo. Per selezionare controlli adiacenti 1. Selezionate la freccia di selezione nella barra degli strumenti Form Controls. 2. trascinate il puntatore in modo da creare un contenitore attorno ai controlli che volete selezionare. Per spostare controlli 1. Selezionate controllo cliccandovi sopra. 2. trascinate il controllo alla nuova posizione sulla finestra del form. -oppure- Selezionate il controllo e usate le frecce per riposizionarlo. Per ridimensionare un controllo 1. Selezionate il controllo. 2. Trascinate le maniglie di ridimensionamento per aumentare la lunghezza la larghezza o entrambi. Copiare e cancellare i controlli dei form Quando disegnate modificate un form potreste voler far una copia del controllo che già su di esso. Potete copiare un controllo esistente per spostarlo in un altro punto. Per copiare un controllo 1. utilizzate il puntatore e selezionate controllo. 2. dal menu Edit scegliete Copy. 1. dal menu Edit scegliete Past. 1. utilizzate il puntatore per posizionare il controllo dove necessario. Se create un controllo e quindi decidete che non è più necessario, o non volete un controllo creato da un wizard, potete eliminare il controllo.. Per cancellare il controllo Selezionate il controllo e scegliete Cut al dal menu Edit. Allineare i controlli I tasti sulla barra del Layout rende semplice allineare i controlli in relazione fra di loro sul vostro form. Ad esempio, potreste voler allineare i controlli orizzontalmente o verticalmente o assicurarvi che una serie di controlli sia della stessa dimensione in altezza e larghezza. Per allineare i controlli, selezionate un gruppo di controlli e quindi selezionate uno dei tasti per il controllo dei Layout sulla barra degli strumenti di Layout. Sistemare la posizione dei controlli Se avete la necessità di posizionare con molta precisione i controlli sullo schermo, potete utilizzare Show Position del menu View. Quando è selezionato ShowPosition mostra le coordinate del controllo selezionato nella barra di stato in basso alla finestra e Form Designer. Controllare le coordinate e le dimensioni attraverso la barra di stato Controllare la Griglia La visualizzazione della griglia di può aiutare a allineare i controlli sul forum. Potete aggiustare le dimensioni della griglia attraverso il comando Set Grid Scale del menu Format. Potete attivare la visualizzazione della griglia utilizzando il comando Grid Line del menu View, o impostando le opzioni del Grid Line nella scheda Form della finestra di dialogo Options. Potete anche sistemare le dimensioni una posizione dei controlli a una relazione alla griglia con il controllo calamita con l'opzione Snap to Grid del menu Format. Quando è attivato il comando Snap to Grid nel menu Form, i controlli posizionati sul forma vengono automaticamente allineati alle linee guida della griglia. Potete sottoscrivere la griglia attraverso: ● Deselezionando Snap to Grid dal menu Format. Di base questa opzione è selezionata ● ● utilizzando le frecce per tenere controlli. premendo CTRL prima di cliccare sul controllo e mantenendo premuto il tasto durante il trascinamento dell'oggetto in un'altra posizione. ● scegliendo le opzioni di allineamento dalla barra di Layout del menu Format. Impostare l'ordine di tabulazione per i controlli L'ordine di tabulazione determina la sequenza con cui i controlli vengono selezionati con la pressione del tasto TAB mentre ci si muove attraverso il form. Potete scegliere due metodi diversi per impostare l'ordine di tabulazione: interattivamente, cliccando il controllo nell'ordine con cui volete che siano selezionati quando viene utilizzato il form, oppure creando una lista dei controlli in una finestra di dialogo. Per selezionare l'ordine di tabulazione 1. dal menu Tools, scegliete Options 2. nella finestra di dialogo Options scegliete la scheda Forms. 3. nelle opzioni Tab Ordering, scegliete Interactive or By List. Impostare l'ordine di tabulazione interattivamente Nel modo interattivo, voi impostate e l'ordine di tabulazione facendo un doppio click sul controllo che volete sia il primo nell'ordine, e quindi un singolo e click sul resto dei controlli nell'ordine che volete siano selezionati nel form. Per modificare l'ordine di tabulazione interattivamente 1. dal menu View, scegliete Tab. 2. fate un doppio click nella casella ordine di tabulazione di fianco al controllo che volete sia il primo nell'ordine di tabulazione. 3. selezionate la casella ordine di tabulazione per ogni altro controllo. 4. Cliccate in qualsiasi punto del form per salvare le vostre modifiche e uscite in dalla modalità Ordine di Tabulazione Impostare l'ordine di tabulazione attraverso la lista Nella modalità lista, voi impostato nell'ordine di tabulazione re sistemando i nomi dei controlli nella finestra di dialogo Tab order. Potete sistemare l'ordine attraverso le righe o con le colonne. Impostare l'ordine di tabulazione attraverso la lista dei controlli. Per impostare la lista di tabulazione attraverso la lista unita 1. dal menu View, scegliete Tab Order. 2. Scegliete By Row o By Column. 3. Nella finestra di dialogo Tab order, utilizzate puntatore per sistemare la vista. 4. cliccate su ok. Personalizzare i Forms Potete aggiungere miglioramenti al vostro forum per renderli più interessanti visivamente e semplice all'utilizzo. Ad esempio potete raggruppare controlli simili a con l'ausilio di una cornice disegnata attorno ad essi in oppure utilizzare delle immagini per dare ai form un aspetto più professionale. Attraverso il Form Designer, potete personalizzare i form in questo modo: ● Cambiando il formato del testo ● Aggiungendo forma e linee al form ● Aggiungendo grafica al form ● impostando il colore di primo piano e il colore di fondo del form Cambiare di dimensioni e le caratteristiche del testo Attraverso le proprietà dei font nella finestra delle proprietà, potete modificare lo stile e le dimensioni del testo che appaiono nei controlli che avete aggiunto al vostro form. Potete selezionare i font a dalla lista dei font disponibili sul vostro sistema. Per modificare il testo di un vostro form, cambiate le proprietà del font, come FontName. FontSize e FontBold, mostrate nella finestra delle proprietà. Per cambiare il testo dei vostri form 1. Da Form Designer, selezionate il controllo che volete modificare. 2. in nella finestra delle proprietà, abbassate la lista degli oggetti, e selezionate l'oggetto che volete modificare. 1. localizzate le proprietà del font a che volete modificare, e e impostati valori desiderati. Aggiungere forme geometriche e linee ad un form Potete aggiungere forme e linee ad un form per personalizzarlo. Ad esempio i potreste voler separare un gruppo di controlli con una linea di divisione, oppure raggrupparli attraverso un quadrato disegnato attorno. Per aggiungere una linea ad un form 1. Nella barra degli strumenti Form Controls, scegliete il tasto linea.. 2. disegnate con il mouse la linea che volete creare sul form Potete ridimensionare o spostare la linea come gli altri controlli, potete modificare la pendenza della linea attraverso la finestra delle proprietà con l'opzione LineSlant. Per aggiungere una forma al Form 1. Nella barra degli strumenti Form Controls, scegliete il tasto Shape. 2. disegnate con i mouse la forma sul form. Potete modificare la forma dell'oggetto disegnato attraverso le proprietà curvatura nella finestra delle proprietà. Aggiungere grafici a un form Potete aggiungere un disegno allo sfondo del vostro form oppure un immagine all'interno di una casella form. Per aggiungere grafica al form ● Scegliete uno dei seguenti metodi: per cambiare lo sfondo del form, selezionate il form ❍ -oppureper aggiungere un margine al form, selezionate il controllo immagine dalla barra degli strumenti Form Control e posizionatelo sul form. 1. 2. 3. 4. nella finestra delle proprietà, selezionate proprietà Picture. cliccate sul tasto di dialogo e per vedere la finestra Open. localizzate l'immagine che volete inserire cliccate su OK Impostare i colori del form Potete impostare i colori del forma utilizzando le proprietà ColorSource sulla base di uno schema di colori esistenti, oppure potete utilizzare la barra degli strumenti Color Palette per modificare i colori di primo piano o del fondo e dei controlli all'interno. Per impostare i colori attraverso la proprietà ColorSource ❍ Nella scheda Layout nella finestra delle proprietà, scegliete ColorSource e il valore desiderato. Per impostare il colore di primo piano o di sfondo di un Form o di un controllo 1. 2. 3. 4. 5. Dal menu View, selezionate la barra degli strumenti Color Palette. Scegliete Foreground (primo piano) o Background (sfondo). selezionate il controllo o il form che volete modificare. Nella barra degli strumenti Color Palette, selezionate il colore che desiderate utilizzare. per visualizzare più colori, scegliete Other Colors. Per creare colori personalizzati 1. Nella barra degli strumenti Color Palette, scegliete Other Colors 2. nella finestra di dialogo Color, scegliete Define Custom Colors per visualizzare Custom Color Selector. 3. scegliete una delle caselle Custom Color, cliccate nella Custom Color Selector per selezionare il colore personalizzato che volete. 4. Scegliete Add to Custom Color per aggiungere nuovo colore alla vostra paletta. 5. cliccate su OK Visual FoxPro applicherà il colore personalizzato alla selezione attiva. Impostare le dimensioni massime di area del form Impostando l'area di disegno del form assicura che esso venga mostrato correttamente a seconda della specifica risoluzioni. Ad esempio, se sapete che l'utente utilizza 640 per 480 come risoluzione non dovette impostare l'area massima di disegno a 1024 x 768.. Per impostare l'area massima di disegno 1. dal menu Tools scegliete Options 2. Nella scheda Forms, selezionate il valore Maximum Design Area Suggerimento- Se selezionate NONE, il Form Designer non pone un limite nelle dimensione del form che potete disegnare.