Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Folosirea controalelor access

Folosirea controalelor

Toate informatiile dintr-un formular sau raport sunt continute in controale. Controalele sunt obiectele de pe un formular sau un raport care afiseaza date, executa actiuni sau decoreaza formularul sau raportul. Spre exemplu, puteti folosi o caseta de text pe un formular sau un raport pentru a afisa datele, un buton de comanda de pe un formular pentru a deschide un alt raport sau o linie sau un dreptunghi la separarea si gruparea controalelor pentru a le face mai usor de accesibile. Microsoft Access 97 include urmatoarele tipuri de controale, care sunt accesibile prin intermediul casetei cu instrumente din vederea Design a formularului sau raportului: caseta de text (text box), eticheta (label), grup de optiuni (option group), buton de optiune (option button), caseta de validare (check box), buton de comutare (toggle button), buton de comanda (command button), control de imagine (image control), cadru de obiect legat (bound object frame), cadru de obiect nelegat (unbound object frame), subformular/subraport (subform/ subreport), intrerupere de pagina (page break), linie (line), dreptungi (rectangle) si controale proprii ActiveX.



Controalele pot fi legate, nelegate sau calculate. Controlul legat este asociat unui camp al tabelei sau interogarii de baza. Controalele legate sunt folosite pentru a afisa, edita si actualiza valorile campurilor din baza de date. Controlul calculat foloseste o expresie ca sursa de date. Expresia poate utiliza datele dintr-un camp al tabelei sau interogarii de baza al formularului sau raportului. Controlul nelegat nu are sursa de date. Puteti folosi controalele nelegate pentru a afisa informatii, linii, dreptunghiuri si ilustratii. In figura 1 sunt prezentate exemple de controale legate, nelegate si calculate.


In continuare sunt prezentate principalele controale ce se pot folosi pe formulare si rapoarte.

1. Tipuri de controale

1.1. Eticheta (label

Etichetele sunt folosite pe un formular sau raport pentru a afisa text descriptiv cum ar fi: titlurile, semnificatiile sau scurte instructiuni (vezi figura 2). Etichetele nu afiseaza valorile din campuri sau expresii; ele sunt intotdeauna nelegate si ele nu se schimba in timp ce va deplasati de pe un articol pe altul.


O eticheta poate fi atasata unui alt control. Spre exemplu, atunci cand creati casete de text, acestea vor avea atasata o eticheta care afiseaza titlul acelei casete de text. Aceasta eticheta apare ca antet de coloana in vederea Datasheet a formularului.

Atunci cand creati o eticheta folosind instrumentul Label, creati de fapt o eticheta independenta - nu este atasata niciunui alt control. Etichetele independente sunt utilizate pentru informatii cum ar fi titlul formularului sau raportului sau orice alt text descriptiv. Etichetele independente nu apar in vederea Datasheet a formularului.

1.2. Caseta de text (text box

Pe un formular sau un raport casetele de text se folosesc pentru a afisa datele dintr-o tabela, interogare sau instructiune SQL (vezi figura 3). Acest tip de caseta de text poarta numele de caseta de text legata deoarece ea este legata la datele dintr-un camp. Casetele de text pot fi si nelegate. Spre exemplu, puteti crea o caseta de text nelegata pentru a afisa rezultatul unui calcul sau pentru a accepta introducerea facuta de utilizator. Datele dintr-o caseta de text nelegata nu sunt memorate nicaieri.


1.3. Grup de optiuni (option group

Pe un formular sau raport puteti folosi un grup de optiuni pentru a afisa un set limitat de alternative. Grupul de optiuni asigura selectarea mai usoara a unei valori, deoarece puteti executa clic pe valoarea pe care vreti. La un moment dat, dintr-un grup de optiuni se poate selecta doar o singura optiune.

Grupul de optiuni (vezi figura 4) consta dintr-un cadru de grup si un set de casete de validare, butoane de optiuni sau butoane de comutare.

Daca un grup de optiuni ese legat la un camp, atunci numai cadrul grupului este legat la camp, nu si casetele de validare, butoanele de comutare sau butoanele de optiune din interiorul cadrului. In locul setarii proprietatii ControlSource pentru fiecare control din grupul de optiuni, dvs. setati proprietatea OptionValue a fiecarei casete de validare, buton de comutare sau buton de optiune pe numarul care are semnificatie pentru campul de care este legat cadrul grupului. Atunci cand selectati o optiune dintr-un grup de optiuni, Microsoft Access seteaza valoarea campului la care grupul de optiuni este legat la valoarea proprietatii OptionValue a optiunii selectate (vezi figura 5).


NOTA

Proprietatea OptionValue este setata pe un numar, deoarece valoarea unui grup de optiuni poate fi numai numerica, nu text. Microsoft Access stocheaza acest numar in tabela de baza. In acest exemplu, daca doriti sa afisati numele transportatorului in locul unui numar din tabela Orders, puteti crea o tabela separata numita Shippers care sa memoreze numele transportatorilor si apoi faceti campul ShipVia din tabela Orders drept camp Lookup pentru a examina datele din tabela Shippers.

De asemenea, un grup de optiuni poate fi setat pe o expresie sau poate fi nelegat. Puteti folosi un grup de optiuni nelegat intr-o caseta de dialog personalizata pentru a accepta introducerea utilizatorului si apoi de a lansa actiunea in functie de aceasta introducere.

1.4. Buton de comutare (toggle button

Puteti folosi un buton de comutare pe un formular ca un control independent pentru a afisa o valoare Yes/No dintr-o tabela, interogare sau instructiune SQL de baza. Spre exemplu, butonul de comutare din exemplu prezentat in figura 6 este legat de campul Discontinued din tabela Products. Tipul datei campului Discontinued este Yes/No. Atunci cand butonul nu este apasat, valoarea din tabela Products este No.


Atunci cand executati clic pe un buton de comutare care este legat la un camp Yes/No, Microsoft Access afiseaza valoarea in tabela de baza corespunzator cu proprietatea Format (Yes/No, True/False sau On/Off).

Butoanele de comutare sunt mult mai utile atunci cand sunt folosite intr-un grup de optiuni cu alte butoane. Intr-un grup de optiuni, va puteti dea seama usor daca butonul este apasat.

Pe butoanele de comutare puteti folosi imagini in locul textului (vezi figura 7). Spre exemplu, in locul afisarii cuvantului "Discontinued" pe butonul de comutare din exemplul anterior, puteti afisa imaginea unui cos de gunoi.


De asemenea, puteti folosi un buton de comutare intr-o caseta de dialog personalizata pentru a accepta introducerea utilizatorului.

1.5. Buton de optiune (option button

Puteti folosi un buton de optiune pe un formular sau raport drept control independent pentru a afisa o valoare Yes/No dintr-o tabela, interogare sau instructiune SQL de baza. Spre exemplu, butonul de optiune din exemplul prezentat in figura 8 este legat de campul Discontinued din tabela Products. Tipul de data a campului Discontinued este Yes/No. Daca butonul de optiune este selectat, atunci valoarea este Yes; daca nu, valoarea este No.


Atunci cand selectati sau deselectati un buton de optiune care este legat la un camp Yes/No, Microsoft Access afiseaza valoarea in tabela de baza in concordanta cu proprietatea Format (Yes/No, True/False sau On/Off) a campului.

De asemenea, puteti folosi butoanele de optiune intr-un grup de optiuni pentru a afisa valorile din care se va selecta.

Intr-o caseta de dialog puteti folosi, de asemenea, un buton de optiune nelegat pentru a accepta introducerea utilizatorului.

1.6. Caseta de validare (check box

Puteti folosi o caseta de validare pe un formular sau raport drept control independent pentru a afisa o valoare Yes/No dintr-o tabela, interogare sau instructiune SQL de baza. Spre exemplu, caseta de validare din exemplul prezentat in figura 9 este legata de campul Discontinued din tabela Products. Tipul de data a campului Discontinued este Yes/No. Daca caseta de validare contine simbolul de verificare, atunci valoarea este Yes; daca nu, valoarea este No.


Atunci cand selectati sau deselectati o caseta de validare care este legata la un camp Yes/No, Microsoft Access afiseaza valoarea in tabela de baza corespunzator cu proprietatea Format (Yes/No, True/False sau On/Off) a campului.

De asemenea, puteti folosi casetele de validare intr-un grup de optiuni pentru a afisa valorile din care se va selecta.

Intr-o caseta de dialog puteti folosi, de asemenea, o caseta de validare nelegata pentru a accepta introducerea utilizatorului.

1.7. Caseta cu lista (list box)

In foarte multe cazuri este mult mai usor si mai rapid sa selectati o valoare dintr-o lista (vezi figura 10) decat sa retineti valoarea de tastat. De asemenea, lista de optiuni va ajuta sa va asigurati ca valoarea ce se introduce in camp sa fie corecta.


Lista dintr-o caseta cu lista contine linii de date. Liniile pot avea una sau mai multe coloane, care pot sa apara cu sau fara antete. Daca o caseta cu lista multi-coloane este legata, atunci Microsoft Access stocheaza valorile dintr-o singura coloana.

Puteti folosi o caseta cu lista (sau pe scurt lista) nelegata pentru a stoca o valoare ce poate fi folosita cu un alt control. Spre exemplu, puteti folosi o lista nelegata pentru a limita valorile dintr-o alta lista sau dintr-o caseta de dialog personalizata. De asemenea, puteti folosi lista nelegata pentru a cauta un articol pe baza valorii selectate din lista.

Daca pe formular nu aveti spatiu suficient pentru a afisa o lista sau daca vreti sa puteti tasta valorile noi precum si sa selectati valorile dintr-o lista, atunci folositi o caseta combinata in loculu casetei cu lista.

1.8. Caseta combinata (combo box)

In cele majoritatea cazurilor este mai rapid si mai usor sa selectati o valoare dintr-o lista decat sa memorati valoare de tastat. Puteti realiza acest lucru fara a ocupa prea mult spatiu pe un formular folosind o caseta combinata. Caseta combinata reprezinta o combinare dintre o caseta de text si o caseta cu lista.


Atunci cand introduceti text sau selectati o valoare intr-o caseta combinata, daca aceasta este legata, atunci valoarea introdusa sau selectata este inserata in campul de care caseta combinata este legata.

Lista dintr-o caseta combinata contine linii de date. Liniile pot avea una sau mai multe coloane, care pot sa apara cu sau fara antete. Daca o caseta combinata multi-coloane este legata, atunci Microsoft Access stocheaza valorile dintr-o singura coloana.

Puteti folosi o caseta combinata nelegata pentru a stoca valoarea pe care o veti putea folosi cu un alt control. Spre exemplu, puteti utiliza o caseta combinata nelegata pentru a limita valorile dintr-o alta caseta combinata sau dintr-o caseta de dialog personalizata. De asemenea, puteti folosi o caseta combinata nelegata pentru a cauta un articol pe baza valorii pe care ati selectat-o din caseta combinata.

Casetele combinate au o proprietate, numita LimitToList, pe care o puteti folosi pentru a controla in lista se poate introduce orice valoare sau numai textul care corespunde uneiea dintre valorile listei.

Daca aveti suficient spatiu pe formular si doriti sa apara permanent o lista sau daca intodeauna vreti sa limitati intrarile de date la valorile din lista, probabil ca veti folosi o caseta cu lista in locul unei casete combinate.

1.9. Buton de comanda (command button)

Pe un formular folositi butonul de comanda pentru a lansa o actiune sau un set de actiuni. Spre exemplu, puteti crea un buton de comanda care deschide un alt formular. Pentru a face ca un buton de comanda sa faca ceva, scrieti un macro sau o precudura de eveniment si atasati-o acestuia prin intermediul proprietatii OnClick.

NOTA

Folosind Command Button Wizard puteti crea peste 30 tipuri de butoane de comanda. Atunci cand utilizati Command Button Wizard, Microsoft Access creaza automat butonul de comanda si procedura eveniment.

Puteti afisa text pe un buton de comanda setand proprietatea Caption a acestuia sau puteti afisa o imagine setand proprietatea Picture a acestuia.

1.10. Controalele Image, Unbound object frame sau Bound object frame

Cu ajutorul controalelor Image, Unbound object Frame si Bound object frame puteti adauga obiecte sau parti ale obiectelor pe care le-ati creat in alte aplicatii la un formular sau raport Microsoft Access. Spre exemplu, puteti adauga o imaginea creata cu Microsoft Paint, o foaie de calcul realizata cu Microsoft Excel sau un document creat cu Microsoft Word. Puteti adauga toata informatia in fisier sau numai informatia selectata.

Modul de adaugare a imaginii sau obiectului depinde daca doriti ca obiectul sa fie legat sau nelegat. Obiectul legat este stocat intr-o tabela. Atunci cand vaaa mutati pe un articol nou, obiectul afisat in formular sau raport se schimba. Spre exemplu, probabil ca veti vrea sa stocati fotografia fiecarui salariat din compania dvs.

Pe de alta parte, obiectul nelegat este stocat in macheta formularului sau raportului. Atunci cand va deplasati pe un articol nou, obiectul afisat nu se schimba. Spre exemplu, veti vrea sa adaugati pe formular sau raport o emblema pe care ati creat-o cu Microsoft Paint.

1.11. Subformular (subform

Subformularul este un formular in interiorul altui formular. Formularul primar este denumit formular principal (main form), iar formularul din interiorul formularului este numit subformular. Combinatia formulra/subformular este referita adeseori ca formular ierarhic, formular principal/detaliu sau formular parinte/copil.

Subformularele sunt rficiente in special atunci cand vreti sa prezentati datele din tabele sau interogari cu relatii 1 m (one-to-many). Spre exemplu, puteti crea un formular cu un subformular pentru a prezenta datele din tabelele Categories si Products. Datele din tabela Categories rerezinta partea "1" din relatie, iar datele din tabela Products reprezinta partea "m" din relatie - fiecare categorie poate avea mai mult de un singur produs (vezi figura 13).

Formularul principal si subformularul din acest tip de formulare sunt inlantuite, astfel incat subformularul afiseaza numai articolele care sunt corelate cu articolul curent din formularul principla. Spre exemplu, atunci cand formularul principal afiseaza categoria Beverages, subformularul afiseaza numai produsele din categoria Beverages.

Atunci cand folositi un formular cu un subformular pentru a introduce noi articole, Microsoft Access salveaza articolul curent din formularul principal cand intrati in subformular. Aceasta asigura ca articolele din tabela "m" (mai multi) sa aiba un articol in tabela "1" (unul) cu care sa se coreleze. De asemenea, aceasta salveaza automat fiecare articol pe care-l adaugati in subformular.


Subformularul poate fi afisat ca o foaie de date, ca in figura 13, sau ca un formular singular sau continuu. Formularul principal poate fi afisat numai ca un formular singular.

Formularul principal poate avea oricate subformulare, daca plasati fiecare subformular pe formularul principal. De asemenea, puteti realiza cel mult doua nivele de subformulare. Aceasta inseamna ca puteti avea un subformular intr-un formular principal si un alt subformular in interiorul subformularului, de nivel 1. Spe exemplu, puteti avea un formular principal care afiseaza clientii, un subformular care prezinta comenzile si un alt subformular care afiseaza detaliile comenzilor.

1.12. Subraport (subreport

Subraportul este un raport care este inserat intr-un alt raport. Atunci cand combinati rapoarte, unul dintre acestea trebuie sa serveasca drept raport principal. Raportul principal este fie legat fie nelegat; adica, acesta este sau nu bazat pe o tabela, interogare sau instructiune SQL.

Un raport principal nelegat poate servi drept container pentru subrapoartele necorelate pe care vreti sa le combinati (vezi figura 14).


Legati raportul principal la o tabela, interogare sau instructiune SQL de baza atunci cand doriti sa inserati subrapoarte ce contin informatii care sunt corelate cu datele din raportul principal. Spre exemplu, puteti folosi raportul principal pentru a afisa articolele detaliu, cum ar fi fircare vanzare dintr-un an, si apoi folositi un subraport pentru a prezenta infiramtiile rezumative, cum ar fi totalul vanzarilor din fiecare trimestru (vezi figura 15).



De asemenea, raportul principal poate contine datele comune din doua sau mai multe subrapoarte paralele. In acest caz, subrapoartele contin articolele detaliu corelate cu datele comune (vezi figura 16).


Un raport principal poate include subformulare, la fel de bine ca si subrapoarte si acesta poate include oricate subrapoarte si subformulare doriti. In plus un raport principal poate contine pana la doua nivele de subformulare si rapoarte. Spre exemplu, un raport poate contine un subraport, iar subraportul poate contine un subformular sau un subraport. Urmatorul tabel prezinta combinatiile posibile ale subformularelor si subrapoartelor intr-un raport principal.

Nivel 1

Nivel 2

Subraport 1

Subraport 2

Subraport 1

Subformular 1

Subformular 1

Subformular 2

NOTA

Rapoartele Sales by Category si Sales by Year din baza de date model Northwind folosesc subrapoarte. Pentru a vizualiza aceste rapoarte, deschideti baza de date Northwind din subdosarul Samples al dosarului Office. In fereastra Database, executati clic pe eticheta Reports, executati clic pe numele raportului si apoi executati clic pe butonul Design.

1.13. Control Tab

Puteti folosi un control Tab pentru a prezenta cateva pagini de informatii ca un singur set. Aceasta este utilza in special atunci cand cu multe controale ce pot fi sortate in doua sau mai multe categorii. Spre exemplu, probabil ca veti dori sa folositi un control Tab pe formularuil Employees pentru a separa informatiile generale de cele personale (vezi figura 17).


2. Crearea controalelor pe formulare

Dupa cum am vazut controalele pot fi legate (asociate unor campuri din tabela, interogarea sau instructiunea SQL care sta la baza formularului), nelegate (nu sunt asociate unui camp al tabelei, interogarii sau instructiunii de baza) sau calculate.

In continuare se vor prezenta algoritmii generali pentru crearea controalelor legate, nelegate si calculate, precum si cateva exemple concrete pentru crearea controalelor cele mai utilizate in formulare.

2.1. Crearea unui control legat

Pentru a crea pe formular un control legat se executa urmatoarele operatii:



1.     Se deschide formularul in vederea Design.

2.     Daca vreti sa folositi un wizard pentru a va ajuta la crearea controlului, atunci asigurati-va ca pe caseta instrumentelor Toolbox este apasat butonul Control Wizards.

3.     Afisati lista de campuri executand clic pe butonul Field List din bara cu instrumente sau selectand optiunea List Field din meniul View.

4.     Selectati unul sau mai multe campuri din lista.

Pentru a selecta

Executati

Un camp

Clic pe campul dorit..

Un bloc de campuri

Clic pe primul camp din bloc, tineti apasata tasta Shift si apoi executati clic pe ultimul camp din bloc.

Campuri neadiacente

Tineti apasata tasta Ctrl si executati clic pe numele fiecarui camp pe care doriti sa-l includeti.

Toate campurile

Dublu-clic pe bara de titlu a listei de campuri.

5.     Trageti campul sau campurile selectate pe formular. Plasati coltul din stanga-sus a pictogramei acolo unde doriti sa apara coltul din stanga-sus al controlului (nu eticheta acestuia) si eliberati butonul mouse-ului.

Microsoft Access creaza controlul corespunzator pentru camp si seteaza anumite proprietati, pe baza tipului de date al campului si a setarilor proprietatii DisplayControl. Daca acesta nu este tipul de control pe care vreti sa-l creati, atunci executati clic pe butonul corespunzator din caseta de instrumente inainte de a trage campul din lista de campuri.


2.2. Crearea unui control nelegat

Pentru a crea pe formular un control nelegat se executa urmatoarele operatii:

1.     Se deschide formularul in vederea Design.

2.     Daca vreti sa folositi un wizard pentru a va ajuta la crearea controlului, atunci asigurati-va ca pe caseta instrumentelor este apasat butonul Control Wizards.

3.     In caseta instrumente Toolbox, executati clic pe butonul controlului pe care vreti sa-l creati.

4.     In formular executati clic acolo unde vreti sa apara coltul din stanga-sus al controlului.

Daca executati clic si eliberati butonul mouse-ului, atunci Microsoft Access va crea un control avand dimensiunea prestabilita. Pentru a crea un control cu o anumita dimensiune, atunci executati clic pe butonul mouse-ului si apoi trageti pana cand controlul are dimensiunea dorita.

SUGESTIE

Daca doriti sa creati mai multe controale in acelasi timp, atunci puteti executa dublu-clic pe butonul corespunzator din caseta instrumentelor Toolbox pentru ca acesta sa ramana apasat.

2.3. Crearea unui control calculat

Pentru a crea pe formular un control calculat executati urmatoarele operatii:

1.     Se deschide formularul in vederea Design.

2.     In caseta instrumentelor Toolbox, executati clic pe butonul tipului de control pe care vreti sa-l folositi drept control calculat.

NOTA

Cel mai obisnuit tip de control folosit pentru a afisa o valoare calculata este caseta de text, dar puteti utiliza orice control care are proprietatea ControlSource.

3.     Pe formular, executati clic acolo unde vreti sa plasati controlul.

4.     Executati una din urmatoarele operatii:

Daca controlul este o caseta de text, atunci puteti tasta expresia direct in control (vezi figura 18).

Daca controlul nu este o caseta de text sau daca controlul este o caseta de text dar doriti sa folositi generatorul de expresii (Expression Builder) pentru a crea expresia, atunci asigurati-va ca controlul este selectat, executati clic pe butonul Properties din bara instrumentelor Database pentru a deschide foaia de proprietati a controlului si apoi tastati expresia in caseta proprietatii ControlSource sau executati clic pe butonul Build din bara instrumentelor Database pentru a deschide fereastra Expression Builder.


NOTE

Intr-un control calculat precedati fiecare expresie cu operatorul = (egal).

Daca aveti nevoie de mai mult spatiu pentru a tasta o expresie in caseta proprietatii ControlSource, atunci apasati tastele Shift+F2 pentru a deschide caseta Zoom.

Daca un formular este bazat pe o interogare, probabil ca veti vrea sa scrieti expresia in interogare in loc s-o introduceti intr-un control calculat.

SUGESTIE

Puteti folosi un wizard pentru a crea butoane de comanda, casete cu lista, casete combinate, subformulare si grupuri de optiuni.De asemenea, la crearea unui control pentru o diagrama sau PivotTable puteti folosi wizard-uri.

2.4. Crearea unui buton de comanda

Puteti crea singuri un buton de comanda sau puteti apela la un wizard din Microsoft Access pentru a crea butonul de comanda. Wizard-ul mareste viteza procesului de creare a butonului de comanda deoarece acesta face munca de rutina in locul dvs. Atunci cand folositi un wizard Microsoft Access va va solicita informatii si va crea butonul de comanda pe baza raspunsurilor dvs.

Pueti crea peste 30 de tipuri de butoane de comanda folosind wizrd-ul Command Button. Spre exemplu puteti crea un buton de comanda care cauta un articol, tipareste un articol sau aplica un filtru de formular.

De asemenea, este indicat sa folositi wizard-ul Command Button daca doriti sa invatati modul de scriere a procedurilor eveniment. Atunci cand creati un buton de comanda cu un wizard, acesta creaza o procedura eveniment si o ataseaza butonului. Puteti deschide procedura eveniment pentru a vedea cum lucreaza aceasta si s-o modificati pentru a corespunde necesitatilor dvs.

2.4.1. Crearea unui buton de comanda folosind un wizard

Pentru a crea un buton de comanda folosind un wizard executati urmatoarele operatii:

1.     Deschideti formularul in vederea Design.

2.     In caseta instrumentelor Toolbox executati clic pe butonul Control Wizards, daca acesta nu este deja apasat.

3.     In caseta Toolbox executati clic pe instrumentul Command Button.

4.     Executati clic in formular acolo unde vreti sa plasati butoanul de comanda.

5.     Urmati instructiunile casetelor de dialog ale wizard-ului..

In continuare se va exemplifica modul de folosirea a unui wizard pentru a crea un buton de comanda ce va deschide un formular.

Casetele de dialog ce apar pe ecran depind de tipul de actiune pe care trebuie s-o execute butonul de comanda.

I.       In prima caseta de dialog Command Button Wizard (vezi figura 19) se vor executa operatiile:

Din lista Categories se va selecta categoria operatiilor din care face parte cea pentru care realizati butonul de comanda.

Din lista Actions se va selecta operatia ce se va lansa la executarea clicului pe butonul de comanda.

Se executa clic pe butonul Next pentru a trece la urmatoarea caseta de dialog.

Figura 19 In prima caseta de dialog se selecteaza operatia ce se va asocia butonului de comanda.


 


II.     In a doua caseta de dialog Command Bbutton Wizard se va selecta formularul ce va fi deschis de catre butonul de comanda si apoi se va executa clic pe Next pentru a continua procesul de creare.

III.           In a treia caseta de dialog Command Button Wizard (vezi figura 21) se va selecta optiunea Open the form and find specific data to display daca vreti ca prin intermediul butonului de comanda sa deschideti formularul specificat si sa fie cautate anumite date pentru a fi afisate sau se va selecta optiunea Open the form and show all the records daca vreti ca formularul ce se va deschide de catre butonul de comanda sa prezinte toate articolele. Pentru a continua operatia de creare executati clic pe butonul Next.

Figura 20 In aceasta caseta de dialog se selecteaza formularul ce va fi deschis de catre butonul de comanda.

 

Figura 21 In aceasta caseta de dialog se stabileste ce va afisa formularul ce se va deschide.

 


IV.           In a patra caseta de dialog Command Button Wizard (vezi figura 22) se va selecta optiunea Text daca vrem ca in butonul de comanda sa apara un text (cel ce se va introduce in caseta de text din dreapta optiunii) sau optiunea Picture daca in butonul de comanda vrem sa apara o imagine. Pentru continuarea operatiei de creare a butonului de comanda se executa clic pe Next.

Figura 22 In aceasta caseta de dialog se stabileste daca butonul de comanda va avea pe el text sau imagine.

 


V.     In ultima caseta de dialog Command Button Wizard (vezi figura 23) se va tasta un nume pentru butonul de comanda (daca el va fi referit intr-o procedura eveniment) si se executa clic pe Finish pentru ca Microsoft Access sa creeze butonul de comanda.

Figura 23 Optional, butonul de comanda poate fi denumit.

 



Dupa terminarea procesului de creare a butonului de comanda acesta va apare pe ecran, ca in figura 24.


2.4.2. Crearea unui buton de comanda fara a folosi un wizard

Pentru a crea un buton de comanda fara a folosi un wizard se vor executa urmatoarele operatii:

1.     Se deschide formularul in fereastra Design.

2.     Daca butonul Control Wizards din caseta Toolbox este apasat, atunci executati clic pe el pentru a decupla wizard-ul.

3.     Executati clic pe instrumentul Command Button din caseta Toolbox.

4.     Executati clic pe formular acolo unde vreti sa plasati butonul de comanda, tinand apasat butonul mouse-ului deplasati mouse-ul pana cand butonul are dimensiunea dorita si apoi eliberati butonul mouse-ului.  (vezi figura 25).

5.     Asigurati-va ca butonul de comanda creat este selectat si apoi executati clic pe butonul Properties din bara instrumentelor Database pentru a deschide foaia de proprietati a acestuia (vezi figura 26).





6.     Se selecteaza eticheta Event (vezi figura 27) a foii de proprietati si in caseta proprietatii OnClick introduceti numele macro-ului sau procedurii eveniment care vreti sa fie executata atunci cand se executa clic pe buton sau executati clic pe butonul Build din bara instrumentelor Database (vezi figura 25) sau din caseta proprietatii (vezi figura 27) pentru a folosi Macro Builder sau Code Builder.


7.     Daca ati executat clic pe butonul Build, atunci pe ecran se deschide o caseta de dialog pentru a putea selecta un Macro Builder sau Code Builder (vezi figura 28).

Figura 28 Caseta de dialog permite selectarea tipului de Builder

 


Daca in caseta de dialog Choose Builder se alege Code Builder si apoi se executa clic pe OK, atunci se deschide fereastra de editare cod Visual Basic, in care se va tasta codul procedurii eveniment pentru proprietatea OnClick (vezi figura 29).


8.     Daca doriti sa afisati text in butonul de comanda, selectati eticheta Format a foii de proprietati si in caseta proprietatii Caption tastati textul dorit (vezi figura 26). Daca nu doriti un text pe butonul de comanda, atunci puteti folosi o imagine.

2.5. Crearea unui grup de optiuni

Puteti crea un grup de optiuni cu sau fara ajutorul unui wizard. Wizard-ul mareste viteza procesului de creare a grupului de optiuni, deoarece el face toata munca de rutina in locul dvs. Atunci cand folositi un wizard, Microsoft Access va solicita informatii si pe baza raspunsurilor dvs. creaza grupul de optiuni.

De regula, grupul de optiuni cuprinde un numar limitat de casete de validare, butoane de comutare sau butoane de optiuni.

SUGESTIE

Daca doriti sa prezentati mai multe optiuni, atunci folositi o caseta cu lista sau o caseta combinata in locul grupului de optiuni.

2.5.1. Crearea unui grup de optiuni folosind un wizard

Pentru a obtine cele mai bune rezultate, creati grupuri de optiuni numai pentru campurile ale caror tip de date este Number (si a caror proprietate FieldSize este setata pe Integer sau Long Integer) sau Yes/No. Pentru campurile cu alte tipuri de date, folositi o caseta lista sau o caseta combinata.

Pentru a crea un grup de optiuni folosind un wizard executati urmatoarele operatii:

1.     Deschideti formularul in vederea Design.

2.     Daca butonul Control Wizards din caseta Toolbox nu este apasat, atunci executati clic pe el.

3.     In caseta Toolbox executati clic pe instrumentul Option Group.

4.     Executati clic pe formular acolo unde vreti sa plasati coltul stanga-sus a grupului de optiuni. Dupa eliberarea butonului mouse-ului pe ecran apare prima caseta de dialog a wizard-ului controlului selectat.



5.     In prima caseta de dialog Option Group Wizard se va stabili care sunt optiunile grupului. In lista casetei cu dialog se tasteaza eticheta fiecarei optiuni din grup (vezi figura 30). Pe baza acestor date Microsoft Access determina si numarul de optiuni din grup. Executati clic pe Next pentru a continua..


6.     In a doua caseta de dialog Option Group Wizard se va stabili daca va exista sau nu o optiune prestabilita, selectand fir butonul de optiune Yes, the default choice is; sau No, Idon't want a default (vezi figura 31). Daca ati selectat optiunea Yes, the default choice is:, atunci din lista aflata langa acest buton puteti alege optiunea prestabilita (cea care va fi selectata la deschiderea formularului). Executati clic pe Next pentru a continua.


7.     In a treia caseta Option Group Wizard se stabilesc valorile ce se vor atribui fiecarei optiuni. Microsoft Access va propune un set de valori (vezi figura 32), dar puteti sa le schimbati tastand noile valori in coloana Values. Executati clic pe Next pentru a continua.

8.     In a patra caseta de dialog Option Group Wizard se stabileste unde se memoreaza valoarea optiunii selectate. Valoarea optiunii selectate se poate memora intr-un camp (daca se alege optiunea Store the value in this field) sau ea poate fi folosita ulterior (daca se alege optiunea Save the value for later use) pentru executarea unei actiuni, cum ar fi tiparirea unui raport. Executati clic pe Next pentru a continua.


9.     In a cincea caseta Option Group Wizard se stabileste tipul de control ce se va folosi in grupul de optiuni si stilul acestui control (vezi figura 34). Executati clic pe Next pentru a continua.


10. In ultima caseta Option Group Wizard se stabileste titlul grupului de optiuni (vezi figura 35). Executati clic pe Finish pentru a termina crearea grupului de optiuni.


Dupa ce ati executat clic pe butonul Finish in ultima caseata de dialog Option Group Wizard, Microsoft Access 97 creaza grupul de optiuni (vezi figura 36) pe baza informatiilor furnizate.


2.5.2. Crearea unui grup de optiuni fara a folosi un wizard

Pentru a crea un grup de optiuni fara a folosi un wizard se executa urmatoarele operatii:

1.     Se deschide formularul in vederea Design.

2.     Daca butonul Control Wizards din caseta Toolbox este apasat, atunci se excuta clic pe el pentru a deconecta wizard-ul.

3.     In caseta Toolbox se executa clic pe butonul Option Group.

4.     Executati una din urmatoarele operatii:

Daca vreti sa creati un grup de optiuni nelegat, atunci executati clic pe formular acolo unde vreti sa plasati cadrul grupului.

Daca vreti sa creati un grup de optiuni legat, atunci executati clic pe butonul Field List din bara instrumentelor Database sau selectati optiunea Field List din meniul View pentru a afisa lista de campuri si apoi trageti din lista pe formular campul dorit. Daca butonul sau comanda Field List nu sunt accesibile, atunci trebuie sa legati formularul de o sursa de articole folosind proprietatea RecordSource.

NOTA

Trebuie sa trageti campul din lista de campuri. Daca executati clic pe campul din lista si apoi executati clic in formular, atunci controlul va fi nelegat.

5.     In caseta Toolbox, executati clic pe butonul Check Box, Option Button sau Toggle Button si apoi executati clic in interiorul cadrului de grup acolo unde doriti sa plasati coltul stanga-sus al casetei de validare, butonului de optiune sau butonului de comutare. ATunci cand indicatorul mouse-ului este peste cadrul grupului Microsoft Access marcheaza grupul de optiuni pentru a indica faptul ca ceea ce plasati in interiorul acestuia devine parte componenta a grupului de optiuni.

Atunci cand Microsoft Access creaza primul control din interiorul unui grup de optiuni, acesta stabileste proprietatea OptionValue a controlului pe valoarea 1.

6.     Repetati operatia 5 pentru fiecare control pe care vreti sa-l adaugati grupului de optiuni. Microsoft Access stabileste prprietatea OptionValue a celui de-al doilea control pe valoarea 2, a celui de al treilea pe valoarea 3 etc.

NOTA

Pentru a facilita introducerea datelor, faceti ca cea mai folosita optiune sa fie implicita.

Daca ati creat o caseta de validare, buton de optiune sau buton de comutare in afara unui grup de optiuni si doriti sa adaugati acel control grupului de optiuni, atunci trebuie sa taiati si sa lipiti controlul in grupul de optiuni (selectati cadrul grupului inainte de a lipi controlul). Atunci cand taiati si lipiti un control, Microsoft Access stabileste proprietatea OptionValue a acestuia pe valoarea -1 si deci trebuie sa modificati proprietatea pe valoarea dorita. Daca trageti un control existent intr-un cadru de grup, atunci controlul nu devine parte componenta a grupului.

2.6. Crearea unei casete cu lista sau casete combinate

Intre caseta cu lista (vezi pagina 5) si caseta combinata (vezi pag. 6) nu exista mari deosebiri atat in privinta folosirii cat si in modul de creare. din acest motiv in continuare se vor prezenta impreuna.

Pentru a crea o caseta cu lista sau o caseta combinata, pe care s-o utilizati pentru afisarea unor valori din care sa puteti selecta valoarea necesara, trebuie sa stabiliti doua lucruri:

De unde vin valorile ce sunt afisate in caseta cu lista sau in caseta combinata;

Ce se va face cu valoarea pe care utilizatorul o selecteaza din caseta cu lista sau caseta combinata.

Liniile (valorile) dintr-o caseta cu lista sau caseta combinata pot proveni dintr-o lista de valori fixate pe care o introduceti atunci cand creati controlul (se foloseste atunci cand lista nu se va schimba prea des) sau ele provin dintr-o tabela sau interogare (se utilizeaza atunci cand lista se modifica foarte des). Spre exemplu, puteti folosi o lista de valori fixe la o caseta cu lista (sau caseta combinata) ce contine intrari pentru unitatile de masura ( Kg., Buc., Set etc.). Insa, daca aveti o tabela Products si doriti sa afisati lista furnizorilor de produse, atunci bazati caseta cu lista (sau caseta combinata) pe o tabela sau interogare. Caseta cu lista (sau caseta combinata) examineaza tabela Suppliers si afiseaza numele furnizorilor din care veti putea alege.


Atunci cand utilizatorul selecteaza o valoare dintr-o caseta cu lista sau caseta combinata, aveti doua posibilitati: puteti stoca valoarea selectata intr-o tabela (nu aceeasi cu cea din care ati obtinut lista) sau puteti transmite valoarea unui alt control. Spre exemplu, pentru caseta cu lista Supplier din figura 37, daca un utilizator selecteaza "Pavlova, Ltd.", atunci Microsoft Access cauta valoarea cheii primare (SupplierID) pentru Pavlova, Ltd. din tabela Suppliers si seteaza campul SupplierID (cheie externa) din tabela Products la aceeasi valoare. Aceasta este valoarea care se stocheaza. Deoarece memorati o valoare pe baza unei selectii din caseta cu lista, aceasta este legata (Retineti ca valoarea SuuplierName care provine din tabela Suppliers este afisata in lista dar nu este stocata).

Pe de alta parte, daca doriti sa folositi valoarea selectata dintr-o caseta cu lista sau caseta combinata pentru a determina continutul unui alt control sau al altor controale, va trebui sa creati o caseta cu lista sau caseta combinata nelegata. Spre exemplu, puteti crea o caseta cu lista sau caseta combinata pe care s-o folositi pentru a cauta un articol corelat pe un formular, sau ca filtru pentru o alta caseta cu lista sau caseta combinata.

Operatia de creare a casetelor cu lista sau a casetelor combinate, legate, folosind List Box Wizard respectiv Combo Box Wizard este foarte asemanatoare cu crearea campurilor folosind Lookup Wizard, care a fost tratat pe larg intr-un alt capitol, in continuare se va prezenta numai crearea celor doua tipuri de controale nelegate, folosind un wizard.

2.6.1. Crearea casetelor cu lista sau casetelor combinate, nelegate, folosind un wizard, pentru afisarea valorilor dintr-un camp

Pentru               a crea un control de tip caseta cu lista sau caseta combinata nelegata, folosind un wizard se executa urmatoarele operatii:

1.     Se deschide formularul in vederea Design.

2.     In caseta Toolbox se executa clic pe butonul Control Wizards, daca acesta nu este deja activat.

3.     Se executa clic pe butonul List Box sau Combo Box, in functie de tipul de control pe care vreti sa-l creati. Exemplificarea este facuta pentru o caseta combinata.

4.     Pe formular se executa clic in locul unde vrem sa plasam controlul. Pe ecran va apare prima caseta de dialog a wizard-ului controlului selectat.

5.     Deoarece se creaza o caseta combinata care sa afiseze valorile dintr-un camp al unei tabele, in prima caseta de dialog Combo Box Wizard se va selecta optiunea "I want the combo box to look up the values in a table or query" (vezi figura 38). Executati clic pe butonul Next pentru a continua.

Figura 38 Alegerea sursei pentru crearea listei de optiuni

 



6.     In a doua caseta de dialog Combo Box Wizard se alege tabelul sau interogarea in care se afla campul ce va furniza valorile din lista afisata de control (vezi figura 39). Executati clic pe butonul Next pentru a continua.

Figura 39 Selectarea tabelei sau interogarii ce contine campul ce va furniza valorile listei de optiuni

 


7.     In a treia caseta de dialog Combo Box Wizard se aleg campurile care contin valorile ce vor fi afisate. In lista Available Fields se selecteaza un camp si se excuta clic pe butonul > pentru a-l muta in lista Selected Fields (vezi figura 40). Executati clic pe butonul Next pentru a continua.

8.     In a patra caseta de dialog Combo Box Wizard se stabileste cum va arata lista si daca se afiseaza sau nu coloana care contine valoarea ce va fi folosita ulterior (vezi figura 41). In pasul anterior am selectat doua campuri, dar in aceasta caseta de dialog am stabilit ca se vor afisa numai valorile campului DenumireProdus. Totusi, daca in continuare se va folosi optiunea selectata de utilizator in lista pentru a executa alte operatii, atunci valoarea ce se va utiliza corespunde valorii din CodProdus (coloana din lista care nu este afisata). Lista din control poate afisa mai multe coloane, nu doar o singura coloana ca in acest exemplu. Executati clic pe butonul Next pentru a continua.


9.     In a cincea caseta de dialog Combo Box Wizard se tasteaza numele controlului (vezi figura 42). Acestea sunt toate informatiile pe care trebuie sa le furnizati wizard-ului pentru a crea caseta cu lista sau caseta combinata.

10. Executati clic pe Finish pentru ca Microsoft Access sa creeze caseta cu lista sau caseta combinata pe baza informatiilor pe care le-ati furnizat in casetele de dialog ale wizard-ului.



In figura 43 este prezentat rezultatul aplicarii algoritmului descris.


2.6.2. Crearea casetelor cu lista sau casetelor combinate, nelegate, folosind un wizard, pentru afisarea unei liste fixe de valori

Pentru a realiza, folosind un wizard, o caseta cu lista sau caseta combinata, nelegata care sa afiseze o lista fixa de valori se executa urmatoarele operatii:

1.     Se deschide formularul in vederea Design.

2.     Daca butonul Control Wizards din caseta Toolbox nu este apasat, se executa clic pe el pentru a activa wizard-ul.

3.     In caseta Toolbox se executa clic pe butonul List Box sau Combo Box, in functie de tipul de control pe care vreti sa-l creati.

4.     Pe formular se executa clic acolo unde vreti sa plasati coltul stanga-sus al controlului. Pe ecran apare prima caseta de dialog a wizard-ului pentru controlul ales. Exemplificarea algoritmului se va face pentru crearea unei casete cu lista.

5.     Deoarece vrem sa realiza un control care va afisa o lista fixa de valori, in prima caseta de dialog List Box Wizard se selecteaza optiunea "I will type in the values that I want" (vezi figura 44). Executati clic pe butonul Next pentru a continua.


Figura 44 Selectarea optiunii corespunzatoare realizarii unei liste de valori fixe.

 


6.     In a doua caseta de dialog List Box Wizard se stabileste cate coloane va avea lista si care sunt optiunile listei (vezi figura 45). Executati clic pe butonul Next pentru a continua.

7.     In ultima caseta de dialog List Box Wizard se precizeaza eticheta controlului. Pentru a termina operatia de creare a controlului executati clic pe butonul Finish.


Dupa ce ati executat clic pe butonul Finish, Microsoft Access va crea controlul pe baza indicatiilor pe care le-ati furnizat in casetele de dialog ale wizard-ului (vezi figura 47).



NOTA

Cand folositi un wizard pentru a crea o caseta cu lista sau o caseta combinata bazata pe o tabela sau interogare, Microsoft Access creaza o instructiune SQL cu campurile pe care le-ati selectat si stabileste proprietatea RowSource a controlului pe respectiva instructiune SQL. Cand caseta cu lista sau caseta combinata nu este sortata in ordinea pe care o vreti, atunci puteti modifica instructiunea SQL executand clic pe butonul Build de langa proprietatea RowSource.