MS Access: Din nou la tabele… poate lucruri neştiute


Săptămâna trecută încheiam un articol îndemnându-vă să studiaţi ce opţiuni de configurare sunt pe la tabele. (Desigur, mă adresez cercului limitat de cititori interesaţi de MS Access.) Astăzi îmi propun să vă prezint câteva lucruri pe care aş paria că mulţi nu le cunosc. Mai exact vom vorbi despre formatări, despre măşti, despre totaluri şi despre câmpuri calculate. Uau, lista e lungă aşa că să ne grăbim până nu ne biruie plictiseala. Mă aştept de exemplu că aţi văzut opţiunile din tabul General pentru Format. Că e număr sau dată găsim nişte setări utile, după cum se vede din captura de mai jos. Dar există mult mai multe setări posibile.

imagine

De fapt atât de multe încât ne putem prinde urechile. Situl Microsoft are o pagină în limba română unde le explică: Formatarea datelor din tabele. Eu am să vă spun doar o opţiune ce mie îmi place foarte mult: <. Corect: dacă puneţi aşa ceva ca valoare la Format MS Access va forţa litere mici pe acel câmp (text). Nu e cool? Imaginaţi-vă că aveţi un câmp pentru email: oricine ar completa baza de date, şi de le-ar scrie CU CAPS, adresele de email vor fi salvate tot cu litere mici. Mai vreţi un truc? Iată altul util: dd mmm. Aceste caractere puse ca formatare pentru un câmp dată vor face ca acel câmp să preia doar ziua şi luna, atunci când anul nu vă interesează (gen tabel cu aniversări). Hehe… şi câte nu mai sunt! Doar jonglând la formatare.

În completare vine puterea măştilor. Să zicem că am un câmp cu telefonul producătorului: nu e enervant când la scriere se scapă o cifră la telefon? E exasperant chiar! Problema se rezolvă cu o mască. Daţi click pe cele trei puncte de la dreapta de Inpus Mask. Va apare un “vrăjitor” ce are câteva măşti des folosite, dar care nu ne limitează: putem să ne definim propriile măşti. Să mergem însă pe prima variantă: Număr de telefon. Dăm apoi Next şi în pasul următor vedem masca: !(999) 00 00 00. Doar că noi şi în loc de 9 (“poate fi pusă o cifră”) vom pune tot 0 (“trebuie pusă o cifră”), şi schimbăm masca în !0000-000.000 (că aşa îmi place mie să arate un număr de telefon). Cum prima cifră e mereu zero mai bine punem masca !”0”000-000.000.

imagine

Ia priviţi cum arată acum câmpul pentru telefon când încercăm să îl completăm! Ne constrânge să respectăm masca. Nu poţi uita acum o cifră. Nu poţi decât completa în formatul gen 0712-345678. Extraordinar! Şi formatul şi restricţiile se respectă şi în formulare, fără să mai lucrăm ceva. Ba chiar şi în rapoarte! Da, de aceea e bine să zăbovim la configurarea tabelelor, pentru că ne scuteşte de muncă mai apoi. Credeţi-mă.

imagine

Am terminat două din patru subiecte. Gonim spre “calculatorul” ce mie îmi seamănă cumva cu Excel. Avem deci o coloană cu produse în stoc. Mergem în Datasheet View şi apăsăm butonul Totals (îl observaţi apăsat în captura de mai jos). Apare o nouă linie intitulată… Total. E scrisă jos de tot, mai îngroşat. În funcţie de tipurile câmpurilor opţiunile diferă. De exemplu la Cantitate, fiind numeric, pot alege între sumă, medie, câte sunt, maxim, minim, deviaţia standard şi… uh… varianţa (nu le am cu economia). Am ales Sum şi acum jos îmi scrie 310 bucăţi. Această extra-linie rămâne (şi dacă închidem şi redeschidem baza de date) atâta timp cât butonul Totals e apăsat. Simpatică chestie, nu?

imagine

Şi acum ajungem la ultimul subiect, câmpurile calculate. Sunt două moduri să le introduceţi: în Datasheet View mergeţi la ultimul câmp (care nu e câmp de fapt), click pe săgeata în jos şi alegeţi Calculated Field şi tipul. Sau în Design View alegeţi la Data Type evident Calculated. Un exemplu de câmp calculat ar fi [TotalProdus] definit ca [Pret]*[Cantitate]. Atenţie: nu este propriu-zis un câmp. MS Access nu adaugă fizic un câmp la tabelă. E un câmp virtual, calculat, căci aşa îi spune numele, în momentul afişării. Unii au criticat MS Access pentru introducerea acestui concept ce abate de la teoria strictă a bazelor de date. Poţi evita câmpurile calculate folosind interogări. Deci pur şi simplu nu ai nevoie de câmpuri calculate. Decât când îţi fac plăcere :) .

imagine

Am adăugat deci un câmp calculat, după cum am spus.

imagine

Şi l-am folosit cu facilitatea de totaluri anterior expusă. Şi uite aşa, fără să am cu adevărat un câmp nou, un câmp în plus, pot să văd de fiecare dată când deschid tabela cu produse în ce valoare sunt ele. MS Access calculează în câmpul calculat preţul per produs (câte produse sunt înmulţit cu preţul produsului), iar apoi le însumează. Simplu!

imagine

La final să vedem cum arată formularul creat de MS Access automat pentru tabela Produse. După cum vedeţi – şi am spus! – se conservă formatele definite.

imagine

Sper că v-am spus nişte lucruri utile.

PS: Nu folosiţi câmpuri calculate când veţi da baza de date şi unor prieteni în versiuni mai vechi. Nici MS Access 2007 nu se va descurca cu ele. Nu folosiţi măştile şi formatele încât să blocaţi valori posibile. Poate un număr de telefon din altă ţară sau orice în afara „tiparului” luat de Dvs în calcul.


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (4 evaluări, media: 4,75 din 5)
Loading...Loading...

0 comentarii


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *