Excel
SEMINAR - exercitii ExcelSEMINAR 7 Sa se creeze 3 formulare numite Meniu, Creare, Inserare, Actualizare. I. Primul formular Meniu principal va avea 3 butoane de comanda care sa apeleze pe rand fiecare dintre celelalte 3 formulare(Creare, Inserare, Actualizare). II. Formularul Creare va avea 5 butoane de comanda astfel: Primul va crea 4 tabele o Clienti(codcl, denumire client, adresa client) o Facturi(nr factura, data facture, cod client) o Produse(cod produs, denumire produs, observatii) o Liniifacturi(nr factura, pozitie factura, cod produs, cantitate, prêt) Al doilea buton va adauga in structura tabelei produse campul UM (unitate de masura). Al treilea buton va modifica tipul campului denumire client prin schimbarea marimii dimensiunii Al patrulea buton va elimina campul Observatii din tabelul produse. Al cincilea revine la meniul principal. III. Formularul Inserare va avea 5 butoane de comanda. Fiecare dintre aceste butoane va insera inregistrari pe rand in cele 4 tabele. Al 5 lea buton va face revenirea la meniul principal. IV. Formularul Actualizare va avea 2 butoane de comanda: a. Primul buton corecteaza numele clientului cu codul 5 (din Ion devine POPA). b. Al doilea buton revine la meniul principal. REZOLVARE: Se creeaza un formular numit Meniu pe care sa avem 3 butoane de comanda: a. Primul buton se numeste apelare formular creare b. Al doilea buton se numeste apelare formular inserare
c. Al treilea buton se numeste apelare formular actualizare Din meniu alegem Button:
Si plasam butonul pe formular. Procedam similar pentru cele 3 butoane de comanda.
Dupa ce am plasat pe formular cele 3 butoane, mergem la proprietatile fiecarui buton de comanda si avem 2 proprietati : Name Caption Cele doua proprietati le gasim la ALL. Primul buton:
La proprietatea Name a primului buton vom scrie prefixul butonului urmat de nume (prefixul pentru buton de comanda este cmd), deci vom scrie cmdcreare iar la Caption vom scrie apelare formular creare.
Selectam apoi Event si gasim aici evenimente ce pot fi associate unui buton de comanda. Alegem evenimentul On click iar din combo box-ul asociat alegem Event Procedure, dupa care dam click pe builder .
Rezultatul va fi afisarea ferestrei Visaul Basic, unde vom introduce codul acestui eveniment, intre Private sub cmdcreare_click si End Sub: DoCmd.Close DoCmd.OpenForm 'creare tabele' Comenzile SQL care se scriu aici incep cu DOCMD(acesta este obligatoriu la orice comanda SQL).
Se procedeaza similar si pentru celelalte doua butoane de comanda. Al doilea buton: Name:cmdinserare Caption: apelare formular inserare
Al treilea buton: Name: cmdactuzalizare Caption: apelare formular actualizare
Se creeaza al doilea formular numit Creare tabele. Plasam aici 5 butoane de comanda. Pentru fiecare buton completam proprietatile Name si Caption, iar apoi avem evenimentul On Click asociat fiecarui buton.
La evenimentul On Click al butonului Creare tabele avem comenzi SQL pentru crearea tabelelor: Private Sub Command1_Click() DoCmd.RunSQL 'CREATE table clienti(codcl INTEGER PRIMARY KEY, dencl TEXT(20), adresacl TEXT(25))' DoCmd.RunSQL 'CREATE TABLE PRODUSE(CODPR INTEGER PRIMARY KEY, DENPR TEXT(20), OBSERVATII TEXT(40))' DoCmd.RunSQL 'CREATE TABLE FACTURI(NRFACT INTEGER PRIMARY KEY, DATAFACT DATE, CODCL INTEGER REFERENCES CLIENTI(codcl))' DoCmd.RunSQL 'create table liniifacturi(nrfact integer references facturi(nrfact), pozfact byte, codpr integer, cantpr integer, pretpr integer, foreign key(codpr) references produse(codpr), primary key(nrfact,pozfact))' End Sub La butonul adaugare
DoCmd.RunSQL 'alter table produse add UM text(5)' La butonul modificare vom avea: DoCmd.RunSQL 'ALTER TABLE CLIENTI ALTER DENCL TEXT(30)' La butonul eliminare vom avea: DoCmd.RunSQL 'ALTER TABLE PRODUSE DROP OBSERVATII' La butonul revenire la meniu vom avea: DoCmd.Close DoCmd.OpenForm 'meniu' Se creeaza formularul inserare cu 5 butoane de comanda, la care vom preciza proprietatile Nae si Caption . Fiecare dintre aceste butoane insereaza inregistrari in fiecare dintre tabele:
La evenimentul on click al butonului inserare inreg client vom avea: DoCmd.RunSQL 'insert into facturi values(10,#8/11/2008#,5)' DoCmd.RunSQL 'insert into facturi values(11,#7/11/2008#,5)' DoCmd.RunSQL 'insert into facturi values(12,#5/11/2008#,6)' DoCmd.RunSQL 'insert into facturi values(13,#9/11/2008#,6)' Similar se procedeaza si pentru celelalte butoane. Se creeaza formularul actizalizare cu 2 butoane de comanda. Procedura eveniment a butonului actualizare va fi:
DoCmd.RunSQL 'update clienti set dencl='popa' where codcl=5'
|