Professional Documents
Culture Documents
Sumar
Componente
funcionale ale
sistemului
Visual FoxPro
Curs 2 SGBD
Mircea Musan
Curs 2 SGBD
Mircea Musan
Mai sunt i alte versiuni ultim aprute, <<Visual FoxPro 9.0>>, aceasta
nefcnd parte dintr-un pachet de aplicaii, fiind de sine stttoare.
Varianta Visual de FoxPro (VFP) studiat n acest curs este versiunea 6.0
lansat n 1998 n cadrul pachetului de programe Visual Studio 6.0. VFP este un
sistem rapid, modularizat, flexibil, care nu necesit resurse de calcul foarte mari,
mbin programarea procedural (prin limbaj propriu) cu cea descriptiv, pe obiecte
(programare vizual).
Utilizatorii neinformaticieni au la dispoziie o gam larg de generatoare
pentru ecrane, meniuri, rapoarte etc. Utilizatorii de specialitate (informaticieni) pot
dezvolta programe n limbaj propriu i n SQL, aplicaii (prin componentele
DESIGNER i APPLICATION). Administratorul bazei de date are la dispoziie
instrumente oferite de VFP pentru asigurarea securitii i integritii datelor, pentru
refacerea bazei de date etc.
Curs 2 SGBD
Mircea Musan
Curs 2 SGBD
Mircea Musan
Curs 2 SGBD
Mircea Musan
Fig. 2
Curs 2 SGBD
Mircea Musan
(creare unui videoformat), Report (creare raport), Label (creare etichet), Program
(creare program surs), Class (creare clas de obiecte), Text file (creare fiier text
ASCII), Menu (creare meniu utilizator). n partea dreapt exist dou butoane, pentru
creare fiier nou (New) i pentru utilizarea asistentului (Wizard).
Open (deschide) apare o fereastr din care alegem tipul fiierului,
directorul i numele, cu opiunile New, Open, Cancel.
Close nchide fiierul deschis.
Save/Save As salvare, respectiv salvare cu redenumire.
Import/Export permite importul respectiv exportul de date cu
alte sisteme de gestiune a bazelor de date.
Print Preview vizualizare nainte de ieire la imprimant.
Print ieire la imprimant.
Send trimite prin e-mail.
Exit ieire din program.
Fig. 3
- Edit ofer faciliti de lucru obinuite ntr-o fereastr de editare de texte (fig. 4):
Undo/Redo renu la ultima modificare n text / repet ultima
aciune n text.
Cut/Copy/Paste tiere, memorare n memoria tampon, copiere la
o nou locaie n fiier a unui text.
Clear tergere text.
Select all selecteaz ntreg textul.
Find/Find again/Replace caut/caut n continuare a unui ir de
caractere/nlocuiete irul gsit cu un altul. Cutarea se poate face
cu activarea/dezactivarea opiunii de difereniere ntre litere
mari/litere mici.
Fig. 4
- View permite setarea unor parametri privind bara curent de instrumente de lucru.
- Format permite setarea unor parametri privind litele (Font), spaierea etc.
- Tools permite apelul interfeelor i instrumentelor VFP.
- Program permite lansarea sau oprirea unuia din paii ce se parcurg la execuia
unui program VFP (fig. 5).
Fig. 5
Curs 2 SGBD
Mircea Musan
Fig. 6
Fig.7
Curs 2 SGBD
Mircea Musan
La alegerea opiunii Browse (rsfoire), fie din meniul View fie din fereastra Data
Session, va apare meniul Table n bara de meniuri cu urmtoarele subopiuni (fig. 7):
Go to Record regsirea unei nregistrri dup diferii parametri: numr nregistrare,
deplasare la nceputul/sfritul tabelului, localizare nregistrare dup valoarea unui
cmp etc.
Append New Record adgarea unei noi nregistrri.
Append Records adugarea de noi nregistrri dintr-un alt fiier
Delete Records marcare pentru tergere (la nivel logic).
Recall Records anularea marcrii pentru tergere.
Remove Deleted Records tergerea definitiv din tabel a nregistrrilor marcate (la
nivel fizic).
Replace Field actualizare cmp nregistrare (schimbarea valorii cmpului).
Size Field modificarea limii de afiare a cmpului n browser.
Move Field schimbarea poziiei de afiare a cmpului n browser.
n cazul n care se construiete o aplicaie n care vor fi folosite o gam larg de
obiecte din VFP, (baze de date, tabele independente, cereri, videoformate, rapoarte,
etichete, programe surs, clase de obiecte, meniuri utilizator, iconu-uri etc.) se va
construi un proiect (Project), n seciunile cruia se pot declara aceste obiecte (fig.
8). ntreg proiectul se va finaliza ntr-un program executabil care va conine toate
obiectele declarate ca fiind utilizate n aplicaie. Pentru a realiza proiectul n form
executabil, n prealabil se folosete opiunea Build, pentru a realiza compilarea i
link-editarea.
Fig. 8
Curs 2 SGBD
10
Mircea Musan
Formele
compilate ale programelor au extensia .fxp i compilarea este automat innd seama
de data ultimei modificri. Textul programului surs nu e casesensitive. Scrierea se
face cte o linie pe rnd, n cazul n care o linie de text nu e suficient se utilizeaz
caracterul ;.
Comentariile se folosesc pentru a indica nceputul unei linii neexecutabile n
program. Sunt admise pentru comentarii:
- caracterul * plasat la nceputul liniei va ntregul rnd;
- caracterele && pentru comentarii pe acelai rnd, cu cel puin un spaiu de
demarcare fa de textul propriu-zis;
- cuvntul rezervat NOTE, pentru a comentaria mai multe rnduri de text, se introduce
n continuare prima linie de comentariu (la distan de minim un spaiu), se marcheaz
continuarea comentariului pe rndul urmtor cu caracterul punct i virgul (;),
nchiderea comentariului se face cu caracterul punct.
Curs 2 SGBD
11
Mircea Musan
&&dirijam cautarea
Curs 2 SGBD
12
Mircea Musan
Curs 2 SGBD
13
Mircea Musan
(z/l/a), german (z.l.a), italian (z-l-a), japan (a/l/z), usa (l-z-a), mdy (l/z/a), dmy
(z/l/a), ymd (a/l/z). Implicit este cel american.
SET DECIMALS TO nr
- permite stabilirea numrului de zecimale afiat n cazul calculelor cu
cmpuri sau variabile de tip numeric;
- nr este un numr cuprins ntre 0 i 18. Valoarea implicit este 2.
SET DEFAULT TO disc:\director
- stabilirea directorului de lucru implicit.
SET ESCAPE ON/OFF
- se permite controlul asupra posibilitii de ntrerupere a programului prin
tasta ESC;
- valoarea implicit este ON. Recomandabil este OFF.
SET EXCLUSIVE ON/OFF
- foarte util n cazul folosirii n reea a tabelelor, deoarece se asigur
protecia lor fa de accesul neautorizat al altor utilizatori;
- valoarea implicit este ON.
SET EXACT ON/OFF
- se verific gradul de exactitate al comparrii irurilor de caractere;
- valoarea implicit este OFF.
SET FIELDS ON/OFF
TO list_cmpuri ALL
LIKE EXCEPT ablon
- permite accesul la anumite cmpuri ale unei tabele
- list_cmpuri conine numele cmpurilor ce pot fi utilizate;
- ALL este clauza ce specific faptul c toate cmpurile din tabel vor fi
utilizate;
- LIKE EXCEPT ablon permite construirea unor condiii de selecie;
- ON/OFF specific accesul sau nu la cmpurile specificate.
Curs 2 SGBD
14
Mircea Musan
nume_fereastr
Curs 2 SGBD
15
Mircea Musan
TO expr_numeric
- permite controlul senzitivitii mouse-ului.
- expr_numeric reprezint senzitivitatea ce poate lua valori ntre 1 (cea mai
joas senzitivitate) i 10 (cea mai mare senzitivitate).
SET NEAR ON|OFF
- n cazul executrii fr succes a unei comenzi FIND sau SEEK, determin
poziionarea pointerului de nregistrare pe nregistrarea imediat urmtoare.
- valoarea implicit este OFF (pointerul este poziionat la sfritul tabelei).
SET SAFETY ON|OFF
- dac este ON, utilizatorul este avertizat nainte de operaiile care suprascriu un
fiier existent (tabel, index, fiier text, etc.). Dac este OFF, operaia are loc fr
avertisment. A se folosi aceast comand cu precauie.
SET SPACE ON|OFF
- se activeaz facilitatea de separare n cazul comenzilor ? i ??.
SET TEXTMERGE ON|OFF
- realizeaz controlul asupra evalurii cmpurilor, tabelelor, variabilelor,
funciilor, expresiilor.
- comanda va direciona ieirea acestora pe ecran, ntr-o fereastr sau ntr-un
fiier.
SET TALK ON|OFF|WINDOW
- determin afiarea unor rezultate pe ecran.
- includerea clauzei ON(este implicit) ncetinete execuia programului.
- clauza WINDOW direcioneaz rezultatul ntr-o mic fereastr din colul
dreapta-sus al ecranului.
Curs 2 SGBD
16
Mircea Musan
unul sau mai multe programe, din care unul este principal
Curs 2 SGBD
17
Mircea Musan
- Menus (meniuri)
- Text Files (fiiere text)
Mai jos sunt prezentate cteva dintre tipurile de fiiere folosite de Visual
FoxPro pentru dezvoltarea de aplicaii:
Curs 2 SGBD
18
Mircea Musan
Curs 2 SGBD
19
Mircea Musan
Este evident c aproape orice obiect dintr-o aplicaie Visual FoxPro are nevoie
de dou sau chiar mai multe fiiere.
4. Tipuri de aplicaii
Aplicaiile au n vedere mulimea tranzaciilor ca tipuri de tranzacii. n Visual
FoxPro sunt urmtoarele tipuri de tranzacii:
- de inserare;
- de modificare;
- de stergere;
- de accesare.
Primele trei desemneaz situaia de actualizare a bazei de date, ultima referindu-se la
interogare bazelor de date.
Se disting urmtoarele trei tipuri de aplicaii:
a) Aplicaii de actualizare se fac n condiiile n care nu e dorit ca utilizatorul s
intervin direct n baza de date (mijlocesc aceste tranzacii i asigur controlul
riguros). Se pot face aplicaii pe fiecare dintre tranzacii, sau, ele pot fi grupate n
aceeai aplicaie.
b) Aplicaii de consultare acestea extrag informaii din baza de date pe care le
afieaz sub o anumit form, fie n fereastra sistemului, fie sub form de rapoarte.
Este cea mai bogat categorie de aplicaii avnd n vedere destinaia bazei de date ca
mijloc de informare a utilizatorului.
c) Aplicaii mixte acestea realizeaz att consultarea ct i actualizarea bazei de
date, fiind reprezentativ pentru baza de date.
Din punct de vedere al interfeei i al controlului execuiei n aplicaii, putem
distinge dou categorii mari de aplicaii:
a) Aplicaii cu control dirijat intern sunt aplicaii prin care utilizatorul este condus
de aplicaie pas cu pas prin solicitri i afiare de mesaje cu privire la programul
aplicaiei. Interfaa este una simpl, care nu exclude ns utilizarea unor elemente de
interfa grafic cum ar fi de ex. utilizarea formularelor pentru introducerea de date i
afiarea de mesaje n casete de mesaje.
Curs 2 SGBD
20
Mircea Musan
Dac aplicaia nu are meniu, ea poate fi condus prin casete de dialog. Trebuie s
existe o caset principal care s fie lansat n programul principal n forma: do
MainForm.frm.
Curs 2 SGBD
21
Pasul 2.
Vom construi un formular cu numele Agenda.scx.
Mircea Musan
Curs 2 SGBD
22
Mircea Musan
Butonul Adaugare:
Butonul Stergere:
select agenda
delete next 1
thisform.grid1.setfocus()
Butonul Listare:
report form agenda preview
Butonul Iesire:
thisform.release()
quit
Pasul 3.
Se va construi raportul cu numele Agenda.frx folosindu-se modul interactic prin
folosirea programelor de asisten special create pentru dezvoltarea rapoartelor, File
Pasul 4.
Se va construi o aplicaie (un proiect), avnd numele Agenda.pjx. Structura (harta)
acesteia este descris mai jos.
Curs 2 SGBD
23
Mircea Musan