1
Šta je novo
u Accessu 2000
-
Istorija Accessovih promena
-
Novine koje donosi Access 2000
-
Novine Accessa 2000 u oblasti razvoja višekorisničkih aplikacija
-
Microsoft Data Engine (MSDE)
Pošto čitate ovu knjigu, znači da ste verovatno već ubeđeni da je Microsoftov Access 2000 (koji ćemo nadalje zvati Access 2000) odgovarajuća platforma za vaš posao projektanta aplikacija. Najverovatnije ste u pravu. Microsoft je napravio ozbiljno, složeno i moćno razvojno okruženje za aplikacije baze podataka koje treba da rade na samostalnim ili na umreženim računarima.
U ovom poglavlju razmotrićemo istoriju Accessa i ukratko ćemo opisati nove mogućnosti Accessa 2000, a naročito one koje se odnose na programiranje aplikacija za profesionalnu namenu.
napomena
|
Access se može koristiti i u samostalnim i u višekorisničkim (deljenim) okruženjima. U ovoj knjizi izraz višekorisnički upotrebljavamo u smislu korišćenja Accessa u okruženju s više korisnika koji pristupaju deljenim resursima. Baza podataka u višekorisničkom Access okruženju može da bude mašina baze podataka Jet, Microsoft Data Engine (MSDE), SQL Server ili možda Oracle. Osim toga, višekorisnički Access na sličan način obuhvata i Internet i intranet. Ova knjiga je usredsređena na korišćenje Accessa na nivou firme, a ne pojedinca.
|
|
Kratka istorija Accessa
Access je proširio vidike mnogih projektanata aplikacija. To je bio jedan od prvih relacionih proizvoda za Windows 3 platforme, a bio je svakako prvi koji je zadovoljavao potrebe projektanata aplikacija, kako po firmama, tako i samostalnih. Osim lakoće s kojom je omogućavao savladavanje početnih koraka, Access 1 je znatno uprostio i pravljenje jednostavnih aplikacija. Ipak, projektanti su nailazili na izvesna ograničenja čim bi u svojim aplikacijama dosegli određen stepen složenosti. Na primer, ozbiljno ograničenje predstavljala je činjenica da baza podataka nije mogla da bude veća od 128 MB. Access 1.1 je povećao maksimalnu veličinu na 1 GB, a uklonio je još neka ograničenja. Pa ipak, i dalje su nedostajale mnoge profesionalne mogućnosti. Na primer, programerima koji su navikli na gotovo potpunu fleksibilnost Visual Basica smetala je nemogućnost Accessa da u toku rada aplikacije menja vrednosti svojstava kontrolnih objekata i obrazaca. S druge strane, pošto od Accessa nije bilo jednostavnijeg načina da se podaci prikazuju na obrascima ili učitavaju s njih, projektanti aplikacija su ipak pronalazili načine da zaobiđu ograničenja Accessa 1.1
Access 2 je projektantima ponudio značajna poboljšanja. Iako se to odnosilo i na krajnje korisnike, veliki korak unapred u poređenju sa verzijom 1.1 predstavljala su poboljšanja u oblasti projektovanja aplikacija. Profesionalnom programeru Access 2 je doneo nove mogućnosti u gotovo svim elementima ovog proizvoda, među kojima su bile i sledeće:
-
Znatno proširen model objekata i model događaja.
-
Pristup većini svojstava obrazaca i izveštaja tokom rada aplikacije.
-
Procedure za obradu događaja.
-
Lančano ažuriranje i brisanje radi očuvanja referencijalnog integriteta.
-
Poštovanje pravila u vezi s podacima obezbeđivala je sama mašina baze podataka.
-
Nove vrste upita - unije, upiti za definisanje podataka i komandni upiti, kao i podrška za podupite.
-
Optimizacija upita primenom tehnologije Rushmore.
-
Objekti za pristup podacima (Data Access Objects, DAO), strukturiran objektni model za rad sa podacima pomoću mašine baze podataka Jet.
-
Podrška za klijente koji koriste tehnologiju OLE Automation.
-
Zaštita baze podataka koja se mogla programirati u kodu.
-
Podrška za 16-bitne namenske OLE kontrolne objekte.
Access 95 je bio veliki poduhvat. I Access i Jet preneti su sa 16-bitnog na 32-bitni Windows. Jezik Access Basic i integrisano razvojno okruženje zamenjeni su jezikom Visual Basic for Applications (VBA) i njegovim unapređenim razvojnim okruženjem. Dodata su i mnogobrojna poboljšanja, između ostalog i sledeća:
-
Mogućnost pravljenja i korišćenja više instanci istog obrasca.
-
Obrascima je dodato svojstvo KeyPreview.
-
Mogućnost biranja više stavki na običnim listama i bolje performanse padajućih lista.
-
Nov, jednostavniji kontrolni objekat Image.
-
Mogućnost utvrđivanja i menjanja tipa kontrolnog objekta pomoću svojstva ControlType.
-
Ugrađenoj alatki "upit na osnovu obrasca" dodata je mogućnost filtriranja na osnovu obrasca.
-
Podrška u modulima klase obrazaca za javne funkcije (metode), kao i za Let, Get i Set procedure svojstava.
-
Mogućnost da se korišćenjem događaja NoData obrasca ili izveštaja ne štampa izveštaj ukoliko nema podataka za njega.
-
Dodato je svojstvo RepeatSection, koje vam omogućava da pri vrhu svake štampane strane ponovite zaglavlje grupe.
-
Tip polja Counter (brojač) zamenjen je fleksibilnijim tipom AutoNumber.
-
Jeziku VBA dodati su sklopovi With ... End With i For Each ... Next.
-
Dodat je znak za nastavak reda u kodu.
-
Dodata je podrška za imenovane parametre, opcione parametre i nizove parametara.
-
Dodati su novi tipovi podataka Date, Boolean i Byte.
-
Poboljšani su editor programskog koda i mogućnosti za otkrivanje grešaka, kao što su prozor za nadgledanje promenljivih Watch i bojenje ključnih reči u kodu.
-
Dodata je podrška za replikovanje.
-
U verziju 3 mašine baze podataka Jet ugrađeno je više poboljšanja koja se tiču performansi i rada u višekorisničkom okruženju.
-
Ugrađena je podrška za OLE Automation servere.
-
Dodata su pokretačka svojstva koja Jetu omogućavaju da zabrani pristup prozoru baze podataka i da izmeni sadržaj naslovnog reda i ikone u prozoru aplikacije.
U poređenju sa Accessom 95, Access 97 je predstavljao promenu manjeg obima. Pa ipak, i on je doneo veći broj novih mogućnosti, kao i poboljšanja već postojećih. Promene su bile sledeće:
-
Uveden je nov tip podataka, Hyperlink.
-
Åarobnjak Publish to the Web Wizard olakšao je objavljivanje statičkih ili dinamičkih podataka na Internetu ili na lokalnom intranetu.
-
Uvedeni su "lagani" obrasci koji se brže učitavaju, jer nisu opterećeni nikakvim kodom.
-
Dodat je kontrolni objekat Tab (skup kartica) koji pojednostavljuje pravljenje okvira za dijalog u kojima se podaci prikazuju na karticama.
-
Meniji i palete sa alatkama mogu se u potpunosti programirati korišćenjem objekta CommandBar zbirke CommandBars.
-
Upitima su dodata nova svojstva RecordSetType, FailOnError i MaxRecords.
-
Ugrađena je podrška za module klasa.
-
Pisanje koda znatno je olakšano uvođenjem tehnologije IntelliSense. Dok pišete VBA kôd, editor prikazuje listu objekata, metoda i svojstava sa koje možete da birate stavke. Osim toga, VBA editor prikazuje i listu parametara ugrađenih ili korisničkih procedura.
-
Dodata je podrška za tehniku "prevuci i pusti", što znači da mišem možete da zahvatite blok koda i da ga premestite na novu lokaciju.
-
Dodato je nekoliko poboljšanja koja olakšavaju otklanjanje grešaka, kao što su novo okno Locals i Data Tips.
-
Dodata je podrška za delimično replikovanje i za replikovanje na Internetu.
-
Dodata je podrška za nov način uspostavljanja veza između klijenata i servera, nazvana ODBCDirect.
-
Dodata je podrška za specijalni MDE format koji uklanja ceo VBA kôd.
Access 2000 - najbolji Access koji se dosad pojavio
Access 2000 je novo, znatno prošireno i poboljšano izdanje. Broj važnih poboljšanja je zadivljujući. Najznačajnija među njima mogu se svrstati u pet osnovnih kategorija:
-
Pristup podacima
-
Internet/intranet
-
VBA
-
Obrasci i izveštaji
-
Druga poboljšanja
U narednim odeljcima nabrajamo najvažnije izmene, grupisane po osnovnim kategorijama.
Pristup podacima u Accessu 2000
Način pristupanja podacima u Accessu 2000 izmenjen je u nekoliko važnih aspekata. Access 2000 se isporučuje sa novom opcijom koja se odnosi na mašinu baze podataka, zatim sa novim modelom pristupa podacima i sa novim formatom baze podataka. Ove i druge izmene mogu se ukratko opisati na sledeći način:
-
Iako Jet Engine ostaje standardna mašina baze podataka, Access može da radi i sa novom mašinom Microsoft Data Engine (MSDE), što je verzija SQL Servera 7 koja prihvata ograničen broj istovremenih veza sa klijentima.
-
Osim pravljenja standardnih Accessovih MDB datoteka baza podataka, sada možete da pravite i ADP (Access Data Projects) datoteke (poznate i kao Access projekti). ADP datoteka je baza podataka, koja je "prazna" (ne sadrži podatke); u nju možete da smestite obrasce, izveštaje, makroe i module i da ih povežete s podacima koji se nalaze u SQL Server ili MSDE bazi podataka. To znači da isti Accessov korisnički interfejs, koji poznajete i na koji ste navikli, možete da koristite kao laganu i snažnu čeonu komponentu koja radi s podacima na SQL Serveru!
-
Access projekti sadrže dodatne stavke menija koje omogućavaju integrisanje aplikacije sa bezbednosnim merama i mogućnostima replikovanja na SQL Serveru.
-
Access je čvrsto spregnut sa ADO (ActiveX Data Objects) objektima, tj. s modelom pristupa podacima koji Microsoft preporučuje. Postojeći DAO kôd će raditi besprekorno, ali preporučljivo je da u novom kodu za pristup podacima koristite ADO objekte, jer oni obezbeđuju veću prilagodljivost i pružaju više mogućnosti.
-
Mašina baze podataka Jet radi s podacima znakovnog tipa u Unicode formatu. To znatno olakšava promenu jezika u bazi podataka, ali znači i to da je za podatke znakovnog tipa neophodan dvaput veći prostor. Zbog toga je maksimalna veličina baze podataka povećana od jednog GB na dva GB. Osim toga, Jet 4 na zahtev može i da komprimuje tekstualna polja i polja tipa Memo.
-
Osim nekadašnjeg zaključavanja podataka na nivou cele stranice, Jet sada omogućava i zaključavanje na nivou reda tabele! To znači da je odsad pesimističko zaključavanje znatno upotrebljivija opcija.
-
Jet SQL podržava više novih proširenja ANSI-92 SQL standarda, koje možete da iskoristite kada radite sa ADO objektima i Jetovim OLE DB dobavljačima podataka.
-
Jet pruža mogućnost prikazivanja liste koja sadrži imena računara i korisnika koji su trenutno povezani s bazom podataka. Možete da iskoristite Jetove mogućnosti upravljanja vezama da biste sprečili da novi korisnici uspostavljaju veze s bazom podataka; to može da bude korisno, npr. kada želite da isključite bazu podataka da biste napravili rezervne kopije njenog sadržaja.
-
Replikovanje je poboljšano u više oblasti. U starijim verzijama Accessa replikovanje je moglo da bude uzrok i sukoba i grešaka. U Jetu 4 sve se smatra sukobom, što olakšava njegovo rešavanje. Osim toga, rešavanje sukoba sada se odvija na nivou kolone, a ne na nivou tabele. To znači da se više ne smatra sukobom ako dva korisnika istovremeno menjaju sadržaje dva različita polja u istom zapisu. Jet 4 definiše tri nivoa "vidljivosti" replike, što znači da možete da formirate hijerarhije replika unutar skupa replika. Možete da pravite i specijalne replike iz kojih se zapisi ne mogu brisati. Osim toga, Jet podržava i dvosmerno replikovanje sa spajanjem podataka iz SQL Servera.
-
U ADO porodici Microsoft je obezbedio dva modela za rad sa šemama baza podataka i za replikovanje: ADOX i JRO. ADOX vam omogućava da pregledate i menjate šemu Accessa i drugih ADO dobavljača podataka, dok je JRO objektni model specifičan za Jet, koji vam omogućava da sažimate i da popravljate baze podataka, kao i da koristite mogućnosti replikovanja koje pruža Jet 4.
Pitanja u vezi sa Jetom i višekorisničkim radom razmatraju se u poglavlju 2. Zaštita podataka i ADOX opisani su u poglavlju 8. Replikovanje i JRO opisani su u poglavlju 9. Pošto su nove klijent/server mogućnosti Accessa toliko važne za višekorisničke aplikacije, posvetili smo im pet poglavlja. Projektovanje klijent/server baza podataka tema je poglavlja 3. Poglavlja 4 i 5 opisuju pravljenje SQL Server i MSDE baza podataka. Poglavlje 6 opisuje ADO u klijent/server kontekstu, dok se u poglavlju 7 razmatraju razna pitanja u vezi sa implementiranjem klijent/server sistema.
Internet i intranet mogućnosti Accessa 2000
U ovoj verziji Accessa, čarobnjak Publish to the Web zamenjen je stranicama za pristup podacima. Stranica za pristup podacima je Web stranica na kojoj, koristeći Internet Explorer 5 (ili noviji), možete da pregledate i da menjate podatke koji se nalaze u Access, SQL Server ili MSDE bazi podataka. Evo nekoliko činjenica o stranicama za pristup podacima:
-
Stranice za pristup podacima koriste mogućnosti povezivanja sa podacima na strani klijenta koje pruža IE 5.
-
Podaci na stranici za pristup podacima ugrađuju se u HTML stranicu pomoću proširenog jezika za označavanje (eXtensible Markup Language, XML).
-
Stranice za pristup podacima možete da koristite unutar MDB baze podataka, ADP projekta ili Internet Explorera 5.
-
U Access je ugrađena alatka za projektovanje stranica za pristup podacima pomoću koje možete da pravite svoje stranice.
-
Svojim stranicama možete da pridružujete skriptove napisane u VBScriptu ili u JavaScriptu. Microsoft je Accessu dodao i alatku Microsoft Script Editor (MSE), editor skriptova bogat mogućnostima koji se zasniva na programu Visual InterDev.
-
Stranice za pristup podacima možete da pravite od početka ili da za to upotrebite neku od postojećih Web stranica. U Access je ugrađen i čarobnjak koji vam omogućava da na brzinu "skrpite" stranicu.
-
U svoje stranice možete da ugrađujete i Office Web komponente. To su ActiveX kontrolni objekti koji u obliku komponenata pružaju mogućnosti Microsoftovog Excela. Postoje komponente za tabelarne proračune, za izvedene tabele i za dijagrame.
-
Stranice za pristup podacima možete da koristite za pregledanje i menjanje sadržaja zapisa, ali i za izradu izveštaja, zahvaljujući ugrađenim mogućnostima grupisanja podataka.
Osim stranica za pristup podacima, Access 2000 nudi više drugih Internet/intranet mogućnosti:
-
Standardnim Accessovim obrascima i izveštajima možete da dodajete hiperveze.
-
Hipervezama možete da manipulišete iz VBA koda.
-
Kontrolni objekat Web Browser možete da postavite na standardni Accessov obrazac da biste od njega napravili čitač Weba.
-
Pomoću komande File
Export možete da izvozite Accessove tabele, upite, obrasce i izveštaje u više formata, među kojima su HTML i ASP.
Stranice za pristup podacima detaljno su opisane u poglavljima 10 i 11. Office Web komponente opisane su u poglavlju 12. Tema poglavlja 13 jesu mogućnosti Accessa u svojstvu Web klijenta. Objavljivanje Accessovih podataka u HTML i ASP formatima opisano je u poglavlju 14.
Access 2000 VBA
Accessov editor modula zamenjen je editorom iz Visual Basica 6. Ako ste dugogodišnji projektant aplikacija u Accessu, u početku će vas novo okruženje možda malo zbuniti, ali vremenom ćete naučiti da cenite prednosti novog VBA editora. Osim toga, Accessova verzija jezika VBA, VBA 6, koja sada Access dovodi na nivo Visual Basica 6, donosi nekoliko dobrodošlih novina.
Izmene su sledeće:
-
U Access 2000 ugrađen je isti VBA editor koji se ugrađuje u ostale aplikacije Microsoftovog paketa Office, kao i u druge pakete u kojima se koristi VBA.
-
Jedinstvenom lozinkom može se zaštiti VBA kôd u svim globalnim modulima i u modulima obrazaca i izveštaja. VBA kôd se više ne štiti bezbednosnim merama koje su definisane na nivou korisnika (radne grupe).
-
VBA editor radi sa objektnim modelom koji može da se programira, a podržava i COM dodatke. Dodatke koji vam pomažu pri pisanju, analiziranju i formatiranju VBA koda možete da preuzmete sa Interneta, da ih kupite ili da ih sami napravite.
-
U VBA je ugrađeno više novih funkcija, među kojima su StrRev, MonthName, Split, Join, Replace i mnoge druge.
-
Komandom Debug.Assert možete da zadajete mesta u kodu na kojima se proverava ispunjavanje određenog uslova.
-
Access podržava operator AddressOf, a moduli klase podržavaju novu rezervisanu reč Implements.
Obrasci i izveštaji Accessa 2000
Ãto se obrazaca i izveštaja tiče, Access nije doneo veliki broj novina. Promene su pretrpeli sledeći elementi:
-
Obrasci i izveštaji odsad podržavaju grupisanje i razdvajanje kontrolnih objekata.
-
Kontrolni objekti koji prikazuju tekst omogućavaju da korisnik zada vrstu okvira oko teksta, što omogućava pomeranje teksta zajedno sa objektom.
-
Na sadržaj polja za tekst i padajućih lista možete da primenjujete pravila uslovnog formatiranja.
-
Objekat tipa Recordset na kome se obrazac zasniva možete da podesite tako da bude povezan s proizvoljnim objektom tipa DAO ili ADO Recordset, odnosno odsad možete da otvorite skup podataka i da ga dodelite svojstvu Recordset obrasca. To znači da najzad možete da povežete obrazac i s drugim vrstama podataka, a ne samo s tabelom, upitom ili SQL naredbom.
-
Pošto skup podataka možete da dodelite obrascu, transakcije možete da uskladite sa promenama vrednosti podataka na obrascu.
Druga poboljšanja koja donosi Access 2000
U Access je ugrađeno i više drugih poboljšanja koja se ne mogu jasno svrstati u neku od prethodnih kategorija. To su sledeća:
-
Izmene imena objekata oduvek su bile problem za korisnike Accessa i projektante aplikacija za Access, tj. tako je bilo dosad. U slučaju izmene imena objekta, alatka Name AutoCorrect Accessa 2000 automatski usklađuje imena objekata u svim obrascima, izveštajima i upitima gde se ono pojavljuje. Ipak, postoje određena ograničenja - na primer, AutoCorrect ne ispravlja referencu u VBA kodu, niti to čini u ADP datotekama, niti u replikovanim bazama podataka - ali vam štedi vreme kada menjate imena objekata.
-
Ranije se sa Interneta mogao preuzeti dodatak za Access 97 pomoću koga su se štampale veze između tabela. Mogućnost štampanja tih veza sada je ugrađena u Access 2000. U prozoru Relationships izaberite File
Print Relationships da biste odštampali veze između tabela baze podataka oko kojih ste se toliko trudili.
-
Åarobnjak Access Upsizing Wizard potpuno je integrisan u Access. Izaberite Tools
Database Utilities
Upsizing Wizard da biste podatke iz Accessa preneli na SQL Server.
-
Okviri za dijalog Find i Replace više nisu modalni.
-
Access nije nikada mnogo "mario" za kompatibilnost sa prethodnim verzijama. Međutim, Access 2000 prekida taj trend: izaberite Tools
Database Utilities
Convert Database
To Prior Access Database Versions da biste bazu podataka Accessa 2000 snimili u format Accessa 97.
-
Access 2000 omogućava automatsko sažimanje i popravljanje baze podataka u istom koraku. Osim toga, postoji i opcija za automatsko sažimanje baze podataka pri zatvaranju.
Novine u paketu Microsoft Office Developer
Mnogi ljudi koji se profesionalno bave projektovanjem aplikacija poželeće da nabave razvojni paket Microsoft Office Developer (MOD). Ova verzija paketa Microsoft Office sadrži Microsoft Office 2000 Premium (koji sadrži sve što i Office Professional, plus FrontPage, Publisher i PhotoDraw), plus sledeće razvojne alatke:
-
Licencu za distribuiranje izvršnih datoteka za aplikacije koje koriste Access i Jet Engine ili MSDE.
-
Alatku COM Add-In designer, tj. VBA alatku koja omogućava pravljenje dodataka za sve aplikacije iz paketa Office 2000.
-
Licencirani primerak programa za upravljanje verzijama izvornog koda, Visual Source Safe (VSS) 6, a ne samo priključke za VSS koji su postojali u razvojnom paketu Office 97 ODE.
-
Alatku Package and Deployment Wizard, koja je u Officeu 2000 nasledila alatku Access Setup Wizard.
-
Mnogobrojne ActiveX kontrolne objekte, među kojima su i ADO Data, FlexGrid i Data Repeater.
-
Više korisnih dodataka, kao što su VBA Code Librarian, VBA String Editor, VBA Error Handler i VBA Code Commenter.
-
Alatku Windows API Viewer koji omogućava pregledanje i kopiranje u kôd deklaracija Windowsovih API funkcija, konstanti i tipova.
-
Alatku Microsoft Replication Manager, nadograđenu verziju Microsoftove alatke za administriranje replikovanja.
-
Ãtampane primerke priručnika Microsoft Office 2000 Visual Basic Programmers's Guide i Microsoft Office 2000 Object Model Guide.
-
Alatku za pravljenje datoteka sistema za pomoć u HTML formatu, HTML Help Workshop.
-
Razvojne pakete Microsoft Agent Software Development Kit i Microsoft Answer Wizard Software Development Kit.
napomena
|
Ako već imate paket Microsoft Office, alatke koje pripadaju paketu MOD možete nabaviti kupovinom paketa Microsoft Office 2000 Developer Tools.
|
|
Alatka Replication Manager opisana je u poglavlju 9. Upravljanje izvornim verzijama koda opisano je u poglavlju 15. Alatka Package and Deployment Wizard opisana je u poglavlju 16.
Sažetak
Access je danas vodeći program za rad sa lokalnim bazama podataka na tržištu. On sadrži pravi skup mogućnosti za projektante aplikacija koje rade samostalno i/ili u višekorisničkom okruženju. Zahvaljujući izmenama koje je Microsoft uneo u Access 2000, to je postala najbolja verzija koja se dosad pojavila.