Introduzione P rima dell’introduzione di Microsoft Access, i sistemi di gestione dei database erano sinonimo di programmazione: senza la programmazione non era possibile sfruttare l’intera potenza del software. In verità, alcuni sistemi di gestione dei database, come Clipper di Nantucker Corporation, erano costituiti solo da un ambiente di sviluppo e da un compilatore: lo sviluppatore del database doveva progettare i database e poi scrivere tutto il codice che costituiva la sua applicazione. L’introduzione di Microsoft Access nel 1991 ha cambiato questo sistema: Access si distingueva per il suo approccio grafico alla gestione dei database, che permetteva agli utenti di trarre vantaggio da alcune potenti funzionalità del DBMS senza dover svolgere alcuna programmazione. Usando procedure guidate e finestre di progettazione grafiche, Access permetteva agli utenti di progettare database, creare maschere e interfacce utente, scrivere query e generare report. Questa potenza e questa flessibilità, combinate con la facilità d’uso, hanno rapidamente trasformato Access nel sistema di gestione dei database desktop d’eccellenza. Anche se non è richiesta la programmazione per usare Access, molti programmatori sono stati attratti dal sistema. In effetti, la maggior parte dei programmatori preferisce Access ad altri sistemi di gestione dei database, principalmente per due motivi: ■ Offrendo un ambiente di sviluppo delle applicazioni database rapido ed efficace, Access invita gli utenti ad apprendere altre informazioni per utilizzare il software in modo più potente, efficace ed efficiente. In effetti, molti programmatori Access professionisti hanno iniziato come semplici utenti del sistema, che hanno sviluppato una passione per il prodotto ma si sentivano frustrati quando volevano svolgere qualche operazione non sapendo come procedere. ■ Nonostante la facilità d’uso, gli utenti a un certo punto si imbattono nei limiti dell’interfaccia utente di Access e devono passare alla programmazione: alcune operazioni possono essere svolte solo scrivendo un programma. XIV INTRODUZIONE Chi ha acquistato questo libro è senza dubbio un utente di Access che ha fatto queste esperienze: apprezza l’uso del sistema e la potenza a disposizione, ma vuole saperne di più su un suo utilizzo efficace. Nello stesso tempo, ha scoperto alcune limitazioni di Access e ha capito che per continuare a sviluppare abilità con il sistema deve passare alla programmazione. Magari è una persona responsabile dello sviluppo e della manutenzione delle applicazioni Access in una piccola impresa, dove molti utenti hanno una minima esperienza con l’interfaccia. Access 2003 Uso avanzato e programmazione VBA porta l’utente esperto al livello successivo, quello della programmazione con Access, sfruttando le conoscenze già apprese. La Parte Prima introduce alcuni concetti fondamentali della struttura e dell’architettura dei programmi (analisi dei requisiti e convenzioni di denominazione, per esempio) mentre rivede le operazioni eseguibili in Access senza la programmazione. Offre un breve ripasso dei principali componenti di un’applicazione Access (compresi macro, moduli ed eventi) e una spiegazione di alcuni elementi dell’interfaccia che possono essere usati per accedere al codice scritto. Un esempio è Gestione pannello comandi, usato per realizzare un sistema di menu per un’applicazione Access, o la personalizzazione di menu e barre degli strumenti del programma per consentire all’utente di eseguire le routine con un clic. La Parte Seconda presenta Visual Basic, Applications Edition (VBA), il linguaggio di programmazione usato da Microsoft Access (e dalle altre applicazioni Office). È possibile apprendere i concetti di base della programmazione, come variabili, matrici, oggetti, strutture di programmazione (cicli, strutture decisionali), funzioni e routine. VBA, però, non offre solo un linguaggio di programmazione, ma un ambiente di sviluppo integrato (IDE, Integrated Development Environment) completo che permette di eseguire, collaudare e sottoporre a debug il codice. Questa parte del libro presenta Visual Basic Editor, l’IDE di VBA. Infine, VBA stesso non offre elementi del linguaggio che supportano l’accesso ai dati: questa operazione viene gestita da una libreria separata, ADO (ActiveX Data Objects), che può essere chiamata da VBA. La Parte Seconda presenta anche le nozioni fondamentali di ADO. La Parte Terza del libro inizia a mostrare come usare VBA per lo sviluppo di applicazioni Access. Affronta l’uso di VBA con maschere e report, la creazione di menu e barre degli strumenti da programma, e la personalizzazione dell’ambiente Access sia dalla finestra di dialogo Opzioni sia da programma. In questa parte del libro è possibile imparare a usare VBA per eseguire gli oggetti di Access (come maschere e report), ma anche come configurare l’interfaccia utente di Access affinché l’utente possa eseguire l’applicazione. La Parte Quarta presenta alcune aree più specializzate dello sviluppo Access. Sarà possibile conoscere la protezione in Access, un argomento sempre più importante da quando l’applicazione viene usata negli ambienti di rete e multiutente; inoltre, i lettori impareranno a usare Access per creare pagine di accesso ai dati per il Web e a importare dati da altre applicazioni Office, come Excel e Word. Il Capitolo 19 affronta l’aggiornamento a un DBMS aziendale come Microsoft SQL Ser- INTRODUZIONE XV ver, continuando a usare Access come front-end attraverso una tecnologia chiamata ADP (Access Data Projects, progetti dati di Access). La Parte Quinta è costituita da due capitoli, uno sulla programmazione multiutente e uno sulla programmazione all’esterno dell’ambiente Access con le capacità sviluppate in questa applicazione. Con l’evoluzione di Access da DBMS desktop per singolo utente a DBMS di rete, sono aumentate le richieste ai programmatori di codice solido ed efficiente. Il capitolo sulla programmazione multiutente affronta alcune tecniche da usare per garantire che l’applicazione operi come previsto quando più utenti accedono ai dati. L’ultimo capitolo dimostra che le capacità apprese nel corso del libro si applicano non solo ad Access, ma anche ad altre applicazioni Office, all’edizione al dettaglio di Visual Basic e persino a VBScript e Active Server Pages. Destinatari del libro Access 2003 Uso avanzato e programmazione VBA è scritto per gli utenti esperti di Access che conoscono le basi della creazione di applicazioni database usando l’interfaccia di Access. Presume che i lettori conoscano la creazione di tabelle, query e report usando le procedure guidate o la visualizzazione Struttura, e magari che abbiano creato maschere ed eseguito macro di Access. Presume inoltre che siano pronti a compiere il prossimo passo, sia perché hanno incontrato i limiti dell’interfaccia di Access, sia perché ritengono necessario saperne di più per creare applicazioni professionali per altri utenti. Anche se il libro è stato scritto usando Access 2003, è stato verificato anche con le precedenti versioni dell’applicazione. Per questo motivo, può servire anche come introduzione alla programmazione in Access per chi usa Access 97 o versioni successive.