Sunteți pe pagina 1din 86

NCHIDE APLICAIA

BAZE DE
DE DATE
DATE
BAZE
ACCESS
ACCESS
PROF.MUREAN CARMEN
CARMEN
PROF.MUREAN

CUPRINS
CUPRINS
CONCEPTUL DE BAZE DE DATE-SGBD
LUCRUL CU TABELE N ACCESS
CREAREA FORMULARELOR
CREAREA INTEROGRILOR
CREAREA RAPOARTELOR
CREAREA MODULELOR
CREAREA MACRO

CONCEPTUL
CONCEPTUL DE
DE BAZ
BAZ DE
DE DATE
DATE
Organizarea datelor n vederea prelucrrii pe
calculator este o activitate de mare importan .
Din punct de vedere al prelucrrii pe calculator,
datele sunt definite de trei elemente:
Un identificator (numele atribuit)
Atribut (tipul de dat pe care-l conine)
Valoare (valoarea propriu-zis).

Informaia este rezultatul prelucrrii datelor.


Organizarea datelor implic:

Organizarea datelor n memoria intern,care cuprinde structura


de tip list,coad i stiv.
Organizarea datelor pe memoria extern, care cuprinde
structurile de tip fiier i baze de date.
3

CONCEPTUL
CONCEPTUL DE
DE BAZ
BAZ DE
DE DATE
DATE
Baza de date colecie de date aflate n
interdependen , mpreun cu descrierea datelor i a
relaiilor dintre ele, fiind controlabil la nivel central.
Sistemul de gestiune a BD(SGBD) interfa ntre
utilizatori i BD,care permite crearea actualizarea i
consultarea acesteia. Instrument de asamblare,
codificare, protecie i regsire a BD.
Programul Access este un SGBD care aduce pe
suprafaa de lucru un numr mare de faciliti pentru
prelucrarea bazelor de date relaionale client/server.
4

CONCEPTE
CONCEPTE ALE
ALE REALIZRII
REALIZRII UNEI
UNEI
BAZE
BAZE DE
DE DATE
DATE
Nivelul extern - corespunztor utilizatorului,
care i exprim cerinele informaionale prin
aa numitele scheme externe.
Nivelul conceptual - aferent administratorului
bazei de date , care se concretizeaz n schema
conceptual.
Nivelul intern - corespunztor programatorului,
care realizeaz reprezentarea datelor pe
suportul fizic.
5

NIVELUL
NIVELUL CONCEPTUAL
CONCEPTUAL :: ENTITATE
ENTITATE ,,
ATRIBUT,CORESPONDEN
ATRIBUT,CORESPONDEN
Entitate model de obiect identificat n lumea real.
Atribut o proprietate a unei entiti sau a unei
corespondene caracterizat printr-un nume i un tip.
Domeniu mulimea valorilor unui atribut.
nregistrare mulimea format din cte o valoare
pentru fiecare atribut al entitii.
Identificatorul atributului atributul sau grup de
atribute care caracterizeaz n mod unic o
nregistrare.
Coresponden legtur logic ntre dou sau mai
multe valori de entiti.
6

FUNCII
FUNCII ALE
ALE SGBD
SGBD
ORGANIZAREA DATELOR:

crearea i manevrarea tabelelor care conin date ntr-un


format tabelar convenabil (linii i coloane)- Datasheet

LEGAREA TABELELOR I EXTRAGEREA DATELOR


legarea mai multor tabele prin relaiile ntre date (prin
intermediul Interogrilor),n vederea crerii unor tabele
temporare (Recordset) , stocate n memoria calculatorului
sau n fiiere memorate pe disc,care conin datele alese de
programator.

FUNCII
FUNCII ALE
ALE SGBD
SGBD
INTRODUCEREA I EDITAREA DATELOR:

Crearea i implementarea unor Formulare pentru


introducerea, afiarea i editarea datelor,ca alternativ la
prezentarea tabelar.

PREZENTAREA DATELOR:

Crearea de Rapoarte n care s poat fi sintetizate


informaiile din obiectele Recordset pe care le putei vedea ,
tiprii i publica pe Internet sau Intranet. Aceste rapoarte
reprezint scopul final al unei aplicaii SGBD!

SCHEMA
SCHEMA LOGIC
LOGIC A
A COLECIEI
COLECIEI DE
DE
OBIECTE
OBIECTE ACCESS
ACCESS

TABEL1

TABEL2

TABEL3

INTEROGARE

FORMULAR

RAPORT

OBIECTELE
OBIECTELE ACCESS
ACCESS
Table-obiect definit de utilizator
n care sunt stocate datele
primare.
Form-obiect care permite
introducerea datelor, afiarea
acestora sau controlul ntregii
aplicaii.
Query-obiect care permite
vizualizarea informaiilor
obinute prin prelucrarea datelor
din unul sau mai multe tabele i /
sau interogri.
Report-obiect care permite
formatarea i tiprirea
informaiilor obinute n urma
consultrii bazei de date sub
form de document.

Pages-obiect care include un


fiier HTML i alte fiiere suport
n vederea furnizrii accesului la
date prin intermediul browserului Internet.
Macro-obiect care conine o
definiie structurat a uneia sau
mai multor aciuni pe care
Access le realizeaz ca rspuns
la un eveniment.
Module-obiect care conine
proceduri definite de utilizator
i scrise n limbajul de
programare Visual Basic.

10

CREAREA
CREAREA TABELELOR
TABELELOR
MODUL DE
REALIZARE A
STRUCTURII
TABELEI

CHEIA
TABELEI

AUTONUMBER
SETARE CMP CHEIE

PROPRIETILE
TABELEI

11

CREAREA
CREAREA TABELELOR
TABELELOR
NUMELE
CMPULUI

TIPUL DE DATE
CONINUT DE CMP
DIMENSIUNEA CMPULUI.
SETRI SUPLIMENTARE RELATIV
LA CMPUL DEFINIT.

CMP SELECTAT PE
BAZA UNEI
INTEROGRI DIN
ALT TABEL- CLASA.

SETRI SPECIFICE
CONINUTULUI
CMPULUI

12

STABILIREA
STABILIREA INDECIROL
INDECIROL I
I A
A CHEII
CHEII
TABELULUI
TABELULUI
STABILIREA MODULUI DE
CUTARE ,DE SORTARE N TABEL
CU AJUTORUL CMPURILOR
INDEXATE.

CHEIA PRIMAR A
TABELEI CARE TREBUIE
S CONIN
NREGISTRRI UNICE!

13

CREAREA
CREAREA LEGTURILOR
LEGTURILOR NTRE
NTRE
TABELE
TABELE
CASET DE DIALOG

DESCHIDEREA
INTERFEEI PENTRU
CREAREA
LEGTURILOR.

DESCHIS PRIN
MENIUL RAPID
PENTRU ADUGAREA
TABELELOR N
SUPRAFAA
RELAIILOR.

14

CREAREA
CREAREA LEGTURILOR
LEGTURILOR NTRE
NTRE
TABELE
TABELE
NUMELE CMPULUI
CHEIE PRIMAR SAU
CHEIE EXTERN CARE
CREEAZ LEGTURA.

LEGTUR DE
TIP UNU LA MAI
MULTE.

NUMELE
TABELEI

15

CREAREA
CREAREA FORMULARELOR
FORMULARELOR
ALEGEREA
TABELELOR SAU
INTEROGRILOR DIN
CARE SE PREIAU
CMPURILE
NECESARE.

CMPURILE
TABELEI/INTEROGRII
SELECTATE.

16

CREAREA
CREAREA FORMULARELOR
FORMULARELOR
PRELUAREA
CMPURILOR CARE
VOR FI PREZENTE N
FORMULAR.

17

CREAREA
CREAREA FORMULARELOR
FORMULARELOR
CMPURILE
DIN
FORMULAR.

CMPURILE DIN
FORMULARUL
SUBORDONAT
(SUBFORM).

TABELELE CARE
AU CONIN
CMPURILE
CARE VOR
APREA N
FORMULAR. SE
VA ALEGE
MODUL DE
PREZENTARE A
DATELOR.
18

CREAREA
CREAREA FORMULARELOR
FORMULARELOR

MODUL DE
AFIARE A
DATELOR N
FORMULAR.

19

CREAREA
CREAREA FORMULARELOR
FORMULARELOR
FORMATUL
GRAFIC.

20

CREAREA
CREAREA FORMULARELOR
FORMULARELOR
NUMELE
FORMULARULUI.

NUMELE SUBFORMULARULUI.

21

FORMULARUL
FORMULARUL I
I SUBFORMULARUL
SUBFORMULARUL
INCLUS
INCLUS N
N FORMA
FORMA DISPONIBIL
DISPONIBIL
UTILIZATORULUI
UTILIZATORULUI
FORMULARUL

SUBFORMULAR

22

CONTROALE
CONTROALE I
I FUNCIILE
FUNCIILE LOR
LOR
INSTRUMENT NUME
SELECT OBJECT
(indicator)
CONTROL WIZARD

FUNCIE
Pointer-ul de selecie al obiectelor.
Activeaz/dezactiveaz programele
Control Wizard

LABEL
(etichet)
TEXT

Afieaz texte fixe ce includ numele unui


control de tip text sau instruciuni.
Caset de tip text ,editabil.

BOX
OPTION
GROUP
TOOGLE
BUTTON

Grup de controale de tip opiune. Din


grup doar una poate fi selectat.

Buton cu dou stri : ON(selectat) care

23
nseamn DA (-1) i OFF(deselectat)
care

CONTROALE
CONTROALE I
I FUNCIILE
FUNCIILE LOR
LOR
INSTRUMENT
NUME

FUNCIE

OPTION

Buton opiune folosit pe formular cu alte butoane

BUTTON

pentru a determina care din aciuni s aib loc


atunci cnd este selectat.

CHECK
BOX
COMBO
BOX

Caset de validare care,atunci cnd este selectat


comut n starea ON(-1).

Caset combinat.Caset de text cu o list

derulant. n caseta de text se poate edita i


gsete elementul n list.

LIST

Caset list. Conine o list de valori al unui cmp

BOX

din baza de date.

COMMAND

Buton de comand ,folosit pentru 24


a executa coduri

CONTROALE
CONTROALE I
I FUNCIILE
FUNCIILE LOR
LOR
INSTRUMENT
NUME

FUNCIE

UNBOUND

Obiect neasociat bazei de date care include un

OBJECT

obiect OLE: orice obiect editat ntr-un program

FRAME

Microsoft Office.

BOUND

Obiect asociat bazei de date i care conine un

OBJECT

obiect OLE : imagine,grafic,sunete,filme,etc.

FRAME
PAGE
BREAK

Delimitator de pagin.Determin imprimanta s


trac la o nou pagin.Nu este vizibil n
formular.

25

CONTROALE
CONTROALE I
I FUNCIILE
FUNCIILE LOR
LOR
INSTRUMENT
NUME

TAB
CONTROL

FUNCIE
Schimbtor de pagin.Creaz o serie de pagini care
pot fi schimbate.Fiecare pagin conine mai multe
controale.Se utilizeaz pentru formulare prea
ncrcate.

SUBFORM/

Introduce n formular , sub form de subformular

SUBREPORT sau raport ,un formular sau raport efectuat anterior.


LINE Creaz o linie dreapt pe care o putem redimensiona
i muta.
RECTANGLE

Creaz un dreptunghi pe care l 26


putem configura cu
efecte speciale n moduri diferite.

TIPURI
TIPURI DE
DE DATE
DATE
DATE

TIPUL DATELOR
TEXT

ALFANUMERICE

DESCRIERE
Cel mult 255 caractere.Valoarea
prestabilit la 50.
Cel mult 64.000 caractere. Nu poate

MEMO

fi cheie primar i nu putem indexa


dup el.
Sunt disponibile mai multe

NUMBER

subtipuri.Se alege formatul


dorit(nr.zecimale,etc.)

NUMERICE

Tip Long Integer ce se


AUTONUMBER

autoincrementeaz.Nu se poate
modifica cnd exist nregistrri.

YES/NO

Tip boolean:Yes=-1,No=0.Nu poate fi


cheie dar poate fi indexat.
27

TIPURI
TIPURI DE
DE DATE
DATE
DATE

TIPUL

DESCRIERE

DATELOR
NUMERICE

Format special,fix ,cu patru


CURENCY

zecimale,proiectat s exclud erorile de


rotunjire n calcule financiare.

DATE
CALENDARISTICE

Data calendaristic i ora sunt stocate


DATE/TIME

ntr-un format special fix.Se selecteaz


formatul dorit.
Include elemente grafice,fiiere cu semnale

OBIECTE MARI

OBJECT OLE

audio i alte tipuri de date create de o


aplicaie OLE server.Nu poate fi cheie i
nici index.

ADRESE INTERNET

HYPERLINK

INFORMAII

LOOKUP

LEGATE

WIZARD

Adres a unei pagini Web.Format din trei


pri: textul afiat,adresa i subadresa.
Creaz cmpuri care permit utilizatorului
28

s aleag valori din cadrul altor tabele

SUBTIPURI
SUBTIPURI DE
DE DATE
DATE NUMERICE
NUMERICE
MRIMEA CMPULUI

ZECIMALE

INTERVALUL VALORIC

OCTEI

BYTE

DE LA 0 LA 256

INTEGER

DE LA -32.768 LA 32.768

LONG INTEGER

SINGLE

DOUBLE

15

DE LA -2.147.483.648 LA
2.147.483.648
DE LA 3,4*1038 LA + 3,4*1038
DE LA - 1,797*10308 LA
+1,797*10308

4
4
8

REPLICATION ID

IDENTIFICATOR GLOBAL UNIC

16

DECIMAL

DE LA - 1028 LA + 1028

16

29

SETRI
SETRI CARACTERISTICE
CARACTERISTICE
CMPULUI
CMPULUI
FORMAT- permite alegerea unor formate prestabilite sau
crearea unui format personalizat pentru tipul de dat ales.
DECIMAL PLACES -stabilete numrul de zecimale ntre 0-15.
INPUT MASK -se aplic tipului text i dat calendaristic un
format personalizat de afiare. Ex.Tel.(0262)655-224.
CAPTION -nume atribuit cmpului la vizualizare(diferit de cel
intern,deja atribuit).
DEFAULT VALUE -valoarea inclus implicit ,nainte de
actualizarea cmpului(cnd majoritatea valorilor vor fi
aceasta.)

30

SETRI
SETRI CARACTERISTICE
CARACTERISTICE
CMPULUI
CMPULUI
VALIDATION RULE - regula de validare testat pe baza
criteriului definit sub forma unei expresii. Acestea folosesc:

Operatori: = ,- ,*, /, Mod ,< ,> , , ,AND,OR ,BETWEEN ,IN ,IS NULL.
Indentificatori: ]n paranteze drepte [ ].
Funcii.
Constante.

VALIDATION TEXT -mesajul care apare n cazul nerespectrii


regulii de validare.
REQUIRED -se stabilete la yes dac este strict necesar
completarea acestui cmp.
INDEXED - se alege opiunea pentru un index neduplicat
(primar) sau duplicat . Cmpul indexat este util n operaiile de
cutare n baza de date.

31

INTEROGRILE
INTEROGRILE N
N ACCESS
ACCESS
Interogarea bazei de date nseamn regsirea i
extragerea datelor stocate n aceasta , ntr-un mod
util scopului urmrit.
Rezultatul unei interogri reprezint o foaie de
rspuns dinamic, numit Dynaset, care nu mai exist
fizic dup nchiderea interogrii.
Crearea Query se poate n urmtoarele moduri:
Crearea pas cu pas n modul Design view (fereastr de
proiectare)
Utiliznd instrumentul Wizard
Exprimarea cererii n limbaj SQL
Crearea unui filtru i salvarea acestuia ca cerere de interogare.
32

TIPURI
TIPURI DE
DE INTEROGRI
INTEROGRI
Interogri de tip Select care afieaz datele din mai
multe tabele i nu permite actualizarea datelor.
Constituie o surs de date pentru un raport sau formular.

Interogri de tip Crosstab pentru sintetizarea datelor


sub forma unei foi de calcul de tip Excel.
Interogri de tip Parameter care folosesc aceeai
interogare de mai multe ori cu parametrii diferii.

33

TIPURI
TIPURI DE
DE INTEROGRI
INTEROGRI
Interogri de tip Action , acestea avnd efect asupra
datelor din baza de date:

Interogri de tip Append permit adugarea de noi nregistrri


ntr-o tabel existent.
Interogri de tip Delete permit tergerea unor nregistrri
dintr-o tabel ,pe Interogare de tip Make Table -creerea de noi
tabele pe baza celor existente.
Interogare de tip Update modificarea(actualizarea) datelor
existente fr crearea de noi nregistrri sau tabele.
seama unor criterii.

34

CREAREA
CREAREA INTEROGRILOR
INTEROGRILOR
Paii crerii unei interogri sunt:

Alegerea tipului de interogare;


Alegerea tabelelor / interogrilor care vor constitui sursa de
date a interogrii (n partea superioar a ferestrei de lucru);
Selectarea cmpurilor (mutarea prin glisare n grila de
proiectare numit gril QBE adic Query By Exemples n
partea inferioar a ferestrei de lucru) i eventual stabilirea
unor criterii de selecie.
Ordonarea datelor (Sort) cresctor / descresctor. Dac exist
mai multe cmpuri ordonate se aplic ordonarea ncepnd
din stnga.
35

CREAREA
CREAREA INTEROGRILOR
INTEROGRILOR
Crearea unor cmpuri calculate:

Se selecteaz coloana i se acceseaz comanda de meniu


Totals ()
Se selecteaz Expresion n linia de Totals
n linia Field se introduce expresia sub forma:
Nume rezultat : [Cmp1] operator aritmetic [Cmp2]

Realizarea unor operaii de calcul asupra tuturor


nregistrrilor :
n linia Totals , unde apare Group By ,se alege tipul de
operaie dorit

36

OPERAII
OPERAII PREDEFINITE
PREDEFINITE DE
DE ACCESS
ACCESS
OPERAIA
SUM

FUNCIA
Suma valorilor unui
cmp

TIP CMP
Numeric,
Autonumber , Data,
Logic
Numeric,

AVG

Media aritmetic

Autonumber , Data,
Logic
Numeric,

MIN

Valoarea minim

Autonumber , Data,
Logic, Text
37 Numeric,

OPERAII
OPERAII PREDEFINITE
PREDEFINITE DE
DE ACCESS
ACCESS
OPERAIA
COUNT

STDEV

FIRST
LAST

FUNCIA

TIP CMP

Numrul de valori

Toate tipurile

dintr-un cmp
Variana valorilor
unui cmp
Prima valoare din
cmp
Ultima valoare din
cmp

Numeric,
Autonumber
,Data,Logic
Toate tipurile
Toate tipurile
38

PAI
PAI PENTRU
PENTRU INTEROGARE
INTEROGARE

39

40

41

LIMBAJUL
LIMBAJUL SQL
SQL PENTRU
PENTRU
INTEROGARE
INTEROGARE DE
DE CALCUL
CALCUL AL
AL
VRSTEI
VRSTEI DUP
DUP DATA
DATA DE
DE NATERE
NATERE
SELECT elevi.ID_elev, elevi.nume, elevi.prenume, Year(Now())Year([elevi]![data_n]) AS varsta
FROM liceu INNER JOIN (judet INNER JOIN (clase INNER JOIN elevi ON
clase.ID_cls = elevi.clasa) ON judet.ID_jud = elevi.judet) ON
liceu.ID_liceu = elevi.liceu;

SELECT elevi.ID_elev, elevi.nume, elevi.prenume, Year(Now())Year([elevi]![data_n]) AS varsta


FROM liceu INNER JOIN (judet INNER JOIN (clase INNER JOIN
elevi ON clase.ID_cls = elevi.clasa) ON judet.ID_jud =
elevi.judet) ON liceu.ID_liceu = elevi.liceu
WHERE (((elevi.nume)=[NUME:]) AND
((elevi.prenume)=[PRENUME:]));
42

43

TIP DE INTEROGARE

CMPURI SELECTATE
SAU CALCULATE
SURSA DE
DATE

EVENTUALE OPERAII
ASUPRA CMPURILOR
MOD DE SORTARE
AFIAREA SAU NU N
DYNASET

APARE N
REZULTATUL
INTEROGRII

CRITERII DE
SELECIE

44

INTEROGARE
INTEROGARE DE
DE SELECIE
SELECIE
N
N LIMBAJ
LIMBAJ SQL
SQL
LISTA DE CMPURI
SELECTATE
TABELA / TABELELE DIN
CARE PROVIN CMPURILE

CONDIIE DE
SELECIE
GRUPAREA SELECIEI DUP
ANUMITE CMPURI
45

INTEROGARE
INTEROGARE DE
DE TIP
TIP CROSSTAB
CROSSTAB
Sunt interogri care au ca rezultat o reprezentare
tabelar a datelor identic cu cea din Excel.
Este util atunci cnd se dorete o centralizare a
datelor , de exemplu numrarea nregistrrilor unei
grupe de date , nsumarea unor date pe grupe sau
dup anumite criterii.
Schema unei astfel de interogri este:
Cmp coloan - apare ca nume de cmp
Cmpuri rnd apar ca nregistrri
Cmp calculat apare ca valoare calculat a nregistrrilor.
46

INTEROGARE
INTEROGARE DE
DE TIP
TIP CROSSTAB
CROSSTAB

TITLU DE
COLOAN
NREGISTRARE

CMP
CALCULAT

47

CRITERIU CARE
NU APARE N
TABEL

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Select:

SELECT INTRARE_EL.nume, INTRARE_EL.pren,


INTRARE_EL.datan, INTRARE_EL.adresa,
DATE_EX.media_ex
FROM INTRARE_EL INNER JOIN DATE_EX ON
INTRARE_EL.nrinr = DATE_EX.nrinr
WHERE (((DATE_EX.rezultat)=True))
ORDER BY DATE_EX.media_ex DESC;

48

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Crosstabe:

TRANSFORM Sum(cit_tot.nr) AS SumOfnr1


SELECT cit_tot.luna AS Expr1
FROM cit_tot
GROUP BY cit_tot.luna
PIVOT cit_tot.varsta ;

Interogare de tip Union :

SELECT distinct fmasc.luna, fmasc.nr, fmasc.sex FROM


fmasc
UNION select distinct ffem.luna,ffem.nr,ffem.sex
FROM ffem;
UNION select distinct imp_luna.luna , imp_luna.nr ,
imp_luna.total from imp_luna ;
49

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Select utilizat pentru crearea unor
cmpuri calculate i avnd i un parametru :
SELECT Count(carti.cod_c) AS CountOfcod_c, carti.autor,
carti.titlu, carti.an_ap
FROM carti
GROUP BY carti.autor, carti.titlu, carti.an_ap
HAVING (((carti.autor)=["AUTOR:"]));

50

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Make Table:

SELECT INTRARE_EL.nume, INTRARE_EL.pren,


INTRARE_EL.datan, INTRARE_EL.adresa,
DATE_EX.media_ex, INTRARE_EL.sex INTO ADM_2005
FROM INTRARE_EL INNER JOIN DATE_EX ON
INTRARE_EL.nrinr = DATE_EX.nrinr
WHERE (((DATE_EX.rezultat)=True))
ORDER BY DATE_EX.media_ex DESC ;

51

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Append:

INSERT INTO DATE_EL ( nume, pren, datan, adresa, anul )


SELECT INTRARE_EL.nume, INTRARE_EL.pren,
INTRARE_EL.datan, INTRARE_EL.adresa, DATE_EX.anul
FROM INTRARE_EL INNER JOIN DATE_EX ON
INTRARE_EL.nrinr = DATE_EX.nrinr
WHERE (((DATE_EX.rezultat)=True))
ORDER BY DATE_EX.media_ex DESC ;

52

LIMBAJUL
LIMBAJUL SQL
SQL N
N INTEROGRI
INTEROGRI
Interogare de tip Delete:

DELETE INTRARE_EL.*, [an_prec] AS Expr1


FROM INTRARE_EL
WHERE ((([an_prec])=Year(Date())-1)) ;

Interogare de tip Parameter:

SELECT date_olimp.nume, date_olimp.clasa,


date_olimp.total_p
FROM date_olimp
WHERE (((date_olimp.total_p) <["PUNCTAJ MINIM:"])) ;

53

DESCHIDEREA
DESCHIDEREA WIZARD-ului
WIZARD-ului PENTRU
PENTRU
CREARE
CREARE DE
DE RAPOARTE
RAPOARTE
UTILITARUL
WIZARD

ALEGEREA INTEROGRII
CARE SERVETE CA
SURS DE DATE

54

ALEGEREA
ALEGEREA SURSEI
SURSEI DE
DE DATE
DATE
ALEGEREA CMPURILOR
CU DATELE DORITE

INTEROGARE
A SELECTAT

55

PRECIZAREA
PRECIZAREA MODULUI
MODULUI DE
DE VIZUALIZARE
VIZUALIZARE

PRECIZAREA
MODULUI DE
VIZUALIZARE

SE DORETE
GRUPAREA DUP
CMPUL ANUL
56

GRUPRI
GRUPRI I
I SORTRI
SORTRI

NIVELUL DE
GRUPARE

MODUL DE SORTARE
A DATELOR
57

SORTARE
SORTARE I
I TOTALIZRI
TOTALIZRI DE
DE RAPORT
RAPORT

SORTARE DESCRESCTOARE PRIN


CLIC PE BUTONUL ASCENDING

CENTRALIZRI N
SUBSOLUL RAPORTULUI
58

MODUL
MODUL DE
DE PREZENTARE
PREZENTARE N
N CADRUL
CADRUL
PAGINII
PAGINII

MOD DE ARANJARE
N PAGIN

ALEGEREA
AUTOFORMATULUI
PERSONALIZAT
ANTERIOR
59

TITLUL
TITLUL RAPORTULUI
RAPORTULUI

TITLUL
RAPORTULUI

VIZUALIZARE
NORMAL
VIZUALIZARE N MOD
DE PROIECTARE

60

PEGINA
PEGINA REZULTAT
REZULTAT FR
FR AJUSTARE
AJUSTARE

61

RAPORTUL
RAPORTUL PRELUCRAT
PRELUCRAT
PAG.1
PAG.1

62

RAPORTUL
RAPORTUL PRELUCRAT
PRELUCRAT
PAG.2
PAG.2

63

MODULE.
MODULE. NOIUNI
NOIUNI GENERALE
GENERALE
Limbajul Visual Basic este instrumentul de
programare pentru aplicaiile informatice dezvoltate
cu ajutorul Microsoft Office 2002-2003.
Limbajul VBA este limbaj orientat pe obiecte i
evenimente.
Obiectele Access sunt caracterizate prin metode i
proprieti.
Metoda acioneaz asupra strii obiectului.
Proprietatea indic starea obiectului.
Exemplu: Obiect.Visible=True

64

ACCESAREA
ACCESAREA OBIECTELOR
OBIECTELOR ACCESS
ACCESS
Nume obiect access![Nume obiect].Proprietate

Parantezele sunt necesare dac numele conine spaii

Nume obiect access(Nume obiect).Metod


Exemplu:

Forms![formular elevi]![cod elev].SetFocus


Forms![formular elevi]![Buton iesire].Enabled=True
Me.rezultat.Value=-1 unde Me reprezint formularul aflat
pe ecran i n care avem controlul de tip ChekBox cu numele
rezultat a crei valoare o setm cu adevrat ( -1 ).

65

AFIAREA
AFIAREA I
I INTRODUCERE
INTRODUCERE
DATELOR
DATELOR
InputBox(Mesaj,Titlu,Val_implicit,X,Y,Fiier
Help,Context) afieaz o caset de dialog pentru
introducere de date.

Mesaj-ir de caractere(max.1024) cu trecerea la alt rnd prin


Chr(13).
Titlu ir de caractere care reprezint titlul casetei
Val_implicit sapaiul pentru introducerea datei
X coordonata x raportat la marginea stnga sus
Y - coordonata y raportat la marginea stnga sus
Fiier Help ir de caractere care indic numele fiierului
Context numr care indic locul fiierului.
66

AFIAREA
AFIAREA I
I INTRODUCERE
INTRODUCERE
DATELOR
DATELOR
MsgBox (mesaj, butoane, titlu, fiier
Help, context)

Butoane:
vbOkOnly 0
vbOkCancel 1
vbAbortRetryIgnor2
vbYesNoCancel 3
vbYesNo 4
vbRetryCancel 5

vbCritical 16 afieaz
?
vbQuestion 32
vbExclamation 48 !
vbInformation 64

67

MODULE
MODULE
Modulele sunt obiecte din Access care permit scrierea
de rutine n limbaj VBA Visual Basic pentru Access.
Modulele sunt formate din :
Declaraii de variabile
Tipuri de date utilizator
Proceduri
Funcii

Tipurile de date sunt:

Date standard
Date definite de utilizator
68

TIPURI
TIPURI DE
DE DATE
DATE STANDARD
STANDARD
TIP DE DAT

CARACTERISTICI

DOUBLE

CU VIRGUL MOBIL PE 64 BII

SINGLE

CU VIRGUL MOBIL PE 32 BII

CURRENCY

CU PATRU ZECIMALE PE 64 BII

BYTE

NUMERE NATURALE PE 8 BII

INTEGER

NUMERE NTREGI PE 16 BII

LONG

NUMERE NTREGI PE 32 BII

BOOLEAN

LOGICE: TRUE (-1) I FALSE (0)

DATE
STRING
VARIANT

TIP DAT CALENDARISTIC


( NTRE #)
TIP CARACTER (NTRE )
TIP GENERIC 69
CARACTER
GENERAL

DECLARAREA
DECLARAREA VARIABELOR
VARIABELOR
VARIABILE GLOBALE valabile n toate modulele :
PUBLIC variabila As tip_variabil
GLOBAL variabila As tip_variabil

VARIABILE LOCALE valabile doar n modulul n


care au fost definite :
DIM variabila As tip_dat
PRIVATE variabila As tip_dat
SET variabila_obiect = expresie_obiect

VARIABILE DINAMICE:

DE TIP VECTOR : Dim var_vector(10) As tip_dat


DE TIP MATRICE :Dim var_matrice(10,10) As tip_dat
70

DATE
DATE DEFINITE
DEFINITE DE
DE UTILIZATOR
UTILIZATOR
Cuprinde date de tipuri diferite:
[PRIVATE ]/ [PUBLIC] TYPE nume_tip_dat
Element1 As tip_dat
Element2 As tip_dat
Element3 As tip_dat
......
Elementn As tip_dat

END TYPE
Accesul la o astfel de dat se poate face global sau
perticular: nume_tip_dat.Element1
71

OPERATORI
OPERATORI MATEMATICI
MATEMATICI VBA
VBA
OPERATORI

OPERAIA REALIZAT

RIDICARE LA PUTERE

ADUNARE

SCDERE

NMULIRE

MPRIRE

CTUL MPRIRII

MOD

RESTUL MPRIRII

&

CONCATENAREA(LIPIREA) A DOU EXPRESII CU


TRANSFORMAREA ACESTUIA NTR-UN IR DE
CARACTERE (STRING)
72

OPERATORII
OPERATORII DE
DE COMPARARE
COMPARARE VBA
VBA
OPERATOR

EXPLICAIE

EGALITATE

>

MAI MARE

<

MAI MIC

>=
<=
<>
LIKE

IS

MAI MARE SAU


EGAL

CARACTERE UTILIZATE LA CUTAREA UNEI


NREGISTRRI
CARACTER
*

EXPLICAIE
ZERO SAU MAI MULTE
CARACTERE

UN CARACTER

EGAL

O CIFR

DIFERIT

[ list

COMPARARE A

caractere ]

DOU IRURI

[ ! list

UN CARACTER CARE NU

COMPAR DOU

caractere ]

EXIST N LIST

MAI MIC SAU

VARIABILE CE
REFER

UN CARACTER DIN LIST

73

PROCEDURI
PROCEDURI I
I FUNCII
FUNCII
Sub Procedura1()
PARAMETRII ACTUALI
................
Call Procedura2(P1,P2,P3)
.................
Call Procedura2(P11,P12,P13)
..................
Var_1=Funcia1(Pa1,Pa2,Pa3)
..................
Var_2=Funcia1(Pa11,Pa12,Pa
13)
......
End Sub

Sub Procedura2 (Pf1,Pf2,Pf3)


........................
End Sub
PARAMETRII FORMALI

Function Funcia1(Pf1,Pf2,
Pf3) As tip_rezultat
.................
Funcia1=expresie
.......
End Function
74

PROCEDURI
PROCEDURI I
I FUNCII
FUNCII
Dac procedura sau funcia exist n alt modul sau
sunt mai multe cu acelai nume ,apelul se face prin
precizarea modulului din care face parte:
Call nume_modul.nume_procedur
[(val_param1,val_param2)]
Variabila = nume_modul.nume_funcie
[(val_param1,val_param2)]
Not: Testarea unei proceduri/funcii cu parametrii, se
creeaz o alt procedur fr prametrii i se apeleaz cea
dinti.
Testarea unei proceduri/funcii fr parametrii se face cu
comanda Run , Run Sub/User Form dim meniul principal.
75

EXEMPLE
EXEMPLE DE
DE PROCEDURI/FUNCII
PROCEDURI/FUNCII
I
I APELAREA
APELAREA LOR
LOR
Sub afisez_msg (mesaj As
String)
mesajul este parametrizat
prin mesaj
SysCmd acSysCmdSetStatus ,
mesaj
End Sub

Sub test_msg()
Call afisez_msg(mesajul n
bara de stare)
End Sub

Function Versiune()
Versiune =
SysCmd(acSysCmdAccessVer)
End Function

APELUL FUNCIEI
DEFINITE

Sub test()
MsgBox Versiune
End Sub
76

FUNCII
FUNCII ACCESS
ACCESS
Abs(expr_numeric)-valoarea
absolut
Asc(ir_caractere)-codul ascii
a primului caracter
Chr(cod_caracter)caracterul
Int(expr_numeric)-partea
ntreag a numrului
Exp(expr_numeric)-e la
puterea expr_numeric
Log(expr_numeric)logaritmul natural
Cos(expr_numeric)-cosinusul
expresiei

Date()-data curent
Day(dat)-numrul zilei din
lun
Month(dat)-numrul lunii
din an
Year(dat)-anul datei
Time()-or:minute:secunde
Hour(expr_timp)-ora
Minute(expr_timp)-minute
Second(expr_timp)-secunde

77

FUNCII
FUNCII ACCESS
ACCESS
Len(ir_caractere)-numrul de
caractere din ir
Space(numr)-numr de spaii
Str(expr_numeric)-conversie
n caractere
Val(ir caracter)-conversie n
numr
Mid(ir,poziie,[nr_caractere])extrage ir, de lungime ,din
poziia

IsNull(expr) -true/false
IsDate(expr) true/false
IsEmpty(expr) true/false
CStr(expr) conversie n
String
CSng(expr) conversie n
Single
Cdate(expr) conversie n
Date
Cbool(expr) conversie n
Boolean
78

STRUCTURI
STRUCTURI FUNDAMENTALE
FUNDAMENTALE DE
DE
PROGRAMARE
PROGRAMARE
STRUCTURI ALTERNATIVE :
Instruciunea IF:
IF condiie THEN
instruciuniA
ELSE
Instruciuni B
END IF
...........................................................
IF NOT (condiie) THEN
Insrtuciuni
END IF
............................................................

Instruciunea SELECT CASE


SELECT CASE expr_selector
CASE list_expr1
Instruciuni1
CASE list_expr2
Instruciuni2
...........................................................
CASE ELSE
Istruciuni3
END CASE

79

STRUCTURI
STRUCTURI FUNDAMENTALE
FUNDAMENTALE DE
DE
PROGRAMARE
PROGRAMARE
Funcia IIF:
valoare=IIF(expr_test ;
valoare returnat pentru
cazul adevrat al expresiei
de testare ; valoare
returnat pentru cazul fals
al expresiei de testare)
Obs. n loc de valoare
returnat pot fi incluse
alte funcii care s
returneze valoarea sau s
execute o aciune!

STRUCTURI REPETITIVE :
Instruciunea WHILE...WEND:
WHILE condiie_adevrat
Instruciuni
WEND
.............................................................
Instruciunea DO.....LOOP UNTIL:
DO
Instruciuni
LOOP UNTIL condiie_fals

80

STRUCTURI
STRUCTURI REPETITIVE
REPETITIVE
Instruciunea FOR ....NEXT:
Instruciunea DO WHILE .....
FOR contor=val_iniial TO
LOOP:
val_final
DO WHILE condiie_adevr
Secven_instruciuni
Instruciuni
[EXIT FOR]
LOOP
Secven instruciuni
....................................................
NEXT contor
...Instruciunea DO
........................................................
UNTIL ..... LOOP:
Instruciunea FOR EACH...NEXT:
DO UNTIL condiie_fals
FOR EACH variabil IN colecie
Instruciuni
Secvent instruciuni
LOOP
NEXT variabil

81

COMENZI
COMENZI MACRO
MACRO
Alturi de codurile VBA ,comenzile macro asigur
automatizarea aplicaiilor Access.
Comenzile macro permit automatizarea diverselor
evenimente, fr ca realizatorul aplicaiei s
cunoasc un limbaj de programare.
n cadrul comenzilor macro pot fi incluse un numr
mare de aciuni a cror derulare poate fi condiionat
de anumite valori afiate n formulare sau rapoarte.

82

TIPURI
TIPURI DE
DE ACIUNI
ACIUNI N
N
MACRO-COMENZI
MACRO-COMENZI
Deschiderea / nchiderea de
tabele, interogri, formulare
sau rapoarte.
Vizualizarea sau tiprirea
rapoartelor.
Rularea cererilor de tip
aciune.
Efectuarea condiional a
anumitor aciuni.
Cutarea anumitor date n
tabele.

Deschiderea / nchiderea
diferitelor meniuri de Access.
Afiarea de mesaje de
atenionare sau chiar sunete
de atenionare.
tergerea, redenumirea ,
copierea sau salvarea
diferitelor obiecte ale
aplicaiei.
Comunicarea cu alte produse
software(Word,Excel,etc.).

83

CREAREA
CREAREA UNUI
UNUI BUTON
BUTON DE
DE
NAVIGARE
NAVIGARE NTRE
NTRE NREGISTRRI
NREGISTRRI

CASETE PE CARE LE
OFER WIZARDUL
ACCESS PENTRU
CREAREA BUTONULUI

84

CREAREA
CREAREA UNUI
UNUI BUTON
BUTON DE
DE
NAVIGARE
NAVIGARE NTRE
NTRE NREGISTRRI
NREGISTRRI

NUMELE BUTONULUI
NREGISTRAT N BAZA
DE DATE A APLICAIEI
ACCESS

BUTONUL REZULTAT
PE FORMULAR.

85

PROCEDURA
PROCEDURA ATAAT
ATAAT EVENIMENTULUI
EVENIMENTULUI
SCRIS
SCRIS DE
DE ACCESS
ACCESS

PROCEDURA SCRIS DE
SGBD ACCESS PENTRU
FUNCIONAREA
BUTONULUI

86