Proiect de specialitate - Programare in Visual Fox Pro     
    Categoria: Referat
        Informatica     
    
             
    Descriere: 
      Am utilizat limbajul de programare Visual FoxPro pentru creearea 
lucrarii de atestat, deoarece acest limbaj are un viitor in domeniul 
economic (de gestiune a bazelor de date),dar si pentru modul placut de 
lucru...       | 
    
    
       | 
   
  
    
  | 
   
  
    
	 
  
  1
 
 
 
 
 
  
 
 
 
                   
PROIECT  DE  SPECIALITATE 
 
 
 
                                               
TEMA 
 
 
                          
  
 
 
            
  
 
 
                   
Programare in Visual Fox Pro 
 
 
 
 
 
Coordonator
lucrare:                                 
Elev: 
Prof. Botezan
Claudia                    
Olariu Gladin Claudiu       
 
 
 
             
STRUCTURA LUCRARII DE ATESTAT 
 
 
 
Cap.I.     Denumirea si obiectul lucrarii 
Cap.II.    Structura bazei de date 
Cap.III.  Justificarea solutiei adoptate pentru realizarea lucrarii 
Cap.IV.   Descrierea bazei teoretice a lucrarii  
        
Cap.V.     Descrierea structurii si a continutului
lucrarii realizate 
Cap.VI.    Anexe 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
       Cap.I.   Denumirea si
obiectul lucrarii 
 
    Titlul lucrarii este: “Gestiunea echipei F.C.
Valencia”.Operatiile executate in acest program asupra bazelor de date
sunt cele primare, adica functiile relative ale unui SGBD asupra
bazelor de date: 
 
    Crearea bazei de date; 
    Introducerea datelor in baza de date; 
    Modificarea unor date deja existente in baza de
date; 
    Stergerea datelor din baza de date; 
    Consultarea bazelor de date. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  Cap.II. Structura bazei de date 
 
 
Programul contine doua baze de date: 
    table1.dbf 
    table2.dbf 
 
      Prima baza de date table1.dbf  este
alcatuita din: 
 
    jucator: Character 35 
    numar tricou: Numeric 2 
    pozitie: Character 15 
    locul nasterii: Character 25 
    anul nasterii: Numeric 4 
    inaltime: Numeric 3 
    greutate: Numeric 3 
    debut: Date 8 
    suma transfer: Numeric 12 
   A doua baza de date table2.dbf contine: 
 
    jucator: Character 35 
    conditia fizica: Numeric 2 
    viteza: Numeric 2 
    puterea sutului: Numeric 2 
    exactitatea pasei: Numeric 2 
    forta: Numeric 2 
    rezistenta: Numeric 2 
    deposedare: Numeric 2 
    agresivitate: Numeric 2 
    total: Numeric 3 
 
 
 
 
 
 
 
Cap.III.  Justificarea solutiei adoptate pentru 
realizarea 
lucrarii                                                               
  
 
       Am utilizat limbajul de programare
Visual FoxPro pentru creearea lucrarii de atestat, deoarece acest
limbaj are un viitor in domeniul economic (de gestiune a bazelor de
date),dar si pentru modul placut de lucru. 
        Visual FoxPro este un Sistem
de Gestiune a Bazelor de Date (SGBD), cunoscand in prezent o larga
raspandire datorita aplicatiilor dezvoltate pentru domenii din cele mai
diverse, cat si pentru interfata (meniuri,ferestre de dialog si alte
caracteristici) care faciliteaza comunicarea usoara cu utilizatorul. 
        SGBD-ul reprezinta sisteme
informatice specializate in stocarea si prelucrarea unui volum mare de
date. Un SGBD trebuie sa asigure urmatoarele functii elementare
relative la bazele de date: 
    definirea structurii(crearea bazei de date); 
    introducerea datelor in bazelede date; 
    modificarea unor date deja existente in bazele de
date; 
    stergerea datelor din bazele de date; 
    consultarea bazelor de date (extragerea
informatiilor). 
       O serie de facilitatii ale
SGBD-ului Visual FoxPro sunt date prin componentele specializate numite
generatoare. Acestea ofera un mod de lucru comod si rapid, in ferestre
specializate,utilizatorul acestor componente nu trebuie sa fie neaparat
specializat in informatica si nu trebuie sa cunoasca foarte multe
lucruri despre bazele de date. Cele mai utilizate generatoare sunt: 
    generatoare de rapoarte; 
    generatoare de meniuri; 
    generatoare de ecran. 
 
 
 
 
 
 
 
 
Cap.IV. Descrierea bazei teoretice a lucrarii 
 
    
   In construirea programelor din acest proiect am folosit
urmatoarele proceduri, functii si instructiuni: 
    browse – afiseaza toate inregistrarile din baza de
date;putem avea o fereastra BROWSE pentru fiecare zona de lucru cu
conditia sa fie memorie suficienta; 
    modi stru – permite modificarea campurilor in
cadrul bazei de date; 
    list – afiseaza toate inregistrarile; 
    display – afiseaza inregistrarea curenta; 
    go <nr> - pozitioneaza indicatorul de
inregistrari pe inregistrarea nr; 
    go top – pozitioneaza indicatorul de inregistrari
pe prima inregistrare din BD; 
    go bottom – pozitioneaza indicatorul de
inregistrari pe ultima inregistrare din BD; 
    skip – muta indicatorul de inregistrari relative
lapozitia curenta a acestuia; 
    record <nr> - are ca effect selectarea
inregistrarii cu nr specificat; 
    next <nr> - permite selectarea unui de nr
inregistrarii incepand de la cea curenta inclusiv ea; 
    rest – permite selectarea tuturor inregistrarilor ,
incepand de la cea curenta inclusiv ea si pana la sfarsitul tabelului; 
    append – permite adaugarea de inregistrari in baza
de date; 
    append blank – permite adaugarea unei inregistrari
vide la sfarsitul bazei de date; 
    append before – permite adaugarea unei inregistrari
inaintea ultimei inregistrari din baza de date; 
    append blank before – permite adaugarea unei
inregistrari vide pe penultima pozitie din baza de date; 
    insert – insereaza o inregistrare dupa
inregistrarea curenta; 
    insert blank – insereaza o inregistrare vida dupa
inregistrarea curenta; 
    insert before – insereaza o inregistrare inaintea
inregistrarii curente; 
    insert blank before – insereaza o inregistrare vida
inaintea inregistrarii curente; 
    replace – termina executia unui program,predand
controlul programului apelant,de pe nivelul anterior sau de pe cel mai
inalt nivel, altui program sau fereastra de comanda;    
    delete – sterge logic o inregistrare; 
    delete all – sterge logic toata baza de date; 
    recall – permite recuperarea inregistrarilor sterse
logic; 
    pack – sterge fizic toate inregistrarile sterse
logic; 
    zap – sterge toata baza de date; 
    ?recno() – afiseaza numarul inregistrarii curente; 
    ?reccount() – afiseaza cate inregistrari sunt in BD; 
    ?date() – afiseaza data curenta; 
    Year(datan) – afiseaza anul current;  
    Month(datan) – afiseaza luna curenta; 
    Day(datan) – afiseaza ziua curenta; 
 
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Cap.V. Descrierea structurii si a continutului lucrarii realizate 
 
 
         Forma principala
contine 9 butoane de comanda: 
    Despre ; 
    Vizualizare – vizualizare jucatori ; 
                           
vizualizare calitati ; 
    Adaugare – adaugare jucatori ; 
                        
adaugare calitati ; 
    Cautare – cautare jucatori ; 
                     
cautare calitati ;  
    Valoare ; 
    Iesire . 
 
            
Butonul despre contine comenzile: 
                                
thisform.release 
                                
do form gladyinapoi 
si ne duce in forma gladyinapoi.scx care contine: 4 label-uri si 1
buton si ofera date despre cel care a conceput acest proiect. 
         Butonul adaugare
jucator contine comenzile: 
                                         
thisform.release 
                                         
do form adaugare1  
si ne duce in forma adaugare1.scx care contine: 9 label-uri, 9 text
box-uri si 3 butoane si in care putem adauga noi jucatori si date
despre acestia in prima baza de date. 
         Butonul adaugare
calitati contine comenzile: 
                                        
thisform.release 
                                        
do form adaugare2  
si ne duce in forma adaugare2.scx care contine: 10 label-uri, 10 text
box-uri si 3 butoane si in care putem adauga noi jucatori si date
despre acestia in a doua baza de date. 
          Butonul
vizualizare jucatori contine comenzile: 
                                        
thisform.release 
                                        
do form vizualizare1 
si ne duce in forma vizualizare1.scx care contine: 9 label-uri, 9 text
box-uri si 6 butoane si care permite vizualizarea tuturor informatiilor
despre jucatori, introduse in prima baza de date. 
          Butonul
vizualizare calitati contine comenzile: 
                                        
thisform.release 
                                        
do form vizualizare2 
si ne duce in forma vizualizare2.scx care contine: 10 label-uri, 10
text box-uri si 6 butoane si care permite vizualizarea tuturor in
formatiilor despre jucatori, introduse in a doua baza de date. 
           Butonul
cautare jucatori contine comenzile: 
                                        
thisform.release 
                                        
do form cautare1  
si ne duce in forma cautare1.scx care contine: 9 label-uri, 8 text
box-uri, 1 combo box si 4 butoane si care permite cautarea oricarui
jucator dupa informatiile oferite de prima baza de date, dupa anumiti
algoritmi bine stabiliti. 
           Butonul
cautare calitati contine comenzile: 
                                        
thisform.release 
                                        
do form cautare2 
si ne duce in forma cautare2.scx care contine: 10 label-uri, 9 text
box-uri, 1 combo box si 4 butoane si care permite cautarea oricarui
jucator dupa informatiile oferite de a doua baza de date, dupa anumiti
algoritmi bine stabiliti. 
        Butonul VALOAREA este
particular proiectului meu si 
contine comenzile: 
                                    
thisform.release 
                                    
do form VALOAREA  
si ne duce in forma VALOAREA.scx  care contine: 4 label-uri, 2
text box-uri si 3 butoane si care permite vizualizarea sumei de
transfer a fiecarui jucator, precum si valoarea totala a clubului F.C.
Valencia. 
            
Butonul  iesire contine comanda: 
                                        
thisform.release  
si prin apasarea lui iesim din proiect. 
 
 
  
  1
Cap.VI.  Anexe  
 
   In forma adaugare1 avem butoanele: 
 
    Adaugare  
 USE TABLE1.DBF 
v1=alltrim(thisform.text1.value) 
v2=thisform.text2.value 
v3=alltrim(thisform.text3.value) 
v4=alltrim(thisform.text4.value) 
v5=thisform.text5.value 
v6=thisform.text6.value 
v7=thisform.text7.value 
v8=thisform.text8.value 
v9=thisform.text9.value 
append blank 
go bottom 
replace jucator with v1 
replace nr_tricou with v2 
replace pozitie with v3 
replace locul_nasterii with v4 
replace anul_nasterii with v5 
replace inaltime with v6 
replace greutate with v7 
replace debut with v8 
replace suma_transfer with v9 
THISFORM.TEXT1.VALUE=" " 
THISFORM.TEXT2.VALUE=" " 
THISFORM.TEXT3.VALUE=" " 
THISFORM.TEXT4.VALUE=" " 
THISFORM.TEXT5.VALUE=" " 
THISFORM.TEXT6.VALUE=" " 
THISFORM.TEXT7.VALUE=" " 
THISFORM.TEXT8.VALUE=" " 
THISFORM.TEXT9.VALUE=" " 
THISFORM.REFRESH 
 
    Renunt  
thisform.text1.value=" " 
thisform.text2.value=" " 
thisform.text3.value=" " 
thisform.text4.value=" " 
thisform.text5.value=" " 
thisform.text6.value=" " 
thisform.text7.value=" " 
thisform.text8.value=" " 
thisform.text9.value=" " 
thisform.refresh 
 
    Back  
THISFORM.RELEASE 
do form glady 
 
In forma adaugare2 avem butoanele: 
 
    Adaugare  
use table2.dbf 
v1=alltrim(thisform.text1.value) 
v2=thisform.text2.value 
v3=thisform.text3.value 
v4=thisform.text4.value 
v5=thisform.text5.value 
v6=thisform.text6.value 
v7=thisform.text7.value 
v8=thisform.text8.value 
v9=thisform.text9.value 
v10=thisform.text10.value 
append blank 
go bottom 
replace jucator with v1 
replace conditie_fizica with v2 
replace vitaza with v3 
replace puterea_sutului with v4 
replace exactitatea_pasei with v5 
replace forta with v6 
replace rezistenta with v7 
replace deposedare with v8 
replace agresivitate with v9 
replace total with v10 
THISFORM.TEXT1.VALUE=" " 
THISFORM.TEXT2.VALUE=" " 
THISFORM.TEXT3.VALUE=" " 
THISFORM.TEXT4.VALUE=" " 
THISFORM.TEXT5.VALUE=" " 
THISFORM.TEXT6.VALUE=" " 
THISFORM.TEXT7.VALUE=" " 
THISFORM.TEXT8.VALUE=" " 
THISFORM.TEXT9.VALUE=" " 
thisform.text10.value=" " 
THISFORM.REFRESH 
 
    Renunt 
thisform.text1.value=" " 
thisform.text2.value=" " 
thisform.text3.value=" " 
thisform.text4.value=" " 
thisform.text5.value=" " 
thisform.text6.value=" " 
thisform.text7.value=" " 
thisform.text8.value=" " 
thisform.text9.value=" " 
thisform.text10.value=" " 
thisform.refresh 
 
    Back 
THISFORM.RELEASE 
do form glady 
 
In forma vizualizare1 avem butoanele: 
 
    Inainte  
if eof()=.T. 
  messagebox("sfarsit de fisier") 
else 
   skip 1 
   thisform.refresh 
endif 
    Inapoi  
if bof()=.T. 
   messagebox ("inceput de fisier") 
else 
 skip -1 
thisform.refresh   
endif 
 
    Modificare  
thisform.command1.visible=.F. 
thisform.command2.visible=.F. 
thisform.command3.visible=.F. 
thisform.command4.visible=.T. 
thisform.command5.visible=.F. 
thisform.command6.visible=.F. 
thisform.text1.readonly=.F. 
thisform.text2.readonly=.F. 
thisform.text3.readonly=.F. 
thisform.text4.readonly=.F. 
thisform.text5.readonly=.F. 
thisform.text6.readonly=.F. 
thisform.text7.readonly=.F. 
thisform.text8.readonly=.F. 
thisform.text9.readonly=.F. 
 
    Stergere  
delete 
pack 
if recno ()<>1 
skip -1 
endif 
thisform.refresh 
 
    Ok  
thisform.command1.visible=.T. 
thisform.command2.visible=.T. 
thisform.command3.visible=.T. 
thisform.command4.visible=.F. 
thisform.command5.visible=.T. 
thisform.command6.visible=.T. 
thisform.text1.readonly=.T. 
thisform.text2.readonly=.T. 
thisform.text3.readonly=.T. 
thisform.text4.readonly=.T. 
thisform.text5.readonly=.T. 
thisform.text6.readonly=.T. 
thisform.text7.readonly=.T. 
thisform.text8.readonly=.T. 
thisform.text9.readonly=.T. 
 
    Back   
THISFORM.RELEASE 
do form glady 
 
In forma vizualizare2 avem butoanele: 
 
    Inainte  
if eof()=.T. 
  messagebox("sfarsit de fisier") 
else 
   skip 1 
   thisform.refresh 
endif 
 
    Inapoi  
if bof()=.T. 
   messagebox ("inceput de fisier") 
else 
 skip -1 
thisform.refresh   
endif 
 
    Modificare  
thisform.command1.visible=.F. 
thisform.command2.visible=.F. 
thisform.command3.visible=.F. 
thisform.command4.visible=.F. 
thisform.command5.visible=.T. 
thisform.command6.visible=.F. 
thisform.text1.readonly=.F. 
thisform.text2.readonly=.F. 
thisform.text3.readonly=.F. 
thisform.text4.readonly=.F. 
thisform.text5.readonly=.F. 
thisform.text6.readonly=.F. 
thisform.text7.readonly=.F. 
thisform.text8.readonly=.F. 
thisform.text9.readonly=.F. 
thisform.text10.readonly=.F. 
 
    Stergere  
delete 
pack 
if recno ()<>1 
skip -1 
endif 
thisform.refresh 
 
    Ok  
thisform.command1.visible=.T. 
thisform.command2.visible=.T. 
thisform.command3.visible=.T. 
thisform.command4.visible=.T. 
thisform.command5.visible=.F. 
thisform.command6.visible=.T. 
thisform.text1.readonly=.T. 
thisform.text2.readonly=.T. 
thisform.text3.readonly=.T. 
thisform.text4.readonly=.T. 
thisform.text5.readonly=.T. 
thisform.text6.readonly=.T. 
thisform.text7.readonly=.T. 
thisform.text8.readonly=.T. 
thisform.text9.readonly=.T. 
thisform.text10.readonly=.T. 
 
    Back   
THISFORM.RELEASE 
do form glady 
 
In forma cautare1 avem butoanele: 
 
    Modificare 
thisform.command3.visible=.F. 
thisform.command4.visible=.T. 
thisform.command5.visible=.F. 
thisform.command6.visible=.F. 
thisform.text1.readonly=.F. 
thisform.combo1.readonly=.F. 
thisform.text3.readonly=.F. 
thisform.text4.readonly=.F. 
thisform.text5.readonly=.F. 
thisform.text6.readonly=.F. 
thisform.text7.readonly=.F. 
thisform.text8.readonly=.F. 
thisform.text9.readonly=.F. 
 
    Stergere 
delete 
pack 
if recno ()<>1 
skip -1 
endif 
thisform.refresh 
 
    Ok 
thisform.command3.visible=.T. 
thisform.command4.visible=.F. 
thisform.command5.visible=.T. 
thisform.command6.visible=.T. 
thisform.text1.readonly=.T. 
thisform.combo1.readonly=.T. 
thisform.text3.readonly=.T. 
thisform.text4.readonly=.T. 
thisform.text5.readonly=.T. 
thisform.text6.readonly=.T. 
thisform.text7.readonly=.T. 
thisform.text8.readonly=.T. 
thisform.text9.readonly=.T. 
 
    Back  
THISFORM.RELEASE 
do form glady 
 
In forma cautare2 avem butoanele: 
    Modificare 
thisform.command3.visible=.F. 
thisform.command4.visible=.F. 
thisform.command5.visible=.T. 
thisform.command6.visible=.F. 
thisform.combo1.readonly=.F. 
thisform.text2.readonly=.F. 
thisform.text3.readonly=.F. 
thisform.text4.readonly=.F. 
thisform.text5.readonly=.F. 
thisform.text6.readonly=.F. 
thisform.text7.readonly=.F. 
thisform.text8.readonly=.F. 
thisform.text9.readonly=.F. 
thisform.text10.readonly=.F. 
 
    Stergere 
delete 
pack 
if recno ()<>1 
skip -1 
endif 
thisform.refresh 
 
    Ok 
thisform.command3.visible=.T. 
thisform.command4.visible=.T. 
thisform.command5.visible=.F. 
thisform.command6.visible=.T. 
thisform.combo1.readonly=.T. 
thisform.text2.readonly=.T. 
thisform.text3.readonly=.T. 
thisform.text4.readonly=.T. 
thisform.text5.readonly=.T. 
thisform.text6.readonly=.T. 
thisform.text7.readonly=.T. 
thisform.text8.readonly=.T. 
thisform.text9.readonly=.T. 
thisform.text10.readonly=.T. 
 
    Back  
THISFORM.RELEASE 
do form glady 
 
In forma VALOAREA avem butoanele: 
    Inainte 
if eof()=.T. 
  messagebox("sfarsit de fisier") 
else 
   skip 1 
   thisform.refresh 
endif 
 
    Inapoi 
if bof()=.T. 
   messagebox ("inceput de fisier") 
else 
 skip -1 
thisform.refresh   
endif 
 
    Back 
THISFORM.RELEASE
 | 
   
  
    | Referat oferit de www.ReferateOk.ro | 
   
 
 |