access coanda

Upload: caroline-gilbert

Post on 04-Jun-2018

271 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 Access Coanda

    1/99

    ACADEMIA DE TRANSPORTURI, INFORMATIC I COMUNICAII

    Seria Teorie Economic, Matematic, Informatic

    ILIE COAND

    A C C E S S

    Ghid de iniiere (proiectarea i utilizarea

    Bazelor de Date)

    Chiinu, Evrica 2001

  • 8/13/2019 Access Coanda

    2/99

  • 8/13/2019 Access Coanda

    3/99

    Argument

    A R G U M E N T

    aarea Bazelor de Date (BD) la gestionarea informaiei n diverse domenii ale-- i istre devine din ce n ce mai insistent. Apariia pe pia a pachetuluiVlkrra>of Office, care include i aplicaia Access, un soft destul de convenabil i- .; : aenani oricare, a accelerat simitor implementarea proceselor automatizate deTrei i datelor.

    e, ca o BD s funcioneze eficient n favoarea utilizatorului, acesta dinirs.i i : : e. n primul rnd, s cunoasc bine modul ei de exploatare, precum i cele~ -j :: "_mte principii de funcionare a ei. De asemenea, utilizatorul trebuie s fie

    ..." - ' i cont de posibiliti i necesiti, s fac unele modificri pentru a se :

  • 8/13/2019 Access Coanda

    4/99

    Argument

    Volumul lucrrii date permite studierea tehnicilor de proiectare a BD utiliznnumr relativ mic de elemente i noiuni din Access. ns instrumentele folositmodul de utilizare practic i concret snt suficiente pentru a nva proiectarea BD simple.

    S fim contieni c proiectarea unei BD poate fi privit ca o activitate creaie. Dou baze de date pot pstra i furniza aceeai informaie, ns, dup structi dup modul de exploatare, ele pot fi cu totul diferite.

    Materialul lucrrii este repartizat n lucrri de laborator, fiecare avndanumit scop. Repartizarea este foarte relativ i depinde, n mod direct, capacitatea cititorului de a realiza cele expuse timpul rezervat pentru o lucrarlaborator.

    Atenionm c studierea noiunilor i a tehnicilor de proiectare trebuie fcanume n ordinea n care este expus materialul.

    La sfritul fiecrei lucrri este prezentat o list de ntrebri, probleme, discucare vor spori eficiena studierii, cititorului oferindu-i-se posibilitatea de a-i ncforele la proiectarea i a altor obiecte.

  • 8/13/2019 Access Coanda

    5/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    Lucrarea de iaborator nr. 1

    1. C ite vaetape principiale la nceputul proiectrii uneiBaze de Date

    " - Hi S se proiecteze o baz de date (BD) care ne-ar ajuta s facem un: ~ : u al informaiei despre mrfurile vndute pe parcursul unei perioade. Ne

    ^ ;rem o BD, care ne-ar da posibilitate s analizm, n orice moment,: sir. : :i e pentru fiecare tip de marfa vndut.

    - r : scop, mai nti, trebuie s stabilim urmtoarele: .- :'nd s se ia la eviden informaia despre vnzri?Rspunsul poate fi

    la fiecare operaie de vnzare s se fac nregistrrile cu informaia: : i Astfel s-a ajuns la concluzia ca imediat, dup sau poate chiar n

    ~ : ~ : . inzrilor, s se nregistreze informaia necesar i suficient pentru a: ms -iaunde la ntrebrile formulate.

    1 s fie nregistrat informaia? Una dintre cele mai obinuite i comode : j t nregistrare este forma de tabele. Deci informaia poate fi nregistrat n

    mbele.: laicele vor fi necesare? De regul, ntr-o tabel se conine informaie

    . . : la un grup de particulariti ale unui obiect, proces etc. n cazul nostru- ' : a despre informaia referitoare la vnzri. Prin urmare, pentru acest proces11 : r - c erca s folosim doar o singur tabel.

    - :: : e i obinuit const din coloane (n terminologia BD coloanele se numesci rnduri (informaia dintr-un rnd ntreg al unei tabele se numete

    'ir ;: i;el De regul, ntr-o coloan se introduce informaie omogen, de acelai:: ::: rindurile. Cte coloane va avea tabela i ce fel de informaie va fi n

    i nire ele? Lund n consideraie condiiile problemei, rspunsul poate fiJL-Tiiii:. tabela urmeaz s conin 5 coloane pentru informaia despre: - e i mrfii, unitatea de msur, data vnzrii, cantitatea i preul,

    : I :cim stabilit c vom avea doar o singur tabel i c ea va conine coloanele^ Hi ro ta ia respectiv, este util s se fac o mic analiz, pentru a stabili dac

    ~ ~ f ' gur tabel este suficient. n cazul dat, problema formulat este simpl,i r. : e comod i suficient s folosim doar o singur tabel, compus din cele 5- :m e. In care vom nregistra informaia precizat mai sus.

    ..... ^nentiil n care am determinat rspunsurile, cel puin la aceste 5 ntrebri,i : I crearea unei Baze de Date noi.

    ' . funcie de versiunea pachetului MicroSoft Office, dup activareai l ..... \ceess (mediul Access poate f activat n diferite moduri: se poate face un

    : - 1 >: r.;ia cu denumirea respectiv din meniul Programs din Sta rt sau* se^poate: 7...i :: respectiv de pe Desktop), pe ecran pot s apar diferite imagini X}

    "t -":V": * de lucru. De fiecare dat trebuie s acionm conform indicaiilor iirea lii :* : >:nse. n funcie de scop. n fig. 1.1 este prezentat imaginea la prima

    ::: cescr.idere a Access-ului. Observm n ea mai multe opiuni, dintre care,: t *i " doar una este potrivit, i anume, opiunea Blank Access Database.: : ci ;: 5ie mediul pentru crearea unei Baze de Date noi.

  • 8/13/2019 Access Coanda

    6/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    More Files

    Create a new database using

    vizards, pages; and projeQdejJWTfire din

    A: \planificare zi \planif icare zi A: \planificare\planificare zi F:\planificare zi\planificare zi F:\planificare ff\planificare f f

    'OOCUfflenfcS

    '^ My Documents Computer

    Network Places ^Sho rtc ut to 3.5 Floppy (A)

    Shortcut to DOS (C)

    Fferjame: |db2

    Saveasjype: jjvBcrosoft Access Databases

    Atragem atenia c pentru nceptori ar fi foarte bine s studieze cu atenimaginile i comentariile ataate la fig. 1.1-1.7. ncercai s creai Baze de Ddeocamdat goale, cu aceleai (sau alte) denumiri i n diferite directorii, apoi, foltehnica din Windows, s modificai denumirile, s le copiai n alte directorii, slichidai definitiv. n aa mod vei nsui bine gestionarea fiierelor de tip mdb.

    S trecem la aciuni concrete pentru proiectarea unei Baze de Date noi. icont de comentariile din fig. 1.1-1.3, n versiunea Access-2000, sau din fig. 1.4-versiunea Access-97, acionm respectiv ca s obinem o imagine asemntoare cudin fig. 1.8, desigur, la nceput, far informaia respectiv completat. Citii cu atecomentariile din fig. 1.8 i completai informaia n modul respectiv, pentru a obntocmai ceea ce este n ea.

    Imaginea din stnga apare n versiuneaAccess-2000. Avem posibilitatea de adeschide una dintre bazele de date dejacreate. n acest scop trebuie de activatopiunea Open an existing file (aa cumeste artat aici), apoi de fcut un click pe

    :ta ataat cu denumirileTierelor,j^C de fapt, snt nite baze de

    un click pe butonul OK, BD,fiierul respectiv, va fi deschis. n

    care dorii s creai o baz de datenou, treBtrk^ictivat opiunea respectiv Blank Access database, apoi - OK.Exist i alte modaliti de deschidere aunei baze de date, de exemplu, cu dubluclick pe denumirea fiierului.

    Fig. 1.1. Opiunile n prima etap de lucru n mediul Access.

    Dup ce am determinat c intenionm s crem o bazie date nou, adic, dup ce am acionat n moduldeSmmai sus, pe ecran apare urmtoarea imagine (nAccess-^ , n aceast etap trebuie s artm loculunde dorim caBa^a de Date nou s fie salvat. nacest scop acionniici. Apoi atribuim un nume pentru Baza de Date n curs de proiectare, introducemnumele^ici, avem grij ca ajci s fie indicatinfoprfaia respectiv^pcfi acionm butonul Create.

    Jtentru a evita cop&fii, trebuie s fim ajatribuirea Bazei de Date^&gTs nu coincid cuvreunora creat i salvf^falte directorii.

    18 reateZj Cancel

    Fig. 1.2. Locul de pstrare i denumirea BD.

  • 8/13/2019 Access Coanda

    7/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    More Files,

    Create a New Database Using

    Qatabase Wizard

    D: \FURNME1D:\calcNMPIANlD:\calc\ 3 IBLIOD:\ 3 DStud\ulici 97

    Fig. 1.3. Fereastra de baz a bazei de date db2.

    n fig. 1.4 este artat imaginea careapare n Access-97, corespunztoare cucea din fig. 1.1. Aceasta este lista celormai recent d#s6mse Baze de Date.

    Imediat dup acionarea butonului Create, apare fereastrau imaginea din fig. 1.3. n aceast etap, cnd Baza de

    Date^ste^goal, nici un obiect nu este creat, ni se ofertrei opiuniT^ste-^blaes ncepei cu crearea unei tabele n

    y'egimul de proiect (Desgl^k^Observai butoaneleOpen, Design, New, care pot fi ac^nate^entru a ncepe

    proiectarea unei tabele noi, trebuie de acionatNewentru a deschide proiectul unei tabele deja proiectate,

    ale^bfiaDesign, iar pentru a o deschide cu afiarea datelordin ea S fim ateni ca s fie activat pagina cuobiectele respectv&^Dac se lucreaz cu tabelele, atuncitrebuie s fie activat abeast pagin -- lista tipurilor de

    te din care poate fi construit o Baz de Date nAccess^ZOOft^omparai-o cu lista de obiecte respectivedin versiunea Acbesscg? (fig. 1.7). Fcnd cte un click pefiecare denumire din aceast list, vom obine lista cuobiectele deja create de tipul dat.

    Fig. 1.4. Prima imagine la activarea Access-ului-97.

    Imaginea n Access-97, corespunztoarecelei din fig. 1.2. Atenionm cdiferenele snt minifne. De fiecare dat,la deschiderea unei Baze de Date, trebuies fim ateni la ceea ce ni se propune i salegem opiunea potrivit, innd cont destogurile concrete. n cazul dat, Baza de^Dal^W^va fi salvat, creat n

    Save in; jwJ fffT zl :jDo22V]F3ez222: jFaez222s

    Fifen me: )db^ --- ---- directoriul nff.Save as rpe: jMicrosoft Access Databases 3

    Fig. 1.5. Locul de pstrare i atribuirea numelui db2.

    7

  • 8/13/2019 Access Coanda

    8/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    New Table

    Datasheet V

    Table 'W^ar Import Tatii* Link TableCreate a new tabfe in Design

    view, /

    I Reports ] 3 Macros j ^1Tablei : Table

    PagirnleTculistade obiecte de tipurileTjjt Queriescare potfi create n Accgs&^L La nceputulcreriiBDtoate paginilej^ft^goale. Dac vom alegeopiuneaDataSheeHfiew,atunci vom obineimaginea asemntoare cuaceasta,iar opiuneDesign Viewasigurimaginea-proiec

    icord; h i ab le l : Table

    I Field Name I Data Type I Description M

    Field Properties

    nsral ILookup )

    Fig. 1.7. Alegerea opiunii respective la crearea unei tabele noi.

    Imaginea n Access-97corespunztoare celei din fig. 1.3.Observm componentele comune

    .sens, ns plasate diferit. Lista de paginheu^obiecte este plasat aiciorizontal, acrte^-vertical. Atragematenia c caseta Newtableaparedup acionarea butonului New, apoi putem alege o opiune din list. Ateniei urice obiect deja creat poatefi deschis n regim de proiect (DesignView) pentru &modific structura iui.

    Fig. 1.6.Alegerea opiuniiDesign Viewla proiectarea unei tabele noi.

    1.1. Crearea tabelelor - fundament al Bazelor de Date

    Dup ce ai pregtit totul, aa cum este artat n fig. 1.8, ncercai s nchidtabela prin acionarea semnului X din colul dreapta-sus; ca rezultat vei prentmpinai c trebuie atribuit un nume tabelei date. Rspundei cuVinzari,iar lantrebarea, dac dorii s avei o cheie primar, alegei variantaNo,i, n aa mod,tabela va fi salvat cu numele atribuit. Aadar, proiectul tabelei este gata. n fereBazei de Date, pe paginaTables,trebuie s observai acest obiect,Vnzri.Facei unclick, apoi Open, sau un dublu click, i tabela se va deschide n forma ei de tobinuit coloanele cu denumirile respective, introduse n coloana FiedNamedinimaginea-proiect a acestei tabele. La nceput tabela este absolut goal. Informurmeaz s fie introdus pe parcursul operaiilor de vnzare n modul stabilit mai s

    Este important s facei deosebire dintre imaginea proiect a unei tabele i propriu-zis, cu informaia respectiv. Atragem atenia c n fig. 1.8 se arat imagn care apare aceeai tabel n ambele moduri (imagini):de proiect,cea din stnga, itabelobinuit _ cea din dreapta.

  • 8/13/2019 Access Coanda

    9/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    O dat creat aa-zisul fundament al bazei de date, se poate trece la o etap nou:organizarea introducerii continue a informaiei. La prima vedere, totul pare destul desimplu, clar i evident, ns modul n care vom organiza procesul de introducere ainformaiei va determina volumul de erori, date introduse greit etc. la nregistrareainformaiei. Iat de ce, n etapa de proiectare a tabelei, este util s folosim, cel puin,unele dintre cele mai simple, mai accesibile procedee de verificare a informaiei. ncazul nostru, putem pune sub control cantitile i preurile controlnd ca valorile sfie pozitive, iar data vnzrii s fie introdus n mod automat i s coincid cu data zileicurente. Acest lucru poate fi asigurat dac determinm proprietile n modul indicat(fig. 1.8). n acest caz concret, pentru coloana Cant se pune o restricie: valoriletrebuie s fie pozitive, fapt artat prin Validation rule >=0, iar mesajul Cantitateatrebuies fie >=0va aprea imediat pe ecran n cazul cnd va fi vreo ncercare de aintroduce valori negative. Cifra0 (zero)n rndul Default value arat c valoarea0 (zero)n coloana Cant se va nregistra n mod automat. Pentru a asigura nregistrareaautomat a datei curente, e necesar de selectat rndul DataVinz i de scris funcia carecalculeaz data zilei curente Date() n rndul Default Value.

    Vnzri: TableField Name

    DenUnMas*DataVif CantPret

    General I Field Size FormatDecimal Places Input Mask Caption Default Value Validation Ruli

    Data Type

    ookupSingle

    Auto

    0>0

    Date/TimeCurrency AutoNumber Yes/NoOLE ObjectHyperlinkLookup Wizard.,

    Validation Texo Canti tatea trebuie sa fie >-Q!

    Tabela Vinzari Ia etapa de proiect.nainte de aavea posibilitatea de aintroduce informaia n tabel, estenecesar de a determina coloanele itipurile de date n ele. n cazul nostru,se planific 5 coloane, cu denumirileindicate n coloana Field Name i cutipurile de date respective indicate ncoloana Data Type.

    w Description |

    I Vomzafi : Vv \I Desi 1UnMas I Dat&Vi ii J* 1Came Kg 05/05/01 100 30

    Lapte L 06/05/01 20.7 5Apa But.2L 06/05/01 30 2Came Kg 06/05/01 50.25 25Apa But.3L 05/06/01 100 3Apa But.2L 06/05/01 30 2

    ''Kapte L 06/05/01 50.5 5^ 4 0 0 z J

    R e c o r d ; I { 6 1M \ >*\ of 7

    TabelaWmzari inl^m de tabel, careconine om careva inwmMie. Atragematenia: n coloanele Deibi UsiMas seconine inforhaaie de tip Text, m'sqloaneleCant i Pret -Nnformaie de tip Number(numr), iar n DataVinz informaie de tip Date/Time conformtipurilor de date artate n coloana Data Typedin figura din stnga,

    Fig. L8. Proiectarea unei tabele.

    Atenie. Atunci cnd selectm un alt rnd n coloanaField Name (vezi imagineadin stnga fig. 1.8), lista de proprieti, afiate puin mai jos n aceeai imagine-proiecL poate fi alta i, pentru fiecare cmp, trebuie de ales proprietile cuvenite. Aceasta

  • 8/13/2019 Access Coanda

    10/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 1

    nseamn c fiecare coloan din tabela care o proiectm poate avea setul su stab proprieti.

    Introducerea datelor poate fi organizat n diverse moduri. Ne vom opri la csimplu mod, care ntru totul ne convine. Deschidem tabela (selectm tabela n fe bazei de date, acionm butonul Open (deschide)) i pe ecran apare tabela gata pa primi informaia.

    Introducerea informaiei n cazul dat este un proces simplu, trebuie doar sateni la ceea ce introducem. Se presupune c informaia introdus este cea indicfig.1.8, partea din dreapta. Aceast tabel poate fii completat n momentul vnzfiecare zi. In aa mod vom reui s nregistrm informaia necesar la timpul potDeci, pentru asigurarea pstrrii informaiei primare despre vnzri, perscompetent trebuie s introduc toat informaia care se cere conform coloanelotabela proiectat.

    In scopul de a v nsui la nivelul cuvenit proiectarea tabelelor:1) proiectai aceeai tabel atribuindu-i un alt nume;2) facei o copie a unei tabele create, ca i n sistemul Windows;3) deschidei n imagine de proiect o tabel deja creat i ncercai s schim

    locul unor coloane (se procedeaz asemenea ca la copierea informaieWord);

    4) facei modificri n tipurile de date pentru unele coloane i analizai rezult5) modificai formatul datelor, n special, al datei calendaristice;6) exersai cu introducerea datelor, lichidarea informaiei din cteva rn

    lichidarea total a informaiei din tabel;7) introducei informaie care contravine condiiilor puse la proiectare i anal

    modul de afiare a mesajelor;8) introducei cmpuri noi;9) copiai cteva nregistrri dintr-o tabel n alta (se face ca n Word);10) modificai dimensiunile coloanelor n tabele (se face ca i n Excel);11) deschidei n fereastra de baz paginile Quieries, Forms, Reports, Ma

    Modules ca s v convingei c snt goale.

    ntrebri i probleme1. Care obiect poate fi considerat element alCare ar putea fi cmpurile, dac am

    fundamentului unei BD? dori s crem o tabel cu informaia2. Cum se atribuie denumirile unei coloane? despre:3. Ce este un tip de date al unui cmp? 1) vnzri la un magazin de nclmin4. Cum putem modifica tipurile de date la un te;

    cmp? 2) mprumutri de cri la o bibliotec;5. Ce este i cum poate fi folosit For mat-ui? 3) persoane pentru o cltorie turist6. Ce este o restricie i cum poate fi atribuit? 4) transmiterea unor mrfuri dint7. Cum putem modifica ordinea coloanelor? depozit n altul;8. Cum putem modifica denumirea unei 5) achiziionarea unor produse de

    tabele? populaie.9. n cte forme de imagini putem deschide o

    tabel?

  • 8/13/2019 Access Coanda

    11/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 2

    Lucrarea de laborator nr. 2

    1. 2. rea eaobiectelor de tip Select Query (cerere, interpelare)

    51 .c clm s crem o cerere, care ne-ar afia rspunsul la problema formulatiierirs& ie Laborator precedent. Atenionm c9dup cum vom vedea mai trziu,:r ; i ; : : - : : lem poate f rezolvat doar prin crearea unei singure cereri.

    : : Irr. pagina Queries din fereastra BD curent, acionam butonul New i peicrm ti. :cdne o imagine asemntoare cu cea din fig. 1.9 ~ fereastra cu imaginea-i~ jr : cereri. Selectm tabela Vinzari, apoi acionm butonul Add (sau facem : ,: l : :.:k pe denumirea tabelei), dup care nchidem cutia Show table. In. : uii-t, :1c :nd cte un dublu click pe denumirile coloanelor din lista Vinzari, vomi iimacrjea din fig. 1.3.

    Confirm c acionm n BD Labor..**QLiCJi | Macros Modules

    Suntem pe pagin Queries din Labor.Show T able Lista din care a fost trecut lista cmpurilor. jf

    Tables | ~ Queries j Both | f .... : f lose

    Fereastra-proiect a unei Select Query, numele Queryl.

    ista cu denumirile coloanelor (cmpurilor) din tabelaadugat Vinzari. De aici vor fi copiate n gridul cererii,rndul Field.

    4'

    Z acife V1jffliiamriL..

    Fig. 1.9. Imaginea-proiect a unei cereri (Select Query).:! La nceput imaginea aprut nu va conine rndul Total din Gridul

    r,rc -i aduga, facem un click pe 2 (totals) din bara cu butoane respectiv" grid se va insera rndul Total cu Group By n fiecare coloan (cmp).

    ir ce fcut cte un click n fiecare coloan, n zona din dreapt a celulelor,r : : :es:a Group By i, din lista aprut de fiecare dat, de selectat cuvntuli i apar aa cum e artat n fig. J .10. ,: : din fig-1-10 este o cerere de tip Select, care are un cmp calculat, cmpul

    r: se obine rezultatul nmulirii numerelor din coloana (cmpul) Cant curaoana (cmpul) Pret n fiecare rnd (nregistrare, record) din tabela: eres:a Group by din celula (Den, Total), coloana Den, rndul Total din: : roat informaia din tabel se divizeaz n attea grupe cte denumiri

    11

  • 8/13/2019 Access Coanda

    12/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 2

    diferite avem n coloanaDen.n cazul dat vom obine trei grupe: Lapte,ApaCarne, deoarece n coloanaDensnt doar aceste trei denumiri diferite. Funcia Sumdin (Cost, Total)semnific c se va calcula suma costurilor n fiecare grup, deci vavea trei sume rezultante. FunciaAvgdin coloanaPretva calcula media aritmetic preurilor n fiecare grup. Funcia First din DataVinz va determina data din prnregistrare din fiecare grup, iar funcia Last dinUnMas- unitatea de msur dinultima nregistrare fcut n fiecare grup. FunciaAscending(cretere) va sortiinformaia n ordinea alfabetic a denumirilor din coloanaDen.

    'vdit ery Tools Window Help

    . It G& . . - I j W 'I L * b c * : D a t a b a s e

    Forms j Reports j 3 Macros ] Moc jies

    CSickamacest buton pentru a afia rezultatul cererii create.Ljstadin care se aleg

    netiile oentruTotal.Uncmp de calculcunumeleCost:valoareadinCantsfe nmulete

    Fig. 1.10. Imaginea-proiect a unei Select Query cu calcularea sumelor totale pe g

    n aceast etap putem spune c am creat deja obiectul numitTotalGr- o cererede tip Select,care n orice moment ne asigur afiarea pe ecran a rezultatulurspunsul la problema formulat la nceput. Adic ni se arat (vezi fig.1.11)c Apaafost vndut n sum de 420,Carne- 4256.25,Lapte~ 356 de uniti bneti.

    Modul de funcionare a acestei BD: pe parcursul vnzri lor s se fnregistrrile respective n tabelaVinzari;cnd dorim s aflm ct s-a ncasat pentrufiecare tip de marfa vndut, trebuie doar sa selectm cerereaTotalGr,apoi sacionamOpeni rezultatul va fi afiat imediat pe ecran.

    12

  • 8/13/2019 Access Coanda

    13/99

    2 l ; ?1 !^ ^ : 1^ ; || Clickai acest buton pentru a trece la imaginea-proiect,

    rfP Quepgg _

    j __ ( 1 _

    ! __ (-ftepniis-} TI Marm* 1 Modules-------- 1 Denumirea cererii create i salvat cu acest nume ' ^rGR ^ _____ Y --l^per Cererea a fost salvat, i s- fost select^tfs^a |: ickat Open i s-a obinut rezultatul.

    '

    Access. Ghid de iniiere Lucrarea de laborator nr. 2

    juc* ToMaBR - S e le c t Query . LastOfUtMas ^ SiisnOfCai c o s t . 1

    S B1 Zmmm

    But.2LKg

    L

    06/05/01 160 2.333333333 05/05/01 150.25 27.5

    06/05/01 71.200001 5

    4204256.25

    356 leors; H1L d l i VfMlBMbf 3V.

    & few

    :g. 1.11. Rezultatul cererii create (proiectul din fig. 1.10).

    " ii: I : -ai convins c cererea afieaz rezultate corecte, facei urmtoarele (de- 1.1 ; ~1 ~:" idei i deschidei cererea din nou i ncercai s dai explicaii):

    T ^ i:: doar ntr-un rnd o liter mare n aceeai liter mic n tabela Vinzari'in s i i a u D e n .

    1 liierii: : ; i: ntr-un rnd un spaiu gol n interiorul sau n faa unei denumiri dinBfet .i _are s analizm succint ce posibiliti ni se ofer prin utilizarea

    riteria iOrdin Gridulcererii. Realizai urmtoarele:: :r:e a cereriiTotalGr(selectai-o, agai-o i, inndCTRLapsat,

    ~^ : cumouse-ulntr-un loc liber (observai c de imaginea mouse-ului*-x aam t :eva cu semnul +), relaxai mouse-ul i vei avea o copie a cererii). Apoi

    .: > aenumirea, asemenea ca i la modificarea denumirii fiierelor,enumirea, de exemplu,TotalCarne.

    - - :: : ere reaTotalCarnen imagine deproiect(selectai aceast cerere, apoirioait Deagn)..: r .'.iulCriteria,coloanaDen,cuvntulCarne,aa cum esteartat n

    I ipci acionai butonul respectiv pentru a afia rezultatul. Explicaiismtjffini,.

    : -1 : copie, numii-oTotalCarneLapte,apoi deschidei-o n forma proiect- Carne OrLapten rndulCriteria,coloanaDensau Carnen rndul

    1 . a Lapte n rndulOr, apoi clickai butonul pentru a vedea ce se obine.>: ibc:iTr :.a:a cnd nchidei cererea, rspundei cuYes pentru a salva cerereaWMS3L

    13

  • 8/13/2019 Access Coanda

    14/99

    O O

    ON

    Access. Ghid de iniiere Lucrarea de laborator nr. 2

    Field: DenT able:Total:Sort:Show:

    Criteria

    VinzariGroup ByAscending0

    UnMasVinzariLast

    0

    DataVinzVinzariFirst

    0

    CantVinzariSum

    Pre _____ cost: Sum([cant]x[pret])Vinzari

    __ Carne

    Informaia din rndurileCriteriai Or este baza construirii expresiilor logice, care determin care informaie s fie afiat i care nu.

    Expression Wher /

    ^e^Lista funciilor opionale ataat la rndulTotal.

    nsriind condiiile logice n rndurileTotal, Criteriai Or i selectnd corect funciile opionale respective din lista ataat celulelor din rndulTotal ngridulcererii, avem posibilitate de a gsi rspunsuri la un numr destul de mare i ntrebri despre vnzri (doar n cazul c rspunsul poate fi gsit n baza ace unice tabele).

    Fig. 1.12. Utilizarea expresiilor logice la selectarea informaiei,

    ntrebri i probleme

    1. n care scopuri se proiecteaz cererile?2. Cum se ataeaz o tabela la o cerere?3. Ce este grid-ul cererii i cum se completeaz cmpurile?4. Cum poate fi modificat denumirea unui cmp?5. La ce se folosete rndulCriteriai Ordin grid?6. Cum s facem ca s apar sau s dispar rndulTotaldin grid?7. Pentru ce i cum se aleg funciile n rndulTotaldin grid?

    Explicai folosirea informaiei din rndurileSort, Show?Explicai cnd i pentru ce se folosesc funciile din lista ataat la rndulTotal din gridul cererii.

    ' 10. Creai cereri pentru a afia informaia despre (un rnd din tabel corespu/ unei vnzri): ^

    a) costul produselor la fiecare vnzare; b) costul crnii la fiecare vnzare;c) produse care au fost vndute la kg;d) produsele care au fost vndute ntr-o anumit zi;

    e)^ costul total al produselor vndute ntr-o anumit zi;f) costul total al produselor vndute la un preanumit;g) costul total al produselor din carne vndute ntr-o anumit perioad;h) costul total al produselor din lapte i din came (luate mpreun) n

    zile anumite (zilele nu snt una dup alta).

  • 8/13/2019 Access Coanda

    15/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 3

    Lucrarea de laborator nr. 3

    \ Exemple de Select Q uery la rezolvarea problem elor

    - cabelei Vinzaricreate n modul descris n lucrrile de laborator: w: ~ crea cteva cereri. Astfel vom nsui mai profund tehnologia utilizrii

    x : exemple de cereri pentru a determina urmtoarele:i ; asrii la fiecare operaie de vnzare.

    : ire: Proiectm urmtoarea cerere:ii?1 " ' TolalGR : S elec t Query

    nilMuC: Zmr UnMas DataVinz Cant Pret cost: fcantipret]r WEtm: * a r Vinzari Vinzari Vinzari Vinzari

    Bac . *TLE 0 0 0

    ZJkmsm.

    ilit! !SSnt1~e ^rmtoarea tabel cu rezultatele extrase de cerere:I b C R : S e le c t Q uery Observm c la

    S t UnMas ~] Da t&VIm 0 cost 1 informaia din

    tabelaVinzaris-a' " 05/05/01 100

    30 3000i liLjMpae - 06/05/01 20.7 5 103.5 mai adugat nc1 Bo l ZL 06/05/01 30 2 60 0 coloan,Cost - ILe _ 06/01/01 50.25: 25 1256.25... un cmp calculatI jlJiiifflptti 5i'sl3L 05/06/01 100 3 300 _ _ 1 i 5i3b..21, 06/05/01 30 2 60 din cerere.

    .. IHII.ilHi HH 111 ...

    06/05/V V

    50.5 5 252.5.

    .., Z i ' ' '

    1 u f ~casrilor n umia vnzrilor crnii n iuna mai i vnzrilor de ap n.iirl.

    Boi i i urs Proiectm cererea! : Select Query

    *---------------Ilar Jn ria t DataVinz Cant Pre cost [cantllpret] ftmmm ''rz&i Vinzari Vinzari Vinza

    s! a 0 0 E l 0

    >=801 /06/018

  • 8/13/2019 Access Coanda

    16/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 3

    3,. ncasrile totale.Rezolvare. Proiectm cererea (imaginea din stnga). Vom obine rezul

    (imaginea din dreapta):

    Jotallncas : Select Query

    ^ Field:

    Total:Sort:

    Show\ Criteria

    or:

    cost: fcantx[pret| -..

    1AvgMinMaxCount

    [

    A

    >otallncas: Select Queiy HE3E

    Record: l< I 4

    4. ncasrile totale n fiecare zi.Rezolvare. Proiectm cererea. Obinem rezultatul (vezi tabela de mai jos).

    TotalPezile : Select Query I H H i S l s i0 T otalPe zile: Se lect Query

    Field: Table: Total: Sort:

    Show:

    Criteria: V- or:

    VinzariGroup By

    A scen d in g

    m m .

    cost: fcantl"fpretl

    Avg

    MinMaxCountStDevVar First

    _c

    U S

    DaiaVbtz cost06/01/01 1236.25105/03/01 3000 l i06/05/01 .4761

    05/06/01 300|1Record: N. 1 11 4 : '

    Concluzie: Introducerea continu a informaiei curente despre vnzri n tarespectiv i crearea doar o singur dat a unui numr suficient de cereri, conecesitilor, asigur ntr-un mod destul de convenabil i rapid obinerea inform

    nesesare -inixi

    Tables Queries J [ Forms j 11 Reports j 3 Macros j ^ Modules j

    OpenCopy Of CUpt AmanCost AmanTotalCarneTotalGRTotallncas

    W rn r Lista (n stnga) de cereri (Queries) create pentru fiecare problema formulat, pe ecran rspunsul la o problm'concret necesar de selecai-ecferea respectiv

  • 8/13/2019 Access Coanda

    17/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 3

    n nrtbri i probleme

    I. I fa: r ; : _ e i cnd nu trebuie inclus n gridul cererii rndul Total?

    I..

    fac rsocie folosit Where i cnd Group By?; z l : : ferite proiecte i determinai care este deosebirea dintre folosirea' up E 5 Where cu aceeai condiie logic n rndul Criteria.

    - I : rrc-.ie s folosim Last, First, Max? Dai exemple.5. I . de folosire concomitent a rndului Criteria i a rndului Or, dar

    ici :ii < rea rndului Total din grid.* : =i rect: s se foloseasc funcia Group By n cmpul Cod sau n cmpul

    t a i . - _ produs i de ce? Argumentai prin exemple. : r r necesar de folosit opiunea Expression n rndul Totaldin gridul

    i 1iwr . : cerere care poate rezolva o problem prin utilizarea doar aunui rndi~- - agice, rndul Criteria, apoi o alt cerere, care rezolv exact aceeaii n i~i_ cir care conine condiii i n rndul Criteria, i n rndul Or.! ; .;mple de cereri cu Where, cu Group By i cu condiii logice, att"ir . cit i n Or.

    i i : : : _m sOr

    * L. I . : : - :ie deutilizare a funciei Count.ir: -portan t ordinea coloanelor n cererile cu opiuneaGroupBy? Dai

    fcia: :;areeste deosebirea dintre folosirea unei condiii logice n cmpul cuGroup By n Total i folosirea aceleiai condiii logice cu opiunea

    ,.:c deGroup By.: . m.cereri care conin i Where,i GroupBy (n aceeai cerere) i

    j mi ~ : i u l de selectare.* : i : resiile logice conform condiiilor din rndurileCriteriai Or din

    piiHxatefe cererilor,lit : r : 1e de utilizare a opiuniiAverage. L necesitateautilizrii opiunilor respective n rndulTotal.

    IU. a : : :e de utilizare a op ' i. E : iicai necesitatea utilizriiGroupBy n mai multe cmpuri.

    17

  • 8/13/2019 Access Coanda

    18/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 4

    Lucrarea de laborator nr.

    2. O Baz de Date cu dou tabeeProblema formulat n paragraful 1 poate fi rezolvat n mai multe modur

    creat o BD simpl, ns utilizarea ei nu este destul de comod i eficient. De ac propunem s-o perfecionm.

    S ncercm s repartizm informaia din tabelaVinzarin dou tabele:DetVinz (Detalii despre vnzri) iProduct(Lista de produse) (vezi fig. 2.1). La prima vedse pare c lucrurile se complic, ns aceasta se refer doar la procesul de proieBD. Persoanele care vor nregistra informaia despre vnzri vor completa coloanele Cod i Cant din tabelaDetVinz(coloana DataVinzva fi completatautomat), desigur, avnd la ndemn i tabelaProduct,care trebuie s fie rennoit p parcursul achiziionrii i stabilirii preurilor mrfurilor noi. De regul, acest luface de o alt persoan i n alt timp. n acest caz, introducerea informaiei n bdate se mparte n dou procese: rennoirea n permanen (o dat cu apariiamrfuri noi) a informaiei din tabelaProducti introducerea continu a informaidespre vnzri n tabelaDetVinzn momentul efecturii acestora. Este evidenttabela DetVinzva crete cu mult mai repede dect tabela Product. Iat dintroducerea i pstrarea informaiei n dou tabele, DetVinz i Product, n loc d

    Vinzari,este mult mai eficient i mai convenabil pentru cei care utilizeaz oBaz de Date. Desigur, n acest caz utilizatorii snt n ctig, iar proiectani pierdere, ns proiectarea se face o dat, iar utilizarea - n permanen.

    ^ I T g x |Den UuMas DataVuiz mi Pret CodjDuit DataTm : cod den liMas Pret

    . came Kg 05/05/01 100 30 1 100 05/05/011__ 1 Came Kg 30_Lapte 1 06/05/01 20.7 5 4 20.7 06/05/01__ 2 Came Pachet lKg 3. Ap But.2L 06/05/01 30 2 1 6 30 06/05/01 * 3 Came Pachet 0.5K{

    ;Came Kg 06/05/01 50.25 25 _ 1 50.25 06/05/011 4 4 Lapte L 5. ^P But.3L 05/06/01 100 3 7 100 05/06/01 5 Lapte Pachet0.5L 2..A?* But.2L 06/05/01 30 2 _ 6 30 06/05/01 * 6 Apa But.2L 2Lapte L 06/05/0150.5 5 1 4 50.5 06/05/01 7 Apa But.3L 3

    [ came Pachet 1kg 11/05/01 3030 3 2 30 11/05/01 >] o' ! 0came

    j LaptePachet 0.5 kg; Pachet0.5L

    11/06/0111/05/0111/07/01

    20100

    152.51

    . ___ 3 20 11/06/01 _ 5 10 11/05/01 |T| 0 0 ll/07/01|

    acord;

  • 8/13/2019 Access Coanda

    19/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 4

    D-ataVinz (cu tip de Date/Time). S nu uitm s fixm DefaultValue=Date() pentru: : oanaDataVinzi Validation rule=>0 pentru coloana Cant.

    Proiectm i tabela Product cu cmpurile respective (fig. 2.1). S se in cont derele artate i explicate n fig. 2.2.

    Dup ce tabelele DetVinz i Product au fost proiectate,deschidei-le i'traducei informaia indicat n fig. 2.1

    Proiectarea cererii pentru a rspunde Ia ntrebarea formulat n problemadin paragraful 1:

    In funcie de versiunea pachetului Access, acionai nmodul respectiv pentru aij unge n fereastra de proiect a unei cereri noi.

    m m

    Text Text Number

    leld Propertie

    Genera!Field Size FormatDecimal Places Input Mask - Caption Default Value Validation Rule Validation Text Required Indexed

    Long nt

    Auto

    Facem un clicTtci /pentru aselecta rndul, apoi fclickm butonul Primary Key pentru a

    atribui, pentru a anulaatribuirea, mai repetm o dat.

    NoYes (No Duplicates)

    La proiectarea tabelei Productcmpul ui Cod i se atribuie

    rolul de Cmp Cheie primar(Primary Key). Aceastanseamn cel puin c codurilen aceast coloan nu se potrepeta, ceea ce se confirm i prin valoarea proprietiiIndexed: Yes (NoDuplicates). Atribuirea roluluide Cheie se face prinselectarea mai nti a cmpului,astfel ca acest rnd sa fieevideniat aa cum este artatn figura din stnga, apoiclickm butonul PrimaryKey.

    Fig. 2.2. Proiectul tabelei Product.

    be Vin z:- ;*

    Cod CantDataVinz

    Icod jden

    UnMasPret

    Show Table

    Tables {IP Queries

    Copy Of Cost AmanCost Arv

    Both

    JLLLinia de legtur ntre aceste tabele

    Tafcte'Soft

    Show:Diana:

    - .

    TotalCar otalGRotallnc

    otalPesVinzari

    Au fost selectatg^fcfeleDetVinzi TProduc^ataafe la cerere prin acionarea AddTCa rezultat apar listele cmpurilorchre

    jtomat prin linia de legtur, (ficai dac fiecare legtura a

    fost fcut^ko^ct. Deoarece este activ pagina Both, nista de obiecte disponibile pentru ataare la cererea care se proiecteaz snt i tabelele, i cererile. Acionm Close pentru a termina procesul de ataare a obiectelor la cerere.

    Fig. 2.3. Proiectarea unei cereri bazate pe mai multe tabele.

    19

  • 8/13/2019 Access Coanda

    20/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 4

    Pentru ca dou sau mai multe tabele s fie ataate corect la cerere, ele trebfie legate ntre ele. Fiecare tabel trebuie s fie legat cel puin cu o alt tabel cele ataate. Legtura dintre dou tabele poate fi fcut n diferite moduri ~

    automat sau manual, n mod permanent sau temporar .a.m.d. Pentru un ncept bine ca de fiecare dat cnd se proiecteaz o cerere nou legturile s se fac manual i temporar.

    Cmpurile prin intermediul crora se face legtura trebuie s conin acinformaie dup sens. Nu denumirile cmpurilor snt importante, ci sensul datelor , care se conin n aceste dou cmpuri prin intermediul crora se leag tabelele. Pentru a lichida o legtur, se face un click pe linia de legtur; legtura

    mai pronunat semn c ea este selectat, apoi se apas tasta Delete. Pentru a lega doua tabele, agai cmpul respectiv dintr-o tabel i trasai

    cmpul respectiv din cealalt tabel. La relaxarea mouse-ului apare linlegtur.Dup ce am ataat toate obiectele la proiectul cererii, nchidem FereastraShow

    table, verificm i corectm (dac este necesar) legturile, apoi completm Field din gridul cererii cu cmpurile din listele ataate. Trebuie s obinem imdin fig. 2.4.

    n fig. 2.4 este redat imaginea cererii, care calculeaz rspunsurile la aproblem,rezolvat deja mai sus n alt mod. n acest caz, BD const din dou tDac analizm cu atenie proiectul cereriiTotalGri proiectul cereriiTotalGrM, putem constata c ultimul este mai complicat. Da, este mai complicat pentru pde proiectare, deoarece a fost necesar de a folosi ca izvor de informaie dou ceea ce a condus la complicarea proiectrii. ns, acest mod de proiectare proprietate destul de eficient i mai comod pentru utilizatori - va fi cu mult mi mai sigur de introdus informaia iniial.

    TotalGiM : Select Query

    Cererea a fost dejasalvat cu numeleTotalGrM.

    1 -------------

    !od

    Dac dorim, putem modificadenumirile/Cmpurilor n

    a nu provocaconfuzi/ se qbcomand cas nu coincid

    lumire a vreunuiitabele.

    cod Den1: den UnMasI: UnMc Cant:Canl Pretl: Pret co$f[cant]x[pret DataVinzI: DataVr Product Product Product DetVinz Product DetVinz*teup By Last Last Sum Max Sum Last

    0 0 0 0 1 E3n rndul Table^trfdenumirile tabelelor din care se ia informaia n cmpuldat Semnui^acesta arat c acest cmp este marcat i va fi afiat pe ecran.

    rteiu,Tabie:

    ; -TotalSoit

    Show:Criteria:

    or:

    Fig. 2.4. Proiectul cererii pentru rezolvarea problemei din paragraful

    20

  • 8/13/2019 Access Coanda

    21/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 4

    denUnMas

    Product ProductGroup By

    Pentru a asigura ca numerele s apar cu un numr dat de semne zecimale dup virgul, facem un click dreaptanpmpulrespectiv, apare o list n careselectmProperties,apare

    :>?H4ist.Xlickm^ici apoi alegemFtxd,apoi clickrnrici i alegem 2 (dou semne zecimale).

    . - [ | XAtragei atenia la denumirile coloanelor: snt

    d De ni UnMas 1 Cantl Protl cost BataYmzl 1Came Kg: 150.25 30 4507.5 06/05/01

    2 Came Pachet 1Kg 30 30 900 /05/01 cele noi, care au3 Came Pachet 0.5Kg 20 15 300 11/06/01 fost introduse n4 Lapte L ............... .. 71.20000076 5 356 06/05/01 proiectul cererii,5 Lapte Pachet 0.5L 10 2.5 25 11/05/01 desprite de6 Apa But. 2L 60 2 120 06/05/01 numele respectiv

    j 7 Apa acord; < j * 11

    But. 3Li | m

    J 0 0 \r *| of 7

    3 300 05/06/01 prin semnul

    Fig. 2.5. Rezultatul cererii cu proiectul din fig. 2.3.

    Fig. 2.6. Stabilirea numrului de semne zecimale.

    n calitate de exerciii creai alte cereri pentru a rspunde la ntrebrile formulater lucrrile de laborator precedente. ntrebrile snt aceleai, dar proiectele vor f

    diferite. Argumentai avantajele acestei variant de BD bazat pe dou tabele ncomparaie cu BD bazat doar pe o singur tabel.

    Field:Table:Total:Sort

    Show:Criteria:

    or.

    21

  • 8/13/2019 Access Coanda

    22/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    Lucrarea de laborator nr,

    3. BDbazat pe 3 tabele - posibilitii avantaje noin lucrrile de laborator precedente au fost demonstrate cteva exerciii de ut

    a BD. n scopul familiarizrii cititorului cu principalele noiuni i tehnici apliccrearea unei BD simple, a fost descris procesul de creare a unei BD cu un limitat de informaie despre caracteristicile operaiunilor care apar la vnzri. Aformulat o problem destul de simpl, care poate fi rezolvat proiectnd o BD de simpl. Probabil, v-ai convins: crearea unei Baze de Date este un proces deaccesibil ca realizare, dar totodat destul de complicat. Totul depinde de sgusturile i, nu n ultimul rnd, de posibilitile fiecruia. Cu ct mai voluminomai diversificat este informaia pe care dorii s-o pstrai i s-o prelucrai i cu ctmai mare confortul pe care dorii s-l creai pentru utilizarea ei, cu att mai compi sofisticat vafi BD.Orice BD,n funcie de scop, poate fi modificat n divedirecii: att pe vertical, ct i pe orizontal. Perfecionarea unei BD poate fi cont pn la infinit, nimic nu poate fi absolut perfect.

    n continuare vom modificaBDdeja creat, pentru a arta posibilitile acesBDlrgite. Nu n toate cazurile trebuie de nceput de pe poziii noi. Desigur,sructura BDdeja create nu permite mbuntirea ei, mai indicat este de creat o

    nou.n cazul nostru, vom lrgi baza de date deja proiectat, att pe vertical, ctorizontal. Presupunem c este necesar de a face calcule nu numai pentru f produs, dar i pentru anumite grupuri de produse, grupuri formate conform ancriterii. Fie c se vinde nu numai lapte, ci alte feluri de produse: lactate (bcacaval, smntn, lapte acru etc.); carne (de porc, de vit, de pasre); buturmineral, ap dulce, bere etc). Evident c toate aceste produse pot fi deocamprite n trei grupuri (categorii): Lactate, Carne,Buturi.Este firesc s aparnecesitatea de a face diverse calcule pentru fiecare dintre aceste categorii, cel pucauza c vnzri le se fac n diferite secii ale uneia i aceleiai uniti comercial propune urmtorul mod de rezolvare a problemei de perfecionare a BD proiectate:1. Se proiecteaz o tabel nou, Categorii, cu cmpurile CodCat, Den

    Descriere,tabel, care va conine informaia, respectiv, despre codul categodenumirea categoriei i descrierea categoriei. Se completeaz tabela cu inforespectiv (fig. 3.1, 3.2).

    2. Se modific structura tabelei Product - se mai adaug un cmp nou - Cocare va conine codul categoriei din care face parte produsul dat (fig. 3.3, 3.

    3. Se deschide tabela Product i se completeaz coloana CodCat nou apruinformaia corespunztoare (codurile categoriilor se iau din Categorii pfiecare produs).

    4. Se modific structura tabelei Product prin adugarea unui cmp nou - CodC

    Atenie! La crearea cererilor nu este necesar de ataat toate tabelele. Le atdoar pe acele de care avem nevoie i pe acele fr de care nu putem face c

    22

  • 8/13/2019 Access Coanda

    23/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    legaturi ntre tabele. Nu oricare dou tabele potf i legate ntre ele. Uneori este nevoieie ataat nc una sau mai multe tabele doar pentru a face legtura necesar dintrecareva tabele date.

    C a t e g o r i i : T a b l e

    Data Type DescriptionNumber Text Text

    Codul categorii Denumurea cate Descrierea, pe

    FieldProperti ss

    Generai j Lookup Field Size Format Input Mask Caption

    Default Value Validation Rule Validation Tex t Required No

    Allow Zero Length No Indexed No

    un numar intreg goriei, pina la 255 carac tere ;curt, despre ceea ce se conine in

    Cheia. Cmpurile ne maximum

    Cmpului CoCat i s-a atribui DenCat i Descriere pot coni

    \2 5 5 de caractere. n coloana Description se conine informaia care apare n partea de jos a ecranului Status Bar.

    t tor the fteliIiter a custchelp on Porn

    Fig. 3.1. Proiectul tabelei Categorii.

    % Microsoft Access

    File Edit View Insert Fgmat Records Iools Window Help

    H i a a i m j ^ i i i :

    Categorii: Table

    CodCat. DenCat Descriere } 1 Lactate

    2 Came, 3'Buturi

    0

    Lapte, cacaval, smintma...Came de porc, bovine,..Apatmnerala, apack^FaSa,...

    {Descrierea, pe scurt, despre ceea ce se conine in acesstr categorie,

    Aceasta este StatusBar n fereastra (injterfaa) Access4rftii. Deoarece n moipdntul dat ne aflam n

    )escriere (se vec^bara vertical), n status Bar apare exact ceea ce a fost scris in coloana Description n etapa de proiectare a tabelei ( fig. 3.1).

    Fig. 3.2. Utilizarea informaiei din StatesBar.

    Fig. 3.3. Obinerea proiectului tabeleiProduct

    23

  • 8/13/2019 Access Coanda

    24/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    F P r o d u c i ; ' T a b l e . . " ... .Field Name D a t a Ty p e T " ----------- -- Descr ip t ion

    2 _ cod Number d en Te x tUn Mas T ex t

    OPret Nu m b er codca t N u m b e r i Codul ca teg or iei al produsului d a t |

    LookupGenera l Field Size F o r m a tDecimal Places In p u t M a s k

    Capt ion Defau l t Value Validation Rule Validat ion Text Required I n d e x e d

    L o ng I n t e g e r

    A u to

    0>0Codul ca tegor ie iNoNo

    Field Proper

    n ^ gol,lasfiritul lTS^k^fostadugat numeleCodCat,apoi n coloanaDataTypea fost ales tipul (un numr), iar n Descriptiona fost nscrisCoduS categoriei produsului datinformaie pentruStatus Bar.

    un numr pozit iv!

    Fig. 3.4. Adugarea unui cmp nou n tabela Product.

    Dup ce ai adugat coloanaCodCat,nchidei tabela cu alegerea Yes, apodeschidei-o i introducei informaia respectiv n coloana nou aprutCodCat,aacum este artat n fig. 3.5.

    Atenie! La nchiderea tabelei, dup ce ai fcut modificri n structur (adugunui cmp este o modificare a structurii tabelei), ai mai adugat o coloan, put prentmpinat cum c careva datese pot pierde.Trebuie de selectatYes,fiindc n cazul adugrii unui cmp nou informaia nu poate fi pierdut.

    Atragem atenia c, dac apare vreun produs nou dintr-o categorie nou, amai nti, se nregistreazCategorian tabelaCategorii,apoi Produsul- n tabelaProduct.wm |1 -- 'cod den

    1 Came2 Came3 Came4 Lapte5 Lapte6 Apa7 Apa

    OR eco rd : I 4 j f

    - sjSIJSJ I CategoriiUnMas Pret codcat f CodCat BenCat DescriereKg 30 2% | Lactate Lapte, cacaval, sPachet lKg 30 2 2 Came Came de porc, bo^Pachet OJKg 15 2 3 auturi Ap a minerala, ap L 3 li-J L . .... .... ----------------------------------1Pachet 0.5L But. 2L But. 3L

    2.5 23O

    \ h|>*1 of 7

    Informaia din coloaneleCodCat(tabeleleCategoriii Product) este aceeai dup sens; prin intermediul

    cmpurilorCodcatse poate face legtura dintre aceste dou tabele. Mai nti se completeaztabelaCategorii,apoi Product.

    Fig. 3.5. Tabela cu coloanaCodCatcompletat conform tabeleiCategorii.

    24

  • 8/13/2019 Access Coanda

    25/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    Dup ce ai completat coloana CodCat n tabela Product, nchidei-o i, astfel,:oate tabelele vor fi gata pentru a proiecta noi cereri.

    Remarc. n acest caz, BD este proiectat n baza a trei tabele, fiecare dintre ele-oninnd informaia corespunztoare. n ansamblu, toate tabelele pstreaz informaiain detaliu.

    v-lnfxCod Cant DataVxnz

    05/05/0106/05/0106/05/0106/05/0105/06/0106/05/01 06/05/01}1 5/

    t- ' t . iiflArtiiler 1

    Product: Table mi den UitMas Pret codcat

    1 Came2 Came3 Came4 Lapte5 Lapte6 Apa

    J_EL_

    KgPachet 1Kg Pachet 0.5Kg LPachet 0.5L But. 2L But. 3L

    3030155

    2.523 3

    Cod* ! Descriere1 Lactate2 Came3 Buturi 0

    Lapte, cacaval, st Came deporc,bo,i Apa minerala, apa

    La introducerea informaiei n DetVinz esteutil ca tabela Product s fie afiat peecran (este o modalitate de a introducecorect codul produsului). Exist i alte ci,

    mult mai eficiente, pentru a evita greelile(despre ele se va vorbi mai trziu).

    Tabela Categorii semodific doar cnd apareo categorie nou demrfuri (se modific ceimai rar), tabela Product- cnd apare un produsnou (se modific mai des

    dect Categorii), iarDetVinz se modific celmai des.

    Fig. 3.6. Tabelele care constituie fundamentul BD.

    Dac analizm cu atenie informaia din aceste 3 tabele, observm c ea estedivizat dup anumite criterii: n Categorii avem informaia doar despre categoriilemrfurilor, n Product avem toat informaia doar despre fiecare tip de marfa aparte i" DetVinz avem doar informaia care se nate n procesul operaiunii de vnzare.

    Care produs, n ce cantitate i cnd se vinde, se tie imediat dup ce s-a terminat: reraiunea concret de vnzare. Adic informaia n aceast tabel poate fi introdus:: ar dup ce a avut loc vnzarea.

    O baz de date nu poate fi eficient far asigurarea unor eforturi minime la::: cucerea informaiei. n tabelele Product i Categorii informaia poate fi introdus

    - _ mai devreme dect apare un produs nou sau o categorie nou.O dat ce informaia este introdus, aceste 3 tabele vor funciona ca un tot ntreg.Apare ntrebarea: cum ar arta o singur tabel, dac am dori s crem o BD ce ar

    . za zoat informaia aceasta? Rspunsul poate fi gsit destul de greu.Concluzie: S uitm de*faptul c putem utiliza eficient o baz de date simpl

    : singur tabel i s gestionm un volum mare i divers de informaie!Pentru a explica totui, n acest caz concret, cum ar arta acea singur tabel.

    Inm ocerere cu proiectul din fig. 3.7. Ca rezultat obinem rspunsul (fig. 3.8), Astfeli.care arta acea singura tabel ~ fundament pentru proiectarea unei BD simple. Aparei" r e :area: dac e mai simplu cu o singur tabel, de ce s complicm BD cu dou sau

    25

  • 8/13/2019 Access Coanda

    26/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    trei tabele? ns un cititor mai atent poate fi de alt prere. Tabela DetVinz conine sute sau chiar mii de nregistrri (fiecare operaiune de vnzare enregistrare n tabela DetVinz) i atunci tabela din fig. 3.8 va fi cu mult mai marcele preluate mpreun. Pe lng aceasta, n acea singur tabel va trebui de comtoat informaia n toate coloanele, cu excepia DataVinz, pe cnd n cazul utilitrei tabele, vnztorul va trebui s completeze doar primele dou coloanDetVinz.

    Prin urmare, cazul BD cu 3 tabele este cu mult mai convenabil pentru utilns, dup cum se observ, destul de complicat pentru cei care o proiecteaz.! e lec t U ue iy Aceast cerere va

    uni toat

    informaia din cele trei tabele n una singur. Astfel vom avea posibilitatea de a

    . . .. . .. ........ ........ ...... .. . ------ ----- - ------ ------- mai uor.Field:

    T able:Sort:

    Show:Criteria:

    or:

    t_. den UnMas DataVinz Cant PretCategorii Product Product DetVinz DetVinz Product

    0 0 0 0 0 0

    j l L I . . . ____

    Fig. 3.7. Proiectul cererii pentru informaia despre toate operaiile cu privire la v

    bH Q u e r y 1 : S e l e c t Q u e r y v?Js 1 0 :

    D e n C a t

    I jS f f f l

    | den

    Came| U n M a sK g

    D a i a V m z j05/05/01

    Casii |

    100P r e t 1

    30 jLactate Lapte iL 06/03/01 20.7 5Buturi Apa But. 2L 06/05/01 30 2Came Came K g 06/05/D 1 50.25 30Bautuh Apa But. 3L 05/06/01 100 3Buturi Apa But. 2L 06/05/01 30 2Lactate Lapte L 06/05/01 50.5 5Came Came Pachet IKg 11/05/01 30 30Came Came Pachet 0.5K^ 11 / /Dl 20 15Lactate Lapte Pachet 0.5L 11/D5/01 10 2.5

    w1 Record: J | i J 1 1 ....... 1>11>*I of 10

    ^Tabela

    rezultatul cererii care ne prezint informaia n detaliu despre toate operaiile de vnzare.

    Fig. 3.8. Rezultatul cererii cu proiectul din fig. 3.7.

    3.1. Exemple de Select QueryProiectm cteva cereri pentru a determina:1. Sumele totale ncasate pentru mrfurile din fiecare categorie.

    26

  • 8/13/2019 Access Coanda

    27/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    WLRezolvarea - fig. 3.9.

    ncasUateg : Select Query

    n s * f ? ^ g a f i ; f i *CodCafc T I

    *cod

    DenCat 1| - denDescriere UnMas

    PretU , codcat

    1.

    i f 1Reid:

    T able:T ota(:

    Sort;Show:Criteria:

    or:

    CodCatCategoriiGroup By

    DenCatl: DenCatCategoriiLast

    Ascending

    cost: [cantffpret]

    Sum

    CodGi DenCail codi | Buturi 420

    2Came 5707.51Lactate 381

    Record: JiQJl ? l

    Rezultatul cererii

    Proiectul cererii

    Fig. 3.9. Sumele pentru mrfurile din fiecare categorie.

    2. Suma total ncasat n baza vnzrilor doar a lactatelor i crnii.Rezolvarea fig. 3.10. > 1

    - di5 8ga#|gSf51:

    Rezuatufeste doar un singur Tmmi^flindc^se cere suma pentru came lactate mpreun, nu pentru fiecare din eie.

    Fig. 3.10 Sumele ncasate la vnzarea produselor din lapte i din came.

    3. Sumele totale ncasate pentru fiecare categorie doar n baza mrfurilor vnduten cantiti mari i cu preuri mai mari (Cantitatea > 25 i preul >2).Rezultatul - n fig. 3.11,

    Field: :Total:

    Sml Stew:

    Criteria:or:

    CodCat Cant Pret cost: [cant]x[pret] Categorii DetVinz ProductGroup B_y Wher Where Sum

    I 7] 0

    >25 >2 , ? :w

    4 i \

    Fig. 3.11. ncasrile totale pe fiecare categorie.

    27

  • 8/13/2019 Access Coanda

    28/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    4y Costurile produselor: lactate vndute la li tre n cantiti mai m ari deccarne - n cantiti mai mari dect 40, buturi - cu preul mai mare decRspunsul - fig.3.12.

    impuEx: Select Query

    Field:Table:Sort:

    Show:

    CodCat DenCat cotj den UnMas Cant Pret DataVin cost: [cantHpretlCategoi Categorii Product Product Product DetVinz Produci DetVinz

    0 0 0 0 0 0 0orut. n L H

    >40>30

    IL L>2

    SimpuEx: Select Query U PCodCat DenCat cod den UnMas Cant Pret DataVinz cost

    1 Came2 Came3 Buturi1 Lactate

    1 Came Kg 1001 Came Kg 50.257 Apa But. 3L 1004 Lapte L 50.5

    30 05/05/D1 300030 06/05/01 1507.53 05/06/01 3005 06/05/01 252.5

    Fig. 3.12. Proiectarea cererii cu condiii complicate de selectare.Atragem atenia la faptul cum se construiete expresia logic n baza inform

    din rndurile Criteria i Or: toate condiiile din acelai rnd se unesc cu opelogic & (And), apoi expresiile obinute pentru fiecare rnd se unesc prin oplogic V (Or).

    n cazul utilizrii expresiilor logice, atunci cnd avem Where n rndul aceast expresie se refer absolut la toate nregistrrile. Pentru cei care cunosc si citirea SQL se recomand de fiecare dat s apeleze i la SQL.

    Concluzii'-1. Baza de Date descris n acest paragraf este mai eficient dect cele de

    anterior i este mai indicat pentru utilizare.2. Nu este nevoie de a cunoate prea multe lucruri din Access pentru a pro

    BD simpl.3. Utilizarea unei BD este necesar, deoarece ne ajut s realizm mai uo

    multe lucruri cu informaia care crete de la zi la zi.4. Pentru o persoan care posed careva aptitudini de lucru n sistemul Win

    deci tie s lucreze cu fiierele i s opereze cu aa-zisele ferestre, podestul de uoar proiectarea unei Baze de Date la acest nivel, fapt ci-arfacilita cu mult gestionarea informaiei respective.

    28

  • 8/13/2019 Access Coanda

    29/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 5

    li;reMri, probleme, discuii

    -. aaa.:nentai avantajele utilizrii, doar pentru acest caz concret, a unei BD

    r aa:a:e pe mai multe tabele.1 : : : alte structuri i alte tabele pentru a rezolva toate problemele: : - Laie n acest capitol.

    3L ' :c:: s planificai proiectarea unei baze de date care utilizeaz tabele cusimilare (adic cu aceleai coloane; tipurile de date pot fi diferite), dar

    :arr gestioneaz informaia despre (informaie care poate fi ncadrat na^erneaea tabele):

    aicamentele la o farmacie; persoanele angajate la o firm;

    : aim ie din fondul unei biblioteci;ti-iiatele sesiunii la o facultate.

    fL *ni r.;:.ic: c ereri pentru a determina:^i n ir^ir:ie din categoria lactate vndute ntr-o anumit zi;* T irf iir: ie vndute ntr-o anumit zi i la un anumit pre;S ii t indute ntr-o anumit zi la un anumit prei mrfurile vndute ntr-o

    altei ir.fflnit zi la un alt pre;a ; i aimrfurilor dintr-o anumit categorie, vndute ntr-o anumit zi;

    1)1 3f - ^ : :i ai produselor din carne vndute la un premai mic dect o anumit' : :ntr-o anumit zi i costul total al buturilor vndute n restul zilelor fiii r . : singura cerere);

    Iii iar: : a fi: st vndut cantitatea maxim de un produs din came;L" i i e medii ale vnzrilor pe fiecare categorie;

    ir- '1I n i : operaii de vnzri ale mrfurilor din fiecare categorie;!)! ii a: prima i ultima dat vndut un anumit produs;

    -ill e a r ,.-

  • 8/13/2019 Access Coanda

    30/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 6

    j CantV antifcatile intrate, achiyitionarteNumber Date/TimeDataVinz

    General j tookup )Field Size SingleFormat . ,Decimal Places AutoInput MaskCaptionDefault Value 0Validation Rule >=0Validation Text in CantV se admte doar paloare pozitiva!.Required NoIndexed No

    DetVinz: Table Field Name 1 Data Type 1 Description |

    Cod Number ni.

    Lucrarea de laborator nr.6

    3.2. Utilizarea cererilor la introducerea informaiein tabela DetVinz, pn acum se introducea i se pstra informaia doar

    vnzri. Pentru a gestiona informaia despre stocuri, este necesar de a avea infi despre mrfurile intrate, achiziionate. S-ar putea folosi o tabel asemntoDetVinz, numai c n ea s se nregistreze informaia despre intrri. ns, se peste mai convenabil de mai adugat un cmp n tabela DetVinz, n care nregistreze informaia despre intrri.

    Deschidem tabela DetVinz n forma de proiect i adugm un cmp c

    CantV.

    Fig. 3.13

    nchidem proiectul tabelei DetVinz confirmnd modificrile prin Yes i ca rvom obine tabela DetVinz modificat (cu 4 coloane).

    n etapa de introducere a informaiei pot aprea confuzii, erori, se pot cocoloanele Cant cu CantV. Ar fi mult mai sigur dac la introducerea informaievnzri s nu apar coloana CantV, iar la introducerea informaiei despre in

    coloana Cant. Acest lucru l putem asigura crend o cerere pentru vnzri cerere ~~ pentru intrri; se vor utiliza cererile i n scopul de a face mai comod pde introducere, i n scopul de modificare a informaiei n tabele.

    Aadar, crem o cerere pentru vnzri (bazat pe DetVinz) i o cerere intrri.

    Proiectm cererile respective i le salvm, respectiv, cu numele Vinzari CIn trariCantV (vezi proiectele n fig. 3.14, imaginile lor n form de tab- ifig. 3.15).

    Proprietatea Validation Rule permite ca n acgast'coloan

    s fie intpjdtfSedoar numeretifa Se asigur acelai"lucru i pentru cmpulCant. n cazul ncercriide a introduce numere negative, pe ecran se va afia urmtorul

    jnesaj:

    30

  • 8/13/2019 Access Coanda

    31/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 6

    Astfel, atunci cnd va trebui de introdus informaie despre vnzri, se va deschide:~:erea VinzariCant, iar atunci cnd va trebui de introdus informaia despre intrri:espre marfa achiziionat) - se va deschide cererea IntrariC an tV. n aa fel, n

    "i-care caz de introducere a informaiei apare tabela sau cu coloana Cant, sau cu:: 'oana CantV.Acest lucru s-a realizat prin utilizarea posibilitilor oferite de cereri.O cerere

    roate fi utilizat nu numai n scopul de a afia informaia, ci i n scopul de a duce i modifica informaia din tabele.

    Pstrarea informaiei despre vnzri i achiziionri n aceeai tabel este un lucru.: ~iod, care permite destul de simplu, dup cum vom vedea mai trziu, s se determine; icurile de marfa disponibile pentru vnzri.

    J

    CodCantDataVinzCantV

    n cererea VinzariCant coloana a doua este Cant i informaia va nimeri coloana Cant din DetVinz, iar n ntrariCap^V - C^ntV i informaia va nimeri n coloana din aceeai tabel DpfVinz

    farCantV: Select Query

    Field: Cod Cant DataVin v A 'Table: DetVinz DetVinz DetVinz

    Sort:Show: ia 1 0 0

    Criteria:or:

  • 8/13/2019 Access Coanda

    32/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 6

    n fig. 3.15, pentru comparaie, se arat formele n care apare informaia ede cererile VinzariCant i IntrariCantV din aceeai tabel DetVinz. Acest m pstrare a informaiei permite s calculm uor stocurile de mrfuri.

    Pentru calcularea stocurilor, proiectm cererea TotalInStoc.Rezultatul este redat n fig. 3.16, iar proiectul ~ n fig. 3.17.i s 1 T o t a l l n S l o c : S e l e c t Q u e i

    Cdf~De3&l | |s i t m jjC am e :.. 378.00 . ... i m s j ; v n .? z

    .. ... 2: Cama 45.00 30.00 15.00

    ... .... 3 Came 100.00 20.00 80.00. .... .4 Lapte 779.00 ? . 707.80

    . ...... 3j Lapte 609.00 410.00 199.00..... 6 A pa 245.00 60.00! 185.00

    7 A pa 739.001 200.00 539.00[ R e o ^ d T 1 < i r I S I i l I

    n coloanaIntratse afieaz numrul total de uniti intrate,iar n cooanaIeit- numrul total de uniti vndute. n coloana InStoc numrul

    total de uniti ramase n stoc. InStoc-Intrat-Iesit.

    Fig. 3.16

    1' '

    i i f f i i i i s i i* :Cod k _ cod 1Uit.: '- ' . - iDataVinz - : : ' Prat

    LtU;

    MM

    n cmpul calculatInStocse utilizeaz

    funcia Sem, iar n rndulTotaldin grid se menioneaza^c se conine o expresie. Ace lucru ne sugereaz c ntr-un cmp calculat putem folosi orice funcie standard din Access sau chiar once alt funcie scris Visual Basic, n calitate de parametri pot f i cmpurile din obiecie ataate la cerere.

    :Sort

    Show.Ditai*

    1

    or.-m r NM

    Denl: den Intrat: CantV lesit CniDetVinz Product DetVinz DetVinzGroup 6y Last Sum Sum

    a 1 0 j a 0

    m _________________

    inStoc: Sum[[cantvHcant])

    MaxCountStDevVar First

    Fig. 3.17. Proiectul cererii cu un cmp calculat pentru determinarea stocurilor r

    32

  • 8/13/2019 Access Coanda

    33/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 6

    ntrebri, probleme, discuii

    Argumentai avantajele sau dezavantajele pstrrii informaiei despre intrri i

    ieirin una i aceeai tabel.- Argumentai avantajele utilizrii cererilor la introducerea informaiei.Cumse formeaz un cmp calculat i cum pot fi determinate stocurile rmase?

    - Cum v imaginai procesul de introducere a informaiei la intrare, care tabeletrebuie s fie pe ecran concomitent?

    5 Cum s procedm ca rezultatul cererii s fie plasat ntr-un loc dat i s ocupe unanumit spaiu (dup dimensiuni)?Prin intermediul cererilor afiai pe ecran informaia dinProducti Categorii. Propunei o alt modalitate comod, dup prerea dv., de introducere a informaieidespre intrri,

    s Proiectai cereri pentru a determina:a) lista de produse intrate n stoc ntr-o perioad anumit de timp; b) costul total al produselor dintr-o anumit categorie, intrate n depozit n luna

    iunie;c) pentru care produse intrrile au fost mai mici dect ieirile;d) costul total al produselor din fiecare categorie, intrate;e) costul total al anumitor produse intrate ntr-o anumit perioad;

    ^fl care a fost preul maxim pentru fiecare produs vndut;g) care a fost preul minim pentru fiecare produs intrat;h) numrul de produse intrate din fiecare categorie (a nu se confunda cu numrul

    operaiunilor de vnzare);i) numrul de produse vndute din fiecare categorie;

    j) categoriile de mrfuri n baza crora s-a ncasat o sum dat de bani;k) suma total ncasat n baza mrfurilor doar din dou categorii (s se pun la

    calcul doar produsele cu preul mai mare dect o valoare anumit);1) care a fost ultimul produs vndut din fiecare categorie.

    33

  • 8/13/2019 Access Coanda

    34/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    Table: SelecJ^Query j0 1 B p d s s ta bQuery

    S? M ak e-Iab Se Quer*> ti^S Up dat e Q u er y.

    y r # i Aopend Query... 1 Qelete Query

    Make New

    Table Name: jSumarlnfol

    ^Current Database

    Another Database:

    gfeififte:} '

    Field: I able:

    Sort: Show:

    Criteria:

    Calcularea stocurilor la o ntreprindere, la care se opereaz cu mari cantidiverse tipuri de marf, este un lucru necesar i util. Dac am ncerca s determstocurile folosind doar tipurile de obiecte studiate mai sus, am observa c calculaeste destul de complicat. Apare ntrebarea dac mai exist i alte posibiliti.

    Un mod de determinare a stocurilor ar putea fi calculnd:1) stocurile pentru fiecare tip de marfa la nceputul exerciiului nceput;2) numrul de uniti intrate de la nceput pe parcursul exerciiului - Intrat;

    3) numrul de uniti ieite de la nceput pe parcursul exerciiului - Ieit;4) stocurile curente ~ Ram asStoc=Inceput 4*Intrat - Ieit.La trecerea de la un exerciiu la altul, stocurile curente la sfritul exerci

    precedent devin stocuri iniiale la nceputul unui nou exerciiu. Aadar, se presupuavem o tabel, fie cu numele Stoclncep, n care se conine o astfel de informastocurile la sfritul exerciiului precedent, ceea ce coincide cu stocurile la nceexerciiului curent. Astfel, n procesul de exploatare a BD, la sfritul exerciiulcalculeaz stocurile curente i datele obinute nlocuiesc informaia din StoclnAceast tabel poate fi modificat doar la sfritul exerciiului. Pentru calcustocurilor curente se propune urmtoarea schem:Microsoft Access

    La fel

  • 8/13/2019 Access Coanda

    35/99

    Append

    Append To -r Table &ame; jSu rlnfi

    fej Show Table\.' Kernove fable

    (* Current Dafcabal

    La nceput, ca i4a 6 Se Completeaz griduJ ere; peQuery; apare o\is Query i ca rezultampai in care tabel Sumarmi OK i se nchide cutia A trecem la completaream Append To din gridul c\ ca informaia din Cod, E Stoclncep s fie adugat

    Cod, Den, CantP din tal

    3 * Select QueryHi Crosstab Querys IMake-Table Quer# 1 Update Q ue ry^, ! ,.X 1 Qelete Query

    SQL Specific

    Stoclncep

    fiiew iTsert Query Tools Windc

    SS

    Sumar codden

    Dup ce am stabilit c informaia va fi ^adugat la tabela Sumarlnfo, clicknd n

    ppend , apare lista coloanelor i lurem s selectm-dgnurnirea respectiv a olone. n care se va nscrie informaia.

    Sefesl Query, se ererii, apoi se face un click

    n care sH^ctm Append are cutia Append. Artm fo trebuie adugat, apoi ppend. Dup aceast formaiei n rndul reni. n cazul dat dorim n l, Stoclneep din tabela respectiv, n coloanele

    la Sumarlnfo.

    Proiectul cererii de tip Append, care adaug informaie din tabelaStoclncep n tabela Sum arlnfo.

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    4 , P roiecta reaunei cereri de tip MakeTable(pentru a forma o tabelau lista complet a produselor aflate n depozit)

    1 : i ca ia nchidere s rspundei cu Yes i, respectiv, s atribuii numele pentru aceast cerere. Dup ce vei nchide proiectul, aceast tabelm f -auuai : _ un alt semn, ceea ce sugereaz o aciune specific deschiderea ei.

    ; - i ::rm a tabela Sum arlnfo, trebuie s facem un dublu click pe numele ei! S-'OSw'J;:1~. apoi s acionm Open.

    A.n'brti Dac o astfel de tabel deja exist, atunci va aprea prentmpinareafc - - - a : are trebuie s rspundem cu Yes pentru ca tabela veche s fie lichidat.

    : mm a: se v a forma varianta nou a acestei tabele.

    r . r deschiderea cererii M akeSum arlnfo, vei obine tabela Sumarlnfo cu lista zt rrc-du.se cu valoare zero n coloana CantP.I e : ae fiecare dat cnd vei deschide aceast cerere, de fapt, vei forma din n

    aifeela Sumarlnfo.

    4..1 Proiectarea unei Append Query (astfel la lista format nS um arln fo vor fi plusate toate produsele din stocul iniial)

    saaiEsmX

    : aduga la tabela Sumarlnfo informaia despre stocurile de la nceputul::ea.m o cerere de tip Append, care extrage informaia din unele tabele i

    altele.

    35

  • 8/13/2019 Access Coanda

    36/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    Append

    Append To

    Table Name;.' , , '

    denUnMasPret

    n acelai mod ca i la proiectarea cererilor obinuite, dup terminarea procede proiectare, nchidem proiectul atribuindu-i numele AddlnitialStoc. Vom obseacet tip de cerere va fi marcat n mod deosebit.

    Atenie! De fiecare dat cnd deschidei aceast cerere toat informaia din taStoclncep va fi adugat la tabela Sumarlnfo.Concluzie: Este corect de fcut acest lucru o singur dat, doar dup form

    tabelei Sum arlnfo deschiznd cererea MakeSumarlnfo de tip Make Table.n mod analog, proiectm nc o cerere de tip Append (n scopul de a adu

    tabela Sumarlnfo informaia recent despre operaiunile din In trare i Ieirmrfurilor, informaie care poate fi calculat prin intermediul unei cereri bazatabelele DetVinz i Product).

    *

    CodCantDataVinzCanfcV

    L i y

    Field: Table: Total: Sort:

    Append To: Criteria:

    on

    Fig. 4.3.

    Inftu-maiacurent din coloaneleCod, Deni,Mersextras din tabeleleDetVinz i Product,

    care conin datele de ultim or(ca rezultat aldescidenyacestei cereri) i vafi adugat la tabela

    ..........

    Cod * Den1:den l3^f^Sum{Ufantv]-[cantl)DetVinz Produci^ ^ ^ / ...........Group By Exp(e$$*6n

    .. . . ^ ........ .. t .............. . -cod ^ den CaniP

    4\ 1

    Proiectul cererii care calculeaz diferenele dintre numrul de unintrate i numrul de uniti ieite (rezultatele obinute se adaugtabela sumar Sumarlnfo).

    Dup terminarea proiectului acestei cereri, salvai-o atribuindu-i numAddDiflntrarilesiri.

    A tenie i De fiecare dat la deschiderea acestei cereri, informaia calculat vadugatn tabelaSumarlnfo.

    Concluzie: Aceast tabel poate fi deschis doar dup ce se vor deschideordinea strict consecutiv,cererile MakeSumarlnfo , apoi AddlnitialStoc.

    La acest moment,dispunem de trei obiecte: cererile MakeSumarlnfAddlnitialStoci AddDiflntrarilesiri, care, fiind deschise n ordinea descrasigurformarea tabeleiSumalnfo cu informaia suficient pentru calcularea stoccurent. Deci,dup acionareacererilor numite mai sus, este necesar dea deschide nco cerere, carene va afiainformaia despre stocurile curente. n acest scop proieccererea:

    36

  • 8/13/2019 Access Coanda

    37/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    TotalRamasInStoc : Make Table QueryI B

    Fig. 4.4. Proiectul i rezultatul cererii cu informaia despre stocurile curente.

    4.3. Crearea unui Macros

    FotalRamaslnStocM : Macro m m m

    Fig. 4.5. Proiectul unui Macros cu mai multe aciuni.

    Mai sus au fost create nite obiecte, menionndu-se c ele trebuie deschi acionate) ntr-o ordine strict. In plus, la acionarea unora, trebuie, n prealabil, d chidat careva tabele. Deci numrul de aciuni concrete s-a mrit i mai mult. Apa

    Action j DeleteObject

    mReport enabie

    OUputTo PrhtOut

    *| Re - (Re paiotQbject/

    Comment Lichudarea tabelei Sumarlnfo Qrearea unei tabele noi Sumarlnfo

    AcfSaJista formata a stocurilor ini'iaie Add la lilb fcrmatf a diferen'elor Intrari-iesiri Lichidam tabefetenasInStoc formam RamasInStbinecenta deschidem tabela RamafnSfcocT

    NameQuer> Iaca &ode

    sfion Arguments

    kfo

    Action. ! Com m ent UDeleteObject Lichudarea tabele i Su m arln fCOpenQuery Q ea rea u ri tabele noi SurrvOpenQuery Add la lista formata a stocuriOpenQuery Add la Ista format[ a diferen

    B f iOpenQuery formam RamasInStoc recent / deschidem tabela Ram asnS

    - l

    : Opens

  • 8/13/2019 Access Coanda

    38/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    problema de respectare strict a ordinii aciunilor. Access-ul ne ofer o modal uni mai multe aciuni ntr-o anumit ordine (prin crearea obiectelor Macros). snt nite obiecte care pot uni ntr-o anumit ordine o mulime de aciuni, ndeplinite printr-o singur deschidere a M acros-ului.

    S proiectm macros-ul respectiv (vezi fig. 4.5).Dup ce am terminat proiectul macros-ului, l salvm atribuindu-i

    TotalRamasInStocM.Dac totul a fost efectuat corect, atunci, fiind pe pagina Macros a BD cu

    facnd un dublu click pe numele acestui Macros TotalRamasInStocM, vom a iragul de aciuni din acest macros. Ca rezultat, pe ecran vom obine tabela cu curente.

    cod

    mRecord: 14h I

    : jj jj jjf - [| DeniJCame 455.52 Came 303 Came 1604: Lapte 1415.6000065 iLapte 3986 Apa 3707 Apa 1078

    a mmm1 H uMof 7

    Observm c produsele se repet dup denumiri, n ele au coduri diferite. nseamn c snt produse cu aceeai denumire, dar nregistrate ca produse diferit (poate unitatea de msur este alta sau poate se deosebesc prin alte caracteristici). Ar fi fost mai comod dac n aceast tabel ar fi indicat i unitatea de msur. Acest lucru poate fi realizat, da n locul ultimei operaii din macros-ul TotalRamasInStocM, n loc de aciunea Open Table, care deschide tabela RamasInStocTotal, s- deschide o cerere bazat pe informaia din aceast tabel i tabela Product, pentru a afia informaia, inclusiv i despre caracteristicile fiecrui produs.

    Fig. 4.6. Tabela cu stocurile curente TotalRamasInStocM.

    rezultat al acionrii macros-ulu

    Pentru a afia mai detaliat informaia despre fiecare produs din stoc, pr urmtoarea cerere:

    StoculCurentQ : Select Query

    - i i

    *coddenUnMasPretcodcat

    Table:-Sort:

    Show:Criteria:

    or:

    CodCai DenCat cod den UnMas Pret TotaIRamas Cost: fpretUTotalRamas]Catego Categorii Ram< Pro Product Product RamaslnSto

    Ascendir A\sc 1 ................. .................. .0 0 0 _ _ 0 0

    Fig.4.7. Proiectulcererii pentru calcularea stocurilor curente (n detaliu

    38

  • 8/13/2019 Access Coanda

    39/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    p StoculCurentQ: Select Query llSIStCodCat

    : 1DenCat cod

    | Bautunden

    7 ApaUiiMas

    But. 3L Fret

    3TotalRamas

    1078.00Cost |

    3234.0013 Buturi 6 Apa But. 2L 2 370.00 740.00}2 Came 3 Came Pachet 0.5K.15 160.00 2400.001

    900.00| 2 Came 2 Came Pachet 1Kg 30 30.002iCame 1 Came Kg 30 455.50 13665.0011 Lactate 5 Lapte Pachet 0.5L 2.5 398.00 995 m l1 Lactate 4 Lapte L 5 1415.60 7078.001

    51I

    Record: 1 ::'*4 1 H of 7

    Fig. 4.7.1. Rezultatul cererii pentru calcularea stocurilor curente (n detaliu).

    4.4. Modificarea unui MacrosEste util i un alt mod de afiare a rezultatului final cu informaia despre stocu

    cu informaie mai detaliat despre produse. n acest scop se va face o copie a macr -iui deja proiectat, se va atribui un nume, de exempluDetaliiStocM,i se va modifica -itima aciune: n loc de a deschide tabelaRamasInStocT,deschidem cererea

    StocCurentQ cu proiectul de mai sus. Copierea i modificarea denumirii macros-u se face analog cu aciunea asupra unui fiier nsistemul Windows.Pentru a modific coninutul macros-ului, selectm denumirea lui(DetaliiStocM)

    in pagina Macros din fereastra BD curente, acionm butonul Designi ca rezultat -pare macrosul DetaliiStocM n form de proiect. Facem unclick n ultimul rnd acolounde este Open Table) i selectm din lista aprutOpen Query,apoi trecem

    :n coloana Comment i nlocuim coninutul de acolo cu deschiderea cerer StocCurentQ. Dup aceea, puin mai jos, selectm denumireaStocCurentQdin listaaprutdup clickul fcut n boxa Q uery Nam e. Proiectul trebuie s devin cel din f -.8. Dup ce ai fcut modificrile necesare, salvai-1. Facei pe rnd un dublu click aenumirea ambelor macros-uri i analizai avantajele i dezavantajele acestor do "ioduri de afiare a informaiei respective.

    m D e t a l i i S t o c M ;1

    Action Com m ent | |Deie teObject Lichudarea tabelei Sum arlnfo -TiOpenQuery Crearea unei tabele noi SumarlnfoO p e n Q u e r y Add ia li sta fo rm ata a stocurilor in i' ialeOpenQuery Add la li sta fo rm at [ a d iferen 'el o r In trar i-i es ir iDele teObject Lichidam tabela RamasInStoc

    OpenQuery formam RamasInStoc recen taJ L OpenQuery T 1Deschiderea cererii StocCurentQ

    ________ _ z J

    Action Argum en ts

    Query Name StoculCurentQ Select th eView Datas heet j d ata en tryDat a Mo de Edit ^ I j mo de for

    . V:y:V:'' ..:-, 1t he q ue ry ;

    Fig. 4.8. Proiectul macros-ului DetaliiStocM.

    39

  • 8/13/2019 Access Coanda

    40/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 7

    ncercai s facei modificrile necesare, astfel nct aceste dou macro acioneze absolut independent.

    ntrebri, probleme, discuii1. Argumentai necesitatea utilizrii cererilor de tip M ake Tabele , Appen2. ncercai s formai noi tabele n care s adunai toat informaia din t

    completate.3. Prezentai exemple de adunare a informaiei dinalte tabele, care corespunde

    doar unor condiii (de exem plu, doar despre vnzrile dinprima sptmn,despre mrfurile vndute la preul mai mare dect o valoare anumit).

    4. Prezentai exemple de adunare a informaiei din tabele cu structuri diferi5. ncercai s propunei o alt cale de calculare a stocurilor curente.6. Ce este un macros?7. La ce folosesc parametrii unui macros?8. Cum poate fi modificat un macros?9. Cum poate fi modificat o cerere?10. Ce informaie conine coloana Action din proiectul unul macros?11. Este oare obligatorie informaia din Comment n proiectul unui macro12. Explicai aciunile din lista care apare la proiectarea unui friacros (c

    cunoatei).13. Cum putem deosebi tipurile de cereri pe paginaQueries?14. Care este deosebirea dintre acionarea unei cereri de tipAppendsau Make

    Tablede una de tipSelect?15. n cte moduri poate de lichidat un obiect din Baza de Date?16. S se proiecteze un macros, care ar afia:

    a) lista de produse cu preul dat din stocul curent;b) costul total al produselor din stoc;c) costul total al produselor intrate n stoc ntr-o anumit perioad;d) stocul curent al produselor dintr-o anumit categorie;e) lista de produse pentru care stocul curent a crescut fa de cel iniial

    17. Determinai produsele care difer doar dup pre. Propunei o modalit modificri, pentru a face posibil rezolvarea acestei probleme. Facei modificri, apoi proiectai un macros pentru a determina:a) lista de produse pentru care s-au fcut vnzrile produselor la pre m

    timp ce n stoc erau produse de acelai tip la pre mai mic;b) lista pe produse care au intrat cu un pre mai mare, n timp ce n st

    erau exact aceleai produse, dar la un pre mai mic;c) lista de produse care s-au vndut la un pre mai mare, n timp ce stocexistau exact aceleai produse, dar la un pre mai mic.

    40

  • 8/13/2019 Access Coanda

    41/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 8

    Lucrarea de laborator nr. 8

    5. Modul de funcionare a BD create Remarc. BD creat nu poate satisface toate necesitile de gestionare a

    informaiei ntr-un caz real, dar acest exemplu, fr ndoial, este binevenit pentru acunoate noiunile i procedeele elementare de proiectare i utilizare a Bazelor de Datei poate servi c o prim etap pe calea anevoioas i complex, dar n acelai timpcreativ, a acestei activiti.

    n scopul de a asigura pstrarea BD deja create, facei o copie a ei i realizaiceea ce se cere n aceast lucrare acionnd cu copia.

    1. Introducerea informaiei despre cteva produse noi aprute. Deschidem ambeletabelele Categorii i Product, astfel ca ele s fie afiate pe ecran n form detabel (fig. 5.1).

    f x | Categorii : I afoOe .cod .. djest / Pret . codcat:'Jh CodCat| DenCat

    1 Came Kg 30 2 J. Lactate Lapte, cacaval, sminti Came de porc?bovine,2 Came Pachet 1Kg 30 2 2 Came

    3 Came Pachet 0.5Kg 13 24 Lapte L 5 1 3 auturi Ap a minerala, apa duilc* 0 ^5 Lapte Pachet 0.5L 2.5 1 i o Apa But. 2L 2 3 | 7 Apa But. 3L 3 31 CNf ------- - ---- --- 0 0

    Informaia despiXprod introduce n coninu^ Dac apare vreun prod nou, atunci-nregistri

    usul nou se >a tabelei Product, u^cjintr-o categorie n m ^qti categoria iusul n Product.io r d :

  • 8/13/2019 Access Coanda

    42/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 8

    lataYmz14617642

    355.70

    300 05/05/011100 06/05/01 j200 06/05/01 j78 06/05/01 j

    300 05/06/01 j45 06/05/01 j.

    679 06/05/01 j45 11/05/011

    100 11/06/01 i39 11/05/01 j570 12/07/011439 12/07/01S

    12/07/011 >

    cod den

    UtMas Pret codcat1 Came

    2 Came3 Came4 Lapte5 Lapte6 Apa7 Apa 0

    Kg..........Pachet lKg iPachet 05Kf LPachet 05L But. 2L But. 3L

    Codc|DenCadj* Descriere j Lactate Lapte, cacaval,$m\ 2;Came Came de porc, b o vii 3 auturi Apa minerala, ap a&0

    i v

    nregistrrile se fac n continuarea tabelei-cerere IntrariCantVn momentul cnd la intrare apare un produs nou, trebuie mainti s-l nregistrm n tabela Product, dar dac este dintr-ocategorie nou, atunci nregistrm mai nti categoria nou, apo produsul n Product. S fim ateni la codurile introduse ncoloana Cod i la cantitile nregistrate n coloana CantV.Data se nregistreaz n mod automat.

    Fig. 5.2. Introducerea informaiei la intrarea mrfurilor.

    Cod Cant DataVinz05/05/01 jj06/05/01106/05/01106/05/01 j05/06/01106/05/01106/05/01 j11/05/01 j11/06/01 j11/05/01112/07/01112/0712/07/011

    10

    - I D t x l

    cod 1 den| Came2 Came3 Came4 Lapte5 Lapte6 Apa7 Apa

    UnMasK Pachet lKg Pachet 0.5K^ LPachet 0.5L But. 2L But. 3L

    Pret codcat3Came 455.5 Came 303 Came 1604 Lapte 1415.60005 Lapte 398;6 Ap a 3707 Apa 1078;

    -:ord! N1 If

    nregistrri se admit doar n tabela VinzariCant. Informaiase introduce n continuarea tabelei VinzariCant doar ncolanele j^d^i^ DataVinyse va completa

    [tomatMai nti se determin codul din/Product, apoi el senregistreaz n VinzariCant. In coloana Cod dinVinzariCant trebuie s fie doar codurile din Product.Este util de a nchide periodic aceast tabel i de acionatmacros-ul respectiv pentru a o deschide din nou.

    Fig. 5.3. nregistrarea informaiei despre ieiri (vnzri).

    4. Analiza stocurilorcurente. Acionm macros-ulDetaliiStocMi vom obineinformaia prezentatn fig. 5.4.

    42

  • 8/13/2019 Access Coanda

    43/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 8

    & StoculCurentQ : Select Query 8 ' CodC* ::DemC:t 1 n UnMas Pret TeMMaitas Cost J

    | Buturi 7 Apa But. 3L 3 1078.00 3234.003 Buturi 6 Apa But. 2L 2 370.00: 740.002 Came 3 Came Pachet . {115 160.00 2400.002 Came 2 Came Pachet lKg 30 30.00 900.002 Came LCame Kg 30 455.50 13665.001Lactate 5 Lapte Pachet 0.5L 2.5 398.00 995.001 Lactate 4 Lapte .... L ........ 5 1415.60 7078.00

    i ' l l ! *) of7 '11 | f i jgpi i 1 '

    Fig. 5.4. Forma de afiare a stocurilor curente.

    Probleme1. nregistrai produse la intrare (cte 3 din fiecare categorie),fiecare produs s

    intre de dou ori cu coduri diferite n dou zile diferite.

    2. nregistrai vnzri: cte trei pentru fiecare produs; n aceeai zi s fie vndute i produse care difer doar ca pre.3. Proiectai cteva macros-uri pentru rezolvarea unor probleme propuse n

    lucrarea de laborator nr. 7.Proiectai cereri sau macros-uri pentru a calcula:1) costul total al mrfurilor intrate n fiecare zi;2) costul mrfurilor ieite n fiecare zi;3) diferena (cantitilor) dintre intrri i ieiri pentru fiecare produs;4) preul mediu al produselor care difer doar ca pre;5) numrul de produse diferite pentru fiecare denumire;6) stocul curent la o dat anumit;7) mrfurile intrate n ziua curent;8) mrfurile ieite n ziua curent;9) mrfurile de un anumit tip care difer doar ca pre;10) mrfurile de un anumit tip care difer doar ca unitate de msur.

    43

  • 8/13/2019 Access Coanda

    44/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 9

    Lucrarea de laborator nr. 9

    6. Proiectarea unui raportExist mai multe posibiliti de a imprima informaia extras din BD. Tipri

    informaiei prin intermediul rapoartelor poate fi organizat astfel, ca informaiamare msur, s fie aranjat pe foi n conformitate cu anumite cerine.

    Proiectm un raport astfel, nct informaia despre vnzri s apar n modul arnfig. 6.1.

    PeCategRdportR : Report

    Informaie pe categori i 13/07/01odCaft: ' fr reT"Cost: DataVinz

    1 LactateiLapteLapte Pachet 0.5LLapteLapte

    4 __2J 110

    50.520.7

    2.5

    Lactate Cost total: 138

    2 Came

    3 B&imi

    ----------- CIZ2----- - ---------3 Came ^achet 0.5K 20 15 I 11 ^ 0 12 Came 3achet IKg 30 30 11 5 ^1 Came

  • 8/13/2019 Access Coanda

    45/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 9

    formatul raportului trebuie stabilit cu cea mai mare precizie posibil, deoare de regul, modificrile, n funcie de natura lor, pot cere mari eforturi i timp

    Dup ce s-au realizat cele necesare, descrise mai sus, se poate ncepe proiect

    raportului.2 2 egRapoilR: Report j . 1 . 1 , I . 2 i 3 i 4 I 5 I 6 * I - 7 I 8 I - 3 I 10 I * II

    [Report Header

    CodCat: DenC at: [cod: den: UnM as: [Cant: Pret: Cost: D a ta ^jn r

    Informaiepe catedori H /

    PageReader

    CodCat Header

    Deta

    cod den UnM as Cant Pret Cost Da taVinz

    CodCat Footer

    jclencat j=Tost total:" rSum{[cos1j

    Page Footer

    Report Footer

    K T otal generali ;=Stim([coj

    Se pot determina cu uurinsectoarele respective n formade proiect a raportului de maisus. n fiecare sector se aflnite obiecte n form de patrulater, care se numescControale (n englezControls). Unele controale

    pot fi prezentate prin douelemente: coptrolu propriu-szis, care ctfnine informaia ieticheta lui, care nesj^gereazce conine

    Controlul dat. Atare controalese prezint prin dou patrulatere. Informaia dinetichet este aceeai i n proiect, i n raportul propriu-zis, pe cnd controlul propriu-zis, n proiect coninedenumirea sursei, iar n raport- coninutul ei.

    Fig. 6.1.1. Proiectul raportului din fig. 6.1.

    Atragem atenia, Access-ul ne ofer posibilitatea de a utiliza aa-zisul Wiz Designer la proiectarea rapoartelor. Aceast posibilitate poate fi utilizat, de reg atunci cnd nu avem prea mari cerine fa de formatul raportului, important fiind d rezultatul. Pentru nceptori ns, este mult mai util s deprind proiectarea unui rap rar W iza rd Des igner , ca mai apoi, pe parcursul proiectrii, s poat aprecia i al la nivelul cuvenit cele propuse de Wizard Designer.

    1. n funcie de versiunea pachetului M icosoft Office , acionm n modul resp ^ pentru a activa pagina Repor ts a bazei de date curente. Pentru diferite versiu

    imaginile pot fi diferite, ns procedeele, de regul, snt aceleai: se face un c pe R epor ts - pagina respectiv devine activ; acionm butonul New (d avem intenia de a crea un raport nou), ni se deschide o caset nou sau po chiar tot aici va trebui s selectm opiunea Design (evitai W izard Designi, poate chiar tot aici, s determinm (n cazul nostru trebuie s select numele PeCategRaportQ) n baza crui obiect se va proiecta raportul.Durtoate aceste aciuni, acionnd la momentul potrivit OK, vom obine pe ecran

    45

  • 8/13/2019 Access Coanda

    46/99

  • 8/13/2019 Access Coanda

    47/99

    Access. Ghid de iniiere Lucrarea de laborator nr. 9

    n acest scop analizm listele de opiuni ale comenzilor (n primul rnd View, apoInsert) din meniul de comenzi de baz ale Access-ului i activm opiunea ReportHeader/Footer. Imediat n proiect se vor include sectoarele respective la nceputul

    sfritu proiectului. Ateniei Din cauz c proiectarea unui raport este un proces de lung durat, estenecesar, din cnd n cnd, pe parcursul proiectrii, s salvai proiectul.3. In continuare inserm i sectoarele respective pentru codul i denumirea grupurilo

    de categorii (a se vedea fig. 6.3, analizai i acionai conform indicaiilor),4. Dup ce am inserat sectoarele respective, trebuie s trecem la inserarea

    Controalelor. O parte din ele vor fi legate (bound) de cmpurile din lista cereriPeCategRaportQ, ataat la raport, o alt parte vor fi absolut independente i vorconine informaie de tip Text, iar o a treia parte vor fi nite cmpuri (cmpuri

    calculate) dezlegate (unbound), n care se vor afia rezultatele unor calculeconform funciilor din Access sau chiar ale utilizatorului, scrise n Visual Basic.

    innd tasta CTRL apsat ifcnd click pe denumirile dinlist, vom obine un grup^iectat.l agm i-l copiem (legm) nDetail. Relaxnd mousedobine imaginea cu toatecontroalele selectate (toate au pecontur emne). Facem un clickntr-un loc liber aim i toatecontroaleife vor deveni libere.

    CoCaDenCa

    met jataViiCost

    Jni^as:*

    :~Ir

    JnMas

    irt;# CodCat Footer "ant

    Avnd toate controalele deselectate, libere,selectm doar etichetele lor. Pentruaceasta, poziionm mouse-ulaici,apsm i inem apsat butonu^stng almouse-ului, micm mouse-ul/pediagonal pn aici, vom observa c setraseaz un patmlater, relaxam mouse-ulatunci cnd patrulaterul a m in setichetele. Ca rezultat, vom reuiselectarea unui grup de Obiecte (celeselectate vor avea senwe pe contur).Facem unclick dreapm peste grupulselectat, apare o list^cu opiuni, alegemCut, observm c grupul selectat adisprut. Facemun click dreapta nsectorul PageHpder,apoiPaste.Grupul

    de etiche/e acolo, nPage Header.

    UnMas:

    jcod:==[Hden

    :n > jUnMas Cant

    ::g. 6.4. Transportarea etichetelor controalelor din sectorul Detail n sectorul PagHeader.

    5. Dup ce am obinut etichetele n sectorul Page Header, facem un click ntr-unloc liber n acelai sector i toate controalele-etichete vor deveni libere. Conformindicaiilor din fig. 6.5, aranjai etichetele n Page Header, modifcmdu-le idimensiunile astfel, ca s obinei ceea ce este artat n fig. 6.1.

    47

  • 8/13/2019 Access Coanda

    48/99

  • 8/13/2019 Access Coanda

    49/99

    Access. Ghid de iniiere Lucrarea de iaborator nr. 9

    9. n mod asemntor inserm controalele respective i n sectorulReport Footer,aranjndu-le n modul respectiv.

    . Pregtim n modul corespunztor i sectorul PageFoo