access 2010

37
1 BAZE DE DATE – MICROSOFT ACCESS 2010 Ce este o bază de date Intr-o definiţie, pe înţelesul tuturor, vom înţelege printr-o bază de date o colecţie de informaţii ce descrie mai multe subiecte similare. Exemplul cel mai apropiat de activitatea medicală este baza de date alcătuită din foile de observaţie ce însoţesc pacienţii spitalizaţi. Foaia de observaţie se întinde pe mai multe pagini, rubricile constuiente descriind pacientul (subiectul) internat. Totalitatea caracteristicilor ce descriu un subiect din baza de date alcătuiesc o înregistrare. Deci baza de date este o reuniune de înregistrări. Fiecare caracteristică poartă numele de câmp. Deci o înregistrare este reuniunea tuturor câmpurilor (caracteristicilor) ce compun o înregistrare. Revenind la exemplul anterior, baza de date este formată din mulţimea foilor de observaţie (ce poartă denumirea de înregistrări), fiecare rubrică constituind un câmp. Structura tuturor foilor de observaţie este omogenă, fiecare înregistrare conţinând aceleaşi câmpuri (chiar dacă unele sunt goale). Acest tip de baze de date pot fi organizate şi sub forma unui tabel mare sau a mai multor tabele, mai mici, cu legături între ele. Să remarcăm faptul că şi în practică, în foaia de observaţie sunt ataşate buletine de analize, rezultate ale unor investigaţii, diagrame… Bazele de date ce pot fi astfel organizate poartă denumirea de baze de date relaţionale. Care sunt etapele de realizare a unei baze de date Atunci când dorim să contruim o bază de date trebuie să începem cu generarea structurii bazei de date, adică să stabilim din ce câmpuri alcătuim o înregistrare. Pentru fiecare câmp se alege un nume, un tip de date (numeric, text, dată calendaristică...) şi o gamă de reprezentare. În continuare sunt stabilite tabele în care distribuim înregistrările precum şi legăturile dintre aceste tabele. Această etapă de proiectare este deosebit de importantă, de atenţia cu care este parcursă depinzând succesul ulterior al aplicaţiei. Odată generată structura bazei de date se trece la completarea cu informaţie. Operaţia este de regulă continuă, desfăşurându-se în paralel cu exploatarea bazei de date. Exploatarea baza de date, constă în intocmirea de rapoarte şi statistici plecând de la datele deţinute. Să realizăm concret o bază de date Noţiunile de mai sus sunt general valabile, realizarea efectivă a unei baze de date necesitând particularizări impuse de limbajul de programare utilizat. Pentru exemplificare noi am ales un mediu modern, larg răspândit şi anume Microsoft Access 2010. Baza de date ce o vom construi în continuare este un exemplu minimizat al foii de observaţie. Numărul însuşirilor memorate va fi mic (pentru a ne încadra în ora de laborator) dar va acoperi ca tip de informaţie situaţiile concrete din practică. Ne propunem să reţinem pentru fiecare pacient numele şi prenumele (în câmpul Name_p), sexul (sex), greutatea măsurată în kilograme (weight(kg)), înălţimea măsurată în centimetri (height(cm)), adresa (locality), mediul de provenienţă rural sau urban (environment), faptul că este sau nu fumător (smoker), valorile temperaturilor pe perioada internării (temperature) inclusiv a momentelor când s-au înregistrat (date_m, time_m). Câmpurile menţionate vor fi repartizate în trei tabele numite patient, patient_origin, temperatures, cu legături între ele (fig.1): Figura 1. Tabelele ce compun baza de date Faţă ce cele expuse mai sus, fiecare din cele trei tabele conţine câte un câmp special (numit cheie primară) care identifică în mod unic fiecare linie din fiecare tabel.

Upload: andasimionescu

Post on 16-Nov-2015

54 views

Category:

Documents


5 download

DESCRIPTION

ACCESS 2010

TRANSCRIPT

  • 1

    BAZE DE DATE MICROSOFT ACCESS 2010 Ce este o baz de date Intr-o definiie, pe nelesul tuturor, vom nelege printr-o baz de date o colecie de informaii ce descrie mai multe subiecte similare. Exemplul cel mai apropiat de activitatea medical este baza de date alctuit din foile de observaie ce nsoesc pacienii spitalizai. Foaia de observaie se ntinde pe mai multe pagini, rubricile constuiente descriind pacientul (subiectul) internat. Totalitatea caracteristicilor ce descriu un subiect din baza de date alctuiesc o nregistrare. Deci baza de date este o reuniune de nregistrri. Fiecare caracteristic poart numele de cmp. Deci o nregistrare este reuniunea tuturor cmpurilor (caracteristicilor) ce compun o nregistrare. Revenind la exemplul anterior, baza de date este format din mulimea foilor de observaie (ce poart denumirea de nregistrri), fiecare rubric constituind un cmp. Structura tuturor foilor de observaie este omogen, fiecare nregistrare coninnd aceleai cmpuri (chiar dac unele sunt goale). Acest tip de baze de date pot fi organizate i sub forma unui tabel mare sau a mai multor tabele, mai mici, cu legturi ntre ele. S remarcm faptul c i n practic, n foaia de observaie sunt ataate buletine de analize, rezultate ale unor investigaii, diagrame Bazele de date ce pot fi astfel organizate poart denumirea de baze de date relaionale.

    Care sunt etapele de realizare a unei baze de date Atunci cnd dorim s contruim o baz de date trebuie s ncepem cu generarea structurii bazei de date, adic s stabilim din ce cmpuri alctuim o nregistrare. Pentru fiecare cmp se alege un nume, un tip de date (numeric, text, dat calendaristic...) i o gam de reprezentare. n continuare sunt stabilite tabele n care distribuim nregistrrile precum i legturile dintre aceste tabele. Aceast etap de proiectare este deosebit de important, de atenia cu care este parcurs depinznd succesul ulterior al aplicaiei. Odat generat structura bazei de date se trece la completarea cu informaie. Operaia este de regul continu, desfurndu-se n paralel cu exploatarea bazei de date. Exploatarea baza de date, const n intocmirea de rapoarte i statistici plecnd de la datele deinute. S realizm concret o baz de date Noiunile de mai sus sunt general valabile, realizarea efectiv a unei baze de date necesitnd particularizri impuse de limbajul de programare utilizat. Pentru exemplificare noi am ales un mediu modern, larg rspndit i anume Microsoft Access 2010. Baza de date ce o vom construi n continuare este un exemplu minimizat al foii de observaie. Numrul nsuirilor memorate va fi mic (pentru a ne ncadra n ora de laborator) dar va acoperi ca tip de informaie situaiile concrete din practic. Ne propunem s reinem pentru fiecare pacient numele i prenumele (n cmpul Name_p), sexul (sex), greutatea msurat n kilograme (weight(kg)), nlimea msurat n centimetri (height(cm)), adresa (locality), mediul de provenien rural sau urban (environment), faptul c este sau nu fumtor (smoker), valorile temperaturilor pe perioada internrii (temperature) inclusiv a momentelor cnd s-au nregistrat (date_m, time_m). Cmpurile menionate vor fi repartizate n trei tabele numite patient, patient_origin, temperatures, cu legturi ntre ele (fig.1):

    Figura 1. Tabelele ce compun baza de date

    Fa ce cele expuse mai sus, fiecare din cele trei tabele conine cte un cmp special (numit cheie primar) care identific n mod unic fiecare linie din fiecare tabel.

  • 2

    O observaie nainte de a ncepe, ntruct alocarea butoanelor n Office 2010 este dinamic, pentru a nu avea surpriza inexistenei unor butoane indicate n indrumar, fereastra n care ruleaz programul va fi permanent MAXIMIZAT. Acum s lansm n execuie programul Access 2010 (fig.2):

    Figura 2. Fereastra de nceput a programului

    Acionm cu mouse-ul i alegem Blank database (pentru a nelege mecanismul de construire vom pleca de la zero i vom parcurge toi paii necesari), apoi declanm apariia ferestrei File New Database (fig.3):

    Figura 3. Alegerea folderului noii baze de date

    Fa de alte programe Microsoft Office, Access-ul ne cere s avem definit fiierul baz de date de la nceput (lucru motivat de cantitatea mare de informaie cu care lucreaz o baz de date). Cu ajutorul fereastrei File New Database alegem

  • 3

    folder-ul (atenie s fie pe discul D:) n care vom memora fiierul indicat la rubrica File name. Am ales ca nume, pacienti.accdb. Efectul acestei operaii l avem n figura 4:

    Figura 4. Odat pregtit numele fiierului, precum i folderol, putem aciona butonul Create Finalizm acionnd butonul Create (fig.4). Efectul apare sub forma figurii 5. Din acest moment baza de date se afl pe disc i putem s o folosim. Atenie, pentru a nu pierde informaie, n acest program, ori de cte ori suntem ntrebai dac dorim s memorm, rspundem cu opiunea Yes.

    Construcia tabelelor

    Figura 5. Apariia primului tabel al bazei de date

  • 4

    Pentru a nelege rolul i necesitatea stpnirii structurii cmpurilor nu vom utiliza varianta simplist oferit de Access 2010 ci vom comuta tabelul in modul de lucru Design View (fig. 6).

    Figura 6. Comutarea n modul de lucru Design View

    Acionnd butonul din colul stnga sus apare lista posibilitilor de construcie a unui tabel. Alegem Design View, ceea ce duce la schimbarea modului de prezentare al tabelului precum i la apariia ferestrei Save As, cu ajutorul creia indicm numele sub care memorm tabelul (fig.7).

    Figura 7. La alegerea opiunii Design View ni se cere s indicm un nume pentru tabel.

    Pentru tabelul n lucru vom alege numele Patients. (deoarece va memora numele pacienilor). Figura 8 ne prezint structura tabelului (Design View ne d posibilitatea s stabilim pentru fiecare cmp un nume, un

    tip de date i o gam de reprezentare). Pe coloana Field Name indicm, prin tastare, numele fiecrui camp. Odat denumit un nou cmp, pentru acesta trebuie s fie indicat tipul de date (text, numr...) pe coloana Data Type, iar, dac dorim, pe coloana

  • 5

    Description, putem aduga informaii utile nelegerii coninutului cmpului i modului de completare cu informaie. Aceste informaii vor apare la baza ferestrei n care se afl tabelul, atunci cnd cursorul de scriere se afl pe coloana corespunztoare.

    Figura 8. Structura unui tabel n Design View

    S construim structura tabelului patients. Primul cmp este patient i trebuie s defineasc n mod unic fiecare linie (s fie cheie primar) n tabelul patients. Cheia din faa cmpului patient indic acest lucru. Varianta cea mai la ndemn pentru construirea unui astfel de cmp este apelarea la numrul de ordine. Pacienii din baza de date vor fi numerotai prin alegerea tipului de date Autonumber (fig.9). Acest tip de date este de fapt reprezentat de numere Long integer, care se incrementez automat la inserarea unei noi linii n tabel. Atenie, ntr-un tabel un singur cmp poate fi Autonumber!

    Figura 9. Generarea cmpului name_p

    In figura 9 indicm generarea urmtorului camp, cel n care va fi memorat numele i prenumele pacientului. Numrul de caractere maxim acceptat pentru acest camp este limitat la 50 (suficient pentru un nume plus prenume). Dup ce se tasteaz

  • 6

    name_p pe rndul doi n coloana Field name, se duce cursorul mouse-ului pe acelai rnd n coloana Data type i se acioneaz butonul aprut n rubric. Pentru tipul cmpului se alege Text. (acest tip de cmp este cel implicit pentru Data type). La rubrica Field size se modific valoarea la 50. Al treilea cmp este sex, tot de tipul text. Procedm (fig. 10) similar cmpului anterior. Modificm numrul de caractere alocat cmpului. Dup ce a fost ales tipul text se duce cursorul mouse-ului n rubrica Field size, unde valoarea implicit 50 este modificat la valoarea 1 (suficient pentru memorarea celor dou variante: F sau M)

    Figura 10. Generarea cmpului sex

    Pentru ultimele dou cmpuri - weight(kg) i height(cm) - la rubrica Data type este necesar s alegem Number, avnd n vedere faptul c vor fi memorate numere fig.11).

    Figura 11. Generarea cmpului weight(kg)

    Forma implicit a tipului Number este Long integer (fig. 12).

  • 7

    Figura 12. Valoarea implicit a tipului Number este Long integer.

    Deoarece Long integer este destinat memorrii de numere ntregi de mari dimensiuni, avnd n vedere gama de valori ce vor fi memorate, putem face schimbarea n Byte (domeniul de valori ntregi fiind 0-255, suficient cazului nostru). Pentru aceasta se duce cursorul mouse-ului n rubrica Field size se apas butonul aprut n rubric i se face alegerea dorit (fig. 13).

    Figura 13. Alegerea tipului Byte

    n mod similar este generat i cmpul height(cm) (fig.14)

  • 8

    Figura 14. Generarea cmpului height(cm)

    Pentru finalizarea generrii tabelului nchidem structura patients (fig.15). S reinem modalitatea prin care putem nchide orice obiect de pe bar a pe care se afl butonul x. Inchiderea este succesiv, ncepnd cu obiectul cel mai apropiat de butonul x ncercuit n figura 15.

    Figura 15. Inchiderea structurii patients

    Inchiderea tabelului este precedat de apariia unei interogri la care rspundem Yes (figura 16).

    Figura 16. Mesajul prin care suntem ntrebai dac memorm tabelul nchis anterior

  • 9

    Structura patients este finalizat, dar deoarece tabelul patients face parte dintr-o baz de date cu mai multe tabele nu vom introduce informaii pn nu finalizm structurile tuturor tabelelor componente. Baza de date dezvoltat de noi mai conine dou tabele. Generarea structurilor acestor dou tabele se va face utiliznd opiunea Create, butonul Table Design View (fig.17)

    Figura 17. Lansarea generrii structurii unui nou table n Design View.

    In figura 18 este prezentat efectul comenzii. Se observ c de aceasta data nu este prezent cheia primar.

    Figura 18. Structura noului tabel

    Continum dezvoltarea bazei de date folosind noiunile descrise anterior precum i imaginile din figurile 19-26 prin construirea structurii tabelului patient_origin. Pentru cheia primar a fost ales tipul Number, varianta Long integer, deci atenie atunci cnd vor fi introduse datele.

  • 10

    Figura 19. Introducerea cmpului patient.

    Figura 20. Stabilirea cheii primare.

    Figura 21. Introducerea cmpului locality

  • 11

    Figura 22. Introducerea cmpului environment

    Figura 23. Introducerea cmpului smoker

    Figura 24. Inchiderea tabelului patient_origin

  • 12

    Figura 25. Interogarea la care rspundem Yes pentru memorarea structurii

    Figura 26. Indicarea numelui, patient_origin, sub care se memoreaz tabelul

    Continum lucrul cu generarea structurii ultimului tabel (temperatures), al bazei de date. n plus fa de cele cunoscute deja apare utilizarea i a tipului de date Date/Time (figurile 27-33) pentru memorarea momentului msurrii temperaturii.

    Figura 27. Alegerea tipului de date Date/Time pentru cmpul date_m

  • 13

    Figura 28. Stabilirea formatului datei (Short Date)

    Figura 29. Stabilirea formatului (short time)de memorare a orei pentru cmpul time_m

    Figura 30. Generarea cmpului patient de tipul Number.

  • 14

    Generarea cmpului patient (cheie strin n acest tabel) trebuie fcut n conformitate cu tipul Autonumber definit n tabelul patients (unde este cheie primar) i este ilustrat n figura 19. Pentru cmpul temperature este necesar s alegem o modalitate prin care s putem memora numere zecimale, avnd n vedere valorile temperaturilor umane. Datorit numrului mic de zecimale cu care se msoara temperatura, dintre opiunile disponibile (Single i Double) se alege Single. (fig. 31).

    Figura 31. Alegerea tipului Number, varianta Single, pentru cmpul temperature.

    Figura 32. Inchiderea tabelului temperatures.

    Figura 33. Stabilirea numelui tabelului temperatures.

    Construcia legturilor ntre tabele

    Ultima etap n generarea structurii bazei de date o constituie stabilirea legturilor ntre tabele. Atenie, legturile se fac nainte de introducerea de informaie. Butonul cu care declanm construcia legturilor este Relationships i se gsete apelnd opiunea Database Tools (fig. 34).

  • 15

    Figura 34. Dup ce a fost construit structura tabelelor, de la opiunea Database Tools

    se acioneaz butonul Relationships.

    Apsarea butonului Relationships are ca efect apariia ferestrei Show table (fig. 35). Cu ajutorul ferestrei Show table reinem tabelele ntre care vom stabili legturi prin selectare cu mouse-ul i apsarea butonului Add. Finalizm prin apsarea butonului Close.

    Figura 35. Fereastra Show Table ne ajut s aducem pe ecran tabelele ce vor fi legate

    Figura 36. Tabelele ntre care vor fi construite legturile

    Pentru efectuarea primei legturi ducem cursorul mouse-ului peste cmpul patient din tabelul patiens, apsm

    prelung butonul din stnga (de pe mouse) i fr a ridica degetul deplasm cursorul pn peste cmpul patient din tabelul patient_origin, moment n care eliberm mouse-ul. Efectul este prezentat n figura 37

  • 16

    Figura 37. Fereastra Edit Relationships prezint cmpurile ce vor fi legate

    n continuare bifm cele trei csue din fereastr, impunnd n acest fel un control continuu asupra informaiilor din tabele. Finalizm operaia prin apsarea butonului Create. Efectul l vedem n figura 38.

    Figura 38. Legtura tip 1:1 ntre tabelele patients i patients_origin

    Legtura format este de tipul 1:1 (one to one) adic fiecarei linii n primul tabel i corespunde cel mult o singur linie n al doilea. Practic cele dou tabele pot fi alipite, rezultnd un singur tabel cu mai multe coloane dar mai greu de manevrat.

    Figura 39. Realizarea legturii ntre tabelele patients i temperatures

  • 17

    A doua legtur o realizm ntre cmpurile patient din tabelele patients i temperatures urmnd o procedur similar celei de la legtura anterioar (fig. 39). Figura 40 ne arat c a doua legtur care este de tip 1:m (one to many) adic fiecarei linii din primul tabel i pot corespunde mai multe n al doilea i fiecarei linii din al doilea tabel i corespunde exact una n primul.

    Figura 40. Cele trei tabele, legate ntre ele

    Figura 41. Incheierea efecturii legturilor

    Pentru ca baza de date s rein legturile efectuate vom nchide fereastra Relationships i vom rspunde Yes la ntrebarea din figura 42.

    Figura 42. Memorarea, n cadrul bazei de date, a relaiilor stabilite prin acionarea butonului Yes

    Completarea cu informaie a tabelelor Primul tabel n care ntroducem date este patients (fig. 43). Dup ce l deschidem, introdrucem datele, pentru un numr de pacieni, incluznd datele din figura 44. n csua in care scrie (New) nu tastm nimic, programul incrementnd automat.

    Figura 43. Deschiderea tabelului patients

  • 18

    Figura 44. Completarea cu informaie a tabelului patients.

    Trecem acum la tabelul patients_origin (fig. 45), Il deschidem i introducem date, n conformitate cu figura 46.

    Figura 45. Deschiderea tabelului patient_origin

    Figura 46. Introducerea de informaie n tabelul patient_origin

    Atenie, numrul introdus la rubrica patient trebuie s se regseasc la rubrica patient din tabelul patients. Dup ce introducem numrul putem apsa asupra plusului din faa numrului de pacient, declanm apariia unui mic tabel, cu datele corespunztoare din tabelul patients (figura 46). Putem completa acum patient_origin, cunoscnd i celelalte date. La apariia tabelului explicativ, plusul devine minus (figura 47). Acionarea asupra minusului (click) duce la transformarea lui in plus i la dispariia tabelului explicativ.

  • 19

    Figura 47. Aducerea pe ecran a datelor corepunztoare din tabelul patients

    n figurile 48, 49, ni se arata ce se ntmpl dac se introduc date pentru un numr de pacient inexistent (7). Mesajul de eroare apare att la trecerea pe rnd nou ct i la incercarea de nchidere a tabelului.

    Figura 48. Pacientul 7 nu exist n tabelul patients, trecerea pe rndul urmtor genereaz mesajul de eroare

    Figura 49. Mesaj de eroare datorat ncercrii de memorare a unui pacient inexistent.

    Pentru a a putea continua apsm succesiv pe tastatura Esc pn dispare mesajul de eroare. Continum cu introducerea valorilor temperaturilor msurate. Acestea sunt memorate n tabelul temperatures, ns pentru a lucra mai uor vom deschide tabelul patients (fig. 50) i vom aciona cu mouse-ul asupra plusului din faa numelui

  • 20

    pacientului cruia i memorm temperatura. Plusul devine minus i un tabel n care s introducem datele se desfoar (fig. 51). nchiderea acestui tabel poate fi fcut acionnd asupra minusului.

    Figura 50. Pentru a introduce mai uor temperaturile deschidem tabelul patients.

    Figura 51. Introducerea temperaturilor msurate pentru pacientul 1

    Figura 52. Aspectul tabelului temperatures

  • 21

    Temperaturile pot fi introduse i direct n tabelul temperatures, cu precizarea c trebuie indicat numrul pacientului (fig. 52). Sortarea informaiei dintr-un tabel Pentru a sorta liniile dintr-un tabel selectm coloana dup care dorim ordonarea (ca exemplu n figura 53 a fost aleas coloana name_p) din tabelul patients. Selectarea s-a fcut prin acionare cu mouse-ul pe titlul name_p. Apariia listei de comenzi este efectul apsrii asupra butonului triunghi cu varful n jos din dreapta numelui coloanei.

    Figura 53. Selectarea coloanei name_p i lansare unei comenzi de sortare

    Figura 54. Efectul sortrii descendente dup nume

  • 22

    Filtrarea informaiei dintr-un tabel Prin operaia de filtrare se vor putea reine spre vizualizare doar acele informaii ce respect un criteriu. Comanda se lanseaz din meniul Home. Se selecteaz coloana asupra creia se dorete filtrarea i apas Filter (fig. 55).

    Figura 55. Lansarea comenzii de filtrare. Pentru indicarea criteriului de filtrare, din lista aprut (se poate aciona i butonul din dreapta numelui coloanei), se las bifat doar opiunea dorit (n cazul nostru F). Aplicarea filtrului se face dnd comanda OK din meniu (fig. 55). n figura 56 este ilustrat rezultatul filtrrii.

    Figura 56. Efectul filtrrii i comanda de anulare a efectului filtrrii

    Lista anterioar poate fi folosit i pentru filtrri numerice (Number Filters). Operaia este aleas din lista ce apare automat atunci cnd sgeata mouse-ului ajunge peste Number Filters (fig 57) . In figura 57, urmat de 58 este exemplificat o filtrare asupra coloanei weight(kg), pentru gsirea greutilor mai mari dect 50.

  • 23

    Figura 57. Aplicarea filtrului construit

    Figura 58. Indicarea valorii numerice i obinerea rezultatului filtrrii.

    Figura 59. Efectul filtrrii poate fi aplicat cumulativ, succesiv filtrm rezultatul. Spre exemplu la rezultatul din fig. 52 am

    selectat brbaii

  • 24

    . Trebuie remarcat faptul c structura filtrului nu poate fi memorat i trebuie construit la fiecare utilizare. Interogri asupra informaiilor dintr-unul sau mai multe tabele

    Interogrile sunt structuri cu care putem filtra informaia din unul sau mai multe tabele i pe care putem s le memorm pe disc. Generarea structurilor de interogare se face alegnd opiunea Create, butonul Query Design (fig. 60).

    Figura 60. Construirea unei structuri de interogare n modul de lucru Query Design.

    Efectul acionrii butonului Query Design este apariia ferestrei Show Table pe fundalul tabelului n care vom construi structura de interogare (fig. 61).

    Figura 61. Fereastra Show Table

    Fereastra Show table este utilizat pentru aducerea tabelelor peste care vom face interogarea, dup care este nchis. Primul exemplu prezentat este listarea numelor pacienilor brbai cu greutate mai mare de 50 kg.

  • 25

    Figura 62. Aducerea n structur a tabelului patients asupra cruia vom face interogarea.

    Figura 63. Tabelul patients pregtit pentru interogare.

    Figura 64. Structura interogrii pentru aflarea pacienilor brbai cu greutate mai mare de 50 kg.

  • 26

    n tabelul cu structura interogrii sunt indicate att cmpurile ce vor impune condiiile ct i cmpurile ce vor fi afiate. Atenie, nu apar implicit toate cmpurile componente ale tabelelor!. Figura 64 ne indic modul n care sunt indicate campurile dorite s participe la interogare. Pe linia Field se alege numele cmpului, pe linia Table numele tabelului, pe linia Show dac s apar informaia, pe linia Criteria condiia ce trebuie respectat. Numele cmpurilor de pe linia Field pot fi tastate, trase cu mouse-ul din tabelul patients sau alese din lista ce apare la click n rubric. Pentru memorarea pe disc a structurii interogarii se nchide obiectul Query1. (fig. 65sus), i se rspunde cu Yes la ntrebarea din figura 65jos.

    Figura 65. Dup nchiderea interogrii apsarea Yes declaneaz memorarea structurii pe disc.

    Figura 66. Stabilirea numelui structurii interogrii (M>50kg).

  • 27

    Figura 67 Lista pacienilor brbai cu greutate mai mare de 50 kg.

    Figura 67 ne ofer rezultatul interogrii.Obinem aceast list acionnd M>50kg cu dublu click. Al doilea exemplu este de interogare peste mai multe tabele, vom afla numele pacienilor brbai cu temperatura mai mare de 38 de grade. Tabelele utilizate n interogare sunt patients i temperatures. Structura este ilustrat n figurile 68, 69, 70.

    Figura 68. Structura ce ne ofer momentele n care unii brbai depesc temperatura de 38 de grade

    Figura 69. Stabilirea numelui structurii (temp>87M).

  • 28

    Figura 70. Rezultatul interogrii

    Formulare Formularele (Forms) sunt instrumente foarte utile n prezentarea sau actualizarea informaiilor din tabele. Marele avantaj al acestui instrument il constituie prezentarea informaiilor nregistrare cu nregistrare. Generarea unui formular l putem face selectnd Create i apoi Form Design (fig. 71).

    Figura 71. Generarea unui formular nou,

    Pentru a construi structura unui formular avem nevoie de structura din figura 72 (ce se genereaz conform figurii 71) precum i de lista cmpurilor tabelului pe care dorim s-l actualizm sau vizualizm. Dup ce aducem (conform figurii 73) n Field List numele tabelelor disponibile, putem aciona cu mouse-ul asupra plusului din faa numelui tabelului dorit, ceea ce duce la desfurarea listei cmpurilor dorite (fig. 73,74).

  • 29

    Figura 72. Platforma pentru construirea structurii formularului

    Figura 73. Aducerea numelor tabelelor disponibile n zona Field list

    S construim un formular, cu care s actualizm informaia din tabelul patients. Pentru construirea structurii avem nevoie de platforma Forms (fig. 72) i de Field list, cu cmpurile tabelului patients desfurate (fig. 73,74).

    Figura 74. Aducerea in zona formularului a campului name_p

    Cu ajutorul mouse-ului sunt trase din fereastra Field List n zona Detail, cmpurile dorite (fig. 74, 75). Deoarece n stnga fiecrui cmp apare automat o etichet cu numele cmpului vom avea grije s lasm la operaia de tragere, suficient loc. Componena n cmpuri a unui formular este la alegerea noastr, nu e obligatoriu s tragem toate cmpurile. Finalizarea

  • 30

    construirii formularului o facem nchiznd obiectul Form1 i rspunznd Yes (fig. 76). Stabilim numele formularului acc_pat conform figurii 77.

    Figura 75. Tragerea n formular a tuturor cmpurilor dorite.

    Figura 76. Inchiderea structurii formularului i cecrerea memorrii pe disc (apsarea butonului Yes)

    Figura 77. Stabilirea numelui acc_pat pentru formular

  • 31

    n figura 78 este prezentat formularul construit. Lansarea lui se realizeaz cu dublu click peste acc_pat (zona Forms, dreapta). Parcurgerea ntregului tabel (linie cu linie) se face cu ajutorul butoanelor de la baza formularului. Atenie, fiecare informaie poate fi modificat, modificrile fiind memorate pe disc!. Dac dorim s adugm o inregistrare nou, se poate aciona butonul cu stelu i pe ecran va fi adus un formular cu rubrici goale (fig. 79).

    Figura 78. Aspectul formularului construit, acc_pat

    Figura 79. Introducerea datelor unui nou pacient.

    Rapoarte Raportul este instrumentul prin care pot fi tiprite liste precum i statistici asupra datelor din tabele. Generarea unui raport o ncepem alegnd opiunea Create i apoi apsnd butonul Report Design (fig. 80). Ca i la formulare avem i n acest caz nevoie de Field List (modalitatea de aducere pe ecran este cunoscut deja, fig. 73,74). S construim un raport ce s conin numele, saxul i greutile pacienilor din tabela patients. Deasemenea n cadrul raportului vom calcula i greutatea medie. Un raport se compune din cinci zone, implicit fiind afiate doar trei. Pentru a avea pe ecran toate zonele se apeleaz la meniul flotant (click dreapta pe mouse), n care apar i comenzile Page Header/Footer i Report Header/Footer. Bifm i comanda Report Header/Footer (fig. 81,82).

  • 32

    Figura 80. Lansarea comenzii de generare a nunui nou raport.

    Figura 81. Aducerea celor cinci zone ale unui raport.

    Figura 82. Structur pregtit pentru construirea raportului.

    Cele cinci zone ale raportului sunt:

    -Report Header zon n care se poate scrie titlul raportului -Page Header zon n care se poate scrie un antet de pagin, informaie ce se repet la nceputul tuturor paginilor raportului. Zon n care se poate pagina raportul. -Detail - zon n care se indic informaia a cror cmpuri s fie prezent n raport.

  • 33

    -Page Footer zon n care se poate scrie un subsol de pagin, informaia scris se repet la sfritul tuturor paginilor raportului. Este zon n care se poate pagina raportul. -Report Footer zon n care se poate scrie un sfrit de raport. Singura zon n care pot fi efectuate calcule statistice asupra datelor din raport.

    Fiecare din cele 5 zone poate fi modificat ca dimensiune. Pentru aceasta se duce sgeata mouse-ului s nepe frontiera de jos sau din dreapta (dup necesitate), se apas prelung butonul din stnga (de pe mouse) i se mut mouse-ul pe mas, pn cnd dimensiunea este cea dorit. n acel moment eliberm butonul mouse-ului. Este bine ca suprafaa celor 5 zone s fie redus la maxim pentru a economisi hrtia la tiprire. Pentru a scrie o informaie ntr-un raport (un titlu, o nume de rubric, o explicaie...) este necesar s creem un dreptunghi etichet (label). Pentru aceasta apsm butonul Aa (opiunea Design), apoi ducem cursorul mouse-ului pe suprafaa raportului, n zona dorit, apsm prelung butonul din stnga i trasm un dreptunghi. La ridicarea degetului de pe mouse, apare un cursor de scriere, tastm textul dorit i ncheiem editarea apsnd tasta enter (fig. 83). Atenie, dac nu tastm nimic, dreptunghiul etichet se pierde.

    Figura 83. Introducerea cu ajutorul etichetelor, a titlului i a numelor coloanelor din list.

    n zona Detail trebuiesc indicate cmpurile a cror informaie dorim s o prezentm n raport. Pentru aceasta cel mai

    simplu este s procedm ca i la formulare (fig. 84).

    Figura 84. Tragerea din Field List a cmpului name_p.

  • 34

    Se trage cu mouse-ul din Field list, cmpul dorit, n locul dorit n zona Detail, suficient de departe de marginea din stnga. n urma acestei aciuni apar 2 dreptunghiuri, pereche, unul n stnga cu inscripia text n interior, i unul n dreapta, cu numele cmpului din Field list, n interior. Dreptunghiul din stnga funcioneaz ca o etichet, n care putem scrie dup dorin orice. Pentru obinerea unui cursor de scriere este necesar s ducem cursorul mouse-ului peste etichet i s apasm succesiv de dou ori butonul din stnga. Se utilizeaz n continuare tastatura pentru a indica textul dorit, finaliznd operaia prin apsarea tastei enter. Dac dorim s tergem dreptunghiul etichet l selectm (un singur click pe mouse) i apsm tasta Delete. Dreptunghiului din dreapta, cu numele cmpului nu i se aduc modificri n interior. Urmeaz poziionarea cu mouse-ul a dreptunghiurilor, prin agare de colul din stnga sus i tragere (figurile 85,86,97).

    Figura 85. Selectarea etichetei name_p n vederea tergerii cu tasta Delete.

    Figura 86. Mutarea cmpului name_p

    Figura 87. Poziionarea cmpurilor: name_p, sex, weight(kg) n zona Detail i micorarea zonei

  • 35

    Figura 88. Paginarea raportului

    Pentru a efectua calcule statistice n zona Report Footer este necesar s apsm cu mouse-ul butonul ab (opiunea

    Design), apoi s trasm un dreptunghi, cu acest instrument, n zona Report Footer. Atenie lsai suficient loc n stnga, deoarece dreptunghiul trasat este nsoit n stnga de un dreptunghi etichet pereche. In interiorul dreptunghiului de calcul apare scris Unbound. Textul etichetei poate fi modificat dup dorin. Pentru obinerea unui cursor de scriere este necesar s ducem cursorul mouse-ului peste etichet i s apasm succesiv, de dou ori, butonul din stnga. Se utilizeaz n continuare tastatura pentru a indica textul dorit, finaliznd operaia prin apsarea tastei enter. Pentru tergerea etichetei se selecteaz (un singur click cu mouse-ului) i apoi se apas tasta delete. Pentru a genera o formul de calcul n dreptunghiul Unbound respectm regulile:

    -editarea ncepe cu semnul = , -operanzii cmpuri se ncadreaz ntre paranteze drepte, -pentru respectarea ordinii operaiilor se folosesc parantezele, -semnele folosite sunt: pentru adunare este +, pentru scdere este -, pentru nmulire este *, pentru mprire este /, -pot fi folosite funcii predefinite.

    Exemple de funcii predefinite: AVG([nume cmp]) pentru media valorilor din cmpul citat, SUM([nume cmp]) pentru sum valorilor din cmpul citat, MIN([nume cmp]) pentru minimul valorilor din cmpul citat, MAX([nume cmp]) pentru maximul valorilor din cmpul citat, COUNT([nume cmp]) pentru numrul valorilor din cmpul citat.

    Figura 89. Introducerea unei formule de calcul

  • 36

    Figura 90. Calcularea mediei pentru greutate

    Figura 91. Incheierea construirii structurii raportului, confirmarea memorrii i indicarea numelui raportului

  • 37

    Figura 92. Afiarea raportului