Sunteți pe pagina 1din 71

MICROSOFT ACCESS

Obiective:
Noiuni generale
Prezentarea aplicaiei
Lansarea i nchiderea programului
Proiectarea structurii bazei de date
Operaii cu tabele
Operaii cu datele tabelelor
Crearea relaiilor ntre tabele
Sortarea, filtrarea i indexarea datelor
La sfritul acestui curs va trebui s tii urmtoarele:
Lansarea i nchiderea programului
Crearea i deschiderea unei baze de date
Crearea, salvarea i editarea tabelelor
Comutarea ntre modurile de vizualizare
Operaii principale cu nregistrrile unei tabele
ormatarea tabelelor
!efinirea relaiilor
"ortarea i filtrarea datelor
Operaii cu cereri
Operaii cu formulare
Operaii cu rapoarte
Operaii cu etichete
#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Lecia 1
Obiectivele leciei
Noiuni generale
Prezentarea aplicaiei
Lansarea i nchiderea programului
Proiectarea structurii bazei de date
Operaii cu tabele
Operaii cu datele tabelelor
Crearea relaiilor ntre tabele
Sortarea, filtrarea i indexarea datelor
La sfritul acestei lecii va trebui s tii urmtoarele:
Lansarea si inchiderea programului
Crearea si deschiderea unei baze dedate
Crearea, salvarea si editarea tabelelor
Comutarea intre modurile de vizualizare
Operatii principale cu inregistrarile unei tabele
ormatarea tabelelor
!efinirea relatiilor
"ortarea si filtrarea datelor
NOIUNI INTRODUCTIVE DESPRE BAZE DE DATE
DEFINIREA TERMENILOR
O baz de date reprezint o colecie de date nrudite, care se refer la un anumit subiect
sau obiectiv, mpreuna cu instrumentele folosite pentru manipularea acestor date-
O baza de date conine urmtoarele elemente:
(abelul .table/ 0 colecie de date nrudite, stocate pe linii i coloane1
Cmpul .field/ 0 coloana din cadrul tabelului, care reprezint cea mai mic
unitate de date din cadrul bazei de date-
2
3nregistrarea .record/ 0 linia din cadrul tabelului- Linia este compus din
cmpuri i conine toate datele referitoare la un anumit element .dimensiuni, culori,
greuti i alte caracteristici/-
Obiect .object/ 0 component individual Acce, cum ar fi un tabel, un
formular, o interogare sau un raport-
ormular .form/ 0 un obiect Acce care afieaz informaiile dintr4un
tabel ntr4un format diferit de cel al tabelului .altfel dect pe linii sau coloane/-
&nterogare .query/ 0 *n obiect Acce care stocheaz ntrebri cu privire la
datele stocate n baza de date-
%aport .report/ 0 *n obiect Acce care stocheaz detalii pentru afiarea
sau tiprirea datelor n mod organizat-
r a4i propune s schieze o metodologie sau s stabileasc reguli, acest capitol
ncearc s puncteze etapele principale ale dezvoltrii de aplicaii de baze de date i s
e5emplifice utilizarea unor instrumente specifice i va aborda proiectarea modelului
conceptual-
!ezvoltarea de aplicaii de baze de date de mari dimensiuni este n acelai timp un fapt
banal, dar i un fapt e5traordinar- +analitatea const n faptul c un procent semnificativ
din efortul de dezvoltare de aplicaii se ndreapt spre acest domeniu- '5traordinarul se
leag de comple5itatea deosebit a acestor aplicaii, care implic echipe mari de
proiectani, necesit att e5perien n domeniu ct i adaptarea la condiii mereu noi- 6i
nu n ultimul rnd, reprezint o mare responsabilitate- Cu toate c industria de soft7are
cunoate o adevrat e5plozie, cu toate c suntem literalmente bombardai cu sute i sute
de aplicaii din ce n ce mai comple5e i mai specializate, nc nu a fost 8inventat9 un
pachet soft7are care s satisfac necesitile generale ale unei ntreprinderi- Chiar dac ne
restrngem preteniile la partea numit de obicei 8de gestiune economic9, un astfel de
soft7are nu se ntrezrete la orizont, cu toate c n linii mari, toate ntreprinderile
funcioneaz pe aceleai principii- '5ist pachete 8de gata9 care satisfac anumite nevoi
specifice dar, la noi ca i n alte pri, elemente specifice primeaz i n consecin marea
ma:oritate a ntreprinderilor prefer s4i construiasc 8la comand9 sistemul informatic-
)ceast abordare implic ns un efort substanial i nu lipsit de riscuri- 3n rile cu o
economie 8normal9 procesul se desfoar cam n felul urmtor- 3n primul rnd,
compania i evalueaz la modul general nevoile informatice i posibilitile
organizatorice i financiare- )poi se anga:eaz o firm specializat de consultan care, pe
baza unei e5pertize, stabilete cu mai mare precizie cerinele i posibilitile, dup care
sugereaz un numr de propuneri- )cestea se refer att la principiile tehnologice de baz
ct i la costurile evaluate i ealonarea lor n timp- )cum ncepe o nou iteraie-
Compania analizeaz propunerile i alege una dintre ele .sau o combinaie din mai multe/
i se trece la treab- 8(reaba9 const de obicei i n acest caz n contactarea unei tere
firme .de consultan i integrare/ care va prelua contractual sarcini, ncepnd cu
proiectarea de ansamblu a sistemului, achiziionarea echipamentelor i a soft4ului de baz,
i terminnd cu training, asisten tehnic, mentenan hard i soft- etc- "unt foarte rare
situaiile cnd o companie poate s4i permit s realizeze toate acestea prin fore proprii-
'5plicaia este e5trem de simpl, n perspectiv occidental: banii- ) plti la modul
permanent oameni cu o foarte nalt calificare i e5perien n domeniu este un lu5 pe
care foarte puini i4l pot permite, mai ales cnd nu informatica este obiectul afacerii-
&deea este de a pstra doar o echip restrns care s asigure e5ploatarea i ntreinerea
curent a sistemului informatic, pentru activitile speciale apelnd la competene e5terne,
orientate pe problem- %evenind la realitatea economic romneasc, constatm c
lucrurile stau cu totul altfel- "cenariile clasice corespund situaiilor tipice: ntreprinderea
;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
.organizaia/ are sau nu are bani- !ac nu are, se pornete de la o 8evaluare9 de genul
urmtor: 8Cam de cte calculatoare am avea nevoie ca s---9- %spunsul e ceva de genul
8!e vreo---9- "e cumpr de regul cele mai ieftine calculatoare, se face rost de un om i
se trece la treab- "e constat c s4a investit aiurea, se ncearc o crpeal .pardon, patch/,
etc, i n cele din urm se pierd doi ani i o groaz de bani- !ac organizaia are bani,
singura diferen este c se face o licitaie, se ncaseaz 8un mic9 avans i se trece la
treab, ca i n cazul precedent-
Capitolul acesta nu i propune s te fac un e5pert n domeniu- Ceea ce se ncearc este
doar s sugereze care este n mare problematica dezvoltrii de aplicaii de baze de date de
dimensiuni mari, medii sau mici .la nivel de ntreprindere sau la nivel departamental/ i
care sunt principalele categorii de instrumentele care se pot utiliza- 'ste de fapt o
ncercare de sintez bazat att pe e5periena proprie n domeniu .ntr4o mare
ntreprindere/ ct i pe ansa de a cunoate i de a testa un numr relativ mare de produse
soft7are moderne destinate acestui scop-
GENERALITI
*n sistem de gestiune a bazelor de date .S!BD/ este un mecanism al crui principiu
fundamental const, la modul cel mai general, n aa4zisa abstractizare a datelor stocate
pe suport- '5ist trei nivele de abstractizare, corespunznd celor trei modele ale datelor:
fizic, conceptual i logic-
<odelul fizic .sau intern/ privete datele aa cum sunt ele stocate pe suport
i reprezint nivelul zero al abstractizrii1
<odelul conceptual privete datele prin semnificaia lor real1
<odelul logic .sau e5tern/ privete datele prin prisma utilizatorului final-
$entru o baz de date pot e5ista mai multe modele logice, n funcie de diversele categorii
posibile de utilizatori finali- <ecanismele de 8proiecie9 ntre aceste nivele asigur ceea
ce se cheam de obicei independena de date, adic stabilitatea aplicaiilor la modificri n
modul fizic de stocare a datelor- $roiectarea aplicaiilor de baze de date implic din
aceast perspectiv dou etape iniiale e5trem de importante: proiectarea logic i
respectiv implementarea fizic a modelului de date- <odelul de date formeaz fundaia
ntregului sistem de aplicaii ce va e5ploata baza de date- $roiectarea logic .logical
design/ se refer la stabilirea modelului conceptual al bazei de date care este n mare
msur independent de S!BD4ul particular care va fi utilizat- %ezultatul acestei etape a
proiectrii este un document care va cuprinde definiia detaliat a structurilor de date ce
vor fi implementate mpreun cu toate elementele de semantic asociate acestor structuri-
&mplementarea fizic .physical implementation/ const n transpunerea pe S!BD4ul
specific a modelului conceptual realizat n etapa anterioar- Concretizarea acestei etape
const ntr4un script .o list de comenzi/ realizat n limba:ul de descriere a datelor .DDL 4
Data Description Language/ utilizat de S!BD4ul ales- %olul acestuia este s creeze i s
iniializeze baza de date cu structurile corespunztoare celor descrise n etapa anterioar-
)cest script se mai numete schema bazei de date i va fi utilizat ca referin n
proiectarea aplicaiilor propriu4zise-
)ceast etap este e5trem de comple5 i de important, deoarece ea stabilete o serie de
elemente care vor influena funcionalitatea, e5tensibilitatea i, ntr4o destul de mare
msur, performana ansamblului de aplicaii care va fi dezvoltat-
=
<etoda cea mai utilizat n aceast etap este cea a diagramelor 'ntitate 4 %elaie .ER 0
Entity-Relationship/- $rincipalii pai ai proiectrii sunt prezentai pe scurt n continuare-
CULEGEREA !"#R$A%L#R
$rimul pas n crearea unei baze de date este nelegerea perfect a activitii care urmeaz
s fie modelat- )naliza se face desigur la faa locului i implic stabilirea e5act a
obiectivelor activitii modelate, a obiectivelor specifice care se urmresc prin
implementarea sistemului, a regulilor care guverneaz afacerea i care se cer impuse
sistemului informatic- "e urmrete n acest scop funcionarea sistemului e5istent .fie
manual, fie de:a informatizat n parte/ i se discut cu managerii i utilizatorii finali ai
viitorului sistem-
&at un set de ntrebri uzuale n aceste interviuri:
Care sunt obiectivele activitii, sau ale ntreprinderii n general>
Cum ar trebui s se concretizeze acestea n obiective pentru sistemul
informatic>
Care sunt intrrile i ieirile sistemului- Ce rapoarte trebuie obinute i ct
de des>
Cum vor fi introduse datele i cum vor fi ntreinute> !e ctre cine>
Ce alte prelucrri se cer realizate>
Care sunt entitile .lucruri, persoane, concepte, etc-/ care vor fi descrise n
baza de date>
Ce relaii e5ist ntre diferitele entiti descrise n baza de date>
Care sunt regulile comerciale care trebuie respectate n mod obligatoriu de
viitorul sistem >
Ce se ateapt de la aplicaiile ce urmeaz a fi proiectate i care sunt
performanele acceptabile n care ar trebui s se ncadreze>
Care este volumul estimativ al datelor ce vor fi stocate>
Care va fi frecvena actualizrilor>
Ct de repede trebuie s fie capabil sistemul s regseasc sau s
actualizeze informaiile>
!esigur, acest proces este iterativ pe vertical .pornind de la managementul ntreprinderii
i terminnd cu personalul direct implicat/ ct i n timp .dup o prim apro5imare se
trece la elemente mai concrete/-
%ezultatul acestui prim pas trebuie s fie o specificare a cerinelor, concretizat poate ntr4
un set de notie sau poate ntr4o documentaie formal- &ndiferent de forma concret este
de reinut c aceast specificare a cerinelor este, inevitabil, provizorie- $ractica
demonstreaz c paii urmtori ai proiectrii vor aduce elemente noi, uneori e5trem de
importante- " considerm pentru e5emplificare o firm imaginar .s4i spunem 8ictiv
Comp9/, a crei activitate se refer la comercializarea de tehnic de calcul- ?om
considera un model mult simplificat al acestei activiti, i vom presupune c n urma
acestei etape de analiz s4au identificat urmtoarele reguli de funcionare:
@- )facerile firmei constau din vnzarea unei linii de produse-
A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
#- CL&'BC&& lanseaz CO<'B,& pentru unul sau mai multe $%O!*"'-
2- $reurile $%O!*"'LO% se pot modifica- CL&'BC&& pltesc preul actual din
momentul n care au lansat CO<)B!)-
;- &nformaiile despre CO<'B,& reprezint principala intrare a sistemului- &eirile
sistemului sunt reprezentate de facturi, rapoarte sptmnale de vnzri i situaia
lunar a comisioanelor-
=- Compania are un personal format din )BD)E)C& care lucreaz la anumite
!'$)%()<'B('- iecare !'$)%()<'B( este condus de un )BD)E)(- *n
)BD)E)( poate conduce cel mult un !'$)%()<'B(-
A- )BD)E)C&& sunt pltii printr4un salariu lunar, plus eventuale comisioane- Bici un
salariu nu poate fi mai mic de #FF-FFF lei sau mai mare de GFF-FFF lei-
G- CO<'B,&L' sunt preluate de )BD)E)C& de la !'$)%()<'B(*L 8!esfacere9-
$entru o CO<)B!H preluat se pltete un comision- ?aloarea acestuia este un
procent din valoarea comenzii i este specific anga:atului-
I- CL&'BC&& pot comanda doar $%O!*"' din catalogul de produse-
J- *n $%O!*" poate fi comandat doar ntr4un numr ntreg .K@/ de uniti- $ot e5ista
desigur mult mai multe reguli- !e e5emplu: ce informaii particulare trebuie
memorate pentru clieni, anga:ai, comenzi, produse, etc-
&E!'"CAREA E!''(%L#R
'ntitile reprezint abstractizri ale lucrurilor reale, fie ele concrete sau imateriale- 'le
pot corespunde unor persoane, obiecte, locuri, documente, concepte, etc- Ceea ce
intereseaz n proiectarea unei baze de date sunt doar tipurile de entiti implicate n
activitatea modelat- &dentificarea acestora i corecta lor evideniere este o problem care
ine n mare msur de e5periena i chiar de 8flerul9 proiectantului- Cu toate acestea,
cteva reguli pot fi folositoare- "implitatea este cea mai important- 'ste preferabil s
lucrm cu mai puine entiti dect cu prea multe, deoarece pe parcursul dezvoltrii
proiectului cele omise i vor cere cu siguran drepturile, n schimb cele inutile nu vor
cere e5plicit s fie e5cluse, complicnd i mai mult o activitate care numai de
comple5itate nu duce lips- O alt regul de bun sim este denumirea lor ct mai clar i
sugestiv, deoarece aceste nume tind s se perpetueze pn n detaliile aplicaiilor- 3n
e5emplul privind lista .parial/ a regulilor activitii firmei 8ictiv Comp9 am notat cu
ma:uscule posibilele entiti: CL&'B(, )BD)E)(, !'$)%()<'B(, CO<)B!H,
$%O!*"- "4ar fi putut considera o entitate $'%"O)BH care s grupeze att anga:aii
firmei ct i clienii care sunt persoane fizice, s4ar fi putut considera entiti separate
pentru efi, sau diverse alte entiti, dar regula simplitii ne spune c gruparea selectat
este pertinent- '5cesul de detalii este duntor la acest nivel, deoarece e5plozia
comple5itii care urmeaz n urmtoarele etape poate face proiectul imposibil de
stpnit-
&E'ER$!AREA RELA%L#R
'ste evident c entitile nu pot cuprinde singure ntreaga informaie ce trebuie
administrat i nici nu pot fi concepute ca 8insule9 informaionale- O bun parte din
informaia semnificativ legat de activitatea modelat se afl tocmai n relaiile care
e5ist ntre entiti- !e pild faptul c anumii anga:ai lucreaz la un anumit departament
este o informaie util i de fapt se refer la o astfel de relaie ntre entitile )BD)E)( i
!'$)%()<'B(- .)tenie la terminologie: se folosete adesea sinonimul asociere pentru
G
a evita 8suprancrcarea9 cu semnificaii a termenului 8relaie9, care n teoria modelului
relaional este sinonim cu 8tabel9-/
!ou observaii:
@- $ot e5ista relaii definite pe o entitate1
#- %elaiile ntre entiti nu sunt de regul simetrice- 3n cadrul e5emplului privind
8ictiv Comp9 relaiile sugerate apar scrise legat- Lista lor ar putea fi urmtoarea:
a- CL&'B( lanseaz CO<)B!)1
b- CO<)B!) esteLpentru $%O!*"1
c- )BD)E)( preia CO<)B!)1
d- )BD)E)( lucreazLla !'$)%()<'B(1
e- )BD)E)( conduce !'$)%()<'B(-
"ubliniez nc o dat c relaiile ntre entiti poart informaie util n egal msur ca i
entitile- !enumirile sugestive sunt chiar mai importante dect la entiti, avnd n
vedere c ntre aceleai dou entiti pot e5ista mai multe relaii .vezi cazul )BD)E)(4
!'$)%()<'B(/ i c relaiile nefiind simetrice poart adesea dou nume .de pild
)BD)E)( conduce !'$)%()<'B( i respectiv !'$)%()<'B( esteLcondusL de
)BD)E)(/-
CAR&!AL'A'EA RELA%L#R
La modul teoretic, se poate vorbi despre relaii ntre oricte entiti, dar n mod practic nu
se lucreaz dect cu relaii binare .numai ntre dou entiti/ i m voi referi n continuare
doar la acest tip de relaii- 'ste important de subliniat faptul c relaiile ntre entiti leag
ntre ele ocurene ale entitilor, adic realizri, concretizri, cazuri particulare ale
acestora- O chestiune e5trem de important este clasificarea lor n funcie de
cardinalitatea lor- "au, altfel spus, de numrul ocurenelor entitilor ce pot fi legate prin
relaia respectiv- '5ist trei clase principale de relaii:
relaii one4to4one .@ la @/ 0 relaiile de acest tip leag o ocuren a unei
entiti cu cel mult o ocuren a celeilalte entiti- '5emplul cel mai elocvent este
cel al relaiei )BD)E)( conduce !'$)%()<'B(- $oate e5ista un singur anga:at
care s conduc un departament- !e notat i faptul c relaiile one4to4one nu
implic bi:ectivitatea .nu orice anga:at trebuie s fie neaprat ef/-
%elaii one4to4manM .@ la mai multe/ 0 este cazul cel mai comun- O
ocuren a primei entiti poate fi legat cu zero, una sau mai multe ocurene ale
celei de4a doua entiti- $rivite invers, aceste relaii se cheam manM4to4one-
'5emple de astfel de relaii ar fi CL&'B( plaseaz CO<)B!): un client poate s
lanseze mai multe comenzi .dar poate s nu lanseze nici una/- %elaia )BD)E)(
lucreazLla !'$)%()<'B( este de asemenea o relaie de acest tip .manM4to4
one/- O alt denumire larg rspndit pentru astfel de relaii este <aster4!etail-
*neori se consider ns c este vorba despre un caz particular al relaiilor one4to4
manM: orice ocuren a entitii manM .sau detail/ se cere a fi legat cu e5act o
ocuren a entitii one .sau master/-
%elaii manM4to4manM .mai multe la mai multe/ 0 n acest caz, orice
ocuren a unei entiti poate fi legat cu mai multe ocurene ale celeilalte entiti i
reciproc- '5emplul din cazul firmei 8ictiv Comp9 este relaia CO<)B!) pentru
$%O!*": o comanda poate s se refere la mai multe produse iar un produs poate
I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
s apar n mai multe comenzi- )stfel de relaii nu pot fi manipulate direct n cadrul
modelului relaional i este indicat s fie descompuse n relaii @ la mai multe iNsau
@ la @- !e obicei aceast descompunere se face prin introducerea unei entiti noi
.n cazul de fa se poate introduce entitatea L&B&', care s conin date referitoare
la fiecare poziie a comenzii/- 'ste de notat i un aspect semantic: fiecare latur a
relaiei poate fi obligatorie sau opional- !e pild: orice comand trebuie s
corespund unui client- 3ns nu este obligatoriu ca un client s aib comenzi- !e
cele mai multe ori partea one este obligatorie, dar e5ist e5cepii .'5emplu: relaia
preia/-
&E'ER$!AREA 'A)ELEL#R
<odelul relaional se bazeaz pe o modalitate unic de stocare att pentru entiti ct i
pentru relaii ntre acestea: totul se stocheaz n tabele- $rimul pas n determinarea
tabelelor este deci foarte clar: fiecrei entiti i va corespunde o tabel- !ac numele
entitilor a fost :udicios stabilit, este de dorit ca tabele s pstreze numele entitilor-
(otui, numele prea lungi nu sunt de dorit: tabela corespunztoare entitii
!'$)%()<'B( o voi numi !'$(- $roblemele apar la stabilirea tabelelor care s
stocheze relaiile- (eoretic, orice relaie poate fi stocat ntr4o tabel separat .care s
conin cheile prin care se face legarea liniilor/, dar la modul practic se recurge adesea la
combinarea n aceeai tabel a informaiilor referitoare la o entitate cu informaii
corespunztoare unei relaii- 'ste din nou un pas n care e5periena i flerul proiectantului
are un cuvnt greu de spus- Cteva repere pot fi stabilite pe baza unei analize a
cardinalitii relaiilor:
relaii one4to4one 0 de obicei n aceste situaii relaia este stocat ca un
atribut al uneia dintre entiti- !e pild n cazul relaiei conduce, soluia optim
este ca tabela !'$( s stocheze i informaia legat de eful ei- 'ste posibil i ca
informaia de legtur s fie stocat n tabela )BD)E)( .dar este nerentabil,
pentru cei mai muli anga:ai aceast informaie lipsete/-
relaii one4to4manM 0 i n acest caz se recurge de regul la stocarea
informaiei de legtur ntr4una dintre tabele .de obicei cea aflat pe poziia manM/-
!ecizia depinde i de gruparea relaiilor- 3n e5emplul nostru, entitatea CO<)B!)
se afl n poziia manM pentru dou relaii .plaseaz i preia/, deci este preferabil ca
tabela care4i corespunde s preia ambele relaii-
relaii manM4to4manM 0 de data aceasta soluia este definirea unei tabele
separate care s preia informaiile de legtur- $rocesul de normalizare va tinde
.aa cum se va vedea/ s mute i alte atribute ale tabelelor n tabela relaiei aa c
se va a:unge pn la urm tot la descompunerea relaiei prin introducerea unei noi
entiti-
&E"!REA C#L#A!EL#R
!ac s4a stabilit modul de stocare a relaiilor ntre entiti, acest pas nu pune probleme
speciale- %aportul privind specificarea cerinelor ofer informaii suficiente pentru acest
pas- !in nou se cere mult atenie la stabilirea unor denumiri sugestive pentru coloane i
la stabilirea unei modaliti consistente i uniforme de notare .nu datorit unor
constrngeri formale, ci pentru a asigura proiectului un plus de claritate/- !e pild se pot
folosi nume unice pentru aceeai informaie, sau se pot utiliza prefi5e stabilite pe baza
numelor tabelelor-
J
ALEGEREA C*EL#R +R$ARE
*nul dintre principiile fundamentale ale modelului relaional este unicitatea liniilor unei
tabele- O coloan sau o combinaie de coloane care identific n mod unic o linie este
numit cheie primar a tabelei- '5ist situaii n care e5ist mai multe astfel de coloane
sau combinaii de coloane- 3n aceste cazuri cheia primar este aleas n funcie de
relevana lor n cazul specific al activitii modelate- Celelalte chei posibile se cheam
chei candidate- )tributul unei tabele care ia valori din domeniul unei chei primare a altei
tabele se numete cheie strin .stocarea relaiilor ntre entiti se face prin perechi
formate dintr4o chei primar i o cheie strin/- 3n practic se evit n cele mai multe
situaii cheile primare formate din mai multe coloane n cazul tabelelor corespunztoare
unor entiti .aa4numitele 8nomenclatoare9/, prin introducerea unui cod anume creat care
s :oace rolul de cheie primar .de pild 8marca9 pentru anga:ai, codul pentru produse,
etc/- 'ste important n acest caz s se stabileasc o metodologie unitar i coerent de
codificare, deoarece o codificare defectuas poate crea probleme enorme n e5ploatarea
bazei de date- '5ist mai multe metode rspndite, de cele mai multe ori bazate pe o
combinaie de informaii, cum ar fi de pild o liter corespunztoare unei anumite
clasificri cu un cod numeric care s foreze unicitatea- O tehnic util este stabilirea unei
aa4numite 8cifre de control9, generat pe baza unui algoritm, astfel nct riscurile de a
introduce un cod greit .care s 8cad9 peste unul e5istent/ s fie ct mai mici-
!#R$AL,AREA
Chiar dac toate etapele de pn aici au fost parcurse cu ma5im atenie, e5ist un numr
de probleme care pot s apar n cazul unor operaii de actualizare n baza de date,
probleme care risc s compromit integritatea datelor- 'ste vorba despre aa4zisele
anomalii de actualizare, datorate dependenelor funcionale nedorite- 'vitarea acestor
anomalii se face printr4un proces numit normalizare, avnd o fundamentare formal
riguroas-
PREZENTAREA APLICAIEI
MIRO!OFT AE!! este un program de gestionare a bazelor de date folosit pe scar
larg de milioane de utilizatori-
%olul principal al acestui program este de a accesa i de a stoca datele-
*na din cele mai apreciate caliti ale acestui program este interfaa grafic uor de
neles care permite crearea interogrilor, formularelor i a rapoartelor, facilitate care
lipsete din multe alte programe de acest gen-
LANSAREA "I #NC$IDEREA PRO!RAMULUI
LAN!AREA "ROGRAM#L#I
)pei butonul !TART i din meniul "ROGRAM! alegi opiunea Microso$t Access-
@F
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
%N&IDEREA "ROGRAM#L#I
!in meniul FILE vei alege opiunea E'IT-
PROIECTAREA STRUCTURII BAZEI DE DATE
$rimul pas n proiectarea unei baze de date trebuie s fie analiza obiectivului urmrit- Ce
informaii vei stoca> Cine le va utiliza>
)tunci cnd ai o imagine clar asupra a ceea ce urmeaz s fac baza de date poi trece la
pasul doi-
REAREA #NEI (A)E DE DATE
Crearea unei baze de date noi se poate face utiliznd opiunile casetei de dialog
Mic%&&'t Acce care apare n momentul n care lansezi aplicaia sau utiliznd comanda
Ne( din meniul File-
Crearea unei baze de date prin intermediul casetei de dialog Mic%&&'t Acce presupune
parcurgerea urmtoarelor etape:
Lanseaz n e5ecuie programul )ccess1
$rogramul afieaz caseta de dialog prezentat n imaginea urmtoare- 3n
acest punct poi alege s deschizi o baz de date de:a e5istent, s creezi o nou
baz de date goal sau s lansezi Data*ase +i,ar-- $entru cea de a doua opiune
selecteaz (lan. Access Data*ase-
@@
"e deschide caseta de dialog File Ne( Databae n care introduci numele
bazei de date-
)pas butonul CREATE i n acest moment baza de date va fi creat iar
pe ecran apare fereastra corespunztoare acestei baze de date-
Crearea unei baze de date utiliznd comanda Ne( din meniul File presupune parcurgerea
urmtoarelor etape:
)lege din meniul FILE opiunea NE)1
3n caseta de dialog NE) selecteaz pictograma DATABASE i se apas
butonul O*-
@#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
3n caseta de dialog FILE NE) DATABASE alege unitatea de disc i
folder4ul n care vrei s creezi baza de date i specific numele bazei de date-
)pei pe butonul CREATE
Bot: iierele de tip Mic%&&'t Acce au e5tensia O-<!+-
DE!&IDEREA #NEI (A)E DE DATE
$entru a deschide o baz de date creat anterior trebuie s parcurgi urmtorii pai:
"electeaz din meniul FILE, opiunea OPEN-
!ac fiierul nu este n folder4ul curent caut folder4ul n care a fost
salvat anterior baza de date-
'5ecut dublu clic pe fiier sau selecteaz4l i apas butonul OPEN pentru
a4l deschide-
3n Mic%&&'t Acce +,,,, butonul OPEN din caseta de dialog OPEN are o list
derulant:
@2
OPEN READ-.ONL- 0 mpiedic salvarea modificrilor din baza de
date1
OPEN E/CLUSIVE 0 mpiedic alt utilizator s lucreze cu baza de date
pe care ai deschis4o1
OPEN E/CLUSIVE READ-.ONL- 0 aplic ambele restricii-
OPERAII CU TABELE
REAREA TA(ELELOR
$entru a crea un tabel, urmeaz urmtorii pai:
3n fereastra DATABASE, e5ecut dublu4clic pe opiunea
C%eate Table i0 Dei10 Vie(- "e deschide modul de vizualizare Table Dei10-
@;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
(asteaz un nume de cmp n primul rnd din coloana Fiel2 Na3e, apoi
apas tasta TAB pentru a trece n coloana Data T45e-
Cnd treci la coloana Data T45e, apare o list derulant- !eschide lista
derulant i selecteaz un tip de cmp .vezi seciunea (ipuri de date i formate/-
Bot: @- Bumele cmpurilor din Acce pot avea o lungime de cel mult A;
de caractere i pot conine spaii precum i alte caractere, cu e5cepia punctului .-/, a
semnului de e5clamaie .P/, a accentului grav .Q/ sau a parantezelor drepte-
Bot: #- 'vit simbolurile R, S sau T n numele de cmpuri, pentru c unele
dintre acestea au anumite semnificaii n programul Acce-
)pas tasta TAB pentru a trece n coloana Dec%i5ti&0 i introdu o
descriere a cmpului .operaie facultativ/-
3n :umtatea inferioar a casetei de dialog, vezi panoul Fiel2 P%&5e%tie
pentru tipul de cmp pe care l4ai selectat- $oi face orice modificri doreti .vezi
seciunea Tipuri -e -ate /i $or0ate/-
!ac ai mai multe cmpuri de introdus, repet paii anteriori-
'5ecut clic pe butonul CLOSE .U/ al ferestrei Table Dei10-
Cnd eti ntrebat dac vrei s salvezi modificrile operate n tabel, e5ecut
clic pe -e- )pare caseta de dialog Save A-
(asteaz un nume pentru tabel n caseta Table Na3e i apoi e5ecut clic
pe O*-
@=
3n final, tabelul va aprea n fereastra DATABASE, n seciunea TABLES-
!atele care vor fi coninute de acest tabel se introduc n felul urmtor:
'5ecui dublu4clic pe numele tabelului- )cesta se va deschide n modul de
vizualizare Data6eet Vie(-
?ei introduce datele n coloanele corespunztoare conform tipului ales
pentru cmpul respectiv-
!AL1AREA TA(ELELOR
'tape:
?ei alege din meniul FILE opiunea SAVE sau vei apsa pe butonul SAVE
de pe bara de instrumente standard-
$e ecran va aprea caseta SAVE AS n care vei specifica numele tabelei i
n final vei apas O*-
@A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Bot: ?izualizarea ulterioar i modificarea structurii unui tabel se va face
prin selectarea acestuia i apsarea pe butonul DESI!N-
Creeaz baza de date $'%"OB)L-!+ care s conin tabela ")L)%&)(& cu
urmtoarea structur:
(abela ")L)%&)(& va avea coninutul afiat pe pagina anterioar-
'+UR &E &A'E
iecare cmp trebuie s fie de un anumit tip, pentru ca Acce s tie cum s4i trateze
coninutul-
(ipurile sunt urmtoarele:
TE/T 0 secven simpl de caractere care poate include cifre, litere i
simboluri- *n cmp te5t poate conine pn la #== de caractere-
MEMO 0 te5t simplu, obinuit, e5ceptnd faptul c nu stabileti o lungime
ma5im de cmp, aa c poi tasta aproape orice cantitate de te5t .A;-FFF de
caractere/-
NUMBER 0 destinat pentru valori ntregi sau fracionare-
@G
DATE7TIME 0 o dat calendaristic sau o or-
CURRENC- 0 un numr formatat ca o valoare monetar-
AUTONUMBER 0 Acce l completeaz automat cu numere
consecutive, pentru fiecare nregistrare-
-ES7NO 0 poate primi valori logice de tipul -ES7NO, TRUE7FALSE sau
ON7OFF-
OLE OB8ECT 0 cmp capabil a primi ca valoare un obiect .e5- imagine/1
obiectul poate fi legat sau inserat-
$-PERLIN* 0 o legtur la o locaie )eb-
LOO*UP )IZARD 0 i permite s creezi o list selectnd o valoare din
alt tabel sau lista de valori ntr4o caset combinat, pentru fiecare nregistrare- 'ste
o caracteristic avansat-
'+UR &E "#R$A'E
3n afar de tipul su, fiecare cmp are opiuni de formatare pe care le poi configura-
)cestea apar n :umtatea inferioar a casetei de dialog, n zona Fiel2 P%&5e%tie-
Opiunile de formatare se modific n funcie de tipul cmpului-
Cele mai importante tipuri de formate:
FIELD SIZE 0 Bumrul ma5im de caractere pe care4l poate introduce un
utilizator n acest cmp .se aplic doar cmpurilor de tip (e5t/-
FORMAT 0 O list derulant cu formatele disponibile pentru acel tip de
cmp- !e asemenea, poi crea formate personalizate-
DECIMAL PLACES 0 $entru cmpurile numerice, poi stabili numrul
implicit de poziii zecimale pe care le poate afia un numr-
DEFAULT VALUE 0 !ac, n mod obinuit, un cmp conine o anumit
valoare, poi introduce acea valoare aici pentru a economisi timp- ?a aprea n
fiecare nou nregistrare i vei putea s o nlocuieti n rarele ocazii cnd nu este
valabil-
RE9UIRED 0 )lege -ES i NO pentru a comunica programului
ACCESS dac i se permite unui utilizator s lase acel cmp necompletat-
-'A)LREA C*E +R!C+ALE
iecare tabel ar trebui s aib cel puin un cmp a crui valoare este unic pentru fiecare
nregistrare .cmp cheie principal/-
)cest cmp este util pentru a identifica n mod unic fiecare nregistrare-
$entru a stabili o cheie principal trebuie s parcurgi urmtorii pai:
!eschide tabelul afind structura acestuia-
"electeaz cmpul care vrei s fie cheie principal-
)lege din meniul EDIT opiunea "RIMAR2 3E2-
@I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
OM#TAREA %NTRE MOD#RILE DE 1I)#ALI)ARE DE!IGN 4I DATA!&EET
Cnd lucrezi cu tabele, sunt disponibile dou moduri de vizualizare: DESI!N i
DATAS$EET-
O metod simpl de a comuta ntre ele este e5ecutarea unui clic pe sgeata orientat n :os
de lng butonul VIE) de pe bara de instrumente- )poi selecteaz modul de vizualizare
dorit din lista derulant care apare-
O alt metod de a comuta ntre modurile de vizualizare este urmtoarea:
!eschide meniul VIE)-
"electeaz TABLE DESI!N sau DATAS$EET, n funcie de modul de
vizualizare n care vrei s comui-
EDITAREA TA(ELELOR
!up crearea tabelelor, acestea pot fi modificate ulterior efectund operaiile de mai :os-
A&(UGAREA C.$+URL#R
$oi aduga un cmp n modul de vizualizare TABLE DESI!N astfel:
'5ecut clic pe selectorul de nregistrri .ptratul gri de la stnga numelui
cmpului/ pentru a selecta cmpul n faa cruia doreti s apar noul cmp-
"electeaz din meniul INSERT opiunea RO) sau apas tasta INSERT-
)pare un rnd gol n lista FIELD NAME-
@J
&ntrodu un nume, un tip, o descriere i celelalte informaii legate de
formatare-
/'ERGEREA C.$+URL#R
'tape:
Comut n modul de vizualizare TABLE DESI!N, dac nu eti n acest
mod-
"electeaz un cmp-
!in meniul EDIT selecteaz opiunea DELETE RO)S sau apas tasta
DELETE-
A-CU!&EREA C.$+URL#R
!ac nu vrei s utilizezi un cmp la un moment dat, dar vei avea nevoie de el mai trziu,
este mai bine sa l ascunzi dect s4l tergi-
)scunderea unui cmp are dou avanta:e:
!ac ai introdus nregistrri, poi pstra toate datele pe care le4ai introdus
n acel cmp-
$roprietile cmpului, pe care le4ai configurat atunci cnd ai creat cmpul,
rmn neschimbate, aa c nu trebuie s le introduci din nou-
)scunderea unui cmp se face astfel:
Comut n modul de vizualizare DATAS$EET, dac nu eti n acest mod-
"electeaz cmpurile pe care vrei s le ascunzi-
"electeaz din meniul FORMAT opiunea $IDE COLUMNS, sau
e5ecut clic4dreapta pe coloanele respective i selecteaz $IDE COLUMNS-
Coloanele dispar-
#F
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
$entru a face s reapar coloanele trebuie s parcurgi paii urmtori:
"electeaz din meniul FORMAT opiunea UN$IDE COLUMNS- )pare
caseta de dialog UN$IDE COLUMNS- Cmpurile care au semn de bifare lng
ele nu sunt ascunse1 cmpurile fr semn de bifare sunt ascunse-
'5ecut clic pe caseta de validare a fiecrui cmp pe care vrei s4l
reafiezi-
'5ecut clic pe butonul CLOSE-
/'ERGEREA 'A)ELEL#R
'tape:
3n fereastra DATABASE, e5ecut clic pe tipul de obiect TABLES-
"electeaz tabelul pe care vrei s4l tergi-
"electeaz din meniul EDIT opiunea DELETE sau apas tasta DELETE-
)pare un mesa: care te ntreab dac eti sigur c vrei acest lucru- '5ecut
clic pe -ES-
#@
OPERAII PRINCIPALE CU DATELE TABELELOR
!'R#&UCEREA 0!REG-'R(RL#R
'tape:
'5ecut clic n celula n care vrei s introduci date i tasteaz4le-
)pas tasta TAB pentru a trece la cmpul urmtor i tasteaz noua valoare-
Continu s apei tasta TAB pn cnd a:ungi la ultimul cmp- Cnd apei
tasta TAB n ultimul cmp, punctul de inserare se mut n primul cmp din
urmtorul rnd, unde poi ncepe o nou nregistrare-
Continu s introduci nregistrri pn termini-
&E+LA-AREA 0!'R1U! 'A)EL
$rincipalele scurtturi de la tastatur care se utilizeaz pentru deplasarea n interiorul unui tabel sunt:
'5plicaie "curttura
Cmpul urmtor TAB
Cmpul anterior S$IFT:TAB
*ltimul cmp din nregistrare END
$rimul cmp din nregistrare $OME
)celai cmp din urmtoarea nregistrare
)celai cmp din nregistrarea anterioar
)celai cmp din ultima nregistrare CTRL:
)celai cmp din prima nregistrare CTRL:
*ltimul cmp din ultima nregistrare CTRL:END
$rimul cmp din prima nregistrare CTRL:$OME
'+(RREA U!U 'A)EL
$entru tiprirea unui tabel ai la dispoziie dou variante:
$rima variant:
!eschide tabelul-
'5ecut clic pe butonul PRINT de pe bara de instrumente-
(abelul este tiprit-
##
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Cea de a doua variant:
)lege din meniul FILE opiunea PRINT- 3n caseta de dialog
PRINT configureaz opiunile de tiprire-
0!L#CUREA C#!%!U'ULU U!E CELULE
'tape:
"electeaz celula e5ecutnd clic pe aceasta- .dac vrei s fie selectat
ntregul coninut, poziioneaz indicatorul mouse4ului pe marginea din stnga a
celulei astfel nct indicatorul s devin un semn 8V9, apoi e5ecut clic/-
(asteaz noile date care le nlocuiesc pe cele vechi-
-ELEC'AREA 0!REG-'R(RL#R
3n afar de selectarea anumitor celule dintr4o nregistrare, dac vrei s lucrezi cu o
ntreag nregistrare trebuie s efectuezi operaiunea de selecie- $entru a realiza acest
lucru, e5ecuta clic pe ptratul gri de la stnga nregistrrii- 3ntreaga nregistrare apare
evideniat .litere albe pe fond negru/-
#2
!-ERAREA &E !# 0!REG-'R(R
Boile nregistrri sunt inserate automat- Cnd ncepi s tastezi o nregistrare, apare
un nou rnd sub ea, ateptnd o alt nregistrare, aa cum se vede n figura de mai sus- Bu
poi s inserezi noi nregistrri ntre cele e5istente- )cestea trebuie s fie introduse la
sfritul tabelului-
/'ERGEREA 0!REG-'R(RL#R
'tape:
"electeaz nregistrrile pe care vrei s le tergi-
'5ecut una din urmtoarele aciuni:
)pas tasta DELETE-
"electeaz din meniul rapid opiunea DELETE RECORD
"electeaz din meniul EDIT opiunea DELETE
"electeaz din meniul EDIT opiunea DELETE RECORD-
$U'AREA / C#+EREA &A'EL#R
'tape:
"electeaz cmpurile, nregistrrile, celulele sau zonele de te5t pe care vrei
s le mui sau copiezi-
!eschide meniul EDIT i selecteaz CUT .pentru mutare/ sau COP-
.pentru a copiere/-
$oziioneaz punctul de inserare acolo unde vrei s inserezi materialul
copiat sau tiat-
#;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
)lege din meniul EDIT opiunea PASTE-
FORMATAREA TA(ELELOR
$#&"CAREA L(%$ C#L#A!EL#R -AU A R.!&URL#R
*na dintre cele mai uzuale metode de a:ustare a limii coloanelor sau a rndurilor
se efectueaz astfel:
$oziioneaz indicatorul mouse4ului ntre dou nume de cmpuri .capete
de coloana/ sau ntre dou rnduri- )stfel nct acesta s se transforme ntr4o linie
orizontal cu sgei orientate la stnga i la dreapta-
'5ecut clic i ine apsat butonul mouse4ului i apoi trage marginea
coloanei sau a rndului-
'libereaz butonul mouse4ului n momentul n care rndul sau coloana au
dimensiunea dorit-
#=
$#&"CAREA "#!'ULU / A &$E!-U! 'E2'ULU
!aca vrei s modifici aspectul coninutului tabelului trebuie s parcurgi urmtorii pai:
!in meniul FORMAT, alegi opiunea FONT- )pare caseta de dialog
FONT-
)plic opiunile de formatare dorite .tip, dimensiune, stil/-
)pei O*-
Bot: ormatrile se aplic asupra ntregului coninut al tabelului-
CREAREA RELAIILOR #NTRE TABELE
DEFINIREA RELAIILOR
%elaia ntre dou tabele este necesar, n general, pentru construirea interogrilor care
acioneaz asupra acestor table .dei relaia s4ar putea construi i cnd se construiete
interogarea/-
'+UR &E RELA%3
Relaia O0e.T&.Ma04 0 'ste cea mai frecvent n proiectarea bazelor de date ACCESS
i are urmtoarele caracteristici:
!ac (@ .(abela CL&'B(&/ i (# .(abela Operatii/ sunt dou tabele n care
e5ist o relaie One4(o4<anM atunci:
(abela (@ este tabela primar iar (# este tabela legat4
Cheia de legtur din tabela primar trebuie s fie declarat cheie
primar4
(abela legtur poate avea cheie primar dar diferit de cea de
legtur-
#A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
iecrei nregistrri din tabela O0e i corespunde F, @ sau mai multe
nregistrri din tabela Ma041
iecrei nregistrri din tabela Ma04 i corespunde cel mult o
nregistrare din tabela O0e-
Relaia O0e.T&.O0e 0 'ste utilizat mai rar n proiectarea bazelor de date ACCESS i
are urmtoarele caracteristici:
Cheile de legtur din ambele tabele sunt chei primare1 fiecrei nregistrri
din una din tabele i corespunde cel mult o nregistrare din cealalt-
*na din tabele este primar iar cealalt legat-
Relaia Ma04.T&.Ma04 4 'ste nerecomandat n baze de date ACCESS dar e5istent n
realitate-
!oua tabele se afl n relaia Ma04.t&.Ma04 dac fiecrei nregistrri din prima tabel i
corespunde F,@ sau mai multe nregistrri din a doua i invers-
3n ACCESS astfel de relaii pot fi introduse prin crearea unei a treia tabele, numit de
legtura .de :onciune/ cu e5istena a dou relaii de tip O0e.t&.Ma04-
$entru a putea e5plica modul n care funcioneaz relaiile am creat o baz de date
+)BC)-
)ceast baz de date conine urmtoarele tabele:
(abela CLIENTI:
)ceast tabel are urmtorul coninut:
(abela SOLD:
#G
)ceast tabel are urmtorul coninut:
(abela DENMONEDA:
)ceasta tabela are urmtorul coninut:
(abela !'BO$'%)(&&:
)ceast tabel are urmtorul coninut:
(abela OPERATII:
#I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
)ceast tabel are urmtorul coninut:
'tapele crerii relaiilor sunt:
!eschizi baza de date .n cazul nostru +)BC)/-
!in meniul TOOLS alegi opiunea RELATIONS$PS-
#J
$e ecran apare fereastra RELATIONS$IPS care are urmtoarea form:
Bot: !ac caseta de dialog S$O) TABLE nu apare, apas butonul
S$O) TABLE de pe bare de instrumente-
"electeaz tabelele ntre care vrei s creezi relaii i apas butonul ADD-
)ceste tabele vor fi introduse n fereastra RELATIONS$IPS-
'5emplu:
Creeaz n continuare o relaie O0e.T&.Ma04 ntre tabelele CL&'B(& i
O$'%)(&&- $entru a realiza acest lucru selecteaz n caseta de dialog
S$O) TABLE cele dou tabele i insereaz4le n fereastra RELATIONS$IPS-
3n tabela CL&'B(& selecteaz cmpul CodClient-
$oziioneaz cursorul pe cmpul CodClient .tabela CL&'B(&/, 8agat4l9 cu
mouse4ul i trage4l peste cmpul CodClient .tabela Operatii/- $e ecran apare caseta
de dialog EDIT RELATIONS$IP n care poi s specifici caracteristicile relaiei-

2F
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
)ceast fereastr are urmtorii parametrii:
ENFORCE REFERENTIAL INTE!RIT- 0 unei nregistrri din tabela
primar .CL&'B(&/ i corespunde cel puin o nregistrare din tabela legat
.O$'%)(&&/-
CASCADE UPDATE RELATED FIELDS 0 n acest caz, modificarea
unei valori pe cmpul CodClient .din tabela CL&'B(&/ nseamn modificarea
automat a tuturor valorilor respective i n tabela O$'%)(&&-
CASCADE DELETE RELATED RECORDS 0 n acest caz, tergerea
unei nregistrri din tabela primar presupune tergerea tuturor nregistrrilor din
tabela legat-
3n final, vei apsa butonul CREATE i pe ecran fereastra
RETAIONS$IPS va arta astfel:
Obs:
3n imaginea de mai sus observi c lng tabelul CL&'B(& .cmpul CO!CL&'B(/ apare cifra
@ iar lng tabelul O$'%)(&& .cmpul CO!CL&'B(/ apare simbolul - )ceste simboluri
apar n relaiile n care caracteristica integritate referen5ial .8ENFORCE REFERENTIAL
INTE!RIT-9/ este activat- "imbolul nseamn mul5i 0 indicnd faptul c mai multe
nregistrri din acest tabel pot s corespund unei singure nregistrri .simbolul @/ din tabelul
legat-
'5:
" se creeze urmtoarele relaii n baza de date +)BC):
2@
SORTAREA; FILTRAREA "I INDE/AREA DATELOR
!ORTAREA DATELOR
'tape:
!eschide tabela pe care vrei s o sortezi1
$laseaz punctul de inserare n cmpul pe care vrei s4l sortezi-
'5ecut clic pe butoanele S&%t Ace02i01 sau
S&%t Dece02i01 - 3nregistrrile sunt sortate dup cmpul selectat-
3nainte de sortare:
!up sortarea dup cmpul B*<':
Bot: $entru a aran:a nregistrrile n ordinea n care se aflau n momentul
iniial, selecteaz din meniul RECORDS opiunea REMOVE FILTER7SORT-
FILTRAREA DATELOR
*n filtru este o restricie care se pune nregistrrilor unei tabele, unei forme sau unui
raport pentru a afia doar anumite nregistrri specificate-
3n aceast lecie vom analiza doar filtrele la nivel de tabel-
iltrarea este util n acele cazuri n care vrei s nlturi multe nregistrri, astfel nct s
poi vedea doar pe cele care te intereseaz- iltrarea micoreaz temporar numrul de
nregistrri afiate, conform criteriilor de selecie-
"L'RAREA &A'EL#R +R! -ELEC%E
iltrarea prin selecie este cea mai simpl metod de filtrare, dar nainte de a o utiliza,
trebuie s localizezi o apariie a valorii pe care doreti s o conin nregistrrile filtrate-
2#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
$entru a filtra prin selecie vei parcurge urmtorii pai:
3ntr4un cmp vei gsi o apariie a valorii pe care vrei s o conin toate
nregistrrile filtrate-
"electeaz valoarea-
'5ecut clic pe butonul FILTER B- SELECTION de pe bara de
instrumente sau selecteaz din meniul RECORDS opiunea FILTER i apoi
FILTER B- SELECTION-
'5: iltreaz tabela O$'%)(&& astfel nct s fie afiai doar clienii cu codul @F@-
3nainte de filtrare:
!up filtrare:
Bot: %enunarea la condiia de filtrare se face prin apsarea pe butonul
REMOVE FILTER -
"L'RAREA &A'EL#R +R! "#R$ULAR
'ste o metod de filtrare mult mai puternic dect filtrarea prin selecie-
Cu Filte% b4 F&%3 poi aplica mai multe criterii de filtrare simultan-
!e asemenea, poi configura filtre 8sau9, care gsesc nregistrri ce ndeplinesc oricare
din criteriile stabilite- $oi chiar s introduci e5presii logice .8mai mare dect9 o anumit
valoare/-
22
'tape:
!eschide tabela pe care vrei sa o filtrezi n modul de vizualizare
DATAS$EET-
'5ecut clic pe butonul FILTER B- FORM sau din meniul
RECORDS, alege opiunea FILTER i apoi FILTER B- FORM- )pare un
formular gol semnnd cu o foaie de date goal, cu o singur linie de nregistrare-
'5ecut clic pe cmpul pentru care vrei s stabileti un criteriu- )pare o
sgeat orientat n :os pentru o list derulant- '5ecut clic pe sgeat i
selecteaz din list o valoare sau poi tasta valoarea direct n cmp-
!ac vrei s stabileti o condiie 8sau9, e5ecut clic pe eticheta OR de la
baza ferestrei i vei introduce criteriul alternativ-
3n final se apas pe butonul APPL- FILTER pentru a aplica filtrul-
Bot: 3n e5emplul de mai sus am aplicat un filtru pentru clienii care au
codul @F@ sau @F#-
3n final, rezultatul filtrrii este urmtorul:
2;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Bot: 'liminarea filtrului o vei face prin apsarea pe butonul
REMOVE FILTER situat pe bara de instrumente-
INDE'AREA DATELOR
&nde5urile accelereaz cutrile, catalognd coninutul unui anumit cmp- Cmpul cheie
principal este inde5at n mod automat- !ac ns caui, sortezi sau filtrezi n mod
frecvent utiliznd un alt cmp, poi s creezi un inde5 i pentru acel cmp-
Bot: Bu poi inde5a un cmp ale crui date sunt de tip $emo, *yperlin6
sau obiect #LE-
'tapele inde5rii:
!eschide tabelul n modul de vizualizare DESI!N-
"electeaz cmpul pe care vrei s4l inde5ezi-
3n pagina etichetei !ENERAL, e5ecut clic pe cmpul INDE/ED-
!in lista derulant a cmpului INDE/ED, selecteaz fie -ES .D<5licate
O*/ fie -ES .N& D<5licate/, n funcie de coninutul cmpului care poate fi sau
nu unic pentru fiecare nregistrare-
"alveaz modificrile i nchide tabelul-
Bot: Bu poi face nimic deosebit cu un inde5- &nde5ul nu este un obiect,
aa cum sunt tabelele, bazele de date sau interogrile- %olul inde5ului este de a
accelera cutrile dar nu are funciile sale independente-
2=
Lecia +
Obiectivele leciei
Cereri. Operatii principale.
Cereri de selectie.
Cereri CrossTab
Cereri de actiune
Cereri Delete
Crearea formularelor. Adaugarea controalelor.
Rapoarte. Operatii principale
CERERI =9UERIES>
Acce i ofer mai multe metode prin care te a:ut s restrngi domeniul informaiilor pe
care le caui, inclusiv prin sortare i filtrare-
Cel mai fle5ibil mod de a sorta i filtra date este cererea iar cel mai important fapt este c
le poi salva i utiliza pentru a crea tabele, pentru a terge nregistrri sau pentru a copia
nregistrri ntr4un alt tabel-
Cererile i permit s specifici:
Cmpurile pe care vrei s le vezi1
Ordinea n care trebuie s apar cmpurile1
Criteriile de filtrare pentru fiecare cmp1
Ordinea n care vrei s fie sortat fiecare cmp-
%ezultatul unei cereri este o tabel virtual-
ERERI DE !ELEIE
CREAREA CERERL#R &E -ELEC%E
Cererile de selecie sunt obiecte Acce care solicit baza de date s rspund anumitor
ntrebri formulate de utilizator-
2A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Crearea cererilor de selecie se face n felul urmtor:
"electeaz fia de opiuni 9UERIES din fereastra DATABASE-
)pas butonul NE), apoi selecteaz opiunea DESI!N VIE)-
)daug din caseta de dialog S$O) TABLE, n spaiul de lucru al
constructorului de cereri .9<e%ie B<il2e%/, tabelele sau cererile care stau la baza
noii cereri1 3n cazul n care ntre tabelele respective e5ist relaii, acestea se
pstreaz i n cazul interogrilor-
2G
3nchide caseta de dialog S$O) TABLE1 apare o machet prin
intermediul creia se poate proiecta cererea-
Bot: 3n situaia n care, din diverse motive, caseta de dialog
S$O) TABLE nu se deschide automat, se apas butonul S$O) TABLE -
?ei alege cmpurile n zona FIELD-
3n zona SORT vei specifica cmpul .cmpurile/ dup care va fi sortat
cererea-
3n final se apas pe butonul VIE) de pe bara de instrumente pentru a
vedea rezultatul interogrii-
'5:
3n cererea de mai sus am introdus cmpurile B*<', $%'B*<' .(abela CL&'B(&/,
C)B( .(abela O$'%)(&&/, !'B<OB .(abela !en<oneda/ i !'BO$ .(abela
!enOperatii/-
%ezultatul interogrii este urmtorul:
2I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Operaia se ncheie cu salvarea cererii-
Bot: !aca vrei s revii n modul de vizualizare DESI!N pentru a modifica
cererea, apas pe butonul DESI!N VIE) de pe bara de instrumente-
-ELEC'AREA U!E C#L#A!E
'tape:
!eschide o cerere n modul DESI!N-
)pas pe bara superioar a cmpului respectiv i cmpul va fi selectat-
/'ERGEREA U!E C#L#A!E
'tape:
"electeaz coloana1
)pas tasta DELETE-
2J
$U'AREA U!E C#L#A!E
'tape:
"electeaz coloana1
Cu indicatorul mouse4ului poziionat n selectorul de coloane trage coloana
n locul dorit-
!-ERAREA U!E C#L#A!E
'tape:
"electeaz coloana1
!in meniul INSERT alege opiunea COLUMNS-
;F
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
A"/AREA +R#+RE'(%L#R U!U C.$+ &! CERERE
'tape:
"electeaz coloana1
)pas butonul PROPERTIES aflat pe bara de instrumente- $e ecran
va fi afiat caseta PROPERTIES-
E2E+$LE
'5emplul @ 0 cerere pentru afiarea salariailor care nu sunt efi-
*tilizeaz baza de date $'%"OB)L .tabela ")L)%&)(&/-
$roiectarea cererii arat astfel:
Bot: @- $rimul cmp al cererii este un cmp calculat avnd numele 8B*<'
"& $%'B*<'91 valoarea unui astfel de cmp este dat de o e5presie .concatenarea
prenumelui cu numele/-
Bot: #- Cmpurile calculate sunt neactualizabile, adic nu se pot face
modificri n interiorul acestora, modificri care s se reflecte i n tabelele ce compun
cererea respectiv-
Bot: 2- Cmpul "' este trecut n cerere numai pentru a fi pus condiia de
filtrare ."AL-E/ asupra lui1 nefiind bifat n linia S$O), nu este prezent n rezultatul
cererii-
;@
%ezultatul cererii este:
'5emplul # 0 cerere de selecie cu sortare dup dou cmpuri-
*tilizeaz baza de date $'%"OB)L .tabela ")L)%&)(&/-
3mi propun o afiare a salariailor sortai dup funcie i, n cadrul aceleiai funcii, dup
nume ns ordinea de afiare s fie mai nti numele i apoi funcia-
$roiectarea cererii arat astfel:
Bot: "4a utilizat cmpul nume de dou ori, a doua oar acesta nefiind
afiat-
%ezultatul cererii este urmtorul:
'5erciiul 2 0 cerere de selecie cu utilizarea opiunii 8OR9-
?ei utiliza baza de date $'%"OB)L .tabela ")L)%&)(&/-
?or fi afiai doar anga:aii care au funcia de inginer sau medic din tabela ")L)%&)(&
iar sortarea s se fac ascendent dup cmpul B*<'-
;#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
$roiectarea cererii arat astfel:
%ezultatul cererii este urmtorul:
'5emplul ; 0 cerere de selecie cu utilizarea unei anumite condiii-
?ei utiliza baza de date $'%"OB)L .tabela ")L)%&)(&/-
?or fi afiai doar anga:aii care au salariul 8mai mare sau egal9 cu ;-FFF-FFF lei-
Ordonarea se va face ascendent dup cmpul <)%C)-
$roiectarea cererii arat astfel:
%ezultatul cererii este urmtorul:
'5emplul = 0 cerere de selecie cu utilizarea unui cmp calculat-
?ei utiliza baza de date $'%"OB)L .tabela ")L)%&)(&/-
;2
3n tabela ")L)%&)(& se va introduce un cmp )?)B" .Nu0eric 5 Long Integer/ dup
cmpul ")L)%&*L i se va completa cu valori-
?om ncerca s calculm prin intermediul unei cereri lichidarea care i se cuvine
salariatului dup formula: L&CW&!)%'X")L)%&*L4)?)B"- "ortarea se va face dup
cmpul <)%C) ascendent-
$roiectarea cererii arata astfel:
%ezultatul cererii este urmtorul:
3n cel de4al doilea e5emplu vom ncerca s inde5m salariul cu #FS-
$roiectarea cererii arat astfel:
;;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
%ezultatul cererii este urmtorul:
CERERE &E -ELEC%E "#L#-!& "U!C% &E AGREGARE
Cu funciile de agregare putem obine diverse statistici pe valori de cmpuri-
$rincipalele funcii de agregare sunt:
SUM 0 sum
AV! 0 medie
MIN 0 minimul
MA/ 0 ma5imul
FIRST 0 prima nregistrare
LAST 0 ultima nregistrare
3n e5emplul de mai :os vom calcula suma, media, minimul i ma5imul tuturor salariailor
care nu sunt efi-
$roiectarea cererii arat astfel:
%ezultatul cererii este urmtorul:
CERERE &E -ELEC%E "#L#-!& "U!C% &E AGREGARE +E GRU+UR &E 0!REG-'R(R
3n e5emplul urmtor vom ncerca s obinem anumite date statistice referitoare la
nregistrri grupate dup cmpul *BC(&) care nu sunt efi-
;=
$roiectarea cererii arat astfel:
%ezultatul cererii este urmtorul:
Obs:
!up cum observi s4a folosit funcia !ROUP B- pentru gruparea valorilor n cmpul
*BC(&)-
$oi s specifici i grupurile pe care vrei s le afiezi astfel:
&ar rezultatul va fi urmtorul:
CERERE &E -ELEC%E +ARA$E'RCE
Cererile de selecie parametrice sunt cereri n care condiia se poate schimba de la o
e5ecuie la alta- 3n condiie pot fi introduse cmpuri ine5istente pentru care sistemul cere
valori-
;A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
3n cererea de mai :os se pot selecta salariaii de o anumit funcie-
3n momentul rulrii cererii, pe ecran apare o fereastr prin intermediul creia i se cere s
introduci parametrul dorit .n cazul nostru *BC(&)/-
)pei O* i rezultatul e5ecuiei cererii este:
CERERI CROSSTAB
"unt cereri care realizeaz suma, media, numrarea sau alte tipuri de totaluri i apoi
grupeaz rezultatul pe dou tipuri de informaie .ro6 hea-ings i colu0n hea-ings/-
'5:
Creeaz baza de date ?)B,)%&-
" se creeze n aceast baz de date, tabela )genti?anzari cu urmtoarea structur:
;G
Coninutul tabelei s fie cu urmtorul:
" se creeze i tabela ?anzari cu structura:
Coninutul tabelei s fie cu urmtorul:
3ntre tabela )genti?anzari i ?anzari creeaz o relaie O0e.T&.Ma04 de forma:
Creeaz o cerere de tip C%&Tab avnd sursa format din tabelele ?anzari i
)genti?anzari-
;I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
$roiectarea cererii arat astfel:
Bot: &ntroducerea rubricii C%&Tab se face alegnd din meniul 9UER-
opiunea CROSSTAB 9UER--
3n cererea de mai sus am grupat valorile cmpurilor B*<' i C)($%O! i am utilizat
funcia SUM pentru cmpul ?)B,)%&-
3n rezultatul final cmpul B*<' va reprezenta liniile tabelului rezultat, cmpul
C)($%O! coloanele tabelului rezultat iar cmpul ?)B,)%& va reprezenta valorile
acestui tabel-
%ezultatul interogrii este urmtorul:
CERERI DE ACIUNE
O cerere de ac5iune este o cerere care face schimbri la una sau mai multe nregistrri
printr4o singur operaie-
'5ist patru tipuri de cereri de aciune:
Cereri U5Date .de actualizare/-
Cereri Delete .de tergere/-
Cereri A55e02 .de adugare/-
Cereri Ma?e Table .de creare de tabele/-
ERERI #"DATE
)cest tip de cerere face schimbri globale la un grup de nregistrri n una sau mai multe
tabele-
;J
3n e5emplul de mai :os vei ncerca inde5area salariului tuturor medicilor din baza de date
$'%"OB)L .tabela ")L)%&)(&/ cu #FS-
$roiectarea cererii arat astfel:
&ntroducerea rubricii C%&Tab se face alegnd din meniul 9UER- opiunea
UPDATE 9UER--
!up proiectarea cererii trebuie parcurse urmtoarele etape:
)pas butonul RUN aflat pe bara de instrumente-
$e ecran apare caseta de confirmare a modificrilor respective-
!aca apei -ES, modificrile respective se vor produce n tabela .tabelele/
respectiv-
!ac vrei s vezi modificrile pe care le4ai efectuat apas pe butonul
DATAS$EET -
%ezultatul e5ecuiei cererii este urmtorul:
ERERI MA3E TA(LE
)cest tip de cerere creeaz o tabel din datele uneia sau a mai multor tabele-
3n e5emplul urmtor creeaz prin intermediul unei cereri de tip Ma?eTable, avnd ca
surs baza de date $'%"OB)L .tabela ")L)%&)(&/, o tabel ")LBO* care s conin
doar cmpurile <arca, Bume, unctia, "ef i )re"ef$e-
=F
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Creeaz o cerere noua cu cmpurile specificate-
'tape:
!in meniul 9UER- alege opiunea MA*E.TABLE 9UER--
3n caseta de dialog Ma?e Table tasteaz numele noului tabel ."alBou/ i
apas O*-
3n final, apas butonul RUN - $e ecran apare caseta de dialog de
confirmare a tabelei ")LBO*-
)pas butonul -ES i noua tabel ."alBou/ va fi creat-
ERERI A""END
)cest tip de cerere adaug un grup de nregistrri din una sau mai multe tabele la sfritul
uneia sau a mai multor tabele-
$entru a construi o cerere de tip APPEND creeaz mai nti o tabel ")L cu aceeai
structur ca i ")L)%&)(&-
=@
C#+EREA -'RUC'URL#R 'A)ELEL#R
'tape:
3n fereastra bazei de date $'%"OB)L selecteaz tabela ")L)%&)(&-
'5ecut secvenele EDIT XK COP- i EDIT XK PASTE- )pare caseta de
dialog PASTE TABLE AS, bifeaz opiunea STRUCTURE ONL- i apas O*-
3n fereastra DATABASE apare noua tabel- O deschizi i o completezi cu
urmtoarele date:
Bot: )ceste date vor fi introduse la sfritul tabelei ")L)%&)(& prin
intermediul unei cereri APPEND-
CREAREA CERERL#R A++E!&
'tape:
Creezi o cerere nou avnd ca surs tabela ")L-
)lege din meniul 9UER- optiunea APPEND 9UER-- $e ecran apare
caseta de dialog APPEND-
=#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
3n caseta TABLE NAME alegi numele tabelei n care vor fi copiate noile
nregistrri i apei O*-
'5ecut cererea apsnd pe butonul RUN -
3n caseta de dialog de confirmare apei butonul O*-
3nregistrrile vor fi adugate n tabela ")L)%&)(&-
ERERI DELETE
6terge una sau mai multe nregistrri din una sau mai multe tabele-
3n e5emplul urmtor tergi nregistrrile inserate n e5emplul anterior .<)%C)KX#FF/
prin intermediul unei astfel de cereri-
=2
'tape:
Creeaz o cerere care are ca surs tabela ")L)%&)(& i selectezi cmpul
<)%C) cel pe care vei pune criteriul de tergere-
)legi din meniul 9UER-, opiunea DELETE 9UER--
&nserezi criteriul de tergere-
)pas butonul RUN -
3n caseta de dialog de confirmare se apas O*-
=;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Lecia @
Obiectivele leciei
?
FORMULARE
O metod foarte bun pentru introducerea datelor n tabele este crearea de formulare- Cu
a:utorul unui formular, poi aloca e5act att spaiu ct este necesar pentru fiecare cmp i
poi introduce informaii n mai multe tabele simultan-
3n general, fiecare formular afieaz o singur nregistrare la un moment dat-
$oi crea un formular n trei moduri:
A<t&'&%3 ofer foarte rapid formulare care conin toate cmpurile ntr4un
singur tabel-
F&%3 )iAa%2 te a:ut s creezi un formular furnizndu4se o serie de
casete de dialog din care poi alege cmpurile i stilul pentru formular-
Crend un formular pornind de la zero, ai la dispoziie o gril de machetare
n care plasezi cmpuri- 'ste modul cel mai dificil, dar asigur cel mai bun control-
REAREA FORM#LARELOR # A#TOFORM
Cel mai simplu mod de a crea un formular se face cu a:utorul caracteristicii
AUTOFORM- )cesta pune cmpurile dintr4un singur tabel ntr4un formular1 este modul
cel mai puin fle5ibil, dar este foarte convenabil-
'tape:
!in fereastra DATABASE, e5ecut clic pe tipul de obiect FORMS-
'5ecut clic pe butonul Ne(-
==
$e ecran apare caseta de dialog NE) FORM-
!eschizi lista derulant de la baza casetei de dialog i alegi tabelul sau
interogarea pe care o utilizezi ca surs a datelor din formular-
)pei butonul O*- )pare formularul pentru introducerea datelor-
3n final se salveaz formularul cu numele dorit-

Bot: ormularul pe care4l obii cu A<t&F&%3 s4ar putea s nu fie prea
artos- 'tichetele de cmp pot fi trunchiate i cmpurile pot fi apropiate- 3n acest caz
nchide formularul fr s4l salvezi i ncearc din nou cu F&%3 )iAa%2-
REAREA FORM#LARELOR # FORM +I)ARD
'tape:
!in fereastra DATABASE, e5ecut clic pe tipul de obiect FORMS-
'5ecut dublu4clic pe opiunea CREATE FORM USIN! )IZARD-
)pare caseta de dialog F&%3 )iAa%2-

!in lista derulant TABLES79UERIES, alegi un tabel sau o interogare
din care s selectezi cmpuri .3n mod prestabilit este selectat primul tabel n ordine
alfabetic/
'5ecut clic pe un cmp din lista AVAILABLE FIELDS pe care vrei s l
introduci n formular i apoi e5ecut clic pe butonul NeBt C pentru a muta cmpul
n lista SELECTED FIELDS-
%epet pasul anterior pn cnd selectezi din acel tabel toate cmpurile pe
care vrei s le incluzi-
=A
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
Bot: !ac vrei s incluzi cmpuri din alte tabele sau cereri, selecteaz4le
din lista TABLESD9UERIESE
'5ecut clic pe NE/T pentru a continua- Ci se cere s alegi o machet:
C&l<30a%, Tab<la%, Data6eet sau 8<ti'ie2- '5ecut clic pe fiecare buton pentru
a previzualiza machetele- .C&l<30a% este cea mai uzual/- !up ce ai ales
macheta dorit apas NE/T-
Ci se cere s alegi un stil- '5ecut clic pe fiecare stil din list pentru a4l
previzualiza1 e5ecut clic pe NE/T dup ce ai ales un stil-
&ntrodu un titlu pentru formular n caseta de te5t din partea de sus a casetei
de dialog-
=G
'5ecut clic pe butonul FINIS$-
3n final apare formularul pregtit pentru introducerea datelor-
REAREA FORM#LARELOR GOALE
Cel mai performant, dar i cel mai dificil mod de a crea un formular const n utilizarea
modului de vizualizare FORM DESI!N-
)cest mod i permite s stabileti e5act unde anume s plasezi fiecare cmp i cum s4l
formatezi-
'tape:
3n fereastra DATABASE, e5ecut clic pe tipul de obiect FORMS-
'5ecut clic NE)- )pare caseta de dialog NE) FORM-
'5ecut clic pe DESI!N VIE)-
"electeaz un tabel sau o interogare din lista derulant de la baza casetei de
dialog-
=I
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
)pas O*- )pare o fereastra F&%3 Dei10-
A&(UGAREA C#!'R#ALEL#R LA U! "#R$ULAR
'tape:
)fieaz lista FIELDS dac aceasta nu este vizibil prin apsarea pe
butonul FIELD LIST sau alege din meniul VIE) opiunea FIELD LIST-
(rage cu mouse4ul un cmp din lista de cmpuri n zona DETAIL a
raportului-
&E+LA-AREA C#!'R#ALEL#R &E C.$+
'tape:
!ac nu eti de:a n modul de vizualizare FORM DESI!N, treci n acest
mod-
'5ecut clic pe numele unui control pentru a4l selecta- )par mnere de
selecie n :urul lui- $oi selecta mai multe controale, innd apsat tasta S$IFT n
timp ce e5ecui clic pe fiecare-
$oziioneaz indicatorul mouse4ului astfel nct acesta s se transforme
ntr4o palm-
'5ecut clic i ine apsat butonul stng al mouse4ului ct timp vei trage
controlul ntr4o alt poziie-
=J
&E+LA-AREA C#!'R#ALEL#R / A E'C*E'EL#R 0! $#& !&E+E!&E!'
'tape:
'5ecut clic pe controlul care vrei s fie selectat-
$oziioneaz indicatorul mouse4ului pe mnerul de selecie aflat n partea
din stnga sus, astfel nct s se transforme ntr4un deget arttor-
(ragei controlul ntr4o alt poziie-
'5:
" se creeze urmtoarea form:
Bot: '5ecutarea formei se face prin apsarea pe butonul VIE) de
pe bara de instrumente sau din meniul VIE) opiunea FORM VIE)-
orma va arta astfel:
AF
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
7,UAL,AREA A!'E'URL#R / A -U)-#LURL#R &E +AG!(
$e lng zona DETAIL pe care ai utilizat4o pn acum mai e5ist i alte zone:
FORM $EADER i FORM FOOTER 0 sunt zone care se repet n
partea de sus sau de :os a formularului, cum ar fi titlul formularului n partea de sus
sau o noti de copyright n partea de :os-
!up e5ecutare forma va arta astfel:
Bot: )dugarea antetelor i a subsolurilor de pagin se face, selectnd din
meniul VIE) opiunea FORM $EADER7FOOTER-
PA!E $EADER i PA!E FOOTER 0 sunt zone care se repet n partea
de sus sau de :os a fiecrei pagini a formularului atunci c8nd 9l tipre:ti-
Bot: $entru a afia aceste dou zone trebuie s selectezi din meniul VIE)
opiunea PA!E $EADER7 FOOTER-
A@
ormularul va arta astfel:
A&(UGAREA E'C*E'EL#R
$entru a putea aduga formularului titluri, subtitluri, te5t e5plicativ i altele trebuie s
adaugi n formular un obiect care se numete etichet-
Bot: 3n cazul n care bara de instrumente nu este afiat, alege opiunea
TOOLBO/ din meniul VIE) sau e5ecut clic pe butonul TOOLBO/ de pe
bara de instrumente-
'tape:
'5ecut clic pe instrumentul LABEL din caseta de instrumente-
&ndicatorul mouse4ului se preschimb n litera A cu un semn plus lng ea-
(raseaz un chenar n interiorul formularului i introdu te5tul dorit-
'5ecut clic oriunde n afara controlului pentru a termina operaia sau
apas ENTER-
A#
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
"#R$A'AREA E'C*E'EL#R
!up ce ai plasat toate informaiile ntr4un formular .controalele pe care vrei s le incluzi
i etichetele pentru afiarea oricrui titlu sau te5t e5plicativ/, urmtorul pas este s faci
formularul mai atrgtor-
(oate instrumentele de formatare de care ai nevoie sunt pe bara de instrumente
F&%3atti01-
$entru a formata un control, selecteaz4l i apoi e5ecut clic pe instrumentul de formatare
adecvat-
$#&"CAREA #R&! &E &E+LA-ARE CU 'A-'A 'A)
Cnd introduci date ntr4un formular, apas tasta Tab pentru a te deplasa de la un control
la altul, n ordinea n care sunt afiate n formular-
!ac mui i rearan:ezi controalele, ordinea de deplasare cu tasta Tab nu se modific
automat-
$entru a a:usta ordinea de deplasare cu tasta Tab trebuie s parcurgi urmtorii pai:
)lege din meniul VIE) opiunea TAB ORDER- )pare caseta de dialog
TAB ORDER-
)lege seciunea pentru care vrei s schimbi aceast ordine-
)par controalele n ordinea de deplasare cu tasta Tab- $entru a modifica
ordinea, e5ecut clic pe control i trage4l n sus sau n :os n list-
$entru a stabili rapid ordinea de deplasare pe baza poziiei curente a
controalelor n formular .de sus n :os/, e5ecut clic pe butonul A<t& O%2e%-
'5ecut clic pe O*-
RAPOARTE
%apoartele sunt obiecte prin intermediul crora generezi rezultate profesionale care pot fi
afiate pe ecran, tiprite pe hrtie sau afiate pe &nternet-
A2
REAREA #N#I RA"ORT # A#TORE"ORT
!ac vrei un raport simplu, bazat pe un singur tabel sau pe o singur interogare, cel mai
potrivit este AUTOREPORT-
$entru a crea un raport folosind A<t&Re5&%t, urmeaz paii:
!eschide baza de date care conine tabelul sau interogarea pe baza creia
vrei s creezi raportul-
'5ecut clic pe eticheta REPORTS din fereastra DATABASE i apoi pe
butonul NE)- )pare caseta de dialog NE) REPORT-

"electeaz din lista derulant tabelul sau interogarea pe baza creia vrei s
construieti raportul-
"electeaz AUTOREPORT: COLUMNAR sau AUTOREPORT:
TABULAR-
'5ecut clic pe O* i raportul apare n modul PRINT PREVIE)-
%aportul va arta astfel:
A;
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
REAREA #N#I RA"ORT # RE"ORT +I)ARD
Re5&%t )iAa%2 asigur un compromis acceptabil ntre uurina de utilizare i
fle5ibilitate- Cu Re5&%t )iAa%2, poi utiliza mai multe tabele i interogri i poi alege o
machet i un format pentru raportul tu-
'tape:
!eschizi baza de date care conine tabelul sau interogarea pentru care vrei
s creezi un raport-
'5ecut clic pe eticheta Re5&%t din fereastra Databae- $e ecran apare
caseta de dialog Re5&%t )iAa%2-
!in lista derulant Table79<e%ie, selecteaz un tabel sau o interogare din
care vrei s incluzi cmpuri-
A=
'5ecut clic pe un cmp din lista Available Fiel2 i apoi pe butonul
pentru a muta cmpul n lista Selecte2 Fiel2- %epet acest pas pentru a selecta
toate cmpurile dorite sau e5ecut clic pe pentru a muta toate cmpurile
deodat-
!ac vrei, selecteaz un alt tabel sau o alt interogare din lista
Table79<e%ie i repet pasul anterior- (abelele pe care le alegi trebuie s aib
relaii ntre ele, astfel nct datele s coincid n raport-
Cnd ai terminat de selectat cmpurile, e5ecut clic pe NE/T- )pare
prima caset de dialog Re5&%t )iAa%2-
!ac vrei gruparea nregistrrilor dup oricare din cmpurile pe care le4ai
selectat, e5ecut clic pe cmp i apoi pe butonul - $oi selecta mai multe
niveluri de grupare, n ordinea pe care o vrei- )poi e5ecut clic pe NeBt pentru a
trece mai departe-
AA
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
)plicaia )iAa%2 te ntreab ce ordine de sortare vrei s utilizezi- !ac
vrei nregistrri sortate, deschide lista derulant de sus i selecteaz un cmp dup
care vrei ca sortarea s se efectueze- "electeaz cel mult patru sortri din listele
derulante-
3n mod prestabilit, sortarea este n ordine cresctoare .de la ) la ,/-
'5ecut clic pe butonul de lng caset pentru a schimba ordinea de sortare n
descresctoare .de la , la )/, daca vrei-
3n urmtoarea caset de dialog vei alege o opiune de machetare din
seciunea LA-OUT-
)lege orientarea pentru raportul tiprit din seciunea ORIENTATION-
)pas NE/T-
3n urmtoarea caset de dialog a aplicaiei )iAa%2, alege un stil de raport-
"unt afiate mai multe1 e5ecut clic pe unul pentru a vedea o mostr-
AG
)pas NE/T cnd eti mulumit de alegerea fcut-
Ci se cere un titlu de raport- ?ei introduce un titlu n caseta de te5t Re5&%t
i e5ecut clic pe FINIS$ pentru a vedea raportul n modul PRINT PREVIE)-
TI"RIREA RA"OARTELOR %N MOD#L "RINT "RE1IE+
Cnd creezi un raport, fie cu Re5&%t )iAa%2, fie cu A<t&%e5&%t, acesta apare n modul
P%i0t P%evie(- !e aici poi s4l tipreti direct, dac eti mulumit de rezultat sau poi s
treci n modul de vizualizare Re5&%t Dei10 pentru a face modificri-
!ac vrei s tipreti raportul i s specifici diverse opiuni de tiprire, alege din meniul
FILE opiunea PRINTF- $e ecran apare caseta de dialog PRINT-
AI
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
!aca vrei s obii rapid o copie tiprit, e5ecut clic pe butonul PRINT de pe bara
de instrumente-
INTRAREA %N MOD#L DE 1I)#ALI)ARE RE"ORT DE!IGN
'tape:
'5ecut clic pe eticheta REPORTS-
'5ecut clic pe raportul pe care vrei s4l vizualizezi-
'5ecut clic pe butonul DESI!N- )pare raportul n modul de vizualizare
DESI!N-
%aportul conine urmtoarele zone:
REPORT $EADER 0 conine titlul raportului1
PA!E $EADER 0 conine etichetele de coloan ale raportului1
DETAILS 0 afieaz lista cmpurilor alese pentru a fi tiprite n aceste
coloane1
PA!E FOOTER 0 conine o formula care va afia data i ora curent-
AJ
L#R#L # ONTROALELE DIN RA"ORT
Lucrul cu controalele din raport n modul de vizualizare Re5&%t Dei10 este similar cu
modul de lucru cu controalele n modul F&%3 Dei10-
"electarea controalelor se face e5ecutnd un clic pe control- 3n :urul su apar mnere de
selecie-
<utarea obiectelor 0 se selecteaz obiectul respectiv, apoi poziioneaz indicatorul
mouse4ului deasupra unei laturi a chenarului astfel nct acesta s se transforme ntr4o
palm deschis i neagr- )poi e5ecut clic i trage controlul n noua poziie-
%edimensionarea obiectelor 0 selecteaz obiectul, apoi poziioneaz indicatorul mouse4
ului deasupra unui mner de selecie i trage4l pentru a redimensiona obiectul-
ormarea obiectelor de te5t 0 utilizeaz listele derulante F&0t i F&0t SiAe de pe bara cu
instrumente pentru a alege fonturi, apoi utilizeaz butoanele B&l2, Italic sau U02e%li0e
de pe bara cu instrumente pentru a aplica anumite atribute- $oi aduga, de asemenea, linii
i imagini n rapoarte, la fel ca n formulare-
AD#GAREA 4I 4TERGEREA ONTROALELOR
'tape:
!ac nu vezi lista Fiel2, vei alege din meniul Vie( opiunea File2 Lit sau
e5ecut clic pe butonul Fiel2 Lit de pe bara de instrumente- )pare o caset
mobil, care afieaz o list cu toate cmpurile din tabelul pe care4l utilizezi-
(rage orice cmp din lista de cmpuri n raport, unde devine un control 0
n mod prestabilit, o caseta de te5t- $laseaz4l oriunde vrei n zona Detail-
Bot: $entru a terge un control acesta va fi selectat i prin apsarea tastei
DELETE va fi ters-
ARAN7AREA NOILOR ONTROALE
Cnd adaugi un control n raport, de fapt adaugi dou lucruri 0 o etichet i o caset de
te5t- )ceste dou elemente sunt legate: eticheta descrie caseta de te5t, iar caseta
GF
$%O&'C()%') "(%*C(*%&& +),'& !' !)('
reprezint cmpul care va fi utilizat- $oi modifica te5tul din etichet fr s afectezi
caseta de te5t
3n mod prestabilit, cnd mui caseta de te5t, o urmeaz i eticheta- !ac poziionezi
indicatorul mouse4ului pe chenarul casetei de te5t i indicatorul se transform ntr4o
palm deschis, acesta este semnalul c, atunci cnd vei trage caseta de te5t, eticheta o va
urma-
3n orice caz, poi deplasa i separat caseta de te5t i eticheta- ?ei observa c n colul din
stnga sus al fiecrui control e5ist un mner de selecie .ptrat/ care este mai mare dect
celelalte- Cnd poziionezi indicatorul mouse4ului pe acest ptrat, cursorul devine o mn
cu degetul arttor ntins- 3n acest moment poi s e5ecui clic i s tragi fiecare obiect
separat de celalalt-
AD#GAREA ETI&ETELOR
$oi, de asemenea, s adaugi separat etichete, cu te5t suplimentar, care nu sunt neaprat
asociate cu un anumit cmp-
'tape:
'5ecut clic pe butonul Label de pe bara de instrumente T&&lb&B-
'5ecut clic oriunde n raport i tasteaz te5tul etichetei-
!up ce ai terminat, e5ecut clic oriunde n afara etichetei-
Bot: 3n cazul n care bara de instrumente T&&lb&B nu este afiat, poi
apsa pe butonul T&&lb&B de pe bara de instrumente standard sau poi alege din
meniul VIE), opiunea TOOLBARS i apoi TOOLBO/-
G@

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