Documente online.
Username / Parola inexistente
  Zona de administrare documente. Fisierele tale  
Am uitat parola x Creaza cont nou
  Home Exploreaza
Upload



















































EVIDENTA PACIENTILOR INTR-O CIRCA MEDICALA

medicina












ALTE DOCUMENTE

Vitamina B9, o vitamina fundamentala, mai ales pentru gravide
VIFACTORI TERATOGENI
Metoda de tratament a cancerului de rect cu Marul Lupului
TUMORILE PARENCHIMULUI RENAL
Tehnica procedeelor de masaj
FIZIOPATOLOGIA SUFERINTEI FETALE IN PREECLAMPSIE
Mecanismele de aparare - Teorie si aspecte clinice
Uleiul de in - principala sursa naturala de acizi grasi (AG) omega 3
Aloe vera si efectele sale asupra tumorilor

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:

1. 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.

2. 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

 

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

              -Despre

4. 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,0 TO 24,79 NONE

ACTI WIND F

DEFI WIND F1 FROM 0,0 TO 6,79 NONE

ACTI WIND F1

@ 0,0,6,79 BOX REPLICATE(CHR(221),9) 

TEXT

ENDTEXT

FOR i = 1 TO 10

      READ timeout 0.1

      MOVE window f1 by 3,0

ENDFOR

MOVE window F1 TO 0,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,7 TO I+3,40

    ACTIVATE WINDOW ECRAN

    @ 0,10 SAY "PROFESOR COORDONATOR:"

    @ 1,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,1 SAY " GRUP SCOLAR BICAZ "

       @ 1,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,10 say "Nume     =" get wnume

  @ 3,10 say "Varsta   =" get wvarsta

  @ 4,10 say "Adresa   =" get wadresa

  @ 5,10 say "Boala    =" get wboala  

  @ 6,10 say "Medic    =" get wmedic

  @ 7,10 say "Telefon  =" get wtelefon

  @ 8,10 say "Nume-mama=" get wmama

  @ 9,10 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,15 TO 23,65 DOUBLE

         @ 18,27 SAY 'VA MULTUMESC '

         @ 19,30 SAY 'PENTRU '

         @ 20,36 SAY 'ATENTIA ACORDATA !'

         @ 22,32 SAY 'LA REVEDERE !'

         wait ''

         clear

         cancel

    case bar()=2

        @ 17,15 TO 23,65 DOUBLE

        @ 18,27 SAY 'VA MULTUMESC '

        @ 19,30 SAY 'PENTRU '

        @ 20,36 SAY 'ATENTIA ACORDATA !'

        @ 22,32 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,2 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,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,2 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,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,2 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,2 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,2 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,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,1 say "pacienti intre 0-18 ani "

@ 1,25 say p18

@ 2,1 say "pacienti intre 18-70 ani "

@ 2,25 say p33

@ 3,1 say "pacienti > 70 ani "

@ 3,25 say p70

@ 4,1 say "punctaj doctor ="

@ 4,25 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: 3822
Apreciat:

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

Copiaza codul
in pagina web a site-ului tau.




Coduri - Postale, caen, cor

Politica de confidentialitate

Copyright © Contact (SCRIGROUP Int. 2019 )