Sunteți pe pagina 1din 61

5 BAZE DE DATE

5.1 Utilizarea aplicaiei Access


5.1.1 Concepte generale referitoare la baze de date
Definiia bazei de date n Encyclopedia Britannica baza de date este definit astfel: Prin baz de date se nelege orice colecie de date sau informaii, care este organizat special, n vederea consultrii rapide a datelor de ctre utilizatorul unei aplicaii, care ruleaz pe un calculator. Bazele de date sunt structurate astfel nct s faciliteze memorarea, regsirea, modificarea i tergerea datelor, prin diferite operaii specifice. Bazele de date se pot memora pe disc sau pe band magnetic, pe disc optic sau pe orice alt fel de tip de memorare secundar . n Britannica Concise Encyclopedia baza de date este definit astfel: Prin baz de date se nelege o colecie de date sau informaii care sunt organizate astfel ca ele s fie cutate i regsite rapid, de obicei, de ctre un calculator!. Organizarea bazei de date n Access prima activitate a utilizatorului const n crearea unei baze de date "fiier de baz de date, care are e#tensia implicit MDB, prescurtare de la Microsoft DataBase$. n acest fiier se memoreaz tot ce se creeaz pentru respectiva baz de date. Tabele %biectele cele mai importante, memorate ntr&o baz de date sunt tabelele bazei. n accepiunea programului Access, un tabel este format dintr&un numr de linii "rnduri$ i dintr&un numr de coloane. Prima linie a tabelului are un rol
Database: 'n( collection of data, or information, t)at is speciall( organized for rapid searc) and retrieval b( a computer. *atabases are structured to facilitate t)e storage, retrieval, modification, and deletion of data in con+unction ,it) various data&processing operations. *atabases can be stored on magnetic dis- or tape, optical dis-, or some ot)er secondar( storage. ! Database: .ollection of data or information organized for rapid searc) and retrieval, especiall( b( a computer.

!/0

special, ea este linia de antet "cap de tabel$ a tabelului. 1iecare celul a liniei de antet conine un nume de cmp. .elelalte linii ale tabelului sunt articolele "nregistrrile$ tabelului. 1iecrui nume de cmp i este asociat un tip de dat i o dimensiune "lungime$, e#primat n octei. 2ipul unui cmp stabilete domeniul de valori al cmpului, adic valorile care se pot memora n cmpul respectiv. 'stfel, de e#emplu, ntr&un cmp tip Text se pot memora pn la !33 caractere "proprietatea FieldSize a cmpului are valoarea ma#im !33$. ntr&un cmp Number se pot memora valori numerice. Proprietatea FieldSize a cmpului stabilete domeniul de valori permise. *ac, de e#emplu, aceast proprietate este configurat cu valoarea Byte, atunci n cmpul respectiv se pot memora numere ntregi din intervalul 4/,!335.
6ume.mp 'rticolul 'rticolul ! ... 'rticolul m 6ume.mp! ... 6ume.mpn

7nui tabel i pot fi adugate nu numai articole noi, ci i cmpuri noi, iar unele cmpuri pot fi desfiinate, adic structura tabelului poate fi modificat. Atenie: n cazul modificrii structurii unui tabel, interogrile, formularele i rapoartele care se bazeaz pe tabelul reproiectat trebuie refcute! Exemplu: 8om considera un tabel care are numele tbl"arfa i este destinat gestionrii produselor dintr&un magazin. 2abelul conine urmtoarele cinci nume de cmpuri: "arfa#$ "un cmp de tip 'uto6umber, prin care fiecare articol al tabelului va avea un identificator unic9 acest identificator este un numr ntreg generat de programul Access, motiv pentru care utilizatorul nu poate introduce n tabel articole care au acelai identificator$9 Nume "un cmp de tip te#t care conine numele unui produs$9 Cantitate "un cmp numeric care conine cantitatea comandat de la un furnizor din produsul respectiv$9 %ret&nitar "un cmp de tip valoare monetar care conine preul unitar al produsului$9 $ata%rocurarii "un cmp de tip dat calendaristic care conine data de procurare a produsului$. 'cest tabel poate conine urmtoarele cinci articole: !/:

% baz de date poate conine mai multe tabele. 'ceste tabele, de regul, sunt tabele asociate "adic ntre ele e#ist o anumit relaie$. 'stfel, de e#emplu, un prim tabel poate conine informaii referitoare la categoriile de produse e#istente ntr&un magazin "de e#emplu lactate, conserve$, un alt tabel poate conine informaii despre produsele propriu&zise "de e#emplu cantitatea e#istent n stoc din fiecare produs$, iar un al treilea tabel poate conine informaii referitoare la preul unitar al produselor. Interog ri ;nterogrile servesc la selectarea < pe baza anumitor criterii < a anumitor articole din tabele=. 'rticolele selectate pot fi afiate ntr&o ordine stabilit de utilizator. >#ist posibilitatea combinrii datelor provenite din mai multe tabele asociate, deci rezultatele interogrii pot fi vizualizate ntr&o singur fereastr. n ma+oritatea cazurilor, programul Access permite editarea datelor afiate ntr&o interogare9 modificrile efectuate vor fi salvate n tabelul, care a furnizat datele. Exemplu: n acest e#emplu, interogarea avnd numele 'ry"arfa selecteaz articolele tabelului tbl"arfa, care au fost procurate n data de ! decembrie ??:. 'rticolele astfel selectate sunt sortate cresctor n funcie de preul unitar al produsului.

@e menioneaz c o interogare poate s selecteze anumite articole din cele livrate de o alt interogare "o interogare se bazeaz pe un tabel sau pe o alt interogare$.

!/?

!or"#lare 1ormularele servesc n primul rnd pentru a facilita introducerea articolelor unui tabel, cu a+utorul unui ablon vizibil pe ecran. 1olosindu&le, este posibil i navigarea ntre articolele de+a introduse i editarea articolelor. 1ormularele pot afia cte un singur articol odat, astfel cA introducerea de valori n cmpurile articolului afiat va fi foarte simpl i sigur. 1ormularele pot afia articolele n ordinea definit de utilizator i permit selectarea numai a articolelor, care ndeplinesc anumite criterii. Programul Access realizeaz o nlnuire ntre formular i tabel: informaia tastat n formular va fi memorat n tabelul aferent formularului. >#ist posibilitatea utilizrii unui singur formular pentru a introduce articole, simultan, n mai multe tabele. 1ormularele sunt nzestrate cu o bar de instrumente, prevzut cu butoane de comand pentru parcurgerea articolelor de+a introduse, precum i cu un buton pentru introducerea unui articol nou. Pe bar se afieaz numrul articolului actual precum i numrul total de articole. Exemplu: Pentru a introduce articole n tabelul tbl"arfa prezentat anterior se poate utiliza urmtorul formular:

$apoarte Bapoartele servesc la e#tragerea datelor din tabele i interogri i la trimiterea lor la imprimant, sau n vederea afirii pe ecranul monitorului. 'rticolele imprimate pot fi grupate i sortate. Bapoartele pot conine antete i subsoluri de pagin "afiate la nceputul i la sfritul fiecrei pagini, n care pot fi introduse, de e#emplu, nume de cmpuri, numrul paginii curente$ precum i un antet i un subsol de raport "afiate pe prima, respectiv ultima pagin a raportului, n care se poate include, de e#emplu, sigla unei instituii sau un rezumat al tuturor datelor, ca sum a valorilor dintr&un cmp specificat$.

! /

Exemplu: Baportul corespunztor tabelului tbl"arfa poate avea aspectul alturat. n subsolul raportului a fost inclus un control tip etic)et i o cutie te#t. >tic)eta conine te#tul: (aloarea totala ) n cutia te#t a fost introdus o formul de tipul: C @um" 4Cantitate5 D 4%ret&nitar5$ prin care se calculeaz valoarea total a produselor.

C%eia pri"ar Puterea sistemelor care gestioneaz baze de date relaionale const n faptul c, n astfel de sisteme, este posibil cutarea i prelucrarea simultan a informaiilor care sunt memorate n mai multe tabele distincte, prin intermediul diferitelor interogri, formulare i rapoarte. Pentru realizarea tratrii simultane a informaiilor provenite din mai multe tabele distincte, fiecare tabel trebuie s aib cel puin un cmp "sau un numr de cmpuri$ care s conin o valoare unic pentru fiecare articol din tabel. 'stfel, prin coninutul acestui cmp fiecare articol memorat n tabel poate fi identificat n mod unic. ;nformaia memorat n cmpul respectiv este denumit valoarea cheii primare "sau valoarea cheii principale$, iar despre cmp se spune c are atributul de cheie primar a tabelului. *up ce utilizatorul desemneaz cmpul care va avea atributul de c)eie primar a tabelului, programul Access va supraveg)ea permanent informaia care se introduce n cmpul respectiv. 'stfel, n cazul n care utilizatorul introduce ntr&un cmp care are atributul de c)eie primar o valoare care de+a a fost utilizat sau nu introduce nici o informaie ntr&un astfel de cmp, programul Access sesizeaz imediat aceast greeal i emite un mesa+ de eroare, cernd remedierea erorii. !

'tributul de c)eie primar de regul se atribuie unui cmp care are tipul AutoNumber, deoarece informaiile coninute n acest cmp sunt generate de programul Access: pentru fiecare articol nou se va genera automat un nou numr de identificare. *ac ntr&un tabel e#ist un anumit cmp "de e#emplu, de tip te#t sau de tip numeric$, care ntotdeauna conine valori unice, atunci cmpul respectiv poate avea atributul de c)eie primar. @ presupunem c ntr&un tabel cu evidena populaiei e#ist un cmp, n care se memoreaz codul numeric personal ".6P$ al unei persoane. .mpul respectiv poate avea atributul de c)eie primar, deoarece nu e#ist dou persoane care au acelai .6P. .mpul care conine informaii referitoare la numele persoanei nu ar fi convenabil pentru atributul de c)eie primar a tabelului, deoarece pot e#ista dou persoane cu nume identice. n situaiile n care ntr&un tabel nu poate fi gsit un cmp, care s conin ntotdeauna valori unice, atributul de c)eie primar poate fi asociat la dou sau la mai multe cmpuri, prin care se poate realiza identificarea unic a articolelor. ntr&un tabel de eviden a populaiei, asocierea atributului de c)eie primar pentru cmpurile referitoare la nume, data de natere i domiciliu "probabil, dar nu tocmai fiabil$ ar putea fi suficiente pentru identificarea unui articol din tabel. Inde&area 7n cmp al unui tabel este Einde#atE atunci, cnd se cere ca programul Access s ataeze cmpului respectiv anumite tabele interne, prin care se realizeaz accelerarea cutrilor, sortrilor, gruprilor i filtrrilor de articole. Exemplu: @ considerm un tabel care conine informaii referitoare la anga+aii unei instituii, avnd structura urmtoare: *nga+at#$ "de tip 'uto6umber$9 Nume$eFamilie "de tip 2e#t$9 %renume "de tip 2e#t$9 Salar "de tip 6umber, Fong ;nteger$. 2abelul conine 3 articole:
Angajat D ! = H 3 NumeDe!amilie ;onescu .onstantinescu 8asilescu Bdulescu *umitrescu "renume 8asile Garia Petre Bodica .armen #alar !///// =///// 3///// ////// H/////

! !

*ac se cere inde#area n ordine cresctoare a cmpului Nume$eFamilie, atunci programul Access va crea un tabel intern cu 3 intrri, de forma urmtoare:
! = H 3 Angajat D ! 3 H = NumeDe!amilie .onstantinescu *umitrescu ;onescu Bdulescu 8asilescu

Prin inde#area cmpului Nume$eFamilie cutrile, sortrile, gruprile i filtrrile referitoare la numele de familie al anga+ailor vor fi foarte rapide. ntr&un tabel pot fi inde#ate mai multe cmpuri. 'stfel, de e#emplu, se poate cere crearea unui prim inde# referitor la nume de familie, al doilea inde# referitor la prenume i un al treilea inde# referitor la salariu. ;ndecii sunt creai cnd se salveaz tabelul. 'dugarea sau tergerea indecilor afereni unui cmp pot fi realizate oricnd, prin modificarea proprietii ndexed. %ri de cte ori se adaug sau se terg articole din tabel sau se modific coninutul anumitor articole, indecii vor fi actualizai automat. ;nde#area simultan a mai multor cmpuri poate fi ns i dezavanta+oas, deoarece actualizarea unui tabel de mare dimensiune va fi costisitoare n timp. n general, un cmp al unui tabel este inde#at atunci, cnd: cmpul este folosit cu mare frecven n operaiilor de sortare, cutare, filtrare i grupare9 valorile introduse n cmpul respectiv aparin unui domeniu e#tins. Tabele asociate 'ntr(o baz de date Proiectarea eficient a unei baze de date implic separarea datelor n mai multe tabele, fiecare tabel avnd o tem bine definit. Prin separarea datelor n mai multe tabele, cu teme unice, se evit repetarea informaiei i utilizatrea datelor redondante, astfel cA se minimizeaz spaiul necesar memorrii datelor. *atele izolate n tabele distincte, cu teme unice, n momentul prelucrrii lor "cnd se creeaz interogri, formulare i rapoarte$, trebuie s fie reunite. n operaia de reunire a tabelelor se va comunica programului Access legturile logice e#istente ntre tabele. 'stfel va fi posibil tratarea simultan a informaiilor, care provin din mai multe tabele. Primul pas n reunirea informaiilor provenite din mai multe tabele const n definirea relaiilor ntre tabelele bazei de date. *up ce au fost definite aceste relaii, se poate trece la pasul urmtor, n care se creeazA obiecte: interogri, formulare i rapoarte. 'ceste obiecte permit afiarea simultan a informaiilor provenite din mai multe tabele izolate. n unele programe mai vec)i de gestiune a bazelor de date relaiile ntre tabele au e#istat numai n mintea programatorului, ele nu au fost declarate ! =

concret n program. Programul Access < fiind un program care prelucreaz baze de date relaionale < pune la dispoziia utilizatorului metode concrete, prin care pot fi stabilite relaii ntre tabele, astfel cA devine posibil supervizarea i analiza simultan a informaiilor. n marea ma+oritate a cazurilor ntre dou tabele ale unei baze de date se stabilesc relaii de tipul E de la unu la mai mul,i E. >#ist i alte tipuri de relaii: Ede la mai mul,i la mai mul,iE i Eunu la unuE. $elaia de tip#l )de la #n# la "ai "#li) @ presupunem c o unitate comercial dorete pstrarea informaiilor referitoare la activitatea societii. 2abelul care urmeaz s fie proiectat ar trebui s conine dou categorii de informaii: informaii despre clieni "numele, adresa i telefonul clienilor$9 informaii despre tranzacii "data i valoarea comenzilor$. % prim variant < de altfel eronat < ar fi crearea unui singur tabel, care s conin toate datele referitoare la activitate. 'cest tabel ar avea urmtoarele apte cmpuri: *ct#$, identificatorul activitii, de tip 'uto6umber, c)eie primar a tabelului, prin care se identific n mod unic fiecare articol din tabel9 NumeClient, de tip te#t, care conine numele clientului9 *dresaClient, de tip te#t, care conine adresa clientului9 TelefonClient, de tip 6umber de dimensiune Fong ;nteger, care conine numrul de telefon al clientului9 $ataComenzii, de tip *ateI2ime, care conine data efectrii comenzii9 (aloareaComenzii, de tip 6umber de dimensiune Fong ;nteger, care conine valoarea comenzii. 2abelul astfel proiectat, n care au fost introduse J articole, ar putea s aib aspectul urmtor:
Act D ! = H 3 J Nume $lient Popescu ;onescu 'nton Popescu 'nton Popescu Adresa $lient .lu+ *e+ K)erla .lu+ K)erla .lu+ %ele&on $lient !=H3J HJ:30? 30?J:/ !=H3J 30?J?/ !=H3J Data $omenzii /:I= I/! /?I/ I/! /?I/ I/! /?I/ I/! /I/ I/! /I/ I/! 'aloarea $omenzii ////// !////// H///// =////// H3///// =/////

n aceste condiii, pentru un client cu care se fac tranzacii de mai multe ori, aceeai informaie "nume, adresa, numr de telefon$ trebuie introdus de mai multe ori. n afar de faptul, c la reintroduceri repetate pot apare erori, datele referitoare la un client se pot modifica "de e#emplu sc)imbare de adres, ! H

numr de telefon$. n cazul modificrii datelor referitoare la un client tabelul ntreg, pe nivel de articol, trebuie actualizat. % metod mult mai bun este alctuirea a dou tabele separate, prin care se evit repetarea informaiei. Primul tabel < avnd numele tblClienti - conine informaii despre clieni. 'cest tabel are patru cmpuri: Client#$ "identificatorul clientului, de tip 'uto6umber, c)eie primar$9 NumeClient "de tip te#t$9 *dresaClient "de tip te#t$9 TelefonClient"de tip 6umber, de dimensiune Fong ;nteger$. 2abelul conine urmtoarele = articole:
$lient D ! = Nume $lient Popescu ;onescu 'nton Adresa $lient .lu+ *e+ K)erla %ele&on $lient !=H3J HJ:30? 30?J:/

2abelul al doilea, avnd numele tblComenzi, conine informaii despre comenzi. 'cest tabel are patru cmpuri: Comanda#$ "identificatorul comenzii, de tip 'uto6umber, c)eie primar$9 Client#$ "de tip 6umber, avnd dimensiunea Fong ;nteger$9 $ataComenzii "de tip *ateI2ime$9 (aloareaComenzii "de tip 6umber, avnd dimensiunea Fong ;nteger$. n acest tabel, cmpul Client#$ nu mai este o c)eie primar, ci servete la identificarea clientului cu care s&a fcut tranzacia respectiv "adic indicele aferent clientului n tabelul tblClienti$. 8alorile introduse n acest cmp pot apare de mai multe ori "nu mai sunt valori unice$: n cazul n care cu acelai client s&au fcut mai multe tranzacii, acelai identificator de client va apare de mai multe ori n cmpul Client#$. 'cest cmp este denumit cheia strin a tabelului tblComenzi. n cazul nostru, identificatorul clientului Popescu, avnd valoarea , apare att n linia , ct i n liniile H i J, deoarece cu acest client s&au fcut trei tranzacii. ;dentificatorul clientului ;onescu, avnd valoarea !, apare o singur dat, n linia !, deoarece cu acest client s&a efectuat o singur tranzacie. ! 3

;dentificatorul clientului 'nton, avnd valoarea =, apare att n linia =, ct i n linia 3, deoarece cu acest client s&au fcut dou tranzacii. @c)ema relaiei este cea din figura alAturatA. 8orbind mai general, o cheie strin a unui tabel este un cmp care asociaz "leag$ articolul actual al tabelului respectiv cu c)eia primar a unui alt tabel. 2abelul tblComenzi va conine urmtoarele J articole:
$omanda D ! = H 3 J $lient D ! = = Data $omenzii /:I= I/! /?I/ I/! /?I/ I/! /?I/ I/! /I/ I/! /I/ I/! 'aloarea $omenzii ////// !////// H///// =////// H3///// =/////

ntre tabelele tblClienti i tblComenzi s&a realizat o relaie Ede la unu la mai mul,iE: unui articol oarecare din tblClienti pot s&i corespundA mai multe articole din tabelul tblComenzi "adic un client poate s fac mai multe comenzi$, dar un articol oarecare din tblComenzi este asociat numai la un singur articol din tblClienti "adic aceeai comand nu poate fi dat simultan de mai muli clieni$. 'ceast relaie poate fi reprezentat prin figura alturat.

ntr&un conte#t mai general, ntr&o relaie de tipul E de la unu la mai mul,iE "one.to.many$, un articol din tabelul * poate avea mai multe articole asociate n tabelul B, dar un articol din tabelului B poate avea un singur articol asociat n tabelul * "tabelul * se afl n partea EunuE a relaiei, iar tabelul B n partea Emai mul,iE a relaiei$. 2abelul * este denumit tabel primar, iar tabelul B este denumit tabel asociat. Belaia de tip Ede la unu la mai mul,iE este relaia utilizat cel mai frecvent n gestiunea bazelor de date. $elaia de tip#l )de la "ai "#li la "ai "#li) ntr&o relaie de tipul Ede la mai mul,i la mai mul,iE "many.to.many$, un articol din tabelul * poate avea mai multe articole asociate n tabelul B, i un articol din tabelul B poate avea mai multe articole asociate n tabelul *. 'cest tip de relaie poate fi reprezentat numai atunci cnd se definete i un al treilea tabel C, denumit tabel de jonciune. Bolul acestui tabel este spargerea relaiei Ede la mai mul,i la mai mul,iE n dou relaii de tipul Ede la unu la mai mul,iE. ! J

1ie Tabel*#$ "de tip 'uto6umber$ c)eia primar a tabelului *, iar TabelB#$ "de tip 'uto6umber$ c)eia primar a tabelului B. .)eia primar a tabelului * i c)eia primar a tabelului B, mpreun, definesc biunivoc o perec)e de articole provenite din cele dou tabele. .)eia primar a tabelului de +onciune C va fi format din dou cmpuri, fiecare de tip 6umber, dimensiune Fong ;nteger. Primul cmp al c)eii primare va conine c)eia primar a tabelului *, iar cmpul al doilea al c)eii primare va conine c)eia primar a tabelului B. 'ceste cmpuri vor +uca i rolul de c)ei strine corespunztoare tabelelor * i B. 'stfel relaia de tipul E de la mai mul,i la mai mul,i E este transformat n dou relaii de tipul Ede la unu la mai mul,iE: o relaie de tipul E de la unu la mai mul,iE ntre tabelul * i C i o alt relaie de tipul E de la unu la mai mul,iE ntre tabelul B i C.

$elaia de tip#l )#n# la #n#) ntr&o relaie de tipul Eunu la unuE "one.to.one$ fiecare articol din tabelul * poate avea un singur articol asociat n tabelul B i invers, fiecare articol din tabelul B poate avea un singur articol asociat n tabelul *. 'cest tip de relaie este utilizat destul de rar, deoarece informaiile asociate n acest fel, de fapt pot fi memorate n acelai tabel. Belaia de tipul E unu la unuE este utilizat n urmtoarele cazuri: numrul cmpurilor fiind foarte mare H se dorete divizarea tabelului n mai multe subtabele9 se dorete izolarea unor cmpuri ale unui tabel, din motive de siguran9 cmpurile care se izoleaz se vor memora ntr&un alt tabel. *ou tabele se pot pune n relaia Eunu la unuE dac cele dou tabele folosesc aceeai c)eie primar "adic domeiul de valori ale c)eilor primare coincid$ i c)eile respective sunt puse n coresponden "sunt asociate$. Exemplu: 2abelul tbl#nfo/ conine un set de date despre +udee. .mpurile acestui tabel sunt:

ntr&un tabel Access numrul ma#im de cmpuri este limitat la !33.

! 0

0udet#$, de tip 2e#t de lungime ! "identificator de +ude, de e#emplu BL, .M, @M, c)eia primar a tabelului$9 Nume0udet, de tip 2e#t, dimensiune 3/9 Numar1rase, de tip 6umber, dimensiune ;nteger9 NumarComune, de tip 6umber, dimensiune ;nteger.

2abelul tbl#nfo2 conine un alt set de date despre +udee. .mpurile acestui tabel sunt: 0udet#$, de tip 2e#t de dimensiune ! "identificator de +ude, c)eia primar a tabelului$9 Suprafata, de tip 6umber, dimensiune @ingle9 %opulatia, de tip 6umber, dimensiune @ingle "e#primat n mii de locuitori$. 2abelele sunt asociate prin intermediul c)eilor primare 0udet#$. 'rticolele tabelului tbl#nfo/ sunt:
0udet#$ BL .M @M Nume0udet Bi)or .lu+ @ala+ Numar1rase ? J H NumarComune :J 0H 33

'rticolele tabelului tbl#nfo2 sunt:


0udet#$ BL .M @M Suprafata 03HH JJ0H =:JH %opulatia J!/ 0!/ !3J

$estricii referitoare la leg t#rile 'ntre tabele 1ereastra de definire a relaiilor ntre diferite tabele ale bazei de date (elationships este prevzut i cu o caset de selectare etic)etat cu En&orce (e&erential ntegrit), prin care utilizatorul poate s stabileasc tipul de asociere predefinit. .aseta de selectare En&orce (e&erential ntegrit) "impunerea integritii refereniale a relaiei$ poate fi selectat numai atunci, cnd sunt ndeplinite urmtoarele trei condiii: cmpul care a fost selectat din tabelul primar al relaiei are atributul de c)eie primar "sau are un inde# unic$9 cmpurile puse n coresponden au acelai tip39

>#cepie: un cmp de tip *utoNumber poate fi asociat cu un cmp de tip Number, de dimensiune 3ong #nteger "dimensiunea poate fi configurat cu a+utorul proprietii Field Size$.

! :

att tabelul primar, ct i tabelul asociat sunt memorate n aceeai baz de date. n aceste condiii impunerea integritii refereniale a relaiei va asigura urmtoarele trei verificri, realizate automat de programul Access: n cmpul c)eie strin a tabelului asociat pot fi introduse numai valorile, care aparin mulimii de valori a c)eii primare din tabelul primar. @e permite, ns, introducerea unei valori nule n cmpul c)eie strin, ceea ce nseamn, c se permite necompletarea valorii din c)eia strin. *ac c)eia strin conine o valoare nul, atunci articolul respectiv este interpretat ca fiind un articol neasociat. 'stfel, de e#emplu, dac c)eia primar conine valorile , !, = i H, atunci introducerea valorii 3 n c)eia strin va declana o eroare "necompletarea c)eii strine ns nu va cauza nici o eroare$. n cazul nerespectrii acestei reguli programul Access va afia o fereastr de eroare. *ac unui articol din tabelul primar i corespund unul sau mai multe articole din tabelul asociat, atunci utilizatorul nu poate terge sau modifica articolul respectiv din tabelul primar. *ac utilizatorul totui ncearc efectuarea acestei operaii, atunci programul Access va afia o fereastr de eroare. 'ceast verificare poate fi abrogat, ceea ce va permite tergerea n cascad a articolelor asociate: se va selecta caseta de selectare Cascade $elete 4elated 4ecords "tergerea n cascad a articolelor asociate$. *ac unui articol din tabelul primar i corespund unul sau mai multe articole din tabelul asociat, atunci valoarea c)eii primare nu poate fi modificat "editat$. n cazul n care utilizatorul ncearc s modifice valoarea c)eii primare, programul Access va afia o fereastr de eroare. 'ceast verificare poate fi abrogat, ceea ce va permite editarea valorii memorate n c)eia primar i actualizarea automat, n cascad, a valorilor din cmpurile strine asociate. n acest scop se va selecta caseta de selectare Cascade &pdate 4elated Fields "actualizarea n cascad a cmpurilor asociate$. @e menioneaz faptul, c n cazul n care c)eia primar are tipul 'uto6umber, utilizatorul nu poate s modifice sub nici o form valoarea c)eii primare "doarece numai programul Access poate gestiona valorile memorate n c)eia primar$.

5.1.* +ri"ii pa,i c# progra"#l Access


-ansarea 'n e&ec#ie ,i 'nc%iderea progra"#l#i Access

! ?

Pentru lansarea n e#ecuie a programului Access, prima dat se va aciona butonul de comand #tart, se va indica comanda *ll %rograms, i n continuare se va aplica un clic pe linia de comand "icrosoft *ccess. Pentru a nc)ide programul Access din meniul !ile se va da comanda Exit sau se va aplica un clic pe butonul de comand "Close$ situat n colul dreapta sus al feresterei "icrosoft *ccess. Desc%iderea #nei baze de date care a fost creat anterior Pentru desc)iderea unei baze de date, salvat anterior, din meniul !ile se va da comanda *pen. n fereastra de dialog afiat se va specifica: unitatea i dosarul n care a fost salvat baza de date "prin desc)iderea listei combinate 3oo5 in$9

numele bazei de date care se desc)ide "prin cutia te#t File name$9

tipul "formatul$ bazei de date care se desc)ide "prin lista combinat Files of type$:

Pentru desc)iderea bazei de date specificate se va aciona butonul de comand *pen. Fa un moment dat, se pot desc)ide mai multe baze de date, prin lansarea multipl a comenzilor *pen sau Ne+. Crearea #nei baze de date noi Pentru crearea unei baze de date noi, din meniul !ile se va da comanda Ne+. n urma acestei aciuni, lng marginea din dreapta a ecranului se afieaz panoul de activitate "tas-bar$, n care se va efectua un clic pe comanda "Blan5 $atabase, baz de date necompletat$. @e afieaz fereastra de dialog etic)etat cu File Ne6 $atabase specializat n crearea bazelor de date noi. .u a+utorul listei combinate Sa7e in "salvare n$ se specific unitatea i dosarul n care se va crea baza de date:

!!/

6umele bazei de date care se creeaz se stabilete cu a+utorul cutiei te#t File name "nume fiier$. 6umele implicit al bazei de date noi este db,-mdb.

2ipul bazei de date se selecteaz din lista combinat Sa7e as type "tipul implicit este Gicrosoft 'ccess *atabases, de e#tensie mdb$.

.rearea efectiv a bazei de date noi se realizeaz prin efectuarea unui clic pe butonul de comand $reate "creare$. .al/area #nei baze de date .nd se creeazA o baz de date, ea este salvat automat cnd i se stabilete numele. *up fiecare modificare a structurii unui tabel, formular sau a unui alt obiect, programul Access nu permite nc)iderea obiectului sau a bazei de date fr lansarea n e#ecuie a operaiei de salvare. 'stfel, pe ecran se va afia ntotdeauna o fereastr de avertisment care cere confirmarea utilizatorului privind efectuarea operaiei de salvare. Pentru realizarea operaiei de salvare se d comanda .es. n marea ma+oritate a cazurilor "de e#emplu n procesul de introducere a noilor articole ntr&un tabel$ modificrile se salveaz automat. 'cesta este motivul pentru care comenzile de salvare #a/e i #a/e As "meniul !ile$ sunt aproape tot timpul dezactivate. Utilizarea a0#tor#l#i Programul Access este prevzut cu un sistem de a+utor foarte detaliat. 'cest a+utor poate fi afiat prin meniul 0elp, cu a+utorul comenzilor Microso&t Access 0elp "tasta de comenzi rapide 1 $ sau #ho+ the *&&ice Assistant "afiarea asistentului %ffice$. *ac se d prima comand, atunci se afieaz imaginea asistentului "de e#emplu o agraf animat$ i o cutie te#t n care se formuleaz o ntrebare. .utarea informaiilor referitoare la ntrebarea formulat se realizeaz prin acionarea butonului #earch. *ac se d comanda a doua, atunci se afieaz imaginea asistentului. *ac se !!

efectueaz un clic pe asistent, atunci apare i cutia test corespunztoare asistentului n care se va tasta ntrebarea i se va lansa n e#ecuie procesul de cutare. 'scunderea asistentului se realizeaz prin comanda 0ide the *&&ice Assistant a meniului 0elp. 1nc%iderea #nei baze de date Pentru nc)iderea unei baze de date se pot utiliza mai multe metode: din meniul !ile se d comanda $lose "nc)idere$9 n fereastra de baze de date $atabase se efectueaz un clic pe butonul Close , care este situat n colul dreapta sus al ferestrei9 se efectueaz un clic pe simbolul grafic al meniului control , situat n colul stnga sus al ferestrei bazei de date i din meniul afiat se alege comanda $lose9 se efectueaz un dublu clic pe simbolul grafic al meniului control9 se acioneaz combinaia de taste $%(1 N !29 se acioneaz combinaia de taste $%(1 N 3.

2od#rile de /iz#alizare pentr# #n tabel3 o interogare3 #n for"#lar sa# #n raport 1iind desc)is un tabel, o interogare, un formular sau un raport, modurile de vizualizae ale obiectului respectiv se pot selecta prin comenzile meniului 'ie+.
*biect Tabel #nterogare Modurile de /izualizare $esign (ie6 "modul de vizualizare tip proiect$ $atas8eet (ie6 "modul de vizualizare tip foaie de date$ $esign (ie6 "modul de vizualizare tip proiect$ S93 (ie6 "vizualizarea instruciunii @OF corespunztoare interogrii$ $atas8eet (ie6 "modul de vizualizare tip foaie de date$ $esign (ie6 "modul de vizualizare tip proiect$ $atas8eet (ie6 "modul de vizualizare tip foaie de date$ $esign (ie6 "modul de vizualizare tip proiect$ %rint %re7ie6 "modul de vizualizare nainte de imprimare$

Formular 4aport

Afi,area4asc#nderea barelor de instr#"ente Barele de instrumente ale programului Access se pot afiaIascunde, n funcie de preferinele utilizatorului. n acest scop, din meniul 'ie+ se indic submeniul %oolbars9 n urma acestei aciuni se afieaz un !!!

meniu cu numele barelor de instrumente accesibile programului de gestiune a bazelor de date. 6umele barelor afiate pe ecran sunt precedate de caractere de EbifareE. Pentru a afia o bar de instrumente, neafiat nc, se va efectua un clic pe numele barei dorite. Pentru a ascunde o bar, de+a afiat, de asemenea se va aplica un clic pe numele barei respective. n e#emplul alturat sunt afiate barele de instrumente %able Datasheet i 3eb.

5.* Tabele
5.*.1 Operaiile principale
Crearea ,i sal/area #n#i tabel *ac este cazul, se cupleaz n fereastra bazei de date $atabase. @e menioneaz faptul c, prin acionarea tastei !,,, din orice fereastr se poate trece n fereastra bazei de date. n fereastra bazei de date $atabase se efectueaz un clic pe butonul "Tables$ iar n fereastra afiat se e#ecut un dublu clic pe nscripia Create table in $esign (ie6 "crearea tabelului n modul de vizualizare tip proiect$. n urma acestei aciuni se afieaz fereastra de proiectare a tabelului.

n bara de titlu a ferestrei apare numele implicit al tabelului "2able $. 1ereastra are trei coloane: < Field Name "numele cmpului$9 !!=

< $ata Type "tipul datei$9 < $escription "descriere$. n partea inferioar a ferestrei de dialog apare o subfereastr etic)etat cu Field %roperties "proprietile cmpului$. n colul dreapta +os al ferestrei se afieaz un a+utor, care se adapteaz la situaia actual. .ursorul de te#t "liniua vertical sclipitoare$ apare n celula din colul din stnga sus, n prima celul liber a coloanei Field Name. n prima celul liber a coloanei Field Name se tasteaz numele cmpului. Fungimea ma#im a unui nume de cmp este JH de caractere. Pot fi utilizate litere "minuscule, ma+uscule, ntre care nu se face distincie n prelucrare$, cifre, spaii i diferite caractere speciale, cu e#cepia punctului ".$, semnului de e#clamare "P$, accentului grav "Q$ i parantezelor ptrate "4 5$. *up introducerea numelui cmpului se trece n coloana $ata Type "prin tasta 2'B sau printr&un clic$. n momentul n care se a+unge n coloana $ata Type, coninutul celulei se transform n tipul implicit de date Text. n partea din dreapta a celulei apare un buton "sgeat +os$, care indic e#istena unei liste combinate. *ac nu se dorete folosirea tipului implicit de date Text, atunci printr&un clic aplicat pe buton se desc)ide lista care conine toate tipurile de date admise de programul Access, dup care printr&un nou clic se selecteaz tipul dorit. 2ipurile cele mai uzuale sunt: Text, Number "numr$, $ate:Time "date calendaristiceIore e#acte$, Currency "moned$, *utoNumber "numr automat sau 'uto6umerotare$ i ;es:No "daInu$. *up introducerea tipului de cmp se trece n coloana $escription. n coloana $escription se introduce o scurt descriere a informaiei care va fi memorat n cmpul actual. >ste recomandat completarea celulei de descriere "dei este opional$. *ac este cazul, cu a+utorul subferestrei Field %roperties se configureaz proprietile cmpului "de obicei se configureaz proprietile !ield #ize i !ormat$. *ac tabelul trebuie s coninA i alte cmpuri, atunci se vor repeta cei patru pai precedeni. @e stabilete c)eia primar a tabelului. 8alorile depuse ntr&un cmp cu atributul c)eie primar permit identificarea unic a articolelor din tabel. n acest scop se efectueaz un clic pe numele cmpului, care va fi c)eia primar a tabelului i se acioneaz butonul de comandA %rimary <ey . 8ariant: din meniul Edit se d comanda "rimar) 4e). n urma acestei aciuni n stnga numelui cmpului respectiv va apare un simbol de c)eie.

!!H

@e salveaz tabelul, prin aplicarea unui clic pe butonul de Sa7e "salvare$ . Fa prima salvare a tabelului se va afia o fereastr de dialog etic)etat cu Sa7e *s "salvare sub nume$. 8ariant: din meniul !ile se d comanda #a/e. n cutia te#t Table Name se introduce numele tabelului, dup care se d comanda %R. 2abelul astfel salvat nc nu conine nici un articol "a fost salvat doar structura tabelului$.

*bser/aii: Pentru introducerea de informaii n tabelul salvat "adic pentru a completa liniile tabelului, n vederea generrii diferitelor articole$ se va comuta n modul de vizualizare de tip foaie de date $atas8eet "meniul 'ie+, comanda Datasheet 'ie+$. .nd se lucreaz cu tabele, programul Access pune la dispoziia utilizatorului dou moduri de vizualizare: Design 'ie+ "tip proiect$ i Datasheet 'ie+ "tip foaie de date$. Pentru a comuta ntre modul de vizualizare de tip proiect i modul de vizualizare de tip foaie de date din meniul 'ie+ "vizualizare$ se selecteaz fie comanda Design 'ie+ "modul de vizualizare tip proiect$, fie comanda Datasheet 'ie+ "modul de vizualizare tip foaie de date$, n funcie de modul curent de vizualizare. .onfigurarea proprietii !ield #ize "dimensiune de cmp$. n cazul cmpurilor de tip te#t, proprietatea !ield #ize stabilete numrul ma#im de caractere care pot fi introduse n cmpul respectiv. 8aloarea implicit a acestei proprieti este egal cu 3/, iar valoarea ma#im este !33. n cazul cmpurilor de tip numr, proprietatea !ield #ize stabilete domeniul de valori numerice care se pot memora n cmpul respectiv. 'ceast proprietate este configurat de obicei cu valorile B(te, ;nteger, Fong ;nteger, @ingle i *ouble. 8aloarea implicit este Fong ;nteger. *omeniile corespunztoare acestor valori sunt urmtoarele:
B)te: nteger: 1ong nteger: #ingle: Double: Numere 5ntregi nenegati/e din inter/alul 67 8 9::; Numere 5ntregi din inter/alul 6<=9->?@ 8 =9->?>; Numere 5ntregi din inter/alul 6A9-,2>-2@=-?2@ 8 9-,2>-2@=-?2>; Numere cu zecimale, din inter/alul 6<=,2B,7=@ 8 =,2B,7=@; Numere cu zecimale, din inter/alul 6<,,>B,7=7@ 8 ,,>B,7=7@;

!!3

.onfigurarea proprietii !ormat "formatare$. n cazul datelor de tip numr, dat calendaristicIor i valori monetare, proprietatea !ormat stabilete modul n care programul Access va afia "formata$ informaiile introduse n cmp. 'ceast proprietate se refer numai la modul de afiare a datei, nu i la modul de memorare al ei. 1ormatele de afiare depind de tipul cmpului.

Exemplu: n modul de vizualizare tip proiect, tabelul urmtor, salvat sub numele tbl0udet , are aspectul:

.)eia primar a tabelului este cmpul 0udet#$, de tip 2e#t "n stnga numelui acestui cmp apare un simbol c)eie$. @ presupunem c n acest tabel s&au introdus un numr de articole. n modul de vizualizare de tip foaie de date aspectul tabelului va fi urmtorul:

Ad #garea articolelor noi 'ntr(#n tabel n fereastra de baze de date $atabase se efectueaz un clic pe butonul "Tables$ iar n fereastra afiat se e#ecut un clic pe numele tabelului, dup care se d comanda "1pen$. 2abelul se afieaz n modul de vizualizare tip foaie de date. @e e#ecut un clic pe prima celul goal din prima coloan J. 8ariant: efectuarea unui clic pe butonul de comand "Ne6 4ecord$. @e tasteaz valoarea corespunztoare primului cmp. Pentru a trece la cmpul urmtor se acioneaz tasta %AB sau se efectueazA un clic pe cmpul respectiv.

6u se pot introduce articole noi ntre articole create anterior. 'rticolele noi ntotdeauna apar la sfritul tabelului.

!!J

*up ce a fost introdus valoarea corespunztoare ultimului cmp al articolul, din nou se apas tasta %AB. .ursorul de te#t se deplaseaz pe primul cmp din linia urmtoare, de unde se poate ncepe introducerea unui articol nou.

;ntroducerea direct a articolelor tabelului nu este cea mai bun metod. Gult mai eficient este crearea unui formular specializat n introducerea datelor. 5a/igare 'ntre articolele #n#i tabel Butoanele barei de navigare, situate n partea inferioar a ferestrei de vizualizare tip foaie de date a unui tabel, permit o deplasare rapid ntre articolele tabelului respectiv. 1uncia butoanelor din bara de navigare este centralizat n sc)ema de mai +os:

6tergerea articolelor #n#i tabel 2abelul fiind afiat n modul de vizualizare tip foaie de date, se navig)eaz la articolul respectiv "sau se efectueaz un clic ntr&o celul arbitrar a articolului$. n continuare din meniul Edit se d comanda Delete (ecord. 8ariant: se efectueaz un clic pe butonul de comand "$elete 4ecord$. n urma acestor aciuni se afieaz o fereastr n care se care validarea aciunii de tergere "articolul ters nu poate fi recuperat$. 8alidarea tergerii se realizeaz prin ;es, anularea ei prin No. Ad #garea #n#i c7"p no# #n#i tabel e&istent @e afieaz tabelul n modul de vizualizare tip proiect.

!!0

@e efectueaz un clic pe selectorul de linie al cmpului, naintea cruia se depune noul cmp. n urma acestei aciuni ntreaga linie va fi selectat "linia va apare n video invers$.

@e efectueaz un clic pe butonul #nsert 4o6s . 8ariant: din meniul nsert se d comanda (o+s. n urma acestei aciuni deasupra liniei selectate se creeaz o nou linie. n linia creat se definete numele, tipul i descrierea cmpului creat. *up ce s&au introdus toate informaiile necesare se va da comanda de salvare a tabelului prin butonul de comand "Sa7e$.

6tergerea #n#i c7"p dintr(#n tabel creat anterior @e afieaz tabelul n modul de vizualizare tip proiect. @e efectueaz un clic pe selectorul de linie al cmpului care se va terge. @e efectueaz un clic pe butonul $elete 4o6s . 8ariante: *in meniul Edit se d sau comanda Delete (o+s, sau comanda Delete.

Editarea datelor "e"orate 'ntr(#n c7"p al #n#i articol n fereastra bazei de date $atabase se efectueaz un clic pe butonul "Tables$ iar n fereastra afiat se e#ecut un clic pe numele tabelului, dup care se d comanda "1pen$. Pentru editarea unei date memorate ntr&un cmp se e#ecut un clic n interiorul celulei aferente cmpului. n locaia respectiv va apare cursorul de te#t "care are forma unei liniue verticale sclipitoare$. .ursorul mouse&ului va avea forma unei litere ;. *ac se dorete nlocuirea ntregii valori coninute n celul, atunci se va muta cursorul mouse&ului n partea din stnga a celulei. Fa o poziionare corect, cursorul de mouse va avea forma unui semn plus: . n acest moment se va e#ecuta un clic, i ca urmare, coninutul celulei este selectat automat i este afiat n video invers. @e tasteaz te#tul care urmeaz s fie inserat. *ac se apas tasta BacCspace, atunci se va terge caracterul din stnga cursorului de te#t. *ac se

!!:

apas tasta Delete, atunci se va terge caracterul din dreapta cursorului de te#t. Pentru anularea modificrilor efectuate n cmpul actual se va apsa tasta Esc. *ac se acioneaz din nou tasta Esc, atunci toate modificrile efectuate n articolul actual vor fi anulate. n momentul trecerii la un alt articol programul Access va salva automat toate modificrile efectuate n articolul curent. Utilizarea co"enzii Undo n procesul de editare de date de multe ori se fac greeli "de e#emplu accidental se terge coninutul unui cmp al unui articol i se trece la un alt articol$. 'nularea modificrilor eronate poate fi realizat cu a+utorul comenzii Dndo "meniul Edit$. 8ariant: se efectueaz un clic pe butonul de comand "7ndo$. 6tergerea #n#i tabel 7n tabel inutil poate fi ters. n acest scop n fereastra bazei de date se efectueaz un clic pe butonul "Tables$, iar n fereastra afiat se e#ecut un clic pe numele tabelului respectiv. n continuare, din meniul Edit se d comanda Delete. 8ariant: se efectueaz un clic pe butonul "$elete, afiat n bara de instrumente a bazei de date$. %peraia de tergere trebuie confirmat de utilizator. Pentru confirmarea tergerii tabelului, n fereastr afiat se va aciona butonul de comand ;es. .al/area ,i 'nc%iderea #n#i tabel 7n tabel modificat este salvat automat de Access. >#ist posibilitatea de a cere salvarea tabelului de ctre utilizator. n acest scop se va efectua un clic pe butonul de comand "Sa7e, afiat n bara de instrumente a programului Access$. 8ariant: n meniul !ile se d comanda #a/e. Pentru nc)iderea unui tabel se va e#ecuta un clic pe butonul Close afiat n colul dreapta sus al ferestrei aferente tabelului. 8ariant: n meniul !ile se d comanda $lose. ,

5.*.* Definirea c%eilor #n#i tabel


Definirea c%eii pri"are a #n#i tabel @e desc)ide tabelul n modul de vizualizare tip proiect. @e selecteaz cmpul care se va utiliza pentru c)eia primar "sau cmpurile utilizate pentru c)eia primar$. Pentru selectarea unui singur

!!?

cmp se va efectua un clic pe selectorul de linie al cmpului respectiv 0. Pentru selectarea mai multor cmpuri se aps tasta .2BF i tasta fiind inut apsat, se vor efectua clicuri succesive pe selectoarele de linii ale cmpurilor respective. *in meniul Edit se d comanda "rimar) 4e) "sau n bara de instrumente de proiectare a tabelelor se face un clic pe simbolul grafic "%rimary <ey$. n stnga numelui cmpului "cmpurilor$ va apare un simbol de forma unei c)ei. @ presupunem c a fost definit un tabel nou, n care nici un cmp nu are atributul de c)eie primar. n momentul n care utilizatorul lanseaz n e#ecuie comanda de salvare a tabelului, programul Access va afia o fereastr de avertisment. n aceast fereastr se comunic faptul c nu a fost selectat nici un cmp care s aib atributul de c)eie primar9 un tabel trebuie s aib o c)eie primar, deoarece valoarea c)eii primare este utilizat n definirea unei relaii, care se va stabili ntre tabelul actual i ntre celelalte tabele ale bazei de date. Programul Access ntreab dac utilizatorul dorete s defineasc n acest moment o c)eie primar. Pot fi date trei rspunsuri: Ses & *ac n noul tabel e#ist un cmp care are tipul *utoNumber, atunci cmpul respectiv va primi automat atributul de c)eie primar a tabelului. *ac n noul tabel nu e#ist un cmp de tip *utoNumber, atunci programul Access creeaz automat un nou cmp "avnd numele #$ i tipul *utoNumber$, care va obine atributul de c)eie primar a tabelului. 6o & @e salveaz noul tabel fr ca tabelul s fie prevzut cu un cmp care s aib atributul de c)eie primar. 6u se recomand crearea de tabele care nu au c)eie primar, deoarece un astfel de tabel va fi un tabel EizolatE al bazei de date, deci tabelul respectiv nu poate fi pus ntr&o oarecare relaie cu alte tabele ale bazei de date. .ancel & @e revine automat n modul de afiare de tip proiect, fr ca noul tabel s fie salvat.

1ndep rtarea c%eii pri"are *ac c)eia primar este de+a utilizat ntr&o relaie oarecare, prima dat trebuie tears relaia respectiv "a se vedea paragraful referitor la relaii$. @e desc)ide tabelul n modul de vizualizare tip proiect.
0

@electorul de linie aferent unei linii este celula, care este situat n stnga celului care conine numele cmpului. Prin efectuarea unui clic n selectorul de linie, ntreaga linie va fi afiat n video invers.

!=/

@e efectueaz un clic pe selectorul de linie al c)eii primare curente "sau pe o celul din linia n care apare simbolul de c)eie$, dup care din meniul Edit se d comanda "rimar) 4e) "sau n bara de unelte de proiectare a tabelelor se face un clic pe simbolul grafic $. n stnga numelui cmpului "cmpurilor$ va dispare simbolul de forma unei c)ei.

Crearea #n#i inde& asociat #n#i c7"p @e desc)ide tabelul n modul de vizualizare tip proiect. @e selecteaz cmpul pentru care se va crea "modifica$ un inde#. n subfereastra de proprieti ale cmpului se efectueaz un clic n coloana de valori ale proprietii ndexed. @e desc)ide lista de valori ale proprietii. Proprietatea ndexed poate fi configurat cu urmtoarele valori:
Descriere .mpul nu este inde#at. 8aloare implicit. .mpul este inde#at i se permite ca dou sau mai multe articole ale tabelului s aib aceeai valoare n cmpul respectiv "adic inde#ul creat permite introducerea dublurilor$. .mpul este inde#at dar nu se permite ca dou articole din tabel s aib aceeai valoare n cmpul respectiv "adic inde#ul creat nu permite introducerea dublurilor$. n cazul introducerii unei dubluri programul Access va afia un mesa+ de eroare n care va cere fie modificarea valorii introduse, fie modificarea proprietii ndexed la valoarea No sau ;es =$uplicates 1<> .

'aloare No ;es 1<> =$uplicates

;es =No $uplicates>

Pentru eliminarea unui inde# e#istent "e#ceptnd cazul unui cmp care este c)eie primar unic$ proprietatea ndexed trebuie configurat cu valoarea No. 7n inde# configurat cu valoarea ;es =$uplicates 1<> este mult mai puin performant dect un inde# configurat cu valoarea ;es =No $uplicates>? *ac un anumit cmp al unui tabel are atributul de c)eie primar "Primar( Re($, atunci proprietatea ndexed a cmpului respectiv va fi configurat automat la valoarea ;es =No .$uplicates>.

5.*.8 .tr#ct#ra #n#i tabel


2odificarea n#"el#i3 tip#l#i ,i propriet ilor #n#i c7"p *ac la un moment dat se constat, c numele, tipul iIsau anumite proprieti ale unui cmp nu mai sunt satisfctoare, toate aceste caracteristici se pot modifica. n acest scop se desc)ide n modul de vizualizare tip proiect tabelul ale crui caracteristici se vor modifica. *ac se dorete modificarea !=

unui nume de cmp, atunci n coloana Field Name se efectueaz un clic pe numele respectiv i se introduce noul nume. *ac se dorete modificarea tipului unui cmp, atunci se e#ecut un clic pe coloana $ata Type corespunztor cmpului i din lista derulant se alege noul tip. n mod analog pot fi modificate informaiile introduse n zona de proprieti ale cmpului "Field %roperties>. Consecinele "odific rii propriet ii !ield .ize referitoare la di"ensi#ne de c7"p n multe cazuri, modificarea proprietii !ield #ize a unui cmp produce erori. 'cest fenomen apare atunci cnd vec)ea dimensiune de cmp este modificat la una mai mic. Exemple: Fungimea ma#im a unui cmp tip 2e#t a fost 3/. 7lterior aceast lungime a fost micorat la !3. n aceste condiii caracterele de la !3 n sus se vor trunc)ia. Fungimea iniial a unui cmp tip 6umber a fost @ingle. 7lterior aceast lungime a fost modificat la Fong ;nteger. n acest caz zecimalele se vor pierde, deoarece se realizeaz rotun+irea la cel mai apropiat ntreg. Fungimea iniial a unui cmp tip 6umber a fost @ingle. 7lterior aceast lungime a fost modificat la ;nteger. n acest caz valorile care nu aparin intervalului 4&=!.0J: 9 =!.0J05 se pierd. Crearea #nei reg#li de /alidare pentr# #n c7"p n procesul de introducere a datelor se poate cere ca programul Access s verifice corectitudinea lor i s afieze un mesa+ de eroare n cazul n care s&a descoperit o valoare eronat. Pentru a crea o regul de validare asociat unui cmp i a unui mesa+ de eroare care se afieaz n cazul datelor invalide se va proceda astfel: @e desc)ide tabelul n modul de vizualizare tip proiect i se selecteaz cmpul pentru care se va crea "modifica$ o regul de validare. n subfereastra de proprieti corespunztoare cmpului se efectueaz un clic n cutia te#t a proprietii 'alidation (ule "regul de validare$. n cutia astfel desemnat se introduce o e#presie logic, de obicei de tip relaie. 'stfel, de e#emplu, n cazul unui cmp de tip Number e#presia de validare poate fi TC /, prin care se accept valori mai mari sau egale cu zero. %peratorii de relaie utilizai sunt U "mai mic$, UC "mai mic sau egal$, C "egal$, TC "mai mare sau egal$, T "mai mare$, UT "diferit$. n cutia te#t a proprietii 'alidation %ext "te#t de validare$ se introduce un mesa+ care va fi !=!

afiat n momentul, n care e#presia de validare "stabilit de proprietatea 'alidation (ule$ returneaz valoarea fals. 'stfel, de e#emplu, dac regula de validare este configurat cu e#presia logic TC/, atunci te#tul de validare poate fi E6u introducei valori negativePE. n tabelul urmtor sunt date e#emple de reguli de validare care se refer la diferite tipuri de date, cu mesa+ele de eroare corespunztoare:
%ipul datei 2e#t *ateI2ime .urrenc( 'alidation (ule TEFE TV !I= I!//!V TC:/ 'alidation %ext 6ume de la litera F n sus "G, 6, ...$ ;ntroducei date de la ian !//= @alar cel puin :/ dolariP

2odificarea l i"ii #nei coloane a #n#i tabel 7neori este necesar modificarea limii unei coloane a unui tabel "de e#emplu nu se vd datele introduse n unele celule ale coloanei$. n aceste condiii se afieaz tabelul n modul de vizualizare tip foaie de date, printr&un clic aplicat ntr&o celul a coloanei se selecteaz coloana respectiv i din meniul !ormat se d comanda Column @idt8. @e afieaz o fereastr de dialog etic)etat cu Column @idt8. n cutia te#t se tasteaz noua lime a coloanei. Fimea coloanei se definete n numr de caractere care se pot introduce n coloana respectiv. *ac se selecteaz caseta de selectare Standard @idt8 "lime standard$, atunci limea coloanei va fi egal cu 3.JJJ0 caractere. 1ereastra de dialog are trei butoane de comand: *4 "salvarea modificrilor i nc)iderea ferestrei de dialog$9 $ancel "ignorarea modificrilor i nc)iderea ferestrei de dialog$9 Best !it "potrivire optimal$. n cazul acionrii acestui buton limea coloanelor selectate va fi stabilit n aa fel, nct va fi vizibil n ntregime i cea mai lung intrare n interiorul coloanei "antet de coloan i valori de cmpuri$. Fimea unei coloane poate fi modificat i cu a+utorul mouse& ului. n acest scop se poziioneaz indicatorul de mouse pe o linie de desprire vertical ntre dou nume de cmpuri. .ursorul se transform ntr&o linie orizontal !==

cu dou sgei ndreptate spre stnga i spre dreapta. @e acioneaz butonul din stnga, i meninndu&l apsat se deplaseaz mouse&ul n direcia orizontal, pn cnd se obine limea dorit, moment n care se elibereaz butonul. n acest mod va fi redimensionat coloana care este situat n stnga liniei de desprire. 2#tarea #nei coloane 'n interior#l #n#i tabel 7neori se dorete sc)imbarea ordinii cmpurilor ntr&un tabel. 'ceast operaie poate fi realizat att n modul de vizualizare tip foaie de dat, ct i n modul de vizualizare tip proiect : En modul de /izualizare tip &oaie de dat: @e efectueaz un clic pe numele de cmp dorit, prin care se selecteaz coloana respectiv. n continuare se trage cu mouse&ul coloana n noua ei poziie. n e#emplul alturat, cmpul Pret este mutat din poziia = n poziia !.

En modul de /izualizare tip proiect: @e efecteaz un clic pe selectorul de linie al cmpului dorit "celula situat n stnga numelul de cmp$. n continuare se trage cu mouse&ul linia n noua ei poziie. n e#emplul alturat cmpul %rodus#$ este mutat din poziia ! n poziia H.

5.*.9 $elaii 'ntre tabele


Crearea #nei relaii 'ntre tabelele #nei baze de date @e nc)ide fiecare tabel care a fost desc)is anterior, deoarece nu pot fi create sau modificate relaii ntre tabele desc)ise. *ac este cazul, se activeaz fereastra de baze de date $atabase. *in orice fereastr se poate trece n fereastra de baze prin acionarea tastei !,,.

!=H

@e efectueaz un clic pe butonul de afiare a relaiilor "4elations8ips$. 8ariant: din meniul %ools se d comanda (elationships. n urma acestei aciuni pe ecran va apare ntotdeauna o fereastr de dialog etic)etat cu 4elations8ips "relaii$ i < n funcie de caz < o alt fereastr de dialog etic)etat cu S8o6 Table "afiare tabel$. *ac ntre tabelele bazei de date nu au fost nc definite diferite relaii, atunci se va afia automat i fereastr de dialog S8o6 Table. *ac ntre tabelele bazei s&au definit anterior relaii, atunci va fi afiat numai fereastra 4elations8ips. *ac fereastra S8o6 Table nu este nc afiat, atunci se va efectua un clic pe butonul de afiare de tabele S8o6 Table . 8ariant: din meniul 'ie+ se d comanda #ho+ %able. 1ereastra corespunztoare filei Tables conine lista tuturor tabelelor din baza actual de date. *ac toate tabelele necesare pentru crearea de relaii sunt de+a afiate n fereastra de relaii 4elations8ips, atunci se sare peste punctul urmtor. @e efectueaz un dublu clic pe numele fiecrui tabel care este necesar pentru crearea relaiilor. 8ariant: printr&un clic se selecteaz un nume de tabel sau un nume de interogare, dup care se acioneaz butonul de comand Add "adugare$. 2abelele selectate vor apare n fereastra de definire a relaiilor9 pentru fiecare element este rezervat o list, n care vor apare numele tabelului, precum i cmpurile acestuia. *up selectarea tuturor tabelelor necesare stabilirii relaiilor, fereastra S8o6 Table poate fi nc)is, de e#emplu prin acionarea butonului de comand $lose. n e#emplul prezentat n captura alturat, n fereastra de definire a relaiilor au fost EaruncateE tabelele tbl0udet i tbl3ocalitate? ntre aceste tabele se va genera o relaie !=3

de tipul Ede la unu la mai muliE, n partea de EunuE a relaiei fiind tabelul tbl0udet "ntr&un +ude sunt mai multe localiti$. Pentru crearea unei relaii se trage cu mouse&ul numele cmpului de c)eie primarA "din tabelul primar$ peste numele cmpului asociat "c)eia strin din tabelul asociat$. n cazul de fa se trage cmpul 0udet#$ "din tabelul tbl0udet$ peste cmpul 0udet#$ "n tabelul tbl3ocalitate$. *e obicei, c)eia primar i cea strin au acelai nume, ns aceast identitate de nume nu este obligatorie. *up realizarea acestei operaii de tragere se afieaz automat o nou fereastr de dialog etic)etat cu Edit 4elations8ips, care are aspectul urmtor:

n aceast fereastr se verific dac operaia de tragere cu mouse&ul a fost e#ecutat corect. n coloana din stnga "2ableIOuer($ trebuie s fie afiat numele tabelului primar i numele c)eii primare. n coloana din dreapta "Belated tableIOuer($ trebuie s fie afiat numele tabelului asociat precum i numele c)eii strine. *ac este cazul, aceste date pot fi modificate i n interiorul ferestrei actuale de dialog, prin efectuarea unui clic pe numele eronat i selectarea numelui corect din lista derulant corespunztoare celulei. n continuare, dac este cazul, se configureaz proprietile de asociere ntre cele dou tabele. >le pot fi stabilite prin cele trei casete de selectare afiate n partea inferioar a ferestrei de dialog: - Enforce 4eferential #ntegrity "impunerea integritii refereniale a relaiei$9 - Cascade &pdate 4elated Fields "actualizarea n cascad a cmpurilor asociate "corelate$$9 - Cascade $elete 4elated 4ecords "tergerea n cascad a articolelor asociate "corelate$$. Pentru crearea efectiv a relaiei se va aciona butonul de comand $reate "creare$.

!=J

@e repet paii de la 3 pn la ? pentru fiecare perec)e de tabele care urmeaz s fie asociate. n momentul nc)iderii ferestrei de relaii, programul Access va ntreba dac se dorete salvarea aspectului imaginii referitoare la relaii, adic aspectul obiectului EBelaiiE. ;ndiferent de faptul, c aspectul este sau nu salvat, relaiile create vor fi salvate n baza actual de date.

n fereastra de relaii 4elations8ips, relaiile ntre tabelele asociate sunt materializate prin diferite linii. *in aspectul e#terior al liniei se poate deduce natura relaiei ntre cele dou tabele, de e#emplu, o linie simpl cu simbolurile i W la capete, unde numrul este lng c)eia primar, reprezint o relaie Ede la unu la mai muliE iar o linie simpl cu simbolurile i la capete, reprezint o relaie Eunu la unuE. @e menioneaz faptul, c n partea inferioar a ferestrei 4elations8ips apare o zon, etic)etat cu 4elations8ip Type, n care programul Access comunic tipul relaiei stabilite. n aceast zon pot apare urmtoarele trei valori:
1ne.To."any 1ne.To.1ne #ndeterminate Belaie de tipul Ede la unu la mai mul,iE, n care unul din cmpurile puse n coresponden are atributul de c)eie primar "sau are un inde# unic$. Belaie de tipul Eunu la unuE, n care ambele cmpuri puse n coresponden au atributul de c)eie primar "sau au un inde# unic$. Belaie nedeterminat, n care nici unul din cmpurile puse n coresponden nu are atributul de c)eie primar "i nu au inde# unic$. Pentru a evita acest tip de relaie, unuia din cmpurile puse n coresponden i se va atribui atributul de c)eie primar "sau se va crea un inde# unic$.

2odificarea relaiilor 'ntre tabele Belaiile ntre tabele create anterior pot fi modificate. n acest scop cu a+utorul butonului de comand "4elations8ips$ se reafieaz fereastra de relaii, se efectueaz un clic pe linia de reprezentare a relaiei i din meniul (elationships "relaii$ se d comanda Edit (elationship "editare relaie$. 8ariant: se efectueaz un clic dreapta pe linia de reprezentare a relatiei i din meniul local afiat se d comanda Edit (elationship sau se efectueaz un dublu clic pe linia de reprezentare a relaiei. n urma acestor aciuni se afieaz fereastra de dialog >dit Belations)ips, n care se pot opera modificrile dorite. 6tergerea relaiilor 'ntre tabele Belaiile ntre tabele, create anterior, pot fi terse. Pentru realizarea acestei !=0

operaii cu a+utorul butonului de comand "4elations8ips$ se afieaz fereastra de relaii, se efectueaz un clic pe linia de reprezentare a relaiei i se apas tasta *>F>2>. 8ariant: se efectueaz un clic dreapta pe linia de reprezentare a relaiei i din meniul local afiat se d comanda Delete. Programul Access va afia o fereastr de avertisment, n care se va cere confirmarea utilizatorului pentru ndeprtarea permanent a relaiei, la care se va rspunde cu ;es "da$: +ropriet ile relaiilor 1ereastra de definire a relaiilor ntre diferite tabele ale bazei de date "(elationshipsF este prevzut i cu o caset de selectare etic)etat cu En&orce (e&erential ntegrit), prin care utilizatorul poate s stabileasc tipul de asociere predefinit. .aseta de selectare En&orce (e&erential ntegrit) "impunerea integritii refereniale a relaiei$ poate fi selectat numai atunci, cnd sunt ndeplinite urmtoarele trei condiii: cmpul care a fost selectat din tabelul primar al relaiei are atributul de c)eie primar "sau are un inde# unic$9 cmpurile puse n coresponden au acelai tip:9 att tabelul primar, ct i tabelul asociat sunt memorate n aceeai baz de date. n aceste condiii impunerea integritii refereniale a relaiei va asigura urmtoarele trei verificri, realizate automat de programul Access: n cmpul c)eie strin a tabelului asociat pot fi introduse numai valorile, care aparin mulimii valorilor c)eii primare din tabelul primar. @e permite ns introducerea unei valori nule n cmpul c)eie strin, ceea ce nseamn, c se permite necompletarea valorii din c)eia strin. *ac c)eia strin conine o valoare nul, atunci articolul respectiv este interpretat ca fiind un articol neasociat. 'stfel, de e#emplu, dac c)eia primar conine valorile , !, = i H, atunci introducerea valorii 3 n c)eia strin va declana o eroare, necompletarea c)eii strine ns nu va cauza nici o eroare. n cazul nerespectrii acestei reguli programul Access va afia o fereastr de eroare. *ac unui articol din tabelul primar i corespunde unul sau mai multe articole din tabelul asociat, atunci utilizatorul nu poate terge sau modifica articolul
:

>#cepie: un cmp de tip *utoNumber poate fi asociat cu un cmp de tip Number, de dimensiune 3ong #nteger "dimensiunea poate fi configurat cu a+utorul proprietii Field Size$.

!=:

respectiv din tabelul primar. *ac utilizatorul totui ncearc efectuarea acestei operaii, atunci programul Access va afia o fereastr de eroare. 'ceast verificare poate fi abrogat, permind tergerea n cascad a articolelor asociate: se va selecta caseta de selectare Cascade $elete 4elated 4ecords "tergerea n cascad a articolelor asociate$. *ac unui articol din tabelul primar i corespund unul sau mai multe articole din tabelul asociat, atunci valoarea c)eii primare nu poate fi modificat "editat$. n cazul n care utilizatorul ncearc s modifice valoarea c)eii primare, programul Access va afia o fereastr de eroare. 'ceast verificare poate fi abrogat, permind editarea valorii memorate n c)eia primar i actualizarea automat, n cascad, a valorilor din cmpurile strine asociate. n acest scop se va selecta caseta de selectare Cascade &pdate 4elated Fields "actualizarea n cascad a cmpurilor asociate$. @e menioneaz faptul, c n cazul n care c)eia primar are tipul 'uto6umber, utilizatorul nu poate s modifice sub nici o form valoarea c)eii primare "doarece numai programul Access poate gestiona valorile memorate n c)eia primar$.

5.8 !or"#lare
Desc%iderea #n#i for"#lar creat anterior n fereastra bazei de date se efectueaz un clic be butonul "formulare, buton situat lng marginea din stnga a ferestrei$. *in lista de formulare, printr&un clic se alege formularul dorit. @e efectueaz un clic pe butonul de comand "1pen, desc)idere$. n urma acestei aciuni pe ecran se afieaz formularul, care folosete modul de afiare tip formular "Form 7ie6$. Prin intermediul acestuia se pot edita, introduce sau terge articole noi n tabelul pe care se bazeaz formularul respectiv. 7n alt mod pentru desc)iderea unui formular este efectuarea unui dublu clic pe numele formularului respectiv. !=?

Crearea ,i sal/area #n#i for"#lar n fereastra bazei de date se efectueaz un clic pe butonul "formulare$. @e efectueaz un clic pe comanda etic)etat cu $reate &orm b) using +izard "crearea unui formular prin utilizarea e#pertului$. n urma acestei aciuni se afieaz prima fereastr a e#pertului de formular:

*in lista combinat Tables:9ueries se aleg tabelele "interogrile$ utilizate n formular. *up selectarea unui astfel de obiect, n lista *7ailable Fields "cmpuri disponibile$ se vor afia cmpurile disponibile ale obiectului respectiv. *in lista *7ailable Fields, printr& un clic se selecteaz un nume de cmp, dup care se e#ecut un clic pe butonul . .mpul selectat se va deplasa n lista etic)etat cu Selected Fields "cmpuri selectate$. @e repet procedura pentru fiecare cmp utilizat n formular. n continuare, din lista combinat Tables:9ueries se pot selecta i alte tabele sau interogri, iar cmpurile necesare n formular se vor depune n lista Selected Fields. *up ce au fost desemnate toate cmpurile utilizate n formular se acioneaz butonul de comand Next, prin care se trece la pasul urmtor al e#pertului.

n acest pas sunt puse la dispoziia utilizatorului ase butoane de opiune, prin care se stabilete

!H/

aspectul formularului, de e#emplu, tip coloan, tip tabel, tip foaie de date i altele. Pentru a trece la pasul urmtor al e#perului se va da comanda Next. n acest pas, cu a+utorul unei liste se poate selecta stilul preferat al formularului "adic se poate alege culoarea de fundal respectiv imaginea din fundal care va fi aplicat formularului$. Pentru a trece la pasul urmtor al e#pertului se va da comanda Next. n acest ultim pas se cere stabilirea unui titlu aferent formularului. 'ctivitatea e#pertului se termin prin acionarea tastei !inish. 1ormularul este salvat automat de Access.

Utilizarea #n#i for"#lar pentr# introd#cerea3 "odificarea ,i ,tergerea articolelor Pentru a introduce un articol nou n tabelul aferent formularului se va va efectua un clic pe butonul de comand . n urma acestei aciuni cutiile te#t ale formularului devin necompletate, astfel se poate trece la tastarea noilor valori de cmpuri. Pentru modifiarea unui articol se navig)eaz la articolul respectiv, se face un clic pe cutia te#t corespunztoare cmpului modificat, dup care se opereaz editrile necesare. Pentru tergerea unui articol se navig)eaz la articolul respectiv, dup care din meniul Edit se d comanda Delete (ecord. @e afieaz o fereastr n care se cere confirmarea tergerii "prin Ses$ sau abandonarea ei "prin 6o$. 5a/igare 'n articolele #n#i for"#lar n partea de +os a unui formular este afiat o bar de instrumente care asigur parcurgerea articolelor tabelului aferent "interogrii aferente$ formularului.

Poziionare pe primul articol al tabelului. Poziionare pe articolul precedent al tabelului. Poziionare pe articolul specificat al tabelului. *up introducerea numrului de articol necesar se va aciona tasta >nter. Poziionare pe articolul urmtor al tabelului. Poziionare pe ultimul articol al tabelului 'dugarea unui articol nou tabelului.

!H

Ad #garea ,i "odificarea te&telor ,i a i"aginilor din antet#l ,i s#bsol#l #n#i for"#lar 1ormularele pot conine, n afara seciunii de detalii " $etail>, care cuprinde controlalele EaruncateE pe formular i alte seciuni: seciunea de antet a formularului9 seciunea de subsol a formularului. Pentru a afiaIa ascunde seciunile de antet i de subsol ale unui formular se va proceda astfel: n fereastra bazei de date se efectueaz un clic be butonul "formulare, buton situat lng marginea din stnga a ferestrei$. Printr&un clic, din lista de formulare se alege formularul dorit. @e efectueaz un clic pe butonul de comand "$esign$, prin care se desc)ide formularul n modul de vizualizare tip proiect. *in meniul 'ie+ se d comanda !orm 0eaderI!orm !ooter.

. @eciunile de antet ")eader$ i de subsol "footer$ fiind afiate, se pot aduga seciunilor respective controale suplimentare, de e#emplu etic)ete sau imagini grafice. 'ceste operaii se pot realiza doar dup ce n seciunile respective e#ist un spaiu suficient. Pentru a aduga spaiu antetului sau subsolului, folosind mouse&ul, se trag n +os liniile care delimiteaz seciunile respective. @paiul rezervat antetului i subsolului fiind asigurat, se verific dac este afiat cutia de unelte. Pentru afiareaIascunderea casetei de instrumente se va utiliza comanda %oolbox a meniului 'ie+.

!H!

Pentru a introduce un te#t "etic)et$ n zona antetului sau n zona subsolului, se va efectua un clic pe butonul "3abel$ al casetei de instrumente. *up acionarea acestui buton se selecteaz n zona de antet sau subsol locaia unde se va poziiona irul de caractere, dup care se tasteaz irul respectiv. Pentru a introduce o imagine grafic n zona antetului sau n zona subsolului, se va efectua un clic pe butonul "#mage$ al casetei de instrumente. *up acionarea acestui buton se selecteaz n zona de antet sau subsol locaia unde se va poziiona imaginea. @e afieaz fereastra de dialog prin care se stabilete imaginea dorit.

ndeprtarea etic)etelor i a imaginilor din zonele de antetIsubsol se face prin efectuarea unui clic pe controlul respectiv i acionarea tastei *>F>2>. 7n formular prevzut cu o etic)et n zona de antet "n modurile de vizualizare tip proiect i tip formular$ are aspectul alturat.

6tergerea #n#i for"#lar Pentru a terge un formular, n fereastra bazei de date se selecteaz formularul respectiv i se efectueaz un clic pe butonul de comand "$elete$. 8ariant: din meniul Edit se d comanda Delete, care are tasta de comenzi rapide *>F>2>. @e afieaz o fereastr de avertisment. %peraia de tergere de formular trebuie validat cu Ses sau invalidat cu 6o. .al/area #n#i for"#lar

!H=

@alvarea unui formular "desc)is$ este realizat automat de programul Access. Pentru a avea o siguran mai mare se poate cere efectuarea operaiei de salvare printr&un clic pe butonul de comand "Sa7e$.

1nc%iderea #n#i for"#lar Pentru nc)iderea unui formular se va efectua un clic pe butonul "Close$ situat n partea dreapta sus a formularului desc)is. 8ariant: din meniul !ile se d comanda $lose.

5.9 $eg sirea infor"aiilor


5.9.1 C #tarea datelor
Programul Access permite cutarea unei valori care este memorat ntr&un cmp "specificat sau nespecificat$ al unui articol. %peraia de cutare poate fi aplicat pentru: - articolele unui tabel "n modul de vizualizare tip foaie de date$9 - articolele livrate de o interogare "n modul de vizualizare tip foaie de date$9 - articolele unui formular "n modul de vizualizare tip foaie de date i n modul de vizualizare tip formular$. n modul de vizualizare tip foaie de date sau n modul de vizualizare tip formular se efectueaz un clic pe cmpul care conine informaia care urmeaz s fie cutat. *ac nu se cunoate e#act numele cmpului care conine informaia cutat, atunci se va e#ecuta un clic pe un cmp arbitrar. n meniul Edit se d comanda !ind "gsire$. 8ariant: se efectueaz un clic pe butonul de comand "Find$. @e afieaz o fereastr de dialog etic)etat cu Find and 4eplace "cutare i nlocuire$ care conine dou file. *ac este cazul, se activeaz fila Find.

!HH

n cutia te#t Find @8at "de cutat$ se tasteaz valoarea care urmeaz s fie cutat "te#t, numr, dat calendaristic$. Fista combinat 3oo5 #n "privire n$ este ncrcat automat cu numele cmpului selectat n primul pas. .utarea se limiteaz la cmpul curent, astfel cutarea va fi rapid. *in aceast list se poate selecta i numele foii de date analizate sau formularului analizat. n acest caz cutarea se refer la toate cmpurile i la toate articolele, cutarea fiind lent. @e desc)ide lista combinat Searc8 "cutare$, prin care se va stabili direcia de cutare. %piunile posibile sunt: - &p "n sus, de la articolul actual spre primul articol$9 - $o6n "n +os, de la articolul actual spre ultimul articol$9 - *ll "se va cuta n toate articolele, opiune implicit$. @e desc)ide lista combinat "atc8 "potrivire$, care stabilete modul de comparare a informaiei cutate, cu diferitele valori. %piunile posibile sunt: - @8ole Field "cmp ntreg$. @e caut cmpurile, al cror coninut coincide cu te#tul specificat n cutia te#t Find @8at. %piune implicit. *e e#emplu, cu EPopE nu se va gsi EPopescuE. - Start of Field "nceputul cmpului$. @e caut cmpurile, care ncep cu te#tul specificat. *e e#emplu, cu EPopE se va gsi att EPopE, ct i EPopescuE, dar nu i E;on PopE. - *ny %art of Field "orice parte a cmpului$. @e caut cmpurile, care conin te#tul cutat ntr&o poziie arbitrar. *e e#emplu, cu EPopE se va gsi EPopE, EPopescuE ct i E;on PopoviciE. Pentru a cuta prima apariie a valorii introduse n cutia te#t Find @8at se va efectua un clic pe butonul de comand !ind Next "caut urmtorul$. *ac informaia cutat a fost descoperit, ea va fi selectat9 n caz contrar se va afia o fereastr n care se comunic acest fapt.

!H3

Pentru a cuta urmtoarele apariii ale valorii introduse n cutia de te#t Find @8at se va efectua un clic pe butonul de comand !ind Next. *up localizarea informaiei cutate se va efectua un clic pe butonul de comand $ancel "nc)iderea ferestrei de cutare$.

5.9.* !iltrarea datelor


Prin filtrare se nelege afiarea unor articole care satisfac anumite criterii. 'rticolele care nu satisfac criteriul respectiv sunt ascunse, dar nu i terse din tabel. %peraia de filtrare este folosit atunci, cnd utilizatorul dorete s Xpun deoparteY anumite articolele neeseniale9 pe ecran vor fi afiate doar articolele, care prezint interes n momentul respectiv. 1iltrarea articolelor poate fi realizat prin mai multe metode. .ea mai uoar metod de filtrare este filtrarea prin selecie. @ingura activitate a utilizatorului nainte de filtrare este EdescoperireaE "localizarea$ unei valori de cmp, care urmeaz s fie folosit n procesul de filtrare. 'stfel, de e#emplu, s presupunem c se dorete afiarea tuturor articolelor, care n cmpul 1ra conin valoarea *rad. n acest scop se va cuta i selecta o valoare egal cu *rad, dup care va lansa n e#ecuie comanda de filtrare prin selecie, astfel: @e desc)ide tabelul, interogarea sau formularul care urmeaz s fie filtrat "se va utiliza modul de vizualizare tip foaie de date9 la formulare poate fi utilizat i modul de vizualizare tip formular$. @e caut o apariie a valorii care urmeaz s fie coninut n toate articolele filtrate. @e selecteaz valoarea respectiv, conform urmtoarelor: Pentru a afia toate articolele n care valoarea cmpului este identic cu valoarea selectat, se va selecta ntreaga informaie memorat n cmp. *ac, de e#emplu, din cmpul 1ra se selecteaz valoarea *rad, atunci se vor afia toate articolele, care n cmpul 1ra conin valoarea *rad. Pentru a afia toate articolele n care valoarea cmpului respectiv ncepe cu valoarea selectat, atunci se selecteaz o parte de nceput din informaia memorat n cmp, pornind de la primul caracter al valorii. *ac, de e#emplu, din valoarea *rad se selecteaz numai litera *, atunci se vor afia toate articolele, care ncep cu litera *, de e#emplu *rad, *lba #ulia, *nina, *d+ud .a.m.d. Pentru a afia toate articolele n care cmpul conine valoarea selectat ntr&o locaie arbitrar, atunci se selecteaz doar o parte din informaia memorat n cmp. *ac, de e#emplu, din valoarea *rad se selecteaz literele ra, atunci se vor afia articolele, care conin literele ra, de e#emplu *rad, Caracal, Crasna .a.m.d.

!HJ

n meniul (ecords se indic submeniul !ilter, dup care se d comanda !ilter b) #election. 8ariant: se efectueaz un clic pe butonul de comand "Filter by Selection$. n urma acestei aciuni pe ecran vor fi afiate doar articolele, care satisfac criteriul respectiv.

6umrul articolelor afiate pe ecran, n continuare, poate fi micorat. n acest scop se va relua algoritmul anterior din pasul al treilea, cu o nou valoare de filtrare. >fectul unei operaii de filtrare poate fi anulat prin tergerea filtrului aplicat. n acest scop n meniul (ecords se va da comanda (emo/e !ilterG#ort "eliminare filtrareIsortare$.

5.9.8 Interog ri
Crearea ,i sal/area #nei interog ri n fereastra bazei de date analizate se efectueaz un clic pe butonul de comand "interogri, buton situat lng marginea din stnga a ferestrei$. @e efectueaz un dublu clic pe comanda Create 'uery in $esign 7ie6 "crearea interogrii n modul de afiare tip proiect$. n urma acestei comenzi pe ecran vor apare dou ferestre: - n fa o fereastr etic)etat cu S8o6 Table "afiare de tabel$9 - n planul secund o fereastr etic)etat cu Select 9uery "fereastra destinat pentru proiectarea interogrii, care conine grila de proiectare$.

!H0

1ereastra de dialog S8o6 Table conine trei file: - 1ila Tables afieaz lista tuturor tabelelor din baza de date. - 1ila 9ueries afieaz lista tuturor interogrilor bazei de date, create anterior. @e menioneaz faptul, c pot fi create interogri tip stiv, caz n care articolele care se vor afia n noua interogare se bazeaz pe articolele livrate de o alt interogare. - 1ila Bot8 cumuleaz informaiile e#istente n cele dou fie anterioare9 ea afieaz lista tuturor tabelelor i interogrilor din baza de date. @e efectueaz un dublu clic pe numele obiectului "tabel sau interogare$ pe care se bazeaz noua interogare. 8ariant: printr&un clic se selecteaz obiectul necesar i se acioneaz butonul de comand *dd. %biectul respectiv va fi aezat "EaruncatE$ n partea superioar a ferestrei Select 9uery? 1iecrui obiect aruncat i corespunde cte o list, care conine urmtoarele date: numele obiectului aruncat "n capul de tabel a listei$, un caracter D, precum i numele tuturor cmpurilor din obiectul respectiv. n cazul e#emplului nostru se vor EaruncaE n fereastra Select 9uery tabelele tbl0udet i tbl3ocalitate. @e repet pasul precedent pentru fiecare tabel sau interogare pe care se bazeaz noua interogare. *up alegerea tuturor obiectelor necesare noii interogri se nc)ide fereastra S8o6 Table "prin acionarea butonului de comand Close$? n urma acestei comenzi se activeaz fereastra Select 9uery. *ac sunt utilizate mai multe tabele sau mai multe interogri, prima dat se verific modul de conectare a cmpurilor asociate "cmpurile

!H:

asociate sunt legate cu o linie$. @tabilirea de relaii ntre tabele "interogri$ sau modificarea tipului relaiilor e#istente poate fi realizat i n interiorul ferestrei Select 9uery. @e adaug cmpul implicat n interogare pe gril, situat n partea inferioar a ferestrei Select 9uery. n acest scop din lista de nume se va trage cu mouse&ul numele cmpului respectiv ntr&o celul liber din linia Field "cmp$. n linia Table se afieaz automat numele tabelului "interogrii$ care conine cmpul tras. % alt variant este efectuarea unui dublu clic pe numele cmpului necesar. 2ragerea pe gril a caracterului EDE este ec)ivalent cu tragerea pe gril a tuturor numelor de cmpuri din tabelul aferent. n cazul nostru au fost trase pe gril cmpul 0udet#$ "care aparine tabelului tbl0udet$, Nume "din tabelul tbl0udet$, Centru "din tabelul tbl0udet$ precum i cmpul Nume3oc "care aparine tabelului tbl3ocalitate$. *up tragerea acestor cmpuri liniile Field i Table ale ferestrei de proiectare a interogrii va avea aspectul urmtor:

@e repet pasul precedent, pn cnd toate cmpurile necesare interogrii vor fi depuse n liniile Fields i Table ale grilei de interogare. n continuare, pentru fiecare cmp al grilei pot fi stabilite criterii de sortare "celulele din linia Sort$, criterii de selectare a articolelor "celulele din linia Criteria$ i pot fi desemnate cmpurile vizibile ale interogrii "celulele din linia S8o6$. n cazul nostru, n linia Criteria corespunztoare cmpului tbl0udet a fost introdus criteriul E.lu+E. n linia Sort corespunztoare cmpului Nume3oc a folosit valoarea *scending "sortare n ordine cresctoare$. .ele patru cmpuri utilizate n interogare sunt vizibile "casetele de selectare din linia S8o6 sunt selectate$.

!H?

Pentru a salva interogarea creat se va efectua un clic pe butonul Sa7e . n fereastra afiat se va introduce numele atribuit interogrii, dup care se va aciona butonul de comand %R. Bezultatele interogrii pot fi vizualizate prin acionarea butonului 4un "e#ecutare$.

*bser/aii: .riteriile specificate n celulele liniei Criteria sunt legate prin operatorul de con+uncie Z; "'6*$. >le permit limitarea afirii tuturor valorilor coninute ntr&un cmp specificat al grilei. Pentru a specifica un criteriu corespunztor unui cmp, se va efectua un clic pe linia Criteria aferent cmpului i se va introduce criteriul care urmeaz s fie utilizat. .riteriul poate fi o simpl valoare sau un operator urmat de o e#presie. 8alorile de tip te#t trebuie s fie ncadrate de o perec)e de caractere Eg)ilimeleE, iar cele de tip date calendaristice de o perec)e de caractere EVE "diez$. 2abelul alturat conine mulimea operatorilor utilizai n stabilirea criteriilor:
*perator U UC C #emni&icaie Gai mic Gai mic sau egal >gal Expresia introdus 5n celula $riteria U !//.H3 UC *ate" $ & / C = C *ate" $ TC EPopescuE 'alorile selectate 6umere mai mici dect !//.H3 .el puin cu / zile n urm. 6umere egale cu =. *ata actual. Gulimea valorilor "numelor$ de la EPopescuE pn la sfritul alfabetului. Gulimea valorilor "numelor$ care ncep cu litera 6 pn la sfritul alfabetului. 6umere mai mari dect !=H 6umere diferite de !. Gulimea valorilor diferite de E7@'E

TC

Gai mare sau egal

TCE6E

T UT sau 6ot

Gai mare

T!=H UT !

*iferit

6ot E7@'E

*ac n aceeai linie de criterii se introduc mai multe criterii, programul Access va selecta numai articolele care ndeplinesc

!3/

simultan toate criteriile menionate, adic ntre criteriile introduse n diferitele celule ale aceleai linii de criteriu se utilizeaz operatorul de con+uncie logic '6*. n cazul n care criteriile sunt introduse n linii diferite "un criteriu este specificat n linia Criteria, celelalte criterii n linii avnd etic)etele or$, programul Access va selecta articolele, care ndeplinesc oricare dintre criteriile menionate "adic ntre aceste criterii se utilizeaz operatorul de dis+uncie logic %B$. >#presiile utilizate n specificarea criteriului introduse ntr&o oarecare celul a liniei Criteria se pot combina cu a+utorul urmtorilor operatori logici "utilizai mai frecvent$:
*perator #emni&icaie Expresia introdus 5n celula $riteria TC 3 'nd UC / 'alorile selectate 6umere mai mari sau egali dect 3 i mai mici sau egali dect /. [ile calendaristice mai mari dect decembrie !//! i mai mici dect = decembrie !//!. 6umere mai mari dect 00 sau mai mici dect 33. 6umere diferite de 33.

'nd

.on+uncie logic "operatorul Z;$

T V !I I/!V 'nd U V !I= I/!V

%r 6ot

*is+uncie logic "operatorul @'7$ 6egaie logic "operatorul 67$

T 00 %r U 33 6ot 33

'rticolele afiate de o interogare pot fi sortate n funcie de valorile coninute ntr&un cmp specificat al grilei. n acest scop se va efectua un clic pe linia Sort a cmpului care urmeaz s fie sortat, moment n care n celula respectiv va apare un buton corespunztor unei liste combinate. *in aceast list pot fi selectate trei valori: - *scending & sortare n ordine cresctoare, de e#emplu de la ' la [, de la / la ?, de la date calendaristice mai vec)i la date calendaristice mai recente9 - $escending & sortare n ordine descresctoare, de e#emplu de la [ la ', de la ? la /, de la date calendaristice mai recente la date calendaristice mai vec)i9 - "not sorted$ & fr sortare9 se folosete atunci, cnd se dorete anularea unei sortri ascendente sau descendente specificate anterior. *ac se cere realizarea unei sortri n funcie de valorile coninute n mai multe cmpuri, programul Access va sorta secvenial de la stnga

!3

la dreapta, adic primul criteriu de sortare este specificat de coninutul cmpului situat n poziia din stnga. ntr&o interogare pot fi incluse anumite cmpuri doar pentru stabilirea criteriilor de selectare sau de sortare. Pentru a mpiedica apariia unui cmp n cadrul informaiilor de ieire ale interogrii, n linia S8o6 a cmpului se va deselecta cutia de selectare corespunztoare, adic: reprezint un cmp ascuns9 reprezint un cmp afiat.

Editarea #nei interog ri % interogare creat anterior poate fi editat. n acest scop, n fereastra bazei de date se alege fereastra corespunztoare filei 9ueries, se efectueaz un clic pe numele interogrii, dup care se d comanda $esign, prin care se afieaz grila de proiectare a interogrii. %peraiile fundamentale de editare sunt urmtoarele: 'dugarea, tergerea sau modificarea criteriilor utilizate n interogare. 'ceste operaii se pot efectua folosind linia Criteria a grilei de interogare. 'dugarea, tergerea sau deplasarea unor cmpuri utilizate n grila de interogare. Pentru a aduga un nou cmp grilei de interogare, cmpul respectiv "afiat n sc)ema de tabel afiat n partea superioar a grilei$ trebuie tras cu a+utorul mouse&ului ntr&o celul liber a liniei Field. >#ist posibilitatea de a depune tabele noi n grila de interogare. 2abelele noi se pot depune n gril prin comanda #ho+ %able "meniul Huer)$. *ac se dorete tergerea unui cmp din grila de interogare, atunci se efectueaz un clic n selectorul de coloan corespunztor cmpului i se apas tasta Delete. Prin selector de coloan se nelege bara orizontal situat deasupra unei coloane. % coloan selectat poate fi mutat ntr&o alt poziie prin tragerea ei cu mouse&ul n noua locaie. Fimea coloanelor grilei de interogare poate fi, de asemenea, modificat. Prima dat se aeaz cursorul de mouse pe marginea vertical din dreapta selectorului de coloan. n momentul n care se modific forma cursorului de mouse, se efectueaz o tragere orizontal.

!3!

'scunderea sau reafiarea unor cmpuri utilizate n grila de interogare. 'ceste operaii se realizeaz folosind casetele de selectare plasate n linia S8o6 a grilei de interogare. *acA fereastra de proiectare a interogrii conine mai multe tabele asociate, ntre cmpurile asociate va apare o linie. 7neori este necesar modificarea acestor asocieri. Godificarea asocierii afecteaz numai modul n care actuala interogare va selecta articolele, deci nu are nici un efect asupra relaiilor stabilite ntre tabele. Pentru tergerea unei asocieri "din actuala interogare$ se va efectua un clic pe linia de reprezentare a relaiei i se va aciona tasta Delete. *ac se dorete crearea unei alte asocieri, atunci se va trage cmpul din tabelul primar peste cmpul din tabelul asociat. Pentru afiarea ferestrei de dialog prin care se poate stabili tipul de asociere se va efectua un dublu clic pe linia de reprezentare a relaiei.

Afi,area articolelor li/rate de o interogare :e&ec#tarea #nei interog ri; n fereastra bazei de date se efectueaz un clic pe butonul interogarea dorit. @e efectueaz un clic pe butonul de comand "1pen, desc)idere$. n urma acestei aciuni pe ecran se afieaz articolele livrate de interogare, n modul de afiare tip foaie de date "$atas8eet (ie6$. 7n alt mod pentru afiarea articolelor livrate de o interogare este efectuarea unui dublu clic pe numele interogrii respective. 6tergerea #nei interog ri n fereastra bazei de date se efectueaz un clic pe butonul "interogri$. *in lista de interogri, printr&un clic se alege interogarea dorit. @e efectueaz un clic pe butonul de comand "$elete$. 8ariant: se acioneaz tasta *>F>2>. @e afieaz o fereastr de avertisment. %peraia de tergere de interogare trebuie validat cu Ses sau invalidat cu 6o. "interogri$. *in lista de interogri, printr&un clic se alege

!3=

.al/area ,i 'nc%iderea #nei interog ri *ac se fac operaii de editare n grila de interogare, interogarea respectiv trebuie salvat prin efectuarea unui clic pe butonul de comand "Sa7e$. 8ariant: din meniul !ile se d comanda #a/e. Pentru nc)iderea unei interogri se va efectua un clic pe butonul "Close, situat n partea dreapta sus a ferestrei aferente interogrii$. 8ariant: din meniul !ile se d comanda $lose.

5.9.9 .ortarea articolelor


Programul Access dispune de comenzi prin care se poate realiza sortarea n ordine cresctoare "de la ' la [, de la / la ?$ sau descresctoare a articolelor "de la [ la ', de la ? la /$, n funcie de valorile coninute ntr&un cmp selectat. Prin comenzi simple pot fi sortate: articolele unui tabel "n modul de vizualizare tip foaie de date$9 articolele livrate de o interogare "n modul de vizualizare tip foaie de date$9 articolele unui formular "n modul de vizualizare tip foaie de date i n modul de vizualizare tip formular$. >ste posibil sortarea articolelor, care au fost filtrate anterior. n modul de afiare tip foaie de date sau tip formular se efectueaz un clic pe numele cmpului, ale cror valori urmeaz s fie utilizate n procesul de sortare. n urma acestei operaii se selecteaz coloana corespunztoare cmpului. *ac se dorete sortarea n ordine cresctoare, atunci n meniul (ecords se va indica submeniul #ort i se va da comanda #ort Ascending. 8ariant: clic pe butonul de comand . *ac se dorete sortarea n ordine descresctoare, atunci n meniul (ecords se va indica submeniul #ort se va da comanda #ort Descending. 8ariant: clic pe butonul de comand . %rdinea de sortare aplicat unui tabel, unei interogri sau unui formular poate fi ndeprtat9 astfel se revine la ordinea e#istent nainte de sortare. n acest scop, n modul de afiare tip foaie de date sau tip formular, se va da comanda (emo/e !ilterG#ort "eliminare filtrareIsortare, meniul (ecords$.

!3H

5.5 $apoarte
E&a"inarea :/iz#alizarea; #n#i raport creat anterior n fereastra bazei de date se efectueaz un clic pe butonul "rapoarte, buton situat lng marginea din stnga a ferestrei$. *in lista de rapoarte printr&un clic se alege raportul dorit. @e efectueaz un clic pe butonul de comand "%re7ie6, e#aminare$. n urma acestei aciuni pe ecran se afieaz raportul respectiv, folosind modul vizualizare Ee#aminare naintea imprimriiE "%rint %re7ie6$. 7n alt mod pentru vizualizarea unui raport este efectuarea unui dublu clic pe numele raportului respectiv. Crearea ,i sal/area #n#i raport n fereastra bazei de date se e#ecut un clic pe butonul "rapoarte$. @e e#ecut un dublu clic pe comanda Create report by using @izard "crearea raportului utiliznd e#pertul$. n urma acestei aciuni se afieaz prima fereastr a e#pertului de raport:

*in lista combinat Tables:9ueries se aleg tabelele "interogrile$ utilizate n raport. *up selectarea unui astfel de obiect n lista *7ailable Fields "cmpuri disponibile$ se vor afia cmpurile disponibile ale obiectului respectiv. *in lista *7ailable Fields printr& un clic se selecteaz un nume de cmp, dup care se e#ecut un clic pe butonul . .mpul selectat se va deplasa n zona etic)etat cu Selected Fields "cmpuri selectate$. @e repet procedura pentru fiecare cmp utilizat n raport. n continuare din lista combinat !33

Tables:9ueries se pot selecta i alte tabele sau interogri, iar cmpurile necesare n raport se vor depune n lista Selected Fields. *up ce au fost desemnate toate cmpurile utilizate n raport se acioneaz butonul de comand Next, prin care se trece la pasul urmtor al e#pertului.

'ceast fereastr a e#pertului se refer la o eventual grupare a articolelor din raport, n funcie de valorile coninute ntr&un cmp specificat. *ac se dorete gruparea articolelor n funcie de valorile unui cmp, n lista din stnga se efectueaz un clic pe numele cmpului respectiv i se acioneaz butonul . Pot fi selectate mai multe niveluri de grupare. n e#emplul nostru au fost selectate dou niveluri de grupare. Primul nivel de grupare se bazeaz pe coninutul cmpului Continent, iar nivelul al doilea pe coninutul cmpului Tara. *up stabilirea nivelurilor de grupare se va aciona butonul de comand Next.

!3J

'ceast fereastr a e#pertului se refer la ordinea de sortare a valorilor din cmpurile, care vor fi plasate n seciunea de detalii ale raportului "n aceast seciune pot fi sortate numai cmpurile, care nu sunt utilizate pentru grupri$. %peraia de sortare a articolelor din seciunea de detalii poate fi realizat dup cel mult patru cmpuri, n ordine cresctoare sau descresctoare. n e#emplul nostru s&a cerut sortarea cresctoare a articolelor din seciunea de detalii dup valorile coninute n cmpul Nume. *up stabilirea opiunilor de sortare se va aciona butonul de comand Next.

n noua fereastr a e#pertul se poate stabili modul de aezare a raportului n pagin precum i orientarea paginii utilizate. Butoanele de opiune afiate n zona 3ayout "aspect$ permit selectarea modului de aezare a raportului n pagin. >fectul lor poate fi vizualizat c)iar n interiorul ferestrei de dialog "n partea din stnga a ferestrei$. !30

Butoanele de opiune din zona 1rientation se refer la orientarea paginii imprimate "portret sau vedere$. 1ereastra este prevzut i cu o caset de selectare. *ac caseta este selectat, atunci limea cmpurilor raportului vor fi a+ustate de programul Access astfel nct toate cmpurile s ncap n pagin. *up selectarea acestor opiuni se va aciona butonul de comand Next. *in fereastra afiat se alege stilul care urmeaz s fie utilizat de antetulul raportului precum i de etic)etele i controalele afiate n seciunea de detalii ale raportului. @tilurile pot fi vizualizate n interiorul ferestrei de dialog. *up selectarea stilului preferat se va aciona butonul de comand Next. n ultima fereastr a e#pertului se stabilete titlul raportului. Prin aplicarea unui clic pe butonul de comand !inish se termin activitatea e#pertului de raport.

Baportul creat de vr+itor este salvat automat i este afiat n modul de vizualizare Ee#aminare naintea imprimriiE " %rint %re7ie6$. 'cest mod de vizualizare poate fi modificat n modul de vizualizare tip proiect " $esign (ie6$. .omenzile de alegere a modului de vizualizare utilizat se gsesc n meniul 'ie+. 7n raport grupat dup coninutul cmpurilor Continent i Aara i sortat cresctor dup coninutul cmpului Nume poate avea aspectul de mai +os:

Editarea #n#i raport creat anterior Prin editarea unui raport vom ntelege urmtoarele operaii: Godificarea ordinii de afiare a cmpurilor n structura raportului. Kruparea i sortarea datelor dup diferite cmpuri. ;ntroducerea formulelor n anteturile i subsolurile de raport, prin care se pot apela funcii tip agregat "@7G, G;6, G'\, '8K, .%762$. 'dugarea i modificarea te#telor n antetul i subsolul unui raport. !3:

'ceste operaii de editare se pot realiza numai dac raportul este desc)is n modul de afiare tip proiect " $esign (ie6$. n acest scop n fereastra bazei de date se efectueaz un clic pe butonul "rapoarte$, din lista de rapoarte printr&un clic se alege raportul dorit i se efectueaz un clic pe butonul de comand "$esign$, prin care se desc)ide raportul n modul de vizualizare tip proiect. 7n raport afiat n acest mod de vizualizare poate avea aspectul din captura de mai +os:

7n raport se compune de regul din mai multe seciuni. @eciunea de detalii "$etail$ a raportului se repet pentru fiecare articol n momentul n care raportul este afiat n modul de vizualizare Ee#aminare naintea imprimriiE. n afara seciunii de detalii, un raport poate avea un antet i un subsol al raportului "4eport Beader i 4eport Footer$, un antet i un subsol al paginii "%age Beader i %age Footer$ precum i antete i subsoluri pentru un numr de pn la zece nivele de grupare. 'ntetele i subsolurile aferente raportului i paginii se pot afia I ascunde prin comenzile (eport 0eader G !ooter i "age 0eader G !ooter "meniul 'ie+$. 'ntetul i subsolul de pagin definesc elementele care vor fi imprimate n partea de sus i de +os a fiecrei pagini. 'ntetul de raport apare numai pe prima pagin a raportului i +oac rolul unui titlu pentru ntregul raport. @ubsolul de raport apare numai pe ultima pagin a raportului. 2odificarea ordinii de afi,are a c7"p#rilor 'n str#ct#ra #n#i raport .mpurile afiate n seciunea de detalii a unui raport sunt reprezentate cu a+utorul controalelor tip cutie te#t " Text Box$. Prin operaii simple, efectuate cu a+utorul mouse&ului, aceste cutiile te#t se pot muta n alt locaie a raportului, !3?

prin care se modific ordinea de afiare a cmpurilor n structura raportului. Pentru mutarea unui control se va utiliza urmtorul algoritm: @e e#ecut un clic pe controlul care urmeaz s fie mutat ntr&o alt locaie a raportului. Pentru a selecta mai multe controale, n timpul selectrii lor se ine apsat tasta #0 !%. n +urul controlului apar opt ptrele utilizate n procesul de redimensionare. @e indic marginea superioar a controlului, moment n care cursorul mouse&ului se transform ntr&o mn cu cinci degete ntinse. n acest moment se trage controlul ntr&o nou locaie. n momentul n care se a+unge n locaia dorit, se elibereaz butonul de mouse. Pentru tergerea unui control se efectueaz un clic pe controlul respectiv i se acioneaz tasta DE1E%E. 2odificarea sa# definirea gr#p rii ,i sort rii datelor #n#i raport @e desc)ide raportul n modul de vizualizare tip proiect. @e efectueaz un clic pe butonul Sorting *nd Crouping . (ariant: din meniul 'ie+ se d comanda #orting and Irouping. n urma acestei aciuni se afieaz fereastra etic)etat cu Sorting and Crouping. .u aceast fereastr se poate modifica sau stabili modul n care se vor grupa datele "i anume dup valorile cror cmpuri i n ce ordine$.

n prima linie a coloanei Field:Expression se efectueaz un clic pe butonul i din lista afiat se selecteaz un nume de cmp pe care se bazeaz primul criteriu de grupare. n urmtoarea linie se va introduce un alt nume de cmp pe care se bazeaz cel de al doilea criteriu de grupare .a.m.d. n momentul completrii coloanei Field:Expression programul Access va alege automat ordinea

!J/

cresctoare de sortare a gruprilor, adic n coloana Sort 1rder "ordinea de sortare$ se va depune valoarea *scending "ordinea cresctoare$. %rdinea de sortare a unei grupri poate fi modificat dac n linia corespunztoare gruprii se efectueaz un clic pe celula din coloana Sort 1rder i se alege varianta $escending. Proprietile unei grupri pot fi configurate. n acest scop printr&un clic aplicat n coloana Field:Expression se alege gruparea respectiv9 proprietile gruprii desemnate se stabilesc prin subfereastra Croup %roperties. Principalele proprieti ale unei grupri sunt prezentate n tabelul urmtor:
Descriere *ac se alege varianta ;es, atunci pentru cmpul selectat din coloana Field:Expression se va crea o grupare de articole i n raport se va genera o seciune de antet de grupare. n urma acestei aciuni n selectorul de linie al cmpului "n prima coloan a ferestrei de sortare i grupare$ se afieaz un indicator de grupare, care are forma . Programul Access adaug o seciune de antet de grupare n fereastra de proiectare a raportului, n faa seciunii de detalii a raportului. n aceast seciune ulterior se pot depune, de e#emplu, cutii te#t. n cutiile te#t respective se pot depune formule. 8aloarea implicit a proprietii Croup Beader este No "nu se creeaz antet de grupare$. *ac se alege varianta ;es, atunci pentru cmpul selectat din coloana Field:Expression se va crea o grupare de articole i n raport se va genera o seciune de subsol de grupare. n urma acestei aciuni n selectorul de linie al cmpului se afieaz un indicator de grupare . Programul Access adaug o seciune de subsol de grupare n fereastra de proiectare a raportului, dup seciunea de detalii a raportului. n aceast seciune ulterior se pot depune, de e#emplu, cutii te#t. n cutiile te#t respective se pot depune formule. 8aloarea implicit a proprietii Croup Footer este No "nu se creeaz subsol de grupare$.

"roprietate

Croup Beader

Croup Footer

Introd#cerea 'n antetele ,i s#bsol#rile #n#i raport a diferitelor for"#le n antetele i subsolurile unui raport se pot insera cutii te#t. .oninutul acestor cutii te#t de obicei sunt apeluri de funcii tip agregat, care livreaz valori globale referitoare la cmpurile e#istente n grupare. @e menioneaz faptul c formulele e#istente n cutii te#t se pot depune n orice tip de antet i de subsol "grupare, pagin sau raport$. 1iind n modul de vizualizare tip proiect, pentru introducerea unei cutii te#t ntr&un antetIsubsol se va verifica dac este vizibil cutia de unelte. 'fiarea, respectiv ascunderea casetei de instrumente se realizeaz prin meniul 'ie+, comanda %oolbox. Pentru a introduce o cutie te#t n antetul sau n subsolul unui raport se va efectua un clic pe butonul "Text Box$ al casetei de instrumente. *up acionarea acestui buton printr&un clic se desemneaz antetul !J

sau subsolul dorit i se deplaseaz mouse&ul. n momentul eliberrii butonului mouse&ului n antetulIsubsolul desemnat se vor crea dou controale: un control tip etic)et i un control tip te#t.

n controlul etic)et "controlul din stnga$ se va tasta un te#t prin care se descrie succint rolul formulei. n controlul cutie te#t "controlul din dreapta$ se va tasta o formul. n antetele i subsolurile unui raport de obicei se depun urmtoarele formule:
!ormul C @7G "46ume.mp5$ C .%762"4%rae5$ CG;6"4Focuitori5$ C G'\"4Focuitori5$ C '8K"4Focuitori5$ #emni&icaie @uma valorilor din cmpul NumeCDmp n cadrul gruprii, paginii sau raportului ntreg. 6umrul de valori din cmpul NumeCDmp n cadrul gruprii, paginii sau raportului ntreg. Ginimul valorilor din cmpul NumeCDmp n cadrul gruprii, paginii sau raportului ntreg. Ga#imul valorilor din cmpul NumeCDmp n cadrul gruprii, paginii sau raportului ntreg. Gedia aritmetic a valorilor din cmpul NumeCDmp n cadrul gruprii, paginii sau raportului ntreg.

*e e#emplu, n subsolul unei grupri, bazat pe valorile cmpului 0udet#$, al unui raport, s&au introdus urmtoarele formule:

'cest subsol, n modul de vizualizare nainte de imprimare, are aspectul alturat:

Ad #garea ,i "odificarea te&telor ,i a i"aginilor 'n antet#rile ,i s#bsol#rile #n#i raport

!J!

Pentru a introduce un te#t "etic)et$ n antetul sau n subsolul unui raport se va efectua un clic pe butonul "3abel$ al cutiei de unelte. *up acionarea acestui buton se selecteaz n antetul sau subsolul dorit locaia unde se va poziiona irul de caractere, dup care se tasteaz irul respectiv. Pentru a introduce o imagine grafic n antetul ori n subsolul unui raport se va efectua un clic pe butonul "#mage$ al cutiei de unelte. *up acionarea acestui buton se selecteaz n antetul sau subsolul dorit locaia unde se va poziiona imaginea. @e afieaz fereastra de dialog prin care se stabilete imaginea dorit. Godificarea unui te#t se realizeaz prin selectarea etic)etei respective i operarea editrilor dorite. ndeprtarea etic)etelor i a imaginilor din zonele de antetIsubsol se face prin efectuarea unui clic pe controlul respectiv i acionarea tastei *>F>2>. 6tergerea #n#i raport Pentru a terge un raport, n fereastra bazei de date se selecteaz raportul respectiv i se efectueaz un clic pe butonul de comand "$elete$. 'ariant: din meniul Edit se d comanda Delete, care are tasta de comenzi rapide *>F>2>. @e afieaz o fereastr de avertisment. %peraia de tergere de raport trebuie validat cu Ses sau invalidat cu 6o. .al/area ,i 'nc%iderea #n#i raport *ac se fac operaii de editare ntr&un raport, raportul respectiv trebuie salvat prin efectuarea unui clic pe butonul de comand "Sa7e$. 'ariant: din meniul !ile se d comanda #a/e. Pentru nc)iderea unui raport se va efectua un clic pe butonul situat n partea dreapta sus a ferestrei aferente interogrii$. 8ariant: din meniul !ile se d comanda $lose.

"Close,

5.< +reg tirea rez#ltatelor


=iz#alizarea :e&a"inarea; 'nainte de i"pri"are a #n#i tabel3 for"#lar sa# raport nainte de a lansa n e#ecuie operaia de imprimare a unui tabel, formular sau raport, se recomand lansarea n e#ecuie a comenzii de vizualizare a obiectului care se va imprima n modul prealabil imprimrii. 'cest mod poate fi declanat prin selectarea obiectivului din fereastra bazei de date i lansarea comenzii "rint "re/ie+ "meniul !ile$. 'ceast comand poate fi accesat i prin butonul de comand "%rint %re7ie6, bara de unelte $atabase$. *ac !J=

aspectul obinut corespunde cerinelor dvs, se poate cere imprimarea imediat a obiectului analizat. Config#rarea opi#nilor referitoare la pagina #tilizat 'n proces#l de i"pri"are @e desc)ide tabelul, intrerogarea, formularul sau raportul. n cazul unui tabel sau al unei interogri se va utiliza modul de vizualizare tip foaie de dat sau modul de vizualizare nainte de imprimare. 7n formular sau un raport poate fi desc)is n orice mod de vizualizare. *in meniul !ile se d comanda "age #etup "iniializare pagin$. @e afieaz o fereastr de dialog format din filele "argins, %age, eventual i Columns.

Prin fila "argins a ferestrei de dialog %age Setup se stabilete dimensiunea zonei de imprimare, adic se stabilesc cele patru margini utilizate "msurtorile se dau n inc)i, se va imprima doar n interiorul celor patru margini$. n cazul formularelor i rapoartelor prin caseta de selectare %rint $ata 1nly se stabilete dac se vor imprima doar datele i se omite imprimarea etic)etelor, bordurilor, liniilor de reea, imaginile grafice ale liniilor i cutiilor. n cazul imprimrii tabelelor sau a articolelor livrate de o interograre prin caseta de selectare %rint Beadings se poate cere imprimarea anteturilor. Prin fila %age a ferestrei de dialog se stabilete orientarea )rtiei utilizate la imprimare. 8ariantele posibile sunt opiunile Portrait "portret, se imprim paralel cu marginea mai ngust a )rtiei$ i Fandscape "vedere, se imprim paralel cu marginea mai lat a )rtiei$.

!JH

Prin lista combinat Size, situat n subfereastra %aper, se alege dimensiunea )rtiei, de e#emplu 'H, precum i modul de alimentare cu )rtie a imprimantei. *e asemenea, se poate stabili imprimanta utilizat "cea implicit sau o imprimant specificat$. n cazul formularelor i rapoartelor fereastra de dialog conine o i fil Columns prin care se stabilete numrul, dimensiunea i modul de implementare a coloanelor.

Opi#ni pentr# i"pri"are %piunile utilizate n procesul de imprimare se pot stabili prin meniul !ile, comanda "rint.

n aceast fereastr de dialog, prin lista combinat Name situat n subfereastra %rinter se alege tipul imprimantei utilizat n procesul de imprimare. *ac se dorete imprimarea ntr&un fiier disc, de e#tensie PB6, atunci se selecteaz caseta de selectare %rint to File. 6umrul de copii dorite se introduce n cutia Number of Copies. I"pri"area foii de date coresp#nz toare #n#i tabel3 a #nei interog re sa# a #n#i for"#lar :adic a t#t#ror articolelor aferente obiect#l#i ; @e desc)ide tabelul, interogarea sau formularul n modul de vizualizare tip foaie de dat. *in meniul !ile se d comanda "rint. *in subfereastra %rint 4ange se alege butonul de opiune All. !J3

@e stabilesc i celelalte opiuni ale ferestrei de dialog i se d comanda %R. I"pri"area articolelor selectate dintr(o foaie de date a #n#i tabel3 a #nei interog ri sa# a #n#i for"#lar @e desc)ide tabelul, interogarea sau formularul n modul de vizualizare tip foaie de dat. @e selecteaz articolele care se vor imprima. *in meniul !ile se d comanda "rint. *in subfereastra %rint 4ange se alege butonul de opiune #elected (ecordJsF. @e stabilesc i celelalte opiuni ale ferestrei de dialog i se d comanda %R. I"pri"area t#t#ror articolelor #n#i tabel sa# a articolelor li/rate de o interogare folosind for"#lar#l coresp#nz tor obiect#l#i @e desc)ide formularul corespunztor obiectului n modul de vizualizare tip formular "Form (ie6$ sau n modul de vizualizare tip foaie de dat "$atas8eet (ie6$. *in meniul !ile se d comanda "rint. *in subfereastra %rint 4ange se alege butonul de opiune All @e stabilesc i celelalte opiuni ale ferestrei de dialog i se d comanda %R. 1ormularul este imprimat n modul de vizualizare specificat de proprietatea De&ault'ie+. I"pri"area articolelor selectate ale #n#i tabel sa# a articolelor li/rate de o interogare3 folosind for"#lar#l coresp#nz tor obiect#l#i @e desc)ide formularul corespunztor obiectului n modul de vizualizare tip formular sau n modul de vizualizare tip foaie de dat. @e selecteaz articolele dorite prin efectuare de clicuri pe selectori de date "dac se dorete selectarea mai multor articole, atunci se va efectua un clic pe primul selector de articol i se deplasa cursorul mouse&ului pn la ultimul selector de articol care se va imprima$. *in meniul !ile se d comanda "rint. *in subfereastra %rint 4ange se alege butonul de opiune #elected (ecordJsF @e stabilesc i celelalte opiuni ale ferestrei de dialog i se d comanda %R. I"pri"area #n#i raport

!JJ

n fereastra bazei de date se selecteaz raportul respectiv i se desc)ide folosind modurile de vizualizare tip proiect "*esign 8ie,$, e#aminare nantea imprimrii "Print Previe,$ sau vizualizare tip implementarea "Fa(out Previe,$. *in meniul !ile se d comanda "rint. *in subfereastra %rint 4ange se alege butonul de opiune "ages, dup care se specific numrul paginilor dorite folosind cutiile te#t From "de la$ i To "pn la$. @e stabilesc i celelalte opiuni ale ferestrei de dialog i se d comanda %R.

!J0

S-ar putea să vă placă și