Curs-7-BD-Formulare si Subformulare 2010-xx.pdf
Curs-7-BD-Formulare si Subformulare 2010-xx.pdf
Curs-7-BD-Formulare si Subformulare 2010-xx.pdf
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
SG<strong>BD</strong> Access <strong>2010</strong>: Forms<br />
Formularul (Form) este un obiect ce permite<br />
introducerea datelor, afişarea acestora,<br />
controlul actualizării datelor introduse în tabele<br />
sau controlul întregii aplicaţii<br />
<strong>Formulare</strong>le a<strong>si</strong>gură:<br />
• Interfaţă prietenoasă cu utilizatorul<br />
final, realizată prin intermediul diferitelor<br />
controale (butoane, casete text, etc.) sau<br />
altor elemente grafice incorporate;<br />
• Actualizarea concomitentă a mai<br />
multor tabele prin intermediul<br />
subformularelor;<br />
•Reguli de validare suplimentare celor<br />
definite la nivelul tabelelor.
SG<strong>BD</strong> Access <strong>2010</strong>: Cla<strong>si</strong>ficare<br />
După sursa de date:<br />
<strong>Formulare</strong> legate (bound)- permit afişarea sau actualizarea datelor din<br />
tabele;<br />
<strong>Formulare</strong> nelegate (unbound)- destinate afişării sau editării unor date<br />
care nu sunt stocate în tabele (mesaje, informaţii despre <strong>si</strong>stem, date<br />
necesare unui raport etc.)
VIZUALIZAREA FORMULARELOR<br />
1.Form View<br />
2. Datasheet View<br />
3. PivotTable View<br />
4. PivotChart View<br />
5. Layot View<br />
6. De<strong>si</strong>gn View
SG<strong>BD</strong> Access <strong>2010</strong>:<br />
Vizualizarea formularelor
SG<strong>BD</strong> Access <strong>2010</strong>:<br />
Vizualizarea formularelor
SG<strong>BD</strong> Access <strong>2010</strong>:<br />
Vizualizarea formularelor
De<strong>si</strong>gn View
Access <strong>2010</strong>: Crearea formularelor<br />
1. Selectare tabel/interogare<br />
2. CREATE din meniul principal<br />
3. Se optează pentru una din variantele de<br />
realizare a formularului: Form, Form De<strong>si</strong>gn,<br />
Blank Form, Form Wizard, Navigation,<br />
More Forms: Multiple Items, Datasheet, Split<br />
Form, Modal Dialog, PivotChart, PivotTable
4. Save<br />
5. Run
a) CREARE CU FORM<br />
• Selectarea unei tabele sau interogari (ca sursă a<br />
formularului ) din Panoul de navigare<br />
• Create butonul Form din grupul Forms
CREARE CU SPLIT FORM<br />
• Selectarea unei tabele sau interogari (ca sursă a<br />
formularului ) din Panoul de navigare<br />
Create Split Form din grupul More Forms
CREARE CU MULTIPLE ITEMS<br />
• Selectarea unei tabele sau interogari (ca sursă a<br />
formularului ) din Panoul de navigare<br />
• Create butonul Multiple Items din grupul More<br />
Forms
CREARE CU BLANK FORM<br />
• Selectarea unei tabele sau interogari (ca sursă a<br />
formularului ) din Panoul de navigare<br />
• Create butonul Blank Form din grupul Forms
CREARE CU PIVOTCHART<br />
• Selectarea unei tabele sau interogari (ca sursă a<br />
formularului ) din Panoul de navigare<br />
• Create butonul PIVOTCHART din grupul More Forms
CREARE CU FORM WIZARD<br />
• Create Form Wizard, din grupul Forms
PASI:<br />
1. CREATE<br />
2. FORM WIZARD<br />
CREAREA FORMULARELOR IN FORM WIZARD<br />
3. SELECTARE TABEL SAU INTEROGARE<br />
4. SPECIFICAREA CÂMPURILOR INCLUSE IN FORMULAR<br />
5. NEXT<br />
6. SPECIFICAREA DISPUNERII INFORMATIILOR (coloană,<br />
tabel,foaie de date, aliniate) <strong>si</strong> NEXT<br />
7. ALEGEREA STILULUI FORMULARULUI <strong>si</strong> NEXT<br />
8. ATRIBUIRE NUME PENTRU FORMULARUL CREAT<br />
9. SPECIFICARE DACA SE VIZUALIZEAZĂ ÎN D.V. sau DESCHIDERE<br />
10.FINISH
• PASI:<br />
1. CREATE<br />
2. FORM DESIGN<br />
3. DESIGN<br />
CREARE FORMULARELOR IN FORM DESIGN<br />
4. ADD EXISTING FIELDS<br />
5. SELECTAREA CÂMPURILOR SI TRAGEREA LOR IN<br />
ZONA DIN FORMULAR<br />
6. CREAREA CONTROALELOR NOI/ SECTIUNI NOI<br />
IN FORMULAR PRIN UTILIZAREA BUTOANELOR DE<br />
CONTROL<br />
7. FORMATAREA TEXTULUI DIN FORMULAR<br />
8. SAVE SI RUN
Structura unui formular<br />
I. Form Header- Antet de formular (titlu, nume<br />
utilizator, adresa, data, logo,...)<br />
II.Page Header- Antet de pagină ( informatii despre<br />
pagina)<br />
III. Detail - Secţiunea de dataliu (sunt afisate numele<br />
<strong>si</strong> valorile câmpurilor de date din tabelele sau<br />
interogările consultate)<br />
IV. Page Footer - Subsol de pagină<br />
(text ce apare la sfârşitul fiecărei pagini).<br />
V. Form Footer - Subsol de formular<br />
(text ce apare la sfârşitul fiecărui formular, cum ar fi<br />
“ Semnatura” sau alte informaţii rezumative).
STRUCTURA FORMULARELOR
Adaugarea de noi elemente in macheta de formular/ sau<br />
eliminarea unora:<br />
- Clic dreapta mouse <strong>si</strong> afisare Meniu de context<br />
- Selectare Page Header/Footer sau<br />
Form Header/Footer
STRUCTURA FORMULARELOR
CONTROALE in formulare<br />
• Controalele sunt obiecte grafice (elemente vizuale)<br />
ce sunt incluse în formulare sau rapoarte, în scopul<br />
editării/afişării datelor sau executării unor acţiuni<br />
• Exp.: etichete (Label), casetă text (Text Box),<br />
butoane(Button), casetă combinată ( Combo Box),<br />
casetă listă (List Box), Subform/Subreport,<br />
Imagine, Linie, etc).<br />
• Adăugarea controalelor se poate face numai în<br />
etapele de creare sau modificare a formularelor
1. Din meniul De<strong>si</strong>gn – Controls se selectează<br />
controlul dorit;<br />
2. Se descrie, cu ajutorul mouse-lui, o zonă<br />
dreptunghiulară pe suprafaţa formularului, definind<br />
astfel poziţia şi dimen<strong>si</strong>unea controlului<br />
3. Se executa operatiile specifice de creare a<br />
controlului respectiv.
TIPURI DE CONTROALE<br />
• In cadrul unui formular pot fi inserate trei tipuri de<br />
controale:<br />
I. Nelegate :<br />
etichetă, buton de comandă, imagine inserată pe<br />
fundalul formularului.<br />
II. Legate -afişeaza sau editeaza informaţii din baza<br />
de date :<br />
- Campuri din tabele/interogari<br />
- Mostenesc proprietatile campului respectiv<br />
- Se pot modifica proprietatile prin Property Sheet
• Inserarea unui control legat pe un formular<br />
presupune parcurgerea următorilor paşi:<br />
• 1) Afişarea câmpurilor sursei de date,<br />
selectând din meniul De<strong>si</strong>gn – Add Existing<br />
Fields.<br />
• 2) Selectarea câmpului sau grupului de<br />
câmpuri din aceasta listă şi glisarea acestora<br />
pe formular.
• III. Calculate<br />
• folosesc expre<strong>si</strong>i de calcul pentru generarea<br />
rezultatelor.<br />
• expre<strong>si</strong>ile de calcul se introduc în proprietatea<br />
Control Source a oricărui control.<br />
• Ex. Dacă în formularul Factura se doreşte<br />
afişarea unui câmp Total factura.....<br />
expre<strong>si</strong>a va fi: Total factura = Sum([Valoare])<br />
• Această expre<strong>si</strong>e poate fi introdusă direct în<br />
proprietatea Control Source sau poate fi<br />
construită cu Expres<strong>si</strong>on Builder, selectând<br />
butonul Use Control Wizards (…).
Proprietăţile controalelor <strong>Formulare</strong>lor<br />
Proprietăţile unui control sunt afişate în fereastra Property Sheet, atunci<br />
când controlul este selectat <strong>si</strong> activat.<br />
Proprietatile aferente controalelor sunt grupate în patru categorii<br />
(Format, Data, Events, Other).
Proprietăţile controalelor <strong>Formulare</strong>lor<br />
Format, Data, Events, Other
Proprietăţile controalelor: Format(1)<br />
Format - specifică modelul (masca) de afişare a datelor (numai<br />
pentru casetele text);<br />
Decimal Places - indică numărul de zecimale cu care vor fi<br />
afişate datele (numai pentru casete text);<br />
Caption - conţine textul afişat de control (numai pentru<br />
controalele needitabile: etichete, butoane etc.);<br />
Vi<strong>si</strong>ble - determină afişarea sau nu a controlului în timpul<br />
execuţiei formularului;<br />
Left - stabileşte coordonata orizontală a colţului stânga-sus al<br />
controlului;<br />
Top - indică poziţia pe verticală a colţului stânga-sus;<br />
Width - stabileşte lăţimea controlului;<br />
Height - stabileşte înălţimea controlului;<br />
Back Style - determină modul de afişare: control normal sau<br />
transparent;
Proprietăţile controalelor: Format(2)<br />
• Back Color - stabileşte culoarea de fundal a controlului;<br />
Special efect -specifică efectele tridimen<strong>si</strong>onale ale ctrl-ului;<br />
Border Style - indică tipul liniei folo<strong>si</strong>t la trasarea bordurii<br />
controlului (transparent, continuu, punctat etc.);<br />
Border Color - determină culoarea bordurii;<br />
Border Width - gro<strong>si</strong>mea bordurii;<br />
Font Color - culoarea textului afişat de control;<br />
Font Name - tipul fontului aferent textului din control;<br />
Font Size - dimen<strong>si</strong>unea fontului;<br />
Picture - specifică numele şi calea fişierului grafic ce va fi<br />
afişat în interiorul controlului (numai pentru butoane şi controale de<br />
tip imagine);<br />
Text Align – stabileşte modul de aliniere a textului în interiorul<br />
controlului.
Proprietăţile controalelor: Data(1)<br />
Control Source - conţine sursa de date a controlului şi poate fi:<br />
Numele unui câmp (pentru controale legate);<br />
O expre<strong>si</strong>e de calcul precedată de semnul "=" (pentru<br />
casete text nelegate).
Proprietăţile controalelor: Data(2)<br />
Input Mask- indică formatul folo<strong>si</strong>t la introducerea datelor<br />
(numai pentru casete text)<br />
<br />
Default value - specifică valoarea implicită (valoarea prin<br />
lipsă) a controlului.<br />
Validation Rule - conţine regula după care se face validarea<br />
datelor introduse în control. La execuţia formularului, mai întâi se<br />
verifică regula de validare a controlului şi apoi cea a câmpului ataşat;<br />
Validation Text - specifică mesajul ce va fi afişat, atunci când<br />
regula de validare este încălcată;<br />
Enabled - activează sau dezactivează controlul. Un control<br />
dezactivat va fi inacce<strong>si</strong>bil la execuţia formularului;<br />
Locked - serveşte la protejarea datelor afişate de control<br />
(controlul va deveni read-only).
Proprietăţile controalelor: Event<br />
Proprietăţi din categoria Event - conţin denumirile funcţiilor,<br />
procedurilor eveniment sau macro-urilor, ce vor fi executate la<br />
declanşarea evenimentelor ataşate<br />
Enter<br />
Eveniment<br />
BeforeUpdate<br />
Proprietatea<br />
eveniment<br />
GotFocus<br />
BeforeUpdate<br />
Exit<br />
Descriere<br />
LostFocus<br />
Apare înaintea salvării datelor din control în câmpul ataşat acestuia<br />
(validarea datelor introduse în control).<br />
Change<br />
On Change<br />
Se declanşează în momentul în care datele din control (casetă text<br />
sau casetă combinată) sunt modificate.<br />
Enter On Enter Evenimentul este înregistrat în momentul accesării controlului în<br />
vederea editării datelor (înaintea activării sale).<br />
Exit On Exit Declanşat, atunci când se părăseşte controlul curent în<br />
vederea accesării altui control din formular.<br />
Got Focus<br />
Lost Focus<br />
On Got Focus<br />
On Lost Focus<br />
Apare în momentul focalizării controlului. Diferă de evenimentul On<br />
Enter prin aceea că se declanşează chiar şi atunci când utilizatorul<br />
comută între o altă fereastră şi formularul curent.<br />
Evenimentul este înregistrat la defocalizarea controlului (fie prin<br />
trecerea la alt control din cadrul formularului, fie prin activarea altei<br />
ferestre).
Proprietăţile controalelor: Other<br />
Name - conţine numele controlului. La creare, fiecare control<br />
primeşte un nume unic, format din tipul său plus un număr de ordine<br />
(ex.: TextBox5). Utilizatorul poate modifica acest nume, schimbându-l cu<br />
unul mai sugestiv. Controalele legate, generate automat de Wizards, au<br />
numele identice cu denumirile câmpurilor ataşate;<br />
Status Bar Text - specifică mesajul afişat în bara de stare, în<br />
momentul selectării controlului;<br />
Tab Stop - dacă este setată pe valoarea Yes, atunci controlul poate fi<br />
accesat cu ajutorul tastei TAB;<br />
Tab Index - specifică numărul de ordine al controlului, în funcţie de<br />
care acesta va fi accesat cu ajutorul tastei TAB. Toate controalele<br />
editabile vor primi un număr de ordine unic, la creare. Acest număr poate<br />
fi modificat fie prin această proprietate, fie prin opţiunea View-TabOrder
CREAREA UNEI CASETE CU LISTA de VALORI SAU A UNEI CASETE COMBINATE<br />
• PASI:<br />
1. Afisarea formularului in De<strong>si</strong>gn View<br />
2. Selectare List Box sau Combo Box din De<strong>si</strong>gn<br />
Controls<br />
3. In fereastra FORM se trage un dreptunghi in locaţia<br />
unde vrem să apară controlul<br />
4. Specificarea sursei de date pentru control:<br />
• Tabel/Interogare<br />
• Date introduse de utilizator in caseta sau lista<br />
<strong>si</strong> apoi NEXT
5. După caz, se selectează tabelul/ interogarea<br />
ce contine valorile din listă sau casetă, <strong>si</strong> NEXT<br />
6. Selectarea câmpului ce contine valorile pe<br />
care le dorim afisate in control, <strong>si</strong> NEXT<br />
7. Selectare sageată cu lista primei sortări, SORT<br />
<strong>si</strong> NEXT<br />
8. Reglarea lăţimii coloanei, dacă este cazul<br />
9. Specificarea numărului coloanei ce va fi<br />
stocată în controlul de tip listă, <strong>si</strong> NEXT
10. Se precizează dacă:<br />
• Se vor afişa valorile coloanei<br />
• Sau se vor stoca într-un câmp al unui tabel<br />
11. Dacă s-a ales un câmp acesta va fi specificat,<br />
<strong>si</strong> NEXT<br />
12. FINISH
Liste derulante în De<strong>si</strong>gn View: ComboBox<br />
Proprietăţile controlului ComboBox:<br />
Column Widths - (valorile sunt separate de caracterul<br />
“;”) specifică dimen<strong>si</strong>unea fiecărei coloane din listă<br />
List Width - conţine lăţimea totală a listei derulante.<br />
Row Source Type- specifică tipul sursei de date pentru<br />
valorile din listă (tabelă/interogare, valori definite de utilizator,<br />
realizările unui câmp).<br />
Row Source- conţine denumirea tabelei, a interogării<br />
(sunt admise şi fraze SQL Select) sau valorile predefinte de<br />
utilizator (separate de caracterul “;”).<br />
Bound Column – va conţine numărul de ordine al<br />
coloanei care va actualiza câmpul ataşat controlului (coloana<br />
respectivă poate fi ascunsă).
<strong>Formulare</strong> <strong>si</strong> <strong>Subformulare</strong><br />
Rolul subformularelor este de a actualiza mai multe tabele prin<br />
intermediul unei <strong>si</strong>ngure ferestre (formular). <strong>Subformulare</strong>le sunt<br />
create în general pentru anumite tabele dependente - tabele în care<br />
câmpul comun este cheie primară în relatia de tip 1 și cheie externă în<br />
cadrul relaţiei de tip n.<br />
Definirea unui subformular presupune înglobarea (includerea)<br />
unui formular în cadrul altui formular, primul devenind<br />
subformular, iar al doilea formular principal.<br />
Avantaje:<br />
Po<strong>si</strong>bilitatea actualizării mai multor tabele printr-un <strong>si</strong>ngur<br />
formular.<br />
Sincronizarea automată a subformularului cu formularul principal<br />
Actualizarea automată a câmpului cheie externă din subformular,<br />
cu valoarea deţinută de câmpul cheie primară din formularul principal;<br />
filtrarea automată a înregistrărilor din subformular, în funcţie de<br />
valoarea cheii primare din formularul principal.
<strong>Formulare</strong> <strong>si</strong> <strong>Subformulare</strong>
V1. <strong>Formulare</strong> <strong>si</strong> <strong>Subformulare</strong><br />
1) Se deschide în modul De<strong>si</strong>gn View, formularul ce se<br />
doreşte a fi formular principal;<br />
2) Se selectează din CONTROLS - SUBFORM-<br />
3) Se trage un dreptunghi în zona unde dorim amplasarea<br />
subformularului (in sectinea Detail)<br />
4) Apare fereastra SUBFORM WIZARD<br />
5) Alegerea unei variante din:<br />
- Use existing Tables and Queries<br />
- Use an existing form<br />
6) Selectarea formularului care dorim sa fie subformular<br />
7) NEXT<br />
8) DEFINE MY OWN <strong>si</strong> selectarea câmpurilor de legătură<br />
9) FINISH<br />
10) Se salvează formularul principal
• Orice modificare făcută ulterior asupra<br />
subformularului, ca obiect de tip formular, se va<br />
reflecta automat şi în formularul principal.<br />
• Sincronizarea formular-subformular se realizează prin<br />
intermediul câmpurilor de legătură: cheia primară<br />
din sursa de date a formularului principal şi cheia<br />
externă din sursa de date aferentă subformularului.<br />
Denumirile acestor câmpuri sunt înscrise automat de<br />
Access în proprietăţile Link Master Field şi Link Child<br />
Field ale controlului de tip Subform din formularul<br />
principal.
V2. Formular cu subformular<br />
1. Se deschide în modul De<strong>si</strong>gn View, formularul ce se<br />
doreşte a fi formular principal;<br />
2. În secţiunea DETAIL a acestuia se adaugă suformularul. Adăugarea<br />
poate să fie făcută prin tehnica drag&drop (glisare cu mouse-ul) sau<br />
cu ajutorul unui control de tip Subform/Subreport.<br />
3. Se realizează legătura dintre formular şi subformular în cadrul<br />
proprietăţilor suformularului în categoria DATA, proprietatea Link<br />
Master Fields şi Link Child Fields (în general cu numele câmpului<br />
cheie primară respectiv cheie externă).<br />
4. Se salveaza operatiile executate<br />
5. RUN
<strong>Formulare</strong> cu subformulare
Expre<strong>si</strong>i în <strong>Formulare</strong> şi <strong>Subformulare</strong><br />
Expre<strong>si</strong>ile în formulare se editează:<br />
•în caseta de text a controlului;<br />
•în rubrica proprietăţii CONTROL SOURCE<br />
Expre<strong>si</strong>ile pot fi:<br />
•Simple: =[nume_ctrl 1 ]operator[nume_ctrl 2 ]<br />
•Complexe: =Funcţie([nume_ctrl1]operator[nume_ctrl2])<br />
Dacă este referit un control <strong>si</strong>tuat în alt formular, acesta se identifică prin expre<strong>si</strong>a<br />
Forms![Nume_formular]![nume_ctrl]<br />
=[Nume_ctrl_local]operatorForm![Nume_formular]![nume_ctrl]<br />
Utilizarea într-o expre<strong>si</strong>e de pe un formular a unor controale din<br />
subformular, se realizează prin:<br />
[Nume_subformular].Form![Nume_control]<br />
Pentru expre<strong>si</strong>ile complexe, se utilizează funcţiile totalizatoare scrise în<br />
casetele de text <strong>si</strong>tuate în secţiunile centralizatoare Form Header/Footer
Proprietăţile Obiectelor de tip Forms<br />
Proprietăţile formularului curent sunt împărţite în 4<br />
categorii:<br />
Format – conţine atribute privitoare la dimen<strong>si</strong>une, aspect,<br />
coordonatele de afişare ale formularului etc.;<br />
Data – grupează proprietăţi referitoare la sursa de date şi<br />
înregistrările aferente;<br />
Event – conţine evenimentele ce pot fi tratate fie prin<br />
proceduri sau funcţii scrise în limbajul VBA, fie prin macrouri.<br />
Proprietăţile acestei categori se numesc proprietăţi<br />
eveniment şi au denumiri asemănătoare cu cele ale<br />
evenimentelor cărora le sunt ataşate.<br />
Other – conţine diverse alte proprietăţi.
Proprietăţile Forms: Format<br />
Caption – conţine titlul formularului ce va apărea în bara de titlu a acestuia;<br />
<br />
formularului (Single Form, Tabular Form, Datasheet);<br />
<br />
execuţiei (Form, DataSheet, Both);<br />
<br />
orizontală, bara verticală, amândouă sau nici una);<br />
<br />
execuţiei formularului;<br />
<br />
navigare în cursul execuţiei sale;<br />
<br />
secţiunilor formularului sau a înregistrărilor la execuţie;<br />
<br />
execuţie, în centrul ecranului;<br />
Default View – specifică modul implicit de afişare, folo<strong>si</strong>t la execuţia<br />
View Allowed – reprezintă modurile de afişare ce sunt disponibile în timpul<br />
Scroll Bars - setează barele de defilare vizibile în cursul execuţiei (bara<br />
Record Selectors – afişează sau nu selectorul de înregistrare în timpul<br />
Navigation Buttons – specifică dacă formularul va conţine butoanele de<br />
Dividing Lines – precizează dacă se afişează linii pentru delimitarea<br />
Auto Center – dacă este setată pe valoarea Yes, formularul va fi afişat, la
Proprietăţile Forms: Format<br />
Border Style – specifică tipul bordurii. Setarea acestei proprietăţi va avea efect<br />
şi asupra comportamentului formularului:<br />
• None – formular fără bordură (formularul nu va putea fi redimen<strong>si</strong>onat la<br />
execuţie);<br />
• Thin – bordură subţire (formularul nu va putea fi redimen<strong>si</strong>onat);<br />
• Sizable– bordura implicită (formularul poate fi redimen<strong>si</strong>onat);<br />
• Dialog – bordura subţire (formularul nu poate fi redimen<strong>si</strong>onat iar bara de titlu<br />
va conţine doar butonul pentru închidere Close obţinându-se astfel un formular de<br />
tip Dialog Box).<br />
Control Box – indică prezenţa meniului <strong>si</strong>stem în bara de titlu;<br />
Min Max Buttons – dezactivează sau activează fie ambele, fie unul din<br />
butoanele de minimizare şi maximizare din bara de titlu;<br />
Close Button – indică prezenţa butonului de închidere (Close) în bara de titlu;
Proprietăţile Forms: Format<br />
Width – specifică lăţimea formularului şi implicit a tuturor secţiunilor.<br />
Această proprietate poate fi modificată în timpul proiectării formularului, dar şi în<br />
cursul execuţiei acestuia (dacă bordura este de tip Sizable), cu ajutorul mouse-lui.<br />
Picture – poate conţine specificatorul unui fişier grafic, al cărui conţinut<br />
va fi afişat pe fundalul formularului;<br />
Picture Type – specifică varianta OLE folo<strong>si</strong>tă:<br />
Embedded (înglobat) – imaginea este inclusă în formular;<br />
Linked (legat) – se creează doar o legătură către fişierul grafic<br />
(formularul nu va afişa imaginea respectivă dacă fişierul este şters,<br />
mutat etc.).<br />
Grid X – conţine numărul de subdiviziuni orizontale pe unitatea de<br />
măsură (cm, inch, etc.). Grila (Grid) serveşte la alinierea automată a controalelor.<br />
<br />
(intervalul 1-64).<br />
Grid Y - conţine numărul de subdiviziuni verticale pe unitatea de măsură
Proprietăţile Forms: Data<br />
Record Source – conţine sursa de date a formularului (tabel sau interogare).<br />
<br />
Această proprietate poate conţine chiar şi o comanda SQL (numai selecţie).<br />
Filter – conţine criteriul de selecţie care se va aplica înregistrărilor din<br />
formular. Condiţia de filtrare este o clauză SQL WHERE, însă fără să conţină<br />
cuvântul WHERE. Notă: Pentru ca filtrul să fie activ, proprietatea FilterOn trebuie<br />
setată pe valoarea True<br />
Order By – permite specificarea câmpurilor după care vor fi sortate<br />
înregistrările din formular. Sintaxa = cu <strong>si</strong>ntaxa clauzei SQL – OrderBy. Notă:<br />
Pentru ca operaţia de ordonare să se execute automat la deschiderea formularului,<br />
proprietatea OrderByOn True.<br />
Data Entry – dacă este setată pe valoarea Yes, formularul nu va afişa, la<br />
deschidere, înregistrările existente (proprietatea este utilă pentru formularele ce vor<br />
permite numai adăugarea de înreg<strong>si</strong>trări).<br />
Record Locks – specifică dacă şi ce înregistrări vor fi blocate pentru alţi<br />
utilizatori (blocarea se poate face fie pentru toate înregistrările, fie numai pentru<br />
înregistrarea curentă).
Proprietăţile Forms: Event<br />
Proprietăţi din categoria Event: conţin denumiri de funcţii, proceduri<br />
eveniment sau macro-uri ce vor fi executate la apariţia evenimentelor<br />
respective. Apar astfel trei po<strong>si</strong>bilităţi<br />
1.eveniment tratat printr-o funcţie - proprietatea<br />
eveniment va conţine o expre<strong>si</strong>e de forma:<br />
=NumeFuncţie([ListaParametrii])<br />
Exemplu: Funcţia ActualizeazaContor (definită întrun<br />
modul) poate fi ataşată proprietăţii On Current,<br />
în vederea afişării înregistrării curente (atunci când<br />
formularul nu conţine butoanele de navigare):<br />
=ActualizeazaContor(<br />
[Forms]![Carti],<br />
[CrtRecord])
Proprietăţile Forms: Event<br />
2.Eveniment tratat printr-o procedură<br />
eveniment - proprietatea eveniment va conţine<br />
expre<strong>si</strong>a EventProcedure, iar editarea procedurii<br />
se poate face prin acţionarea butonului<br />
BuildWizard, la invocarea căruia Access deschide<br />
editorul de module, în care generează o procedură<br />
vidă sub forma:<br />
Private Sub Form_numeEveniment<br />
([ListăParametriFormali])<br />
[Event Procedure]<br />
Macro1<br />
End Sub<br />
Între cele două linii, utilizatorul poate insera<br />
propriile instrucţiuni.<br />
3. Eveniment tratat printr-un macro: proprietatea<br />
eveniment va conţine numele macro-ului
Proprietăţile Forms: Event<br />
Eveniment<br />
Proprietatea<br />
eveniment<br />
Descriere<br />
Current<br />
On Current Este înregistrat în momentul trecerii de la o înregistrare<br />
la alta.<br />
BeforeUpdate BeforeUpdate Apare înaintea salvării înregistrării curente în tabelă<br />
(validarea datelor curente).<br />
Delete<br />
On Delete Evenimentul apare înaintea ştergerii înregistrării<br />
curente şi poate fi folo<strong>si</strong>t pentru obţinerea unei<br />
confirmări cu privire la această operaţie.<br />
Open<br />
On Open Apare înaintea afişării pe ecran a formularului, la<br />
deschiderea acestuia..<br />
Unload<br />
On Unload Este un eveniment declanşat înaintea închiderii formularului (cere<br />
confirmarea utilizatorului cu privire la închiderea formularului, atunci<br />
când datele nu au fost salvate).<br />
Close<br />
On Close Evenimentul este înregistrat în timpul închiderii formularului<br />
(formularul este afişat pe ecran) şi poate fi folo<strong>si</strong>t pentru deschiderea<br />
altor formulare, pentru ştergerea obiectelor temporare generate în<br />
timpul execuţiei formularului, etc.
Proprietăţile Forms: Event<br />
Eveniment<br />
Proprietatea<br />
eveniment<br />
Descriere<br />
Activate<br />
On Activate Este declanşat la activarea formularului (fie la deschiderea lui, fie<br />
la selectarea lui dintr-o altă fereastră) şi poate fi folo<strong>si</strong>t, de<br />
exemplu, pentru refacerea valorilor unei liste derulante, în urma<br />
actualizării tabelei sursă printr-un alt formular.<br />
Click<br />
On Click Apare la efectuarea unui clic pe selectorul de înregistrare sau pe<br />
zona liberă a formularului (zona aflată în afara secţiunilor).<br />
Error<br />
On Error Evenimentul este declanşat la apariţia unei erori în cursul execuţiei<br />
formularului (de exemplu, eroarea generată la introducerea unei<br />
valori ce nu respectă condiţiile de validare sau restricţia de<br />
integritate). Este utilizat la interceptarea erorilor generate de<br />
Access în vederea tratării lor.<br />
Timer<br />
On Timer Este un eveniment care apare la o anumită perioadă de timp,<br />
stabilită de utilizator prin proprietatea Timer Interval (valoarea<br />
atribuită este în milisecunde). Poate fi utilizat pentru crearea<br />
diferitelor efecte vizuale, pentru citirea/setarea unor variabile<br />
globale etc.
CREAREA BUTOANELOR IN FORMULARE<br />
1. DESCHIDERE FORMULAR IN De<strong>si</strong>gn VIEW<br />
2. Selectare control - buton<br />
3. Deplasare mouse in formular la locul dorit <strong>si</strong><br />
clic<br />
4. Apare fereastra Command Button Wizard de<br />
unde se alege categoria <strong>si</strong> actiunea <strong>si</strong> apoi<br />
NEXT<br />
5. Se alege TEXT sau PICTURE <strong>si</strong> NEXT<br />
6. Se atribuie un nume<br />
7. Se salveaza <strong>si</strong> FINISH