Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




EVIDENTA PACIENTILOR INTR-O CIRCA MEDICALA

medicina



LICEUL TEORETIC BICAZ

PROFILUL: INFORMATICĂ






ATESTAT LA INFORMATICĂ

CU TEMA:

"EVIDENŢA PACIENŢILOR ĪNTR-O CIRCĂ MEDICALĂ"




REALIZATOR: TARĪŢA VITALI





PROF. COORD.: VANCEA ION














CUPRINS:





INTRODUCERE

PREZENTARE

PROGRAM

COMENZI SI FUNCTII

FOXPRO
















Introducere







Calculatoarele electronice au aparut din necesitatea stocarii si prelucrarii cāt mai rapide a informatiilor. La īnceput sistemele electronice de calcul ocupau camere īntregi fiind capabile sa memoreze si sa prelucreze o cantitate mica de informatii. Pe masura ce tehnica de calcul a evoluat, calculatoarele au devenit din ce īn ce mai performante, aceasta īnsemnānd o crestere a capacitatii de memorare si o mai mare viteza de prelucrare a datelor.

Sistemul FOXPRO constituie īn prezent un produs informatic cu o larga utilizare pentru elaborarea de aplicatii īn care informatia care se prelucreaza este structurata, de regula, sub forma de baze de date - structurile de tip baza de date fiind adecvate pentru domenii diverse de prelucrari de date: economice, lingvistice,statistice, e.t.c.

Sistemele de Gestiune a Bazelor de Date, pe scurt SGBD, (prescurtare care este īntālnita foarte des īn literatura de specialitate), reprezinta sisteme informatice (soft) specializate īn stocarea si prelucrarea unui volum mare de date. Termenul de "baza de date" se refera la datele de prelucrat , la modul de organizare a acestora pe suportul fizic de memorat, iar termenul de "gestiune" se refera la actiunea de memorare si prelucrare a acestor date.

Un SGBD trebuie sa asigure urmatoarele functii elementare, referitoare la bazele de date:

-definirea bazei de date,

-introducerea datelor (adaugarea de noi date la baza de date),

-modificarea unor date existente īn baza de date,

-stergerea unor date,

-extragerea informatiilor stocate īn baza de date,

-generare de rapoarte,

-modalitati noi de interogare a bazei de date,

-noi tipuri de organizare a bazei de date si noi tipuri de acces (accesul indexat e.t.c.

SGBD - urile rationale sunt prevazute cu posibilitatea realizarii de legaturi īntre doua sau mai multe baze de date, legaturi care permit accesarea simultana a unor date, care se afla īntr-o anumita relatie, din baze de date diferite.

Astfel programatorul este eliberat de sarcina de a cauta īn toate bazele de date acele date care corespund unor date de referinta, aceasta operatie fiind realizata automat de catre SGBD. Programul trebuie doar ca la īnceput sa defineasca relatiile īntre bazele de date, urmānd ca gasirea anumitor informatii īntr-o baza de date de referinta sa determine gasirea automata a informatiilor corespunzatoare din celelalte baze de date, aflate īn relatie cu aceasta.

Structurile de program si de date , mediul de programare, mijloacele de editare si de depanare a programelor, precum si celelalte facilitati oferite de sistemul FOXPRO raspund exigentelor actuale din domeniul sistemelor de dezvoltare de programe.

Complexitatea sistemului FOXPRO, numarul mare de comenzi si functii predefinite pe care le contine fac ca asimilarea lui sa prezinte si un anumit grad de dificultate. Tot o dificultate , īn faza initiala de utilizare a acestui limbaj de programare, poate sa o reprezinte caracterul de relativa noutate a unor elemente ale sale. Astfel, spre deosebire de limbajul PASCAL-reprezentativ pentru limbajele moderne-, īn FOXPRO majoritatea controalelor care se fac asupra expresiilor sunt dinamice (īn executie), iar tipul si vizibilitatea numelorsunt determinate de fluxul executiei.

Cu toate dificultatile sale, sistemul FOXPRO se remarca prin performantele produselor realizate prin intermediul lui si de aceea am ales sa realizez lucrarea de atestat, utilizāndu-l.











EVIDENTA PACIENTILOR

INTR-O CIRCA MEDICALA

-prezentare-


In ultimul deceniu, informatica din tara noastra a facut un spectaculos salt atat pe plan cantitativ, prin infiintarea de noi centre de calcul si atragerea de noi forte de munca in acest domeniu, cat si pe plan calitativ prin abordarea unor probleme din ce in ce mai subtile.

In etapa actuala de dezvoltare a informaticii se observa o crestere insemnata a importantei sistemelor de operare.

Bazele de date constituie un element des intalnit in viata noastra de toate zilele; un dictionar, o carete de telefoane, etc. sunt baze de date folosite din ce in ce mai des, de aceea este necesara optimizarea folosirii acestora cu ajutorul calculatorului.

O baza de date reprezinta un amsamblu de date integrat anume, structurat si dotat cu o descriere la aceste structuri. Descrierea poarta numele de dictionar de date sau meto-date si creaza o independenta intre datele propriuzise si programe.

Tema acestui atestat, "EVIDENTA PACIENTILOR INTR-O CIRCA MEDICALA", a fost inspirata de necesitatea optimizarii accesului rapid la anumite date despre pacientii si medicii unor clinici medicale, precum si adaugarea rapida de noi pacienti in baza.

Acest program vine in sprijinul medicilor de familie ce doresc o mai buna evidenta a activitatii lor medicale, in cadrul clinicilor. Programul preia de la tastatura numele, varsta, adresa, numele parintilor si boala de care sufera un pacient si le memoreaza intr-o baza de date.Pe baza acestor date programul poate afisa lista celor aflati in evidenta in mai multe moduri cum ar fi : lista alfabetica, dupa diagnostic sau dupa numarul de telefon.

Programul permite cautarea unui pacient in functie de nume, adresa, nume parinti, sau numarul de telefon. O facilitate deosebita acestui program este aceea ca, permite calcularea punctajului aferent unui medic existent in baza. Punctajul unui medic se foloseste pentru a permite deducerea rapida venitului doctorului in functie de numarul de pacienti. In calcularea punctajului s-au evidentiat 3 categorii de pacienti, cu 3 punctaje diferite in functie de varsta acestora. Astfel


a) 0-18 ani 10 puncte

b) 19-70 ani 5 puncte

c) peste 71 ani 7 puncte


Programul foloseste o baza de date numita CIRCA .DBF si apeleaza la un meniu orizontal cu diverse optiuni, ce permit la randul lor diverse operatii asupra evidentei pacientilor si verificarea rapida a punctajului medicilor. Campurile acestei baze de date sunt prezentate mai jos. (Aceasta baza de date contine inregistrari fictive.)


NUME


C25

VARSTA


N2

ADRESA


M

BOALA


C25

MEDIC


C25

TELEFON


N6

NUME_

MAMA

C25

NUME_

TATA

C25



Programul cupride urmatoarele optiuni:


Opratii baza:> -Adaugare - se adauga de la tastatura: numele, varsta,adresa, boala,medicul,telefon, nume-mama, nume-tata. Programul va modifica baza de date numita circa.dbf adaugand astfel un nou intrat in clinica.

-Modificare - la accesarea acestei cai a programului, ne va aparea pe monitor intreaga lista a bolnavilor alaturi de datele de la inscriere.

-Afisare:> -Nume prenume - ne va aparea pe ecran lista bolnavilor in ordine alfabetica.

-Nr. Tel. - ne va apatea pe ecran lista bolnavilor in ordinea cifrelor.

-Boli - ne va aparea pe ecran lista bolnavilor in ordinea alfabetica a numelui bolii de care sufera.


Cautare:> -Nume prenume - cauta pacientul in baza de date dupa nume

-Nume mama - cauta pacientul in baza de date dupa numele mamei

-Nume tata - cauta pacientul in baza de date dupa numele tatalui

-Adresa - cauta pacientul in baza de date dupa adresa

-Nr. tel. - cauta pacientul in baza de date dupa numarul de telefon


Utilitare:> -Calcul punctaj - la accesarea acestei cai, von introduce de la tastatura numele doctorului a carui punctaj vrem sa-l aflam

-Despre


Terminare:> -Foxpro

-Nc


Optiunea "OPERATII BAZA" apeleaza la 3 proceduri pentru a inlesni utilizatorului lucrul cu baza de date.

Prima procedura se numeste 'Adaugare' si cu ajutorul acesteia se pot adauga in baza noi pacienti, luarea acestora in evidenta facandu-se dupa nume, prenume, varsta, adresa, boala, medicul, telefonul si numele parintilor.

Cea de-a doua procedura se numeste 'Modificare' si cu ajutorul acesteia se pot face cu usurinta modificari in interiorul bazei de date.

A treia procedura se numeste 'Afisare' si prin intermediul acesteia se pot efectua cautari rapide ale persoanelor din baza in functie de nume, telefon sau boala acestora.

Optiunea "CAUTARE" permite cautarea rapida a unui pacient in functie de numele si prenumele persoanei, adresa, varsta, medicul, boala, numarul de telefon sau numele parintilor.

Optiunea "UTILITARE" permite utilizatorului sa afle cu usurinta punctajul unui medic din baza, apeland procedura 'Calcul punctaj'. Tot aici apeland 'Despre' utilizatorul, poate afla date despre continutul programului.

Optiunea "TERMINARE" permite iesirea rapida a utilizatorului direct in FOXPRO sau in Nc.

Programul este prezentat in continuare:







set talk off

set safety off

set default to c:\circa

set exact off

set cursor on

clear



DEFI WIND F FROM 0 TO 24,79 NONE

ACTI WIND F

DEFI WIND F1 FROM 0 TO 6,79 NONE

ACTI WIND F1

BOX REPLICATE(CHR(221),9)

TEXT

ENDTEXT

FOR i = 1 TO 10

READ timeout 0.1

MOVE window f1 by 3

ENDFOR

MOVE window F1 TO 0



READ TIMEOUT 2.0

DEAC WIND F1

DEAC WIND F2

DEAC WIND F3

DEAC WIND F4


CLOSE ALL

CLEAR

DEAC WIND ALL


a=10



FOR I=1 TO 18

DEFINE WINDOW ECRAN FROM I TO I+3,40

ACTIVATE WINDOW ECRAN

@ 0 SAY "PROFESOR COORDONATOR:"

@ 1 SAY "PROF. VANCEA ION

READ TIMEOUT(0.01)

ENDFOR


FOR I=1 TO 30

DEFINE WINDOW ECRAN1 FROM 20,I TO 23,I+45

ACTIVATE WINDOW ECRAN1

@ 0 SAY " GRUP SCOLAR BICAZ "

@ 1 SAY " 2003-2004 "

ENDFOR

READ TIMEOUT 4.0

DEAC WIND ALL

CLOSE ALL


defi menu CIRCA

defi pad opt1 of CIRCA prompt "\<Operatii baza"

defi pad opt2 of CIRCA prompt "\<Cautare"

defi pad opt3 of CIRCA prompt "\<Utilitare"

defi pad opt4 of CIRCA prompt "\<Terminare"



defi popup BAZA

defi bar 1 of BAZA prompt "\<Adaugare"

defi bar 2 of BAZA prompt "\<Modificare"

defi bar 3 of BAZA prompt "\<Afisare"



defi popup CAUT

defi bar 1 of CAUT prompt "\<Nume prenume"

defi bar 2 of CAUT prompt "N\<ume mama"

defi bar 3 of CAUT prompt "Nu\<me tata"

defi bar 4 of CAUT prompt "\<Adresa"

defi bar 5 of CAUT prompt "Numar \<Telefon"



defi popup afisare

defi bar 1 of afisare prompt "\<Nume prenume"

defi bar 2 of afisare prompt "Numar \<telefon"

defi bar 3 of afisare prompt "\<Boli"




defi popup util

defi bar 1 of util prompt "\<Calcul punctaj"

defi bar 2 of util prompt "\<Despre"



defi popup TER

defi bar 1 of TER prompt "\<Foxpro"

defi bar 2 of TER prompt "\<Nc"


on pad opt1 of CIRCA acti popup BAZA

on pad opt2 of CIRCA acti popup CAUT

on pad opt3 of CIRCA acti popup util

on pad opt4 of CIRCA acti popup TER


on sele bar 1 of BAZA do adaugare

on sele bar 2 of BAZA do modificare

on bar 3 of BAZA acti popup afisare

on sele bar 1 of util do punctaj

on sele bar 2 of util modi file despre.prg


on sele popup CAUT do cautare

on sele popup afisare do afisare

on sele popup TER do terminare



acti menu CIRCA




procedure adaugare

hide menu circa

hide popup all

clear

defi wind f from 5,15 to 16,60 title "Adaugare date"

acti wind f

wnume =" "

wvarsta =0

wadresa =" "

wmedic =" "

wtelefon =0

wmama =" "

wtata =" "

wboala =" "

@ 2 say "Nume =" get wnume

@ 3 say "Varsta =" get wvarsta

@ 4 say "Adresa =" get wadresa

@ 5 say "Boala =" get wboala

@ 6 say "Medic =" get wmedic

@ 7 say "Telefon =" get wtelefon

@ 8 say "Nume-mama=" get wmama

@ 9 say "Nume-tata=" get wtata

read

use circa

append blank

replace nume_p with wnume

replace vir with wvarsta

replace adresa with wadresa

replace medic with wmedic

replace nr_tel with wtelefon

replace nume_mama with wmama

replace nume_tata with wtata

replace boli with wboala

deac wind f

clear wind

show menu circa

show popup baza

return



procedure modificare

hide menu circa

hide popup all

clear

defi wind f from 2,2 to 22,78 title "Modificare date"

acti wind f

use circa

brow nodelete noappend nomenu

use

deac wind f

clear wind

show menu circa

show popup baza

return


procedure terminare

hide menu circa

hide popup all

clear

do case

case bar()=1

@ 17 TO 23,65 DOUBLE

@ 18 SAY 'VA MULTUMESC '

@ 19 SAY 'PENTRU '

@ 20 SAY 'ATENTIA ACORDATA !'

@ 22 SAY 'LA REVEDERE !'

wait ''

clear

cancel

case bar()=2

@ 17 TO 23,65 DOUBLE

@ 18 SAY 'VA MULTUMESC '

@ 19 SAY 'PENTRU '

@ 20 SAY 'ATENTIA ACORDATA !'

@ 22 SAY 'LA REVEDERE !'

wait ''

clear

quit

endcase

deac menu circa

deac popup all



procedure afisare

hide menu circa

hide popup all

clear

use circa

do case

case bar()=1

defi wind f from 2,2 to 22,78 double title "Afisare alfabetica"

acti wind f

index on nume_p to nume

brow noedit nodelete in window f

deac wind f

case bar()=2

defi wind f from 2,2 to 22,78 title "Afisare dupa telefon" double

acti wind f

index on nr_tel to tel

brow field nume_p,nr_tel,vir,adresa,medic,boli,nume_mama,nume_tata noedit nodelete for nr_tel<>0 in wind f

deac wind f

case bar()=3

defi wind f from 2,2 to 22,78 title "Afisare dupa boli" double

acti wind f

index on boli to boli

brow field nume_p,boli,nr_tel,vir,adresa,medic,nume_mama,nume_tata noedit nodelete in wind f

deac wind f

endcase

clear

use

show menu circa

show popup afisare

return



procedure cautare

hide menu circa

hide popup caut

clear

use circa

do case

case bar()=1

defi wind f from 2,2 to 22,78 title "Cautare nume"

acti wind f

wn space(18)

@ 1 say "Introduceti numele " get wn pict "! ! !!!!"

read

wn upper(alltrim(wn))

go top

locate for nume_p=wn

if found()

brow for nume_p=wn

else

@ 2 say "Acest nume nu exista in baza"

wait 'Apasa orice tasta!'

endif

use

deac wind f


case bar()=2

defi wind f from 2,2 to 22,78 title "Cautare nume mama"

acti wind f

wn space(18)

@ 1 say "Introduceti numele " get wn pict "! ! !!!!"

read

wn upper(alltrim(wn))

go top

locate for nume_mama=wn

if found()

brow for nume_mama=wn

else

@ 2 say "Acest nume nu exista in baza"

wait 'Apasa orice tasta!'

endif

use

deac wind f

case bar()=3

use circa

defi wind f from 5,15 to 20,60

acti wind f

use circa

wn space(10)

@ 1 say "Introduceti numele " get wn pict "! !!!"

read

go top

locate for nume_tata=wn

if found()

brow for nume_tata=wn

else

wait window "Acest nume nu exista in baza"

endif

use

deac wind f

clear wind

case bar()=4

use circa

defi wind f from 5,15 to 20,60

acti wind f

use circa

wn space(20)

@ 1 say "Introduceti adresa " get wn

read

go top

locate for adresa=upper(alltrim(wn))

if found()

brow for adresa=alltrim(wn)

else

wait window "Aceasta adresa nu exista in baza"

endif

use

deac wind f

clear wind

case bar()=5

use circa

defi wind f from 5,15 to 20,60

acti wind f

use circa

wn 0

@ 1 say "Introduceti numarul de telefon " get wn pict "999999"

read

go top

locate for nr_tel=wn

if found()

brow for nr_tel=wn

else

wait window "Acest numar de telefon nu exista in baza"

endif

use

deac wind f

clear wind

endcase

clear

show menu circa

show popup caut

return





procedure punctaj


use circa

define wind f from 5,5 to 15,75 double title "Calcul punctaj doctor"

acti wind f


@ 1 say "Doctor=" get wdoctor default space(25)

read



wdoctor upper(alltrim(wdoctor))


locate for medic=wdoctor

if found()


count for (vir<=18)and(medic=wdoctor) to p18

count for (vir>=18)and(vir<=70)and(medic=wdoctor) to p33

count for (vir>70)and(medic=wdoctor) to p70


s1=10

s2=5

s3=7

punctaj =s1*p18+s2*p33+s3*p70

clear

@ 1 say "pacienti intre 0-18 ani "

say p18


@ 2 say "pacienti intre 18-70 ani "

say p33


@ 3 say "pacienti > 70 ani "

say p70


@ 4 say "punctaj doctor ="

say punctaj

wait window "Apasa orice tasta!"

else

wait windo "Acest medic nu exista in baza!"

endif


DEAC WIND F


Return







































Comenzi si functii

FOXPRO


USE<NUME> -DESCHIDE O BAZA DE DATE CU NUMELE <NUME>;

USE -INCHIDE BAZA DE DATE CURENTA;

APPEND -ADAUGA INREGISTRARI IN BAZA DE DATE CURENTA;

REPLACE -INLOCUIESTE CAMPURI IN BAZA DE DATE;

SET COLOR OF SCHEME -SPECIFICA CULORILE DINTR-O SCHEMA DE    . CULOARE;

SET SAFETY ON\OFF -GESTIONEAZA MECANISMUL DE PROTECTIE A    . FISIERELOR;

SET TALK ON\OFF -ACTIVEAZA SAU DEZACTIVEAZA AFISAREA

INFORMATIILOR IN CURSUL PRELUCRARII;

SHOW MENU -AFISEAZA UN MENIU DEFINIT IN PREALABIL;

SHOW POPUP-AFISEAZA UN MENIU POPUP;

SKIP -MUTA INDICATORUL DE ARTICOL;

SORT TO -SORTEAZA O BAZA DE DATE;

DELETE -MARCHEAZA PENTRU STERGERE INREGISTRARI DIN BAZA DE DATE ACTIVA;

DEFINE MENU -CREAZA UN MENIU LINIE;

DEFINE POPUP-CREAZA UN MENIU POPUP;

























BIBLIOGRAFIE



"FOXPRO" -MICROINFORMATICA

"COMENZI SI FUNCTII FOXPRO" -TEORA

"CULEGERE DE PROBLEME FOXPRO"

"BAZE DE DATE" -MICROINFORMATICA

CURSURI








Document Info


Accesari: 5620
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )