Documente Academic
Documente Profesional
Documente Cultură
MG LP12 PDF
MG LP12 PDF
Lucrarea practică 12
Indicaţii generale:
Una dintre cele mai importante activităţi în legătură cu baza de date a spitalului este
raportarea (inclusiv pe hârtie) a unor date selectate. Această activitate presupune (la fel ca
şi cea de selectare) două faze: în prima fază este creată macheta de raportare, urmând ca în
faza a doua să fie obţinut raportul propriu-zis.
Dar scopul principal pentru care sunt create şi întreţinute bazele de date îl
constituie obţinerea, într-un timp cât mai scurt, a unor informaţii utile conţinute în datele
plasate în tabele de date. Una dintre cele mai importante facilităţi ale bazelor de date este
posibilitatea obţinerii unor date cu caracter global despre înregistrări (cum ar fi, de
exemplu, calculul vârstei medii a pacienţilor trataţi de un medic, din înregistrările
pacienţilor în care apare codul numeric personal – cod în care este conţinută data naşterii).
Veţi exersa câteva dintre acestea.
În această lucrare practică:
a) veţi crea machete de raportare şi le veţi modifica;
b) veţi crea machete pentru etichete, exersând controlul hârtiei;
Teme
47: machete de raportare
48: etichete
suplimentară: baze de date complexe
160
UMF “Carol Davila” – Informatică Medicală şi Biostatistică MG - Lucrarea practică 12 2015/2016
CREATE REPORT
Se va deschide fereastra
Report Designer a „generatorului
de rapoarte” (de fapt a
generatorului de machete). Se
observă că se rezervă automat
câteva rânduri pentru antetul
paginii (zona Page Header), alte
câteva rânduri pentru fiecare
161
MG - Lucrarea practică 12 2015/2016 UMF “Carol Davila” – Informatică Medicală şi Biostatistică
înregistrare din tabelul de date (zona Detail) şi în sfârşit câteva rânduri pentru subsolul paginii
(zona Page Footer).
Observaţi apariţia pe bara meniurilor a unui nou meniu, Report. Executaţi de aici
comanda Quick Report. Apăsaţi butonul OK în caseta de dialog Quick Report, obţinând un
exemplu de felul în care va trebui să arate macheta de raportare. Observaţi plasarea în zona
Page Header a denumirilor câmpurilor, iar în zona Page Footer a comenzii de inserare a datei
calendaristice curente.
Pentru a vizualiza „raportul”, folosiţi comanda Print Preview din meniul File. Fiind un
raport automat, standard, este mai puţin adecvat comunicării de rezultate. Probabil că nu veţi
reuşi afişarea pe ecran a „paginilor” raportului, complexitatea structurii tabelului de date fiind
prea mare. În continuare veţi exersa modul de finisare a unui raport.
Pentru crearea rapoartelor RECOMANDĂM FOLOSIREA INSTRUMENTULUI
AUXILIAR Wizard. Aşadar, FileNewReport (Wizard). Veţi fi conduşi, pas cu pas, prin
etapele de creare a machetei, apoi veţi putea vizualiza şi, în cele din urmă, imprima rezultatul.
În prima etapă aveţi de făcut doar o alegere simplă (vezi figura următoare).
Deocamdată nu este cazul folosirii simultane a datelor din mai multe tabele, întrucât avem unul
singur, aşadar opţiunea aleasă va fi Report Wizard, ca în figură.
162
UMF “Carol Davila” – Informatică Medicală şi Biostatistică MG - Lucrarea practică 12 2015/2016
163
MG - Lucrarea practică 12 2015/2016 UMF “Carol Davila” – Informatică Medicală şi Biostatistică
Înainte de a încheia
machetarea „automată”, mai este
necesară doar declararea unui titlul
pentru raport, fie acesta „Raport
Sectia I (responsabil numele d-
voastră)”. Evident, din butonul radio
Select an option and click Finish
preferăm să alegem opţiunea Save
report for later use.
164
UMF “Carol Davila” – Informatică Medicală şi Biostatistică MG - Lucrarea practică 12 2015/2016
165
MG - Lucrarea practică 12 2015/2016 UMF “Carol Davila” – Informatică Medicală şi Biostatistică
pacientului au fost introduse ca date Logical, mai precis sexf este True (numai) pentru
pacienţii de sex feminin. Funcţia IIF() ne permite modificarea afişării valorii din celulă, din
„SEXF” în „masculin” sau „feminin”, printr-o comandă relativ simplă
IIF(sexf=.T.,”feminin”,”masculin”)
LP12_1.nrcrt
LP12_1.numpren
LP12_1.chirurg
LP12_1.sexf
LP12_1.varsta
LP12_1.catvar
LP12_1.obezitate
LP07_1.fumator
(Aceasta din urmă va trebui aliniată, ceea ce este recomandabil a se face după o
examinare a rezultatului (FilePrint Preview).
Observaţi în zona subsolului (Page Footer) comanda de introducere a paginaţiei,
formată din eticheta „Page” – pe care o veţi înlocui cu „Pagina” – şi combinaţia
ALLTRIM(STR(_PAGENO)). Ea se obţine prin aplicarea funcţiei de conversie STR()
asupra numărului curent al paginii, urmată de aplicarea funcţiei ALLTRIM() care elimină
blancurile din secvenţele de caractere. Ar fi de preferat să construiţi, cu ajutorul constructorului
de expresii, valoarea concatenată
”Pagina ”+ALLTRIM(STR(_PAGENO))
Lărgiţi zona Group Footer pentru a introduce aici o informaţie de totalizare (a
numărului de linii din fiecare grup de pacienţi). Plasaţi aici un obiect de tip Field, care să
conţină de exemplu LP12_1.varsta, dar CalculationsCount în caseta de dialog Expression
Builder. Încercaţi să-l încadraţi cu inscripţiile „Total” şi „pacienti”, realizate ca obiecte de tip
Label.
Ar fi de dorit să introduceţi în această zonă a raportului şi alte informaţii supli-mentare
utile, de exemplu vârsta medie a pacienţilor.
Refaceţi macheta în stilul Executive, luând în considerare gruparea după chirurg (nu
după categoria de vârstă, de care nu aveţi nevoie), observând şi diferenţele în afişare. Veţi
numi această nouă machetă nume_CHIRURG.
De data aceasta, în zona Group Footer, sub coloana vârstelor pacienţilor, veţi plasa un
obiect de tip Field, care să conţină LP12_1.varsta, dar pentru care alegeţi
CalculationsAverage în caseta de dialog Expression Builder. În stânga sa plasaţi textul
„Varsta medie”.
Se obişnuieşte – în raportările medicale – ca vârsta medie să fie însoţită de abaterea
(deviaţia) standard.
Pentru a respecta aceasta, plasaţi în zona Group Footer încă un obiect de tip Field, în
dreapta precedentului. Puteţi alege şi pentru acesta expresia LP12_1.varsta, însă
166
UMF “Carol Davila” – Informatică Medicală şi Biostatistică MG - Lucrarea practică 12 2015/2016
CalculationsStandard deviation. Între cele de tipul Field plasaţi textul „Ds” aşa încât
informaţiile afişate să arate astfel:
Varsta medie 48 Ds 3
(Cum reuşiţi să afişaţi: „Varsta medie 48 (Ds 3)”?)
Ar mai fi de făcut o singură corecţie machetei de raportare nume_CHIRURG (de fapt
şi celei anterioare, nume_CATVAR). Este vorba despre faptul că numele şi prenumele
fiecărui pacient ar trebui să apară, în zona Detail, cu prima literă majusculă. Transformarea în
majuscule se poate face imediat, cu ajutorul funcţiei UPPER(). Aşadar, înlocuiţi în obiectul de
tip Field ce apelează câmpul numpren expresia cu următoarea
UPPER(LP12_1.numpren)
(Transformarea în majusculă a doar primei litere din fiecare cuvânt nu este însă atât de
uşor de efectuat! Vă puteţi informa „în Internet” asupra oricărei comenzi sau funcţii speciale,
de asemenea puteţi afla cum se pot obţine diverse efecte sau rezultate. Este suficient să cereţi
în Google informaţii despre FoxPro şi comandă.)
167
MG - Lucrarea practică 12 2015/2016 UMF “Carol Davila” – Informatică Medicală şi Biostatistică
168