Documente Academic
Documente Profesional
Documente Cultură
BAZE DE DATE SI
PROGRAME
ANUL II Semestrul 3
Cluj-Napoca 2014
INFORMAII GENERALE
I.1. Date de identificare ale cursului
I.1.1. Date de identificare despre titularul de curs i tutori
Numele cursului: Baze de date i Programe
Codul cursului: ELR0016
Anul, Semestrul: Anul II, Semestrul 3
Tipul cursului: Obligatoriu
Titulari de curs i tutori:
Specializarea Contabilitate i Informatic de Gestiune
Conf.univ.dr. Petrusel Rzvan titular de curs i tutore
razvan.petrusel@econ.ubbcluj.ro
Lect. univ.dr. Bologa Cristian tutore
cristian.bologa@econ.ubbcluj.ro
Consultaii: conform orarului afiat la nceputul semestrului.
CUPRINS
I.
INFORMAII GENERALE
I.1. Date de identificare ale cursului
I.1.1. Date de identificare despre titularul de curs
I.1.2. Date de identificare curs i contact tutori
I.2. Condiionri i cunotine prerechizite
I.3. Descrierea cursului
I.4. Organizarea temelor din cadrul cursului
I.5. Materiale bibliografice obligatorii
I.6. Materiale i instrumente necesare pentru curs
I.7. Calendar al cursului
I.8. Politica de evaluare i notare
I.9. Elemente de deontologie academic
I.10. Studeni cu dizabiliti
I.11. Strategii de studiu recomandate
II.
Tematica abordat
ntlnire
I:
Activiti didactice
Responsabilitile
studenilor
Parcurgerea bibliografiei.
Rezolvarea
de
teme
practice.
Locul de
desfurare
Conform
orarului afiat
pe
site-ul
FSEGA
practice.
pe
FSEGA
Conform
orarului
pe
FSEGA
Conform
orarului
pe
FSEGA
Conform
orarului
pe
FSEGA
Modulul 4 Formulare n
Access
Parcurgerea
Rezolvarea
practice.
bibliografiei.
de
teme
ntlnire
IV:
Activiti didactice
Modulul 5 - Rapoarte n
Access
Parcurgerea
Rezolvarea
practice.
bibliografiei.
de
teme
Examen final
Prezentarea temelor de
control.
Susinerea probei practice
ntr-un interval dat de timp
i susinerea unui test grila
(cu un singur rspuns
corect)
site-ul
afiat
site-ul
afiat
site-ul
afiat
site-ul
Calendarul activitilor este unul orientativ, fiind susceptibil unor modificri ulterioare, acestea
urmnd s fie comunicate studenilor.
OBIECTIVE:
RECOMANDRI
PRIVIND
STUDIUL:
REZULTATE
ATEPTATE:
NOIUNI CHEIE
Funcia de utilizare
Arhitectura unei baze de date
Asigurarea independenei logice i fizice a datelor impune adoptarea unei arhitecturi a bazei de
date pe trei nivele astfel:
1.
nivelul intern
2.
nivelul conceptual
3.
nivelul extern
Nivelul intern (baza de date fizic), definete baza de date ca fiind o colecie de fiiere,
coninnd datele din cadrul bazei de date, la care se adaug i alte structuri auxiliare de
date i un set de programe, care interacioneaz cu sistemul de operare pentru
mbuntirea managementului bazei de date. La acest nivel structura bazei de date se
concretizeaz n schema intern. Aici apare independena fa de cile de acces, adic
utilizatorul nu trebuie s fie preocupat de organizarea i modul de acces la date la nivel
fizic.
Nivelul conceptual, este nivelul imediat superior celui fizic, datele fiind privite prin prisma
semanticii lor, respectiv a coninutului i relaiilor cu alte date. Acesta este i primul nivel
de abstractizare a lumii reale, avnd ca obiectiv principal modelarea realitii existente prin
definirea i descrierea unitilor logice cu care se lucreaz i a legturilor dintre acestea.
Aceast schem este descris n general de administratorul bazei de date, el fiind singurul
care cunoate i manipuleaz schema conceptual a bazei de date, degrevnd utilizatorii
de cunoaterea ntregii structuri a bazei de date.
Nivelul conceptual se definete cu ajutorul schemei entitate-relaie (E-R)[Gardarin86] sau obiectentitate-relaie (OLE) [Miranda&Busta86].
Prin entiti se neleg concepte cu care opereaz utilizatorii i prin care acetia i modeleaz
aplicaiile, cum ar fi: PRODUSE, BENEFICIARI, FACTURI (n cazul unei firme productive) sau
PROFESORI, STUDENTI, SALI, MATERII (n cadrul unei faculti).
Fiecare entitate poate avea una sau mai multe atribute. De exemplu, un STUDENT are
MATRICOLA, NUME, DATA-NATERII, etc.
Constrngerile reprezint proprieti ale datelor i se refer la restricii privind valorile pe care le
pot lua aceste date sau la restricii privind legturile dintre diferite entiti.
n cadrul oricrei operaii de actualizare a datelor din baza de date sau de ncrcare a acesteia cu
date, se verific aceste constrngeri, pentru a asigura integritatea bazei de date.
Ca urmare, orice modificare n structura de memorare a datelor sau schimbarea suportului
magnetic, va afecta doar interfaa dintre nivelul conceptual i cel fizic fr a modifica nivelul
conceptual. Rezultatul imediat al independenei fizice a datelor l reprezint imunitatea
aplicaiilor fa de structura fizic de memorare a datelor. La acest nivel structura bazei de date se
concretizeaz n schema conceptual.
Nivelul extern este ultimul nivel de abstractizare la care se poate descrie o baz de date.
Nivelul extern conine, deci, o parte din unitile logice descrise la nivel conceptual, dar poate
include i uniti logice care nu apar la nivel conceptual i care nu au corespondent direct n baza
de date fizic, obinute de exemplu prin calcule. Ca urmare, nivelul extern este derivat din nivelul
conceptual i reprezint ceea ce vede utilizatorul din baza de date. Fiecrui utilizator i va
corespunde un model extern propriu, n funcie de cerinele informaionale ale acestuia.
Unitile logice folosite la nivel extern se numesc numite uniti logice virtuale, imagini sau
vederi i formeaz o baz de date virtual.
Aceste vederi se pot obine n unul din urmtoarele moduri:
1.
prin modificarea unor uniti logice reale;
2.
prin combinarea a dou sau mai multe uniti logice reale.
Vederile asigur, printre altele, urmtoarele funcii n cadrul unei baze de date:
1. securitatea bazei de date
2. definirea modului de acces la date;
3. ofer utilizatorului o viziune simplificat i personalizat asupra bazei de date.
Prin nivelul extern se realizeaz independena logic a datelor din baza de date.
Interfaa dintre utilizator i SGBD se poate realiza n mai multe moduri, dintre care amintim :
printr-un mecanism de apel (cuvnt cheie urmat eventual de parametrii) inserat n
programele scrise ntr-un limbaj tradiional (C, COBOL, etc.), numit limbaj gazd;
prin comenzi speciale utilizate autonom (specifice SGBD-urilor, n afara limbajelor
tradiionale), n cazul SGBD-urilor autonome.
Modele de organizare a datelor
Analiza, proiectarea i implementarea structurii bazei de date se realizeaz utiliznd un anumit
model de date.
Un asemenea model reprezint un ansamblu de instrumente conceptuale, care permit descrierea
datelor, a relaiilor dintre ele, a semanticii lor, ct i a restriciilor la care sunt supuse aceste
date [Fotache02, Popescu02]. Un model de date reprezint, deci, un instrument teoretic care ne
ajut s identificm semnificaia sau coninutul unei colecii de date (structura de organizare a
10
acestora) ct i modul de utilizare a acestora, prin intermediul operaiilor permise asupra datelor
respective.
Modelul de organizare a datelor este deci o reprezentare a obiectelor lumii reale i a evenimentelor
asociate lor, avnd rolul de a pune la dispoziia utilizatorilor conceptele de baz i notaiile, care
s le permit acestora s comunice clar i rapid informaiile despre datele firmei [Selinger98].
Ca urmare, un model de date include urmtoarele componente [Selinger98]:
1.
un set de reguli de structurare a datelor prin limbajul de descriere date (LDD).
2.
un set de reguli de manipulare a datelor prin limbajul de manipulare date (LMD).
Modelele utilizate de bazele de date se pot grupa n trei categorii [Fotache98]: modele bazate pe
obiect, modele bazate pe nregistrare i modele fizice.
Modelele bazate pe obiect permit descrierea datelor la nivel conceptual i extern. Din aceast
categorie fac parte:
a)
modelele entitate-asociaii (E-A), entitate-relaie (E-R) sau obiect-entitate-relaie
(OLE)
b)
modelul semantic
c)
modelul funcional
d)
modelul orientat pe obiecte.
Din categoria modelelor orientate pe nregistrri fac parte:
a)
modelul ierarhic
b)
modelul reea
c)
modelul relaional.
Entiti i tipuri de entiti
O entitate este o realitate obiectiv care exist prin ea nsi. Orice entitate, aa dup cum s-a mai
artat, se caracterizeaz prin anumite proprieti, care n cadrul modelului de date sunt
reprezentate prin atribute. Entitile la rndul lor sunt reprezentate prin tipuri de entiti. Mulimea
entitilor descrise prin tipul de entitate dat reprezint extensiunea tipului de entitate respectiv,
atributele unei instane ale entitii fiind proprietile particulare sau extensionale ale acesteia.
REZUMAT
11
1.
2.
3.
nivelul intern
nivelul conceptual
nivelul extern
Din categoria modelelor orientate pe nregistrri fac parte:
d)
modelul ierarhic
e)
modelul reea
f)
modelul relaional.
Teste de
1. Care sunt dezavantajele utilizrii fiierelor
autoevaluare
2. Care este definiia bazei de date
Bibliografie
[Sitar_2010]
NOIUNI CHEIE
12
Pentru exemplificarea conceptelor anterior prezentate se consider relaia sau tabelul FACULTI
avnd urmtoarea structur:
Atribut
FACULTI
Cod facultate
STE
FIL
BIO
MED
linie
(tuplu)
Denumire facultate
T. ECONOMICE
FILOLOGIE
BIOLOGIE
MEDICIN
domeniu
Adres
MIHALI FN
HOREA 5
HAJDEU 10
E. ISAC 20
nregistrare logic
(antet relaie)
Putem considera c un atribut reprezint o utilizare sub un anumit nume a unui domeniu. Din
acelai domeniu pot deriva mai multe atribute, fiecare cu nume diferite la nivelul unui tabel.
Astfel, dac considerm domeniul numerelor ntregi sau reale, din acest domeniu pot deriva
atribute cum ar fi: SALAR, IMPOZIT, VALOARE, PRET, CANTITATE etc.
Legturi ntre relaii
Definirea cheilor unei relaii
Dac ntr-o relaie exist mai multe atribute sau combinaii de atribute care permit identificarea
unic a tuplelor, acestea sunt denumite chei candidat. O astfel de cheie reprezint un atribut sau o
mulime de atribute (K) cu urmtoarele proprieti [Gardarin86] :
1.
identificare unic;
2.
ireductibilitate;
3.
valorile atributului.
O entitate poate conine mai multe chei candidat, dar numai una dintre ele se alege pentru a fi
folosit la identificarea tuplelor. Aceast cheie se numete cheie primar. O cheie candidat care nu
este desemnat ca i cheie primar se numete cheie alternativ.
Pe lng noiunile de cheie candidat i cheie primar, n cadrul modelului relaional se mai
folosete i noiunea de cheie strin. Ea se utilizeaz la stabilirea legturilor dintre dou tabele,
numite tabela principal sau printe i tabela secundar sau copil. Prin definiie, valoarea cheii
strine trebuie s se regseasc n mulimea cheilor primare ale tabelei principale. Ea reprezint
deci o referin ctre un tuplu din tabela printe care are aceeai valoare a cheii primare.
Tipuri de legturi ntre relaii
Una din componentele modelului relaional se refer la legturile dintre relaii sau tabele. O
legtur (relaie dinamic) se definete ca fiind o asociere ntre mai multe tipuri sau clase de
entiti. Cea mai frecvent legtur ntlnit n practic este cea dintre dou tipuri de entiti,
numit i legtur binar.
Legturile binare, aa cum s-a amintit, dup cardinalitatea lor (numrul entitilor din fiecare clas
de entiti care intr n cadrul legturii) se pot clasifica astfel:
13
1.
legturi de tip 1-1, prin care unei entiti din mulimea sau clasa M1 i corespunde o
singur entitate n mulimea sau clasa M2;
2.
legturi de tip 1-n, prin care unei entiti din mulimea M1 sau din tabelul M1 i
corespund mai multe entiti n mulimea sau tabelul M2, iar unei entiti din M2 i
corespunde o singur entitate n M1;
3.
legturi de tip m-n, prin care unei entiti din M1 i corespund mai multe entiti n
M2 i reciproc.
Definirea restriciilor pentru datele dintr-o baz de date
Pentru datele dintr-o baz de date pot fi definite mai multe tipuri de restricii, cum ar fi: restricia
de domeniu, de atomicitate, referenial i restricii utilizator. Dintre acestea, ne vom referi n
continuare la restricia referenial sau integritatea referenial, pe care se bazeaz stabilirea
legturilor dintre dou tabele.
Integritatea referenial, denumit n unele sisteme (ca de exemplu n SQL Server), integritate
referenial static deoarece se pstreaz n dicionarul de date, se definete ca fiind un ansamblu
de reguli impuse tabelelor ntre care s-au stabilit anumite legturi. Astfel, pentru a asigura
integritatea referenial trebuie ca atunci cnd se fac modificri ale valorii unui cmp de tip cheie
primar sau strin dintr-un tabel, s nu fie afectat relaia dintre cele dou tabele, adic s se
modifice automat valorile cheii n toate tuplele corespunztoare.
Integritatea referenial cere ca valorile cheii strine s se regseasc printre valorile cheii primare.
Aceast condiie introduce n baza de date constrngeri numite constrngeri refereniale.
Operaiile de adugare, modificare i tergere pot afecta integritatea referenial astfel:
1) In tabela principal (tabela referit sau printe):
a. operaia de adugare se va face fr nici un fel de restricii din punct de vedere al
condiiilor de integritate referenial;
b. operaia de tergere - deoarece prin tergerea unui tuplu din relaia sau tabela
principal, n relaia secundar pot rmne tuple care fac referire la tuplul ters, pentru
a menine integritatea referenial se poate introduce tergerea restricionat sau n
cascad:
- n primul caz, nu se poate terge un tuplu din tabela principal dac acesta are
corespondent tuple n tabela secundar, deoarece tuplele din tabela secundar
rmn orfane, adic vor avea referine nesatisfcute;
- n al doilea caz, tergerea unui tuplu din tabela principal va fi urmat de tergerea
tuturor tuplelor din relaia secundar care fac referire la tuplul ters;
c. operaia de modificare poate fi privit ca i n cazul operaiei de tergere, iar restriciile
refereniale sunt cele folosite la operaia de tergere.
2) In tabela secundar (de referin sau tabela copil):
a. operaia de adugare se poate face numai dac valorile cheii strine pentru articolele
adugate se regsesc printre valorile cheii primare din tabela principal, altfel operaia
de adugare este interzis;
14
15
indicatorul sau pointer-ul articolului respectiv; n Visual FoxPro acest pointer poate fi
obinut prin funcia RECNO();
3.
de regul unul dintre articolele bazei de date este cel tratat curent; pointer-ul acestui
articol se numete pointer-ul sau indicatorul bazei de date;
4.
fiierele din baza de date sunt interconectate ntre ele prin legturi de tip 1-1, 1-n sau
m-n.
REZUMAT
TESTE DE
AUTOEVALUARE
Bibliografie
[Sitar-2010]
16
OBIECTIVE
RECOMANDRI
PRIVIND STUDIUL
REZULTATE
ATEPTATE
Crearea bazei de date se realizeaz prin lansarea aplicaiei MS Access i deschiderea ferestrei
principale a acesteia:
17
18
tergerea (Eliminarea) unui obiect (tabel, interogare, formular sau raport) din baza de date
tergerea unui obiect (ex.tabel) din baza de date se realizeaz astfel:
- selectai obiectul dorit a fi eliminat (tabela) din baza de date, prin clic de mouse asupra etichetei
acestuia din lista de obiecte a ferestrei active (All Access Objects);
- activai meniul contextul al obiecului prin click cu butonul drept al mouse-ului i selectai
opiunea Delete apoi confirmai operaiunea in ferestra de dialog activat sau acionai de la
tastatura tasta DEL i confirmai operaiunea.
19
Caracteristicile fiecrui cmp pot fi rafinate n ferestra Field Properties, din partea de jos a zonei
de lucru, care poate avea coninut difereniat n funcie de tipul de dat al cmpului curent.
Tabelul de definire a cmpurilor fiecare cmp (atribut) al bazei de date este definit prin 3
caracteristici: denumire (Field Name), tipul de dat (Data Type) i descrierea (Description).
Denumirea (Field Type) numele cmpului (atributului) trebuie s fie uor de neles de ctre
persoanele care urmeaz s opereze cu aceast baz de date. Chiar dac sunt acceptate cmpuri de
pn la 64 de caractere lungime, denumirea este recomandat s fie cea mai scurt i cuprinztoare
posibil.
Tipul de data (Data Type) exist 10 tipuri de date selectabile, plus unul impropriu. Acestea se
pot alege din lista derulant din coloana Data Type. Tipul de dat definit pentru un cmp descrie
domeniul de valori al cmpului i impune anumite reguli de domeniu pentru acel cmp.
Tipul de dat Access Utilizat pentru a stoca
Limitri/Restricii
Text
Memo
Number
Date numerice
20
Date/Time
Date i ore
Currency
Date monetare
AutoNumber
Yes/No
Obiect OLE
Hyperlink
Adrese Web
Attachment
Lookup Wizard
Descrierea (Description) este opional, pentru cazurile n care cele 64 de caractere ale
denumirii cmpului nu sunt suficiente; aici se pot detalia elemente suplimentare documentrii
cmpului, care vor fi utile persoanelor care vor introduce date n tabel sau vor consulta coninutul
acesteia.
Proprietile cmpurilor
Principalele proprieti ale cmpurilor sunt cele legate de:
FORMAT- stabilete formatul de afiare a coninutului cmpului; permite alegerea unor
formate prestabilite sau crearea unui format personalizat pentru tipul de dat ales.
DECIMAL PLACES se utilizeaz pentru numerele nentregi i specific precizia la
afiarea acestora; stabilete numrul de zecimale ntre 0-15.
21
INPUT MASK uneori avem nevoie de un format de introducere acolo unde sunt date
care trebuie s se conformeze unui format mai strict, impus de utilizator; se aplic tipului
text i dat calendaristic un format personalizat de afiare. Ex.Tel.(0262)655-224.
CAPTION permite afiarea unui nume atribuit cmpului la vizualizare (diferit de cel
intern, deja atribuit la definirea structurii bazei de date).
DEFAULT VALUE -valoarea afiat implicit, nainte de actualizarea cmpului
VALIDATION RULE testeaz dac valoarea introdus corespunde unor reguli definite
de utilizator, funcie de cerinele afacerii modelate
VALIDATION TEXT este un text care se va afia ntr-o caset de dialog pe ecran, n
cazul n care valorile introduse de utilizator pentru cmpul n cauz contravin regulilor
stabilite prin VALIDATION RULE
REQUIRED stabilete dac completarea acestui cmp este obligatorie sau nu. Se traduce
ca NOT NULL/NULL
INDEXED menioneaz dac acest cmp va fi un index sau nu. Dac da, se va meniona
dac accept sau nu duplicate.
Modificarea structurii unei tabele const n adugarea sau eliminarea unor cmpuri din
structura tabelei.
Adugarea unui cmp n structura unei tabele se poate realiza parcurgnd urmtorii pai:
1. se afieaz caseta Table cu definiia tabelei (n Design View), prin click de mouse asupra
numelui tabelei dorite din lista All Access Objects
2. se selecteaz cmpul naintea cruia se va insera noul cmp, prin click de mouse pe linia
aferent acestuia;
3. cu butonul drept al mouse-ului se activeaz meniul contextual din care selectm opiunea
Insert Rows;
4. se definete noul cmp al structurii tabelei cu caracteristicile aferente.
5. Se salveaz tabela cu noua structur iar, dac este cazul, se completeaz valorile pentru noul
cmp al tabelei.
tergerea (Eliminarea) unui cmp din structura unei tabelei se procedeaz astfel:
1. se afieaz caseta Table cu definiia tabelei (n Design View), prin click de mouse asupra
numelui tabelei dorite din lista All Access Objects
2. se selecteaz cmpul ce se dorete a fi eliminat din structura tabelei, prin click de mouse pe
linia aferent acestuia;
3. cu butonul drept al mouse-ului se activeaz meniul contextual din care selectm opiunea
Delete Rows;
4. se confirm operaiunea n fereastra de dialog afiat;
5. Se salveaz tabela cu noua structur.
Listarea (afiarea) structurii unei tabele se realizeaz parcurgnd urmtorii pai:
22
a. Selectm tabela a crei structur dorim s o afim, prin click de mouse asupra denumirii
acesteia din fereastra All Access Objects;
b. Activm meniul contextual al tabelei prin click cu buton dreapta al mouse-ului
c. Selectm butonul Open pentru deschiderea tabelei n fereastra de lucru curent;
d. Din fila Home a meniului principal, din caseta Views, selectm icon-ul Design View
Validarea datelor din cadrul unei tabele la nivel de cmp i nregistrare
Validarea datelor dintr-o tabel la nivel de cmp se realizeaz astfel:
- o prim validare este dat de tipul cmpului. Ea este realizat automat de Access.
- a doua validare este dat de dimensiunea cmpului (proprietatea Field Size). Ea specific cea
mai mare valoare ce poate fi introdus n cmp.
- o a treia validare se poate realiza prin intermediul definirii unei reguli de validare pentru cmp,
astfel :
a.regula de validare se poate introduce direct n caseta proprietii Validation Rule sau se
definete cu aplicaia Expression Builder. Caseta aplicaiei Expression Builder se afiaz la
selectarea proprietii Validation Rule a cmpului, cu un clic pe butonul . Caseta Expression
Builder conine n partea superioar o zon n care se va construi expresia. Urmeaz apoi
butoanele corespunztoare operatorilor, +, -, etc. La un clic pe un buton, caracterul corespunztor
este inserat n caseta expresiei n punctul n care se afl cursorul. In partea de jos exist trei zone
ce pot afia funciile standard, constantele i operatorii ce se pot utiliza n expresii. Pentru
finalizarea operaiunii de validare se recomand utilizarea casetei proprietii Validation Text n
care se va introduce un mesaj ce se afieaz ntr-o fereastra de dialog utilizatorului, n cazul n
care regula de validare a cmpului definit anterior este nclcat.
Validarea datelor dintr-o tabel la nivel de nregistrare
O regul de validare a unei nregistrri se aplic dup completarea tuturor cmpurilor i verific
relaiile ntre cmpuri. Expresiile de validare pot conine i nume de cmpuri, pe lng
constante i funcii standard. Inregistrarea este scris n tabel doar dac regula de validare este
satisfcut. Construirea expresiilor de validare se realizeaz similar cu cele aferente validrii
cmpurilor.
Deschiderea i nchiderea tabelelor
Deschiderea unei tabele dintr-o baz de date se realizeaz parcurg urmtoarele etape:
a. Selectarea tabelei din lista existent n fereastra All Access Objects, prin click de mouse asupra
acesteia
b. Activarea meniului contextual cu butonul drept al mouse-ului si selectarea opiunii Open sau
dublu-click de mouse asupra tabelei selectate.
Inchiderea unei tabele dintr-o baz de date se realizeaz astfel:
a. Selectarea tabelei dintre cele active n fereastra de lucru curent, cu click de mouse pe
eticheta acesteia
b. Activarea meniului contextual prin click cu butonul dreapta al mouse-ului
23
c. Selectarea opiunii Close din meniul contextual; n cazul n care s-au efectuat modificri
de structur sau de coninut asupra tabelei se va confirma salvarea acestor modificri
anterior nchiderii tabelei.
24
c. Parcurgerea valorilor din cmpurile nregistrrii cu ajutorul tastei TAB sau prin click de mouse
n celula a crei valoare dorim s o modificm
d. Introducerea de la tastatura a noilor valori aferente cmpului/cmpurilor vizate, pn la
finalizarea operaiunii, urmat de nchiderea tabelei.
tergerea unei nregistrri din tabel se poate realiza astfel:
a. Selectarea i deschiderea tabelei al crei coninut dorim s l modificm prin adugare noi
nregistrri i activarea modului Datasheet View de vizualizare
b. Click de mouse pe linia nregistrrii ce se dorete a fi eliminat din tabel
c. Activarea meniului contextual al nregistrrii cu ajutorul butonului dreapta al mouse-ului i
selectarea opiunii Delete Record urmat de confirmarea operaiunii n caseta de dialog
afiat.
Relaionarea tabelelor ntr-o baz de date
O baz de date se compune din mai multe tabele. O tabel este o structur logic de date ce
conine informaii pe care baza de date le reprezint. Fiecare tabel are un nume unic. O tabel
este constituit dintr-un numr de coloane (attribute sau cmpuri). Fiecare tabel are o cheie
primar ce identific n mod unic liniile tabelei. Cheia primar poate consta dintr-un singur atribut
sau din mai multe attribute (cheie simpl sau cheie compozit).
O tabel se poate referi la atributele uneia sau mai multor alte tabele din baza de date. Acest lucru
se face prin cheia extern. Atunci cnd o tabel trebuie s se refere la atributele altei tabele, unul
sau mai multe atribute ale tabelei-fiu vor conine cheia extern, care este cheia primar a tabeleiprinte.
Relaiile ntre tabele sunt de regul de tipul unul la mai muli. Vom spune c ntre tabelele A i B
exist relaia unul la mai muli dac unei linii din tabela A i corespund mai multe linii din tabela
B, dar unei linii din tabela B i corespunde o singur linie din tabela A.
Pentru crearea relaiei ntre cele dou tabele se procedeaz astfel:
a. Se nchid toate tabelele bazei de date i, din fila Tools selectai caseta Relationship care
produce afiarea ferestrei Relationships i a casetei Show Table;
b. Din caseta Show Table selectai pe rnd cele dou tabele ntre care dorii s formalizai
stabilirea relaiei existente i acionai butonul Add care va avea ca efect afiarea structurii
celor dou tabele n fereastra Relationship
c. Se inchide caseta Show Table cu clic pe butonul Close
d. Pentru a defini o relaie ntre atributul cheie primar a unei tabele i atributul corespunztor
cheie extern n alt tabel se selecteaz atributul cheie primar din prima tabel i se trage
cu butonul stng al mousului apsat peste atributul cheie extern al celei de-a doua tabele.
e. se afiaz caseta Edit Relationship. In partea de jos a casetei n seciunea Relationship
Type apare tipul relaiei, n cazul nostru unu la mai muli
f. clic pe butonul Join Type, care afiaz caseta Join Properties, unde selectm butonul
corespunztor tipului de relaie dintr-e cele dou tabele; clic pe butonul OK al casetei Join
Properties
25
REZUMAT
Operaiile care se pot realiza asupra unei baze de date sunt: crearea
acesteia, popularea ei cu obiecte (tabele, interogri, rapoarte,
formulare, macrouri, module), tergerea unui obiect, actualizarea
26
TESTE DE
AUTOEVALUARE
Bibliografie
unui obiect.
Operaiile legate de obiectul tabel realizabile sunt: crearea,
modificarea i listarea structurii tabelelor;
Validarea datelor din cadrul unui tabel la nivel de cmp i
nregistrare;
Deschiderea i nchiderea tabelelor;
ncrcarea tabelelor cu date i listarea coninutului acestora;
Modificarea coninutului unui tabel;
tergerea nregistrrilor din cadrul unui tabel
Relaionarea tabelelor ntr-o baz de date
1. Care sunt paii necesari pentru crearea unei baze de date n
Access
2. Care este extensia unei baze de date n Access 2013
3. Ce tipuri de date se pot utiliza n tabelele din Access
4. Cum se realizeaz o relaie ntre tabele din Access
[Sitar-2010]
27
OBIECTIVE
RECOMANDRI
PRIVIND STUDIUL
REZULTATE
ATEPTATE
Interogrile sunt acele obiecte din baza de date care ne permit s introducem, s actualizm
i s aranjm datele stocate n tabele. De asemenea, le putem folosi ca surse pentru formulare i
rapoarte.
Rezultatul interogrii este un nou set de date, numit set dinamic (engl: Dynaset). Setul
dinamic (rezultalul interogrii) conine doar cmpurile specificate ale nregistrrilor din tabelele
specificate care satisfac condiiilor specificate. Denumirea '"Set dinamic" este legat de faptul c
orice modificri ale datelor din tabelele specificate n interogare implic modificri respective ale
rezultatului interogrii (la o nou executare a ei). i invers, orice modificri n setul dinamic
implic modificri n tabelele respective (cu condiia respectrii integritii datelor). Seturile
dinamice nu se memorizeaz; ele se formeaz din nou de fiecare dat cnd executm o interogare.
Interogri de selecie -select queries acele interogri care extrag sau ne arat
anumite date. Aceste interogri ne vor afia datele n funcie de anumite criterii.
Interogri de aciune - action queries - folosite pentru a modifica unele nregistrri.
n acest tip de interogri se regsesc urmtoarele aciuni: tergere nregistrare- DELETE,
actualizare nregistrare- UPDATE, inserare date - APPEND, crearea unui nou tabel din
unul deja existent - MAKE TABLE.
Interogri ncruciate (de tip table pivot) - crosstab queries - folosite pentru a
calcula sau restructura un tabel pentru o analiz mai uoar a datelor. Astfel putem calcula
numrul de nregistrri, media unui cmp, suma elementelor sau alte tipuri de calcule
pentru datele care sunt grupate dup dou cmpuri.
28
Definirea cmpurilor obinute prin calcule - Aceste cmpuri sunt rezultatul unei
expresii. O expresie este alctuit prin combinarea unui operator cu unul sau doi
termeni. n marea majoritate a cazurilor un termen este un cmp al unui tabel, iar cellalt
termen este o valoare numeric sau un alt cmp.
Schimbarea ordinii cmpurilor la fel ca i la un tabel Excel
Salvarea interogrilor opiunea Save din meniul contextual aferent obiectului
Ecranul de mai sus arat zona de tabele ce vor fi folosite pentru interogri, iar n partea de
jos avem un grid (form tabelar), n care vom putea defini structura unei interogri.
Not - Fiecare coloan din acel grid corespunde unui cmp. Fiecare linie are cte o
funcie:
Field: - cmpurile folosite n interogare(de obicei vor fi cmpurile pe care le vom
vizualiza);poate fi un cmp dintr-un tabel, sau un cmp calculat. n cazul unui cmp nou, calculat,
vom folosi urmtoarea form:
-numecmpnou : expresie
29
unde:
-numecmpnou- va fi numele cmpului nou creat prin diferite calcule;
-expresie- va fi format din cmpuri din tabele, operatori, funcii predefinite,
numere, care vor contribui la determinarea valorilor aferente cmpului nou.
Obs: ntre cele dou componente avem semnul :
Table: -numele tabelului de unde extragem cmpul. Aceast linie este foarte folositoare,
mai ales n cazul n care avem de fcut o interogare bazat pe mai multe tabele.
Sort: -ajut la ordonarea rezultatelor ntr-o anumit ordine.
Show: -dac nu este marcat, atunci respectivul cmp nu va aprea n rezultatul final al
interogrii. Nu este marcat n cazul n care dorim s folosim acest cmp n interogare, dar nu
dorim s-l afim.
De exemplu, dac vrem s afim toi studenii din FSEGA, vom avea nevoie de un cmp
care ne arat facultatea, dar nu trebuie neaprat s-l afim.
Criteria: -specific un criteriu de cutare. Un criteriu de cutare este o condiie pe care o
nregistrare trebuie s o ndeplineasc pentru a aprea ca un rezultat a unei interogri. Acest
criteriu poate fi compus dintr-una sau mai multe condiii cu ajutorul operatorilor AND i OR.
or: -este folosit pentru condiiile multiple.
Se folosesc operatorii cunoscui o +, pentru adunare
o -, pentru scdere
o *, pentru nmulire
o ^, pentru ridicare la putere
o /, pentru mprire
o \, pentru mprire (se obine doar partea ntreag a mpririi)
o Mod, face mprirea i returneaz doar restul
o &, folosit pentru concatenarea a dou iruri
Se pot utiliza i funcii ( cele cunoscute din Excel) o DATE()- returneaz data curent
o NOW()- returneaz data i timpul curent
o YEAR(datevalue)- returneaz anul expresiei din paranteze
o MONTH(datevalue)- returneaz luna parametrului
30
De exemplu,vrem s vizualizm furnizorii care-i au sediul n Iai, deci liniile rezultate din
interogare trebuie s ndeplineasc condiia jude = Iasi.Deci trebuie s adugm un criteriu n
gridul QBE(de descriere a interogrii), n seciunea Criteria: a cmpului judet condiia =Iasi.
Cnd aceast condiie este o egalitate nu este neaprat necesar s folosim semnul =, el
fiind considerat implicit de Access n lipsa oricrui alt semn.
Operatori folosii pentru comparaii n criteriile interogrilor
Aceti operatori compar valoarea unei expresii cu valoarea altei expresii. n cazul n care
una dintre aceste expresii are valoare nul, atunci rezultatul returnat de operator va fi tot nul.
Operator
Semnificaie
Egal cu
Diferit de
Mai mic dect
Mai mic sau egal cu
Mai mare dect
Mai mare sau egal cu
=
<>
<
<=
>
>=
Operatorul Between
Operatorul are urmtoarea sintax: - Between valoare1 and valoare2
Acest operator permite examinarea valorii unui cmp, prin compararea valorii acestuia cu
valoare1 i valoare2.
Operatorul In
Operatorul are urmtoarea sintax: - In (valoare1, valoare2, valoare3,)
Acest operator examineaz dac valoarea dintr-un cmp ia una dintre valorile din
paranteze.
Operatorul is Null
n cazul n care o coloan care intervine n comparaie are valoare nul, rezultatul condiiei
are un rezultat nul. n cazul n care vrem s afim toate nregistrrile care nu au valori n anumite
coloane, putem folosi acest operator.
De exemplu, dorim s punem condiia ca acel Codp s fie nul:
Operatorul Like
Acest operator este folosit n cazul n care vrem s comparm valoarea dintr-un cmp cu
un anumit format (model). De exemplu, vrem s vizualizm toi clienii care ncep cu litera A.
Sintaxa pentru acest operator este urmtoarea:
31
Like A*
n tabelul urmtor avem caracterele care sunt folosite pentru definirea formatului.
Caractere din model
?
*
#
[list de caractere]
[!list de caractere]
Descriere
Un singur caracter
Zero sau mai multe caractere
Cifre
Orice caracter din lista de caractere
Orice caracter care nu se afl n lista de caractere
Pret = 20 Or 25
Pret = <25 Or >100
Like *3,50
Is NULL
Is Not NULL
32
33
Sum - calculeaz suma valorilor indicate n cmpul aferent. Datele pe care trebuie s le conin
cmpul asupra cruia apelm aceast funcie trebuie s fie de tip numeric (integer, decimal,
currency...). Rezultatul va fi acelai tip de dat ca i datele surs.
Avg - calculeaz media aritmetic a elementelor din cmpul specificat. Datele surs trebuie s fie
de tip numeric, iar rezultatul va avea un anumit tip de dat n funcie de necesiti.
Min i Max - returneaz minimul sau maximul dintr-o coloan. n acest caz n coloan putem
avea date de tip numeric, text sau dat. Tipul de dat returnat va fi acelai ca i tipul de
dat ntlnit n coloana surs. Dac valoarea e de tip numeric, aceste funcii vor returna cel
mai mic, respectiv cel mai mare numr, dac este text, pentru returnarea unui rezultat se va
folosi de alfabet, iar n cazul valorilor de tip dat vom avea la baz ordinea cronologic.
First i Last - returneaz prima i ultima nregistrare din coloan. n cazul n care ordonm ntr-un
fel respectiva coloan, rezultatul funciilor nu se schimb.
Count - returneaz numrul de nregistrri din respectiva coloan. Indiferent de tipul de date al
coloanelor, aceast funcie returneaz un ntreg.
Opiunea Group by ne ajut s grupm nregistrrile. O interogare agregat, fr opiunea de
grupare, d ca rezultat o singur valoare, iar calculele sunt efectuate pe toate nregistrrile surs.
Opiunea Expression ne permite s folosim o expresie n seciunea Field:. Aceast expresie are
anumite limitri. Astfel putem avea n acea seciune doar numele cmpurilor alturi de o funcie
agregat studiat, valori fixe sau numele coloanelor care apar cu opiunea Group by.O expresie
poate combina mai multe funcii agregat, dar nu avem posibilitate s includem funcie n funcie.
De exemplu: Max(hours)-Min(hours) i nu Max(sum(hours)).
Opiunea Where ne permite s stabilim un criteriu de cutare care se va aplica asupra coloanei
surs nainte de anumite calcule. Pentru aceast opiune vom putea folosi aceeai operatori ca ntro interogare normal, iar condiiile multiple pot fi scrise cu ajutorul operatorilor OR, AND, NOT.
Interogri crosstab(ncruciate)
O interogare crosstab este folosit n cazul n care vrem s reprezentm o interogare de tip
agregat cu dou coloane de grupare, la rezultat avnd una dintre coloane reprezentat n stnga, iar
cea de-a doua coloan n partea de sus. Altfel spus, dup selectarea opiunii Crosstab din Design,
Query Design ca apare n grila QBE linia CROSSTAB, care permite definirea de:
- Row Heading linie (mai multe)
- Column Heading- verticala (1 singura coloana)
- Value valori la intersecie linii cu coloanele (1 singur coloan)
34
De exemplu, vrem s obinem salariile lunare ale salariailor care lucreaz pe baz de
comision. Trebuie s apelm la o interogare agregat, care s calculeze sumele necesare dup dou
cmpuri: dup salariat i dup lun.
35
Definirea unei interogri pentru care durata de emisiune a emisiunilor de tip tiri se
mrete cu 5 minute.
36
REZUMAT
37
TESTE DE
AUTOEVALUARE
Bibliografie
i operatorul OR.
Pentru realizarea unui criteriu se folosesc operatori, constante,
funcii (asemntoare cu cele din Excel)
1. Ce nseamn grila QBE
2. Care sunt interogrile de aciune
3. Explicai criteriul urmtor Data_C =Date()-1 ataat unui
cmp de tip dat calendaristic
[Sitar-2010], www.cigase.ro
38
OBIECTIVE
Formularul este folosit pentru vizualizarea si editarea datelor din tabela sau interogarea aferente
unei baze de date
Un formular este o fereastr de tipul celor pe care se bazeaz sistemul de operare Windows
Exist dou tipuri de formulare: formulare bazate pe date i formulare care nu au la baz date
(formulare numai cu butoane de comanda, tip meniu)
Formularul este un obiect sau o entitate n care sunt ncapsulate (ascunse):
39
1. setul de proprieti care descrie entitatea: denumire, titlu, dimensiune, poziie, diverse
proprieti ale fundalului sau ale aspectului exterior sau scrisului n cadrul formularului etc
2. metodele (procedurile) care opereaz asupra acestor date i dau comportamentul
entitii. Dintre metodele formular menionm:
Show afieaz un formular i determin dac un formular este modal sau nu;
Hide face un formular invizibil (l ascunde) fr a-l terge din memorie;
Release nchide un formular (terge obiectul din memorie);
De asemeni, formularului, n calitate de obiect, i sunt asociate evenimente (clic, dublu-clic, clic
dreapta, mouse deasupra, obinerea sau pierderea controlului, redimensionarea, acionarea unei
taste etc.).
Formularul (Form):
furnizeaz interfaa grafic (GUI) pentru introducerea datelor n baza de date
utilizatorii finali sunt n general contieni de structura bazei de date (structura tabelelor i
relaiile ntre tabele)
utilizatorii interacioneaz prin intermediul formularelor cu baza de date Access
are una sau mai multe tabele ataate
MS Access ofer o serie de faciliti n vederea crerii unui formular. Astfel se poate alege ntre:
I.generarea automat a unor formulare predefinite (AutoForm: Columnar, Tabular, Datasheet,
PivotTable, Pivotchart);
II.proiectarea asistat a unui formular, caz n care utilizatorul este ndrumat de ctre o serie
de asisteni (Wizards: Form Wizard, Chart Wizard, PivotTable Wizard).
Etapele crerii unui formular sunt urmtoarele:
Pas1. Se selecteaz fila Create din care se acioneaz n zona Forms
Pas2. Se alege una din variantele existente n zona Forms :
Design View crearea formularului cade n sarcina exclusiv a utilizatorului;
Form Wizard utilizatorul va fi asistat la crearea formularului;
Chart Wizard utilizatorul va fi ndrumat n crearea unui formular ce va afia datele sub
form de grafic;
PivotTable Wizard - noul formular va ngloba o tabel pivot generat prin aplicaia Excel
(folosind tehnica OLE).
Un formular este compus din trei pri:
1. antetul;
2. zona de detaliu;
3. subsolul.
n antet se include: numele formularului, sigla firmei (opional) i capul de tabel.
40
n zona de detaliu sunt prezentate datele ce vor fi introduse de la tastatur pentru a fi stocate n
tabela/tabele.
n subsol sunt prezentate, de regul, informaii statice, care nu se schimb cu fiecare nregistrare
editat.
Structura detaliat a unui Formular:
1. Bordura definete chenarul ce va delimita formularul pe ecran.
2. Antetul formularului (Form Header) este folosit, de regul, pentru a afia titlul
formularului. Aceast zon nu este vizibil n modul Datasheet. Dac formularul este
afiat n format Tabular, coninutul zonei de antet nu va fi derulat. Pentru ca aceast zon
s fie disponibil n timpul proiectrii, se selecteaz opiunea View > Form apoi Fila
Arrange/seciunea Show-Hide/Header/Footer.
3. Antetul de pagin (Page Header) este o zon ce apare numai cnd formularul este
tiprit la imprimant. Pentru a fi disponibil n cursul proiectrii selectai Fila
Arrange/seciunea Show-Hide\Page Header/Footer
4. Seciunea de detaliu (Detail) va conine toate controalele necesare afirii/editrii
nregistrrilor.
5. Subsolul de pagin (Page Footer) este afiat numai la tiprirea formularului i poate
conine data curent, numrul de pagin, etc.
6. Subsolul formularului (Form Footer) are aceleai caracteristici cu zona de antet i
poate s conin, spre exemplu, totalul general sau diverse alte controale (butoane pentru
salvare, adugare, tergere de nregistrri etc.).
7. Butoane de navigare sunt afiate numai n timpul execuiei formularului i pot fi folosite
pentru deplasri n cadrul nregistrrilor.
Proprietile obiectelor Forms
41
n cadrul ferestrei Properties, proprietile formularului curent sunt mprite n patru categorii
plus ALL astfel:
I. Format conine atribute privitoare la dimensiune, aspect, coordonatele de afiare ale
formularului etc.;
Caption conine titlul formularului ce va aprea n bara de titlu a acestuia;
Default View specific modul implicit de afiare, folosit la execuia formularului (Single Form,
Tabular Form, Datasheet);
Views Allowed reprezint modurile de afiare ce sunt disponibile n timpul execuiei;
Scroll Bars seteaz barele de defilare vizibile n cursul execuiei (bara orizontal, bara
vertical, amndou sau nici una);
Record Selectors afieaz sau nu selectorul de nregistrare n timpul execuiei formularului;
Navigation Buttons specific dac formularul va conine butoanele de navigare n
cursul execuiei sale;
Dividing Lines precizeaz dac se afieaz linii pentru delimitarea seciunilor
formularului sau a nregistrrilor la execuie;
Auto Center dac este setat pe valoarea Yes, formularul va fi afiat, la execuie, n
centrul ecranului;
Border Style specific tipul bordurii. Setarea acestei proprieti va avea efect i asupra
comportamentului formularului.
II. Data grupeaz proprieti referitoare la sursa de date i nregistrrile aferente
1. Record Source conine sursa de date a formularului (tabel sau interogare).
Aceast proprietate poate conine chiar i o comanda SQL (sunt admise numai cererile
de selecie).
2. Filter conine criteriul de selecie care se va aplica nregistrrilor din formular.
Condiia de filtrare este o clauz SQL WHERE, ns fr s conin cuvntul WHERE.
3. Order By permite specificarea cmpurilor dup care vor fi sortate nregistrrii din
formular. Sintaxa este identic cu sintaxa clauzei SQL, OrderBy.
4. Data Entry dac este setat pe valoarea Yes, formularul nu va afia, la
deschidere, nregistrrile existente. Proprietatea este util pentru formularele ce vor
permite numai adugarea de nregistrri.
5. Record Locks specific dac i ce nregistrri vor fi blocate pentru ali utilizator
(blocarea se poate face fie pentru toate nregistrrile, fie numai pentru nregistrarea
curent).
Controale
42
Controalele sunt obiecte grafice (elemente vizuale) ce sunt incluse n formulare sau rapoarte, n
scopul editrii/afirii datelor sau executrii unor aciuni (ex.: etichete, casete text, butoane, etc.).
Adugarea controalelor se poate face numai n etapele de creare sau modificare a formularelor,
astfel:
din ribon fila Design zona Controls Toolbox se selecteaz butonul aferent controlului dorit;
se descrie, cu ajutorul mouse-lui, o zon dreptunghiular pe suprafaa formularului, definind
astfel poziia i dimensiunea noului control.
Tipuri de controale (obiecte)
a. Obiecte libere nu au legtur cu componentele de date;
b. Obiecte legate sunt conectate la date (tabele, interogri, cmpuri, variabile i tablouri).
Proprietile ControlSource (pentru cmpuri i variabile) sau RecordSource (pentru tabele)
trebuie s fie setate (rol important, specificnd tipul sursei de date)
Exemplu
Dac o caset de text va afia datele din cmpul Denumire din cadrul tabelei Parteneri.dbf
ntr-un formular, atunci proprietatea ControlSource se va seta la valoarea
Parteneri.Denumire;
n cazul n care caseta de text se leag de o variabil de memorie specific aceluiai cmp,
atunci aceeai proprietate va fi configurat pe valoarea m.Denumire.
43
44
Proprieti controale
1. Proprieti din categoria Format:
Format specific modelul (masca) de afiare a datelor (numai pentru casetele text);
vezi definire structura c\mpuri din tabel
Decimal Places indic numrul de zecimale cu care vor fi afiate datele (numai pentru
casete text);
45
46
REZUMAT
Bibliografie
47
OBIECTIVE
RECOMANDRI
PRIVIND
STUDIUL
REZULTATE
ATEPTATE
n literatura de specialitate exist definiii mai mult sau mai puin formalizate ale acestui obiect.
Raport prezentarea informaiilor referitoare la o anumit tem efectuat, de obicei, ntr-o
form tiprit. Programele de baze de date pot oferi funcii speciale de creare i generare de
rapoarte [Microsoft99].
Raportul este o extragere a datelor din baza de date. El poate fi tiprit pe ecranul calculatorului
sau pe orice alt dispozitiv de ieire [Kroenke92].
Pentru orice raport avem dou momente importante:
crearea machetei raportului (simplist crearea raportului);
exploatarea acestei machete (vizualizarea raportului).
Raportul reprezint un ansamblu de informaii obtinute pe baza datelor din anumite tabele,
informaii ce urmeaz s fie afiate pe ecran sau redate la imprimant.
Informaiile tiprite pot fi grupate, filtrate, sortate ; se pot obine rezultate sintetice cum ar fi
subtotalurile i totalurile.
Spre deosebire de form, raportul are specific faptul c informaia, culeas din tabele, este
prezentat utilizatorului, el nefiind conceput pentru actualizri de date i nefiind aplicaie.
Asemeni formularelor, rapoartele au drept surs de date un tabel sau o cerere.
Coninutul lor poate fi vizualizat pe ecran, sau se poate lista la imprimant. Cu Microsoft Access
se pot realiza obiecte de tip raport utiliznd opiunea CREATE din meniul principal i apoi
alegerea uneia din variantele afiate n fereastra REPORTS:
48
49
50
Report Footer (Subsolul raportului). Coninutul acestei seciuni se va imprima o singur dat - la
finalul raportului. Va conine informaii de rezumat, pentru ntregul raport i totaluri - la nivel de
raport.
In imaginea de mai sus este prezentat un raport n modul de vizualizare Design View cu cele trei
seciuni importante.
Proprieti ale benzilor i raportului
1. Fiecare band va afia n raportul final un numr de instane ale sale n funcie de tipul de
band.
2. Fiecare zon sau band a raportului are n fereastra constructorului de rapoarte asociat o bar
prin care se delimiteaz de alte zone. Fiecare bar sau zon a raportului are anumite
proprieti, care pot fi modificate de utilizator. Pentru a se seta aceste proprieti se face un
dublu clic pe bara delimitatoare a benzii dorite, avnd ca efect afiarea pe ecran a unei ferestre
cu titlul benzii respective.
3. Toate ferestrele aferente unei benzi au aceeai structur, doar denumirea acestora difer n
funcie de tipul benzii la care se refer. In cadrul ferestrei aferent unei benzi se poate seta
nlimea benzii prin intermediul unui obiect de tip Spinner cu denumirea Hight sau se poate
seta aceeai dimensiune pentru toate instanele unei benzi tot prin intermediul unui Spinner cu
numele Constant band height.
4. De asemenea, la afiarea unei instane a unei benzi se pot specifica anumite prelucrri pentru
dou evenimente aferente unei instane, astfel:
a) nainte de afiarea fiecrei instane a benzii se poate evalua o expresie introdus n caseta
On Entry. Dac expresia este mai complex, poate fi construit i specific n fereastra
Expression Build care se deschide prin selectarea butonului cu trei puncte din dreapta
casetei On entry.
b) dup fiecare afiare a instanei unei benzi se poate evalua o expresie introdus n caseta On
exit sau n fereastra Expression Build.
n afar de proprietile aferente benzilor, un rol important l au proprietile aferente raportului n
ansamblul su, care se refer la:
- mrimea paginii pe care se va afia raportul
- orientarea paginii
51
In a doua pagin a expertului, se precizeaz dac se adaug niveluri de grupare. Pentru a adauga
un nivel de grupare, se selecteaz lista de cmpuri i apoi se execut clic pe butonul <. Dup
adugarea grupurilor se execut clic pe butonul Next. Dac nu se dorete adugarea de grupuri, se
execut direct clic pe butonul Next. Se pot aduga mai multe niveluri de grupare.
Gruparea datelor este operaia cunoscut de la interogrile totalizatoare i presupune cutarea
tuturor nregistrrilor (rndurilor) din tabela surs care conin aceeai valoare pentru cmpul
stabilit drept criteriu de grupare i realizarea afirii nregistrrilor consecutiv.
A se vedea imaginea de mai jos:
52
In a patra pagina a expertului se stabilete macheta raportului (opiunile din zona Layout ) i
orientarea textului tiprit (opiunile din zona Orientation). Pentru a continua crearea raportului, se
executa clic pe butonul Next.
Not - Dac exist cmpuri numerice n aceast fereastr apare i un buton numit Summary Options care
permite realizarea unor operaii totalizatoare (agregare) din cadrul grupului, pentru care se vor
calcula totaluri ,subtotaluri , AVG, MAX, MIN.
53
Se executa clic pe butonul Finish . In funcie de opiunea aleas n ultima pagina a expertului, raportul
va fi afiat n modul Preview sau n modul Design . In figura de mai jos se observ modul
Preview:
54
Pentru gruparea datelor se selecteaz opiunea Data Grouping din meniul vertical Report sau
executnd un click cu butonul dreapta al mouse-ului apare meniul contextual din care se poate
selecta opiunea Data Grouping .Indiferent de modul de lansare, apare chenarul corespunztor.
Dup cum se poate constata, n chenarul Data Grouping apare o list simpl cu denumirea Group
expressions. n fiecare linie a listei se poate introduce cte o expresie de grupare. n cazul nostru
am introdus linia de studii, secia, anul i urma s introducem grupa. Pentru modificarea acestei
ordini se poate proceda cum se procedeaz n mod uzual cu schimbarea ordinii elementelor dintr-o
list i anume: sau se trage (operaie de drag) cu butonul stnga al mouse-ului apsat de butonul
din stnga al opiunii (cel cu sgeat dubl), n sus sau n jos mutnd opiunea, sau se execut un
click cu butonul din stnga al mouse-ului i se tasteaz Ctrl+PgUP pentru a muta opiunea cu o
poziie n sus, respectiv Ctrl+PgDn pentru a o aduce cu o poziie n jos.
Pentru introducerea expresiei de grupare se poate fie tasta direct valoarea expresiei, fie se poate
executa un click pe butonul din dreapta liniei respective, operaie care declaneaz apariia
ferestrei constructorului de expresii cu care se poate construi expresia de grupare.
Pentru tergerea unei expresii de grupare se execut un click pe linia de ters i se execut cu click
pe declanatorul Delete. Opiunea curent va fi tears, iar opiunile urmtoare vor avansa cu cte
o poziie.
Controale i Proprieti n rapoarte
Toate informaiile afiate n cadrul unui raport sunt specificate prin intermediul unor obiecte.
Aceste obiecte se pot include n cadrul unui raport, prin preluarea lor din bara Report Controls,
care se afieaz pe ecran odat cu lansarea constructorului de rapoarte.
Pentru includerea unui obiect n raport, se selecteaz obiectul dorit din bara Report Controls i se
execut un click pe suprafaa raportului, acolo unde dorim s apar obiectul respectiv.
Dup includerea n raport a unor controale, n funcie de compexitatea acestuia, utilizatorul poate
modifica proprietile oricrui control, prin efectuarea unui dublu clic pe controlul respectiv.
Un raport creat n modul Report Wizard poate fi modificat oricnd n modul de lucru Report
Design prin intermediul unor controale: asociate, neasociate sau calculate.
Controlul asociat ( bound control) se refer la cmpurile de date dintr-un tabel sau interogare.
Controlul neasociat (unbound control)se refer la etichetele sau casetele text introduse de
utilizator.
Controlul calculat (calculate control) cuprinde toate calculele din raport cum sunt: subtotaluri,
totaluri generale, procente, medii aritmetice, etc.
Controalele sunt aceleai cu cele de la formulare
Controlul Text Box - afieaz coninutul unui cmp specificat din
nregistrarea actual a unui tabel sau a unei interogri dintr-o baz de date, sub forma
unei cutii (caset) de text.
Controlul Label este utilizat de regul pentru afiarea anumitor texte
statice;
55
Controlul linie (Line) permite desenarea diferitelor linii pe o form, ntro mare varietate de stiluri. Stilul, grosimea i culoarea unei linii pot fi
setate folosind proprietile Border Style, Border Width i Border Color.
b. Controlul dreptunghi (Rectangle) permite desenarea unui dreptunghi sau a
unui ptrat. Conturului acestor forme geometrice i pot fixa stilul,
grosimea i culoarea asemeni unei linii.
c. Controlul imagine (Image) permite afiarea pe forma utilizatorului a unei
imagini n mai multe formate
d. Controlul Chart permite realizarea graficelor, pe baza datelor provenite
din tabele sau interogri.
Sub-Rapoarte
Controlul Subform/Subreport
introduce un subraport n raportul principal numai n
raportele care se realizeaz pentru
tabele ce au ntre ele relaie de tip unu- la- mai muli.
REZUMAT
Teste
de Ce reprezint un raport ?
autoevaluare
Ce obiecte poate include un raport ?
[Sitar_2010], www.cigase.ro
56