Visual Foxpro 0 abc-doar


Browse.Dupa ce fereastra Browse este deschisa,meniul View va prezenta si



Yüklə 1,41 Mb.
səhifə10/17
tarix17.03.2018
ölçüsü1,41 Mb.
#45490
1   ...   6   7   8   9   10   11   12   13   ...   17

Browse.Dupa ce fereastra Browse este deschisa,meniul View va prezenta si

urmatoarele optiuni: Edit,Append Mode si Grid Lines.Puteti utiliza aceste

optiuni,pentru a adauga date sau pentru a edita datele existente.Aceasta

fereastra este extrem de utila pentru o orientare rapida,sau pentru actua-

lizarea rapida a unui tabel.Pentru a deschide fereastra BROWSE cu un set

oarecare de instructiuni,puteti utiliza si comanda BROWSE.


-61- FERESTRE SPECIALIZATE
CALL STACK WINDOW -este o fereastra specializata pentru procesul de de-

panare.Afiseaza procedurile,programele si metodele aflate in executie.Daca

in timpul executiei unui program,se apeleaza un program secundar,fereastra

"Call stack" va afisa ambele programe.Este foarte utila pentru depanarea

programelor formate din mai multe module,pentru a sti in fiecare moment

ce modul se afla in executie (localizeaza sediul unei eventuale erori).

Pentru a deschide aceasta fereastra,din meniul principal alegeti Tools,

apoi Debugger,iar in fereastra Debugger alegeti din meniul Window optiunea

Call Stack sau apasati butonul Call stack window din bara de butoane.

Pentru ca fereastra Call stack sa poata fi utilizata,trebuie ca setarea

Trace Between Breaks sa fie ON (puteti utiliza comanda SET TRBETWEEN ON).

EXEMPLU: pentru a depana un program oarecare

Din meniul principal alegeti Tools si apoi Debugger.Se va deschide

automat fereastra Trace -Visual FoxPro Debugger.

Alegeti din meniul File(al ferestrei Trace) optiunea Open si deschi-

deti un program oarecare.Pentru a executa programul linie cu linie,exe-

cutati cate un click de mouse pe butonul Step Into.Observati cum se

deplaseaza cursorul la fiecare click de mouse.In momentul in care iden-

tificati o eroare,sau doriti sa consultati fereastra Call Stack,executati

un click de mouse pe butonul Call Stack Window,apoi eliberati butonul (cu

un nou click) pentru a reveni in fereastra Trace.

Prin combinarea celor doua ferestre,puteti sti exact linia de cod

aflata in executie si modulul din care face parte.

Pentru a configura fereastra Call Stack se poate utiliza din meniul

Tools,optiunea Options,apoi fisierul Debug.Pentru a reveni la setarile

implicite,utilizati butonul Set As Default.
CODE -este fereastra in care se editeaza codurile modulului respectiv.Fie-

care modul sau control va avea asociata si o astfel de fereastra,chiar

daca nu a fost deschisa si editata niciodata.Un program poate contine un

numar nelimitat de astfel de ferestre.O parte dintre ele contin coduri

preexistente,sau editate automat in momentul in care se creaza un anumit,

obiect,celelalte contin doar codurie editate de catre utilizator.Este

esential modul in care se realizeaza legaturile dintre ferestrele de cod,

astfel incat fiecare fereastra sa poata fi executata,dar sa nu fie apelate

simultan mai multe ferestre decat poate gestiona procesorul si memoria

instalata.Pentru a deschide o astfel de fereastra,este suficient ca in

Form Designer sa executati un dublu click pe fereastra sau pe unul dintre

controale,sau sa executati in fereastra Properties un dublu click pe una

dintre metode sau pe unul dintre evenimente.Ferestrele de cod pot fi des-

chise si din Project Manager / Code / Programs .Pentru a deschide o fe-

reastra de cod se poate utiliza si comanda MODIFY FILE programul.prg (fie

in fereastra de comenzi fie in cadrul unei alte file oarecare).

In fila de cod se vor introduce toate comenzile,sau algoritmii necesari

pentru efectuarea unor calcule.Daca in timpul editarii unei file de cod,

doriti sa verificati sintaxa,sau forma corecta a unei comenzi oarecare,

selectati cu mouse comanda respectiva si apasati tasta F1.Se va deschide

automat manualul Help cu descrierea comenzii respective.

Spre deosebire de FoxPro 2.6,in Visual Foxpro se obtin rezultate mult

mai spectaculoase cu file de cod mult mai mici.


-62-
COMMAND -fereastra pentru comenenzi face parte din sistemul de operare

FoxPro.Este probabil cea mai utila si cea mai versatila dintre ferestrele

specializate.Aceasta fereastra poate fi utilizata ca un adevarat centru

de comanda,atat in etapa de design cat si in etapa de verificare sau depa-

nare a programelor.In aceasta fereastra se poate edita si executa orice

comanda.Din fereastra Command Window se poate executa orice modul dintr-un

program,se poate deschide orice alta fereastra sau fila,se pot executa

calcule matematice,se pot verifica ecuatiile si expresiile,se pot seta

parametrii de executie sau mediul de operare,se pot introduce date sau

se pot accesa tabele si baze de date,etc.

In fereastra Command se pot executa si utmatoarele operatii:

-se poate sterge textul editat,cu Esc,inainte de a apasa tasta ENTER

-se poate repeta o comanda anterioara (utilizati butoanele de scroll)

-se poate re-executa un anumit bloc de comenzi

-se poate copia,sau transfera textul din fereastra Command

-se poate executa o selectie,adica un grup de mai multe comenzi selectate

-se pot sterge toate comenzile anterioare cu Clear

-se poate deschide fereastra Properties

Daca se executa un click drept de mouse,se va deschide un meniu popup.

Pentru a deschide fereastra Command se utilizeaza din meniul principal,

Window si apoi optiunea Command Window.

Un exemplu clasic pentru utilitatea acestei ferestre il reprezinta tes-

tarea liniilor de comanda dintr-un program.Presupunand ca in etapa de exe-

cutie a intervenit o eroare de calcul,puteti utiliza fereastra de comenzi

pentru a verifica rezultatul expresiei.Reformulati expresia pana cand

returneaza rezultatul corect,apoi reeditati fila de cod.

Un alt exemplu clasic il reprezinta testarea modulelor unui program.Daca

un program contine cateva zeci de ferestre independente,puteti verifica

fiecare dintre ferestre izolat,cu o comanda DO FORM de genul:

DO FORM grila1.scx

Acest gen de operatie este util atunci cand operati intr-un mediu cu me-

morie limitata.Pentru a verifica aceeasi fereastra in Project Manager,

trebuie sa incarcati in memorie intregul proiect,adica mai multe zeci de

astfel de ferestre.Presupunand ca doriti sa verificati fereastra in etapa

de depanare,este mult mai eficient sa utilizati fereastra de comenzi.

Fereastra de comenzi se poate utiliza in situatii disperate si pentru

a elibera din memoria de operare.In aceste situatii se vor utiliza comenzi

simple prin care se va elibera memoria de datele inutile,sau se vor schim-

ba o parte dintre setari.Acest gen de situatii apare atunci cand in cursul

executiei,memoria de operare se supraincarca cu valori temporare inutile

pentru restul executiei.Dupa identificarea erorii,programul va trebui re-

formulat astfel incat sa elibereze automat memoria,imediat dupa executia

operatiilor care au generat eroarea.

Fereastra de comenzi se poate utiliza si pentru o orientare rapida,in

situatiile in care trebuiesc realizate link-urile (legaturile) dintre

doua sau mai multe module.Daca linia de comanda utilizata pentru a accesa

un anumit modul este executata corect in fereastra Command,se va putea

utiliza cu succes pentru a realiza link-ul.

Practic nu exista un set de reguli fixe.Fiecare programator poate uti-

liza aceasta fereastra in functie de experienta si tabieturile sale.


-63-

DATA SESSION -este o fereastra specializata pentru depanarea aplicatii-

lor in care se opereaza cu baze de date si tabele multiple,care sunt des-

chise in sesiuni diferite,fie dupa criterii de selectie diferita,fie cu

un set diferit de relatii (interconexiuni).In interiorul ferestrei Data

Session se va afisa care este sesiunea curenta (atunci cand exista mai

multe),se poate deschide un tabel oarecare,se poate realiza o legatura

temporara,sau se pot seta proprietatile ariei de lucru.Pentru a deschide

fereastra Data Session se utilizeaza din meniul Windows optiunea Data Se-

ssions.Pentru a deschide un tabel utilizati butonul Open.Deschideti mai

multe tabele,apoi puteti realiza o relatie temporara,apasand butonul Re-

lations (cu conditia ca tabelele interconectate sa fie indexate pentru

acelasi camp de date).Pentru a seta proprietatile ariei de lucru apasati

butonul Properties.

Daca sunteti incepator,este mai prudent sa evitati sesiunile repetate si

formarea de legaturi intre tabele,mai ales atunci cand lucrati cu tabele

foarte mari.Prin operatii repetate,volumul de date procesate poate creste

foarte mult si exista riscul de a bloca memoria de operare.Pentru a pro-

grama acest gen de operatii,sunt necesare notiuni avansate de programare

si obisnuinta de a calcula si estima volumul de memorie utilizat/operatie.
DEBUGGER -este fereastra utilizata pentru depanarea programelor.Aceasta

fereastra include la randul sau mai multe ferestre specializate: Trace,

Locals,Watch,Call Stack si Debug Output.Pentru a deschide aceasta fereas-

tra puteti utiliza din meniul Tools,optiunea Debbuger.

Fereastra Debugger are un meniu propriu cu urmatoarele optiuni: File,

Edit,Debug,Tools,Window si Help.

File se poate utiliza pentru a deschide fila ce urmeaza sa fie depanata,

pentru a incarca sau salva o anumita configuratie a depanatorului,pentru

a salva datele din fereastra deschisa in momentul respectiv,sau pentru a

inchide fereastra.

Edit se poate utiliza pentru a efectua operatii in interiorul filei des-

chise (cut,copy,paste,find,select all).

Debug se poate utiliza pentru a pune in executie fila cu Do,sau pentru

deplasare in interiorul filei cu Step... si pentru a alege intervalul de

timp dintre doua operatii (cu cat timpul de intarziere va fi prelungit,cu

atat executia se va face mai lent si se va putea observa in fereastra

Trace linia de cod aflata in executie in momentul respectiv.Pentru a exe-

cuta doar o singura linie de cod,se poate utiliza Step Into).

Tools se poate utiliza pentru a fixa un anumit numar de puncte de intre-

rupere a executiei (fragmentarea programului),se pot selecta evenimentele

pe care doriti sa le urmareasca fereastra Debug (respectiv se selecteaza

doar un anumit set de mesaje Windows,cele eliberate de sistem in momentul

evenimentului selectat) sau se poate utiliza pentru a specifica optiunile

de executie pentru fila respectiva (coverage logging permite preluarea de

informatii de genul : de cate ori a fost executata o anumita linie de cod

in cursul executiei,cat timp a durat executia sau ce linii de cod nu au

fost executate de loc -vezi Coverage Dialog Box).

Window permite deschiderea uneia dintre ferestrele de depanare.

Help -deschide manualul Help.

Pentru informatii detaliate despre fiecare fereastra de depanare,vezi

fereastra respectiva (Trace,Watch,Locals...).


-64-

DEBUG OUTPUT -este unda dintre ferestrele utilizate pentru depanarea

unui program si este inclusa in fereastra Debugger.Aceasta fereastra se

poate utiliza pentru a extrage unele coduri din procedurile si metodele

programului activ.Pentru ca datele sa fie afisate in fereastra Debug Out-

put este necesar sa se utilizeze comanda DEBUGOUT.In plus,in fereastra

Debug Output se pot afisa numele evenimentelor de tip sistem in cazul

in care este activata optiunea "event tracking".

Fereastra Debug OutPut se utilizeaza mai ales pentru a verifica modul

in care o functie sau o procedura executa operatiile codificate.De exemplu

daca in interiorul unei proceduri se executa o bucla de operatii iterative

(repetate),se poate adauga in interiorul buclei si o comanda de tipul

DEBUGOUT(valoarea dorita).In acest caz,daca depanati programul cu Debugger

toate valorile specificate cu DEBUGOUT vor fi extrase in fereastra Debug

Outout.Mai mult,la sfarsitul depanarii se poate utiliza din meniul File

al ferestrei Debugger optiunea "Save Output As" pentru a salva toate

valorile extrase,intr-o fila.In continuare,puteti utiliza fila respectiva

pentru a verifica daca bucla de repetitie executa operatiile asa cum do-

riti,sau daca s-a strecurat o greseala de conceptie.

EXEMPLU: pentru a verifica fereastra Debug Output

Editati o fila oarecare de cod,in care introduceti si o comanda de

genul: DEBUGOUT('Text')

Deschideti fereastra Debugger,incarcati programul cu Open,apoi alegeti

din meniul Debug Throttle si setati o intarziere oarecare (de exemplu de

2 secunde).Intarzierea per operatie are rostul de a va permite sa obser-

vati momentul in care textul extras apare in fereastra Debug Output.

Apoi utilizati butonul Step Into pentru a executa programul pas cu pas

si apasati butonul Output Window pentru a activa fereastra Debug Output.

In momentul in care se va executa in fereastra Trace comanda DEBUGOUT,

in fereastra Debuug Output se va afisa textul extras.

Dupa ce a fost extrasa o prima valoare,se activeaza in meniul File si

optiunea "Save Output As",cu ajutorul careia puteti salva lista valorilor

extrase.

Pentru a vedea cum lucreaza o bucla de repetitie,este nepractic sa

urmariti aparitia fiecarei valori,dar puteti salva datele extrase si apoi

puteti studia lista acestor valori.

EXEMPLU: editati un program care contine si o bucla de genul:

FOR x= 1 TO 10

DEBUGOUT(x/2 + 3.14)

ENDFOR

Deschideti fereastra Debugger.Daca Throttle este diferit de zero apasati

butonul Clear,pentru a nu intarzia executia in mod inutil.Incarcati pro-

gramul in fereastra Trace(cu Open) si apoi apasati butonul Step Out.

In final,alegeti din meniul File optiunea Save Output As si salvati date-

le intr-o fila oarecare,apoi deschideti fila si studiati lista de valori.

Acest mecanism este indispensabil pentru verificarea si depanarea pro-

cedurilor si metodelor care contin bucle de repetitie.Valorile vor fi

extrase in ordinea in care au fost procesate si permit identificarea unor

eventuale erori ce nu pot fi detectate cu alte metode de depanare.

Fereastra Debug Output poate fi utilizata si pentru a detecta daca o

anumita variabila are vizibilitate in interiorul metodei sau procedurii.

Fereastra se poate utiliza si pentru a extrage date din program.


-65-

EDITING WINDOW -este fereastra in care se pot edita file de tip text,

sau file de tip program (liniile de cod).Pentru ca aceasta fereastra sa

fie accesibila,bifati optiunea Modify Selected File din Meniul Projects.

din Tools/Options/Projects.

Pentru a deschide fereastra de editare,executati un dublu click pe

orice fila de tip .TXT sau .PRG din Project Manager.

Dupa ce fila dorita este deschisa,se poate utiliza meniul short-cut,

prin executarea in fereastra a unui click drept de mouse.

Intr-o fereastra de editare ce contine o fila de tip text,meniul short-

cut contine urmatoarele optiuni: Cut,Copy,Paste,Font,Find,Go To,Indent,

Unindent si Properties.

Daca fereastra de editare se utilizeaza pentru a modifica o fila de

coduri de tip .PRG,meniul short-cut va contine urmatoarele optiuni: Cut,

Copy,Paste,Build Expression,Do principal.prg,Execute Selection,Procedure/

Function List,Font,Find,Goto,Beautify,Indent,Unindent,Comment,Uncomment si

Properties.

Optiunile meniului short-cut sunt destul de intuitive si nu necesita o

prezentare detaliata.Principalele operatii executate in fereastra de edi-

tare sunt: editarea textului sau a programului,copierea sau eliminarea

unor fragmente de text sau de program,schimbarea fonturilor sau a tipului

de indentatie,corectarea erorilor de ortografie sau de sintaxa.

Daca fila este foarte mare,se poate utiliza cu succes utilitarul Find.

Fereastra de editare nu are nimic special.Mai mult decat atat,este per-

fect compatibila cu oricare dintre editoarele de text recunoscute de sis-

temul de operare Windows.Un text,sau un program scris in fereastra de edi-

tare poate fi deschis si corectat in MS-DOS,NotePad sau Word Pad si vice-

versa,filele de tip text sau .PRG pot fi editate in NotePad,WordPad sau

chiar si in editorul din MS-DOS si vor fi recunoscute si executate de

catre Visual FoxPro.Singura conditie de format este sa se utilizeze doar

caracterele ASCII.

Pentru a transfera fragmente de text cu ajutorul memoriei clipboard se

pot utiliza diverse combinatii de comenzi de tip Cut,Copy si Paste.Frag-

mentele de text,sau de program,pot fi copiate si transferate intre filele

compatibile cu sistemul de operare Windows (Exemplu : Visual Fox/NotePad).
GENERAL FIELD WINDOW -este fereastra utilizata pentru a insera obiecte de

tip OLE intr-un camp de date de tip General,dintr-un tabel oarecare.Pentru

a deschide aceasta fereastra,deschideti tabelul care contine si campuri de

tip General,intr-o fereastra de tip Browse,apoi executati un dublu click

pe campul respectiv,sau apasati tastele Ctrl+PageUp sau Ctrl+PageDown.

EXEMPLU: deschideti cu Browse tabelul Category.dbf din directorul:

Vfp/Samples/Tastrade/Data/Category.dbf

apoi executati un dublu click pe oricare dintre campurile din coloana

Picture.

Daca doriti sa modificati obiectul,este suficient sa executati un dublu

click pe obiectul de tip .bmp si se va deschide automat un utilitar de tip

Paint,in care puteti reedita imaginea.

Pentru a insera un obiect nou,se poate utilza o comanda de tip Insert

Object din meniul Edit.Tot din meniul Edit puteti utiliza si optiunea

Bitmap Image Object pentru a deschide sau edita obiectul (optiunea este

accesibila doar dupa ce a fost deschisa fereastra General Field Window).


-66-

LOCALS -fereastra Locals Windows este una dintre ferestrele instru-

mentului de depanare denumit Debugger.Aceasta fereastra permite afisarea

tuturor obiectelor,ariilor de date si a variabilelor ce au vizibilitate

in cadrul unui program,sau in interiorul unei proceduri sau metode.

Datele sunt afisate sub forma de arbore de directoare.Atunci cand un

director contine date,in punctul care formeaza nodul cu restul arborelui

este adaugat un semn plus.Cu un click de mouse pe semnul plus,se va des-

chide directorul respectiv si se vor afisa toate datele continute.

Aceasta fereasta este extrem de utila,pentru a putea identifica modu-

lele si compartimentele unui program,sau pentru a putea observa intuitiv

obictele si variabilele care impart acelasi spatiu de vizibilitate.

Pentru fiecare element afisat,se utilizeaza trei coloane:

Name - afiseaza numele elementului (identificatorul)

Value - afiseaza valoarea actuala a elementului

Type - simbolizeaza tipul de date al elementului respectiv

Fereastra Locals are si un meniu short-cut (click drept de mouse) cu

urmatoarele optiuni: Public,Local,Standard,Objects,Docking View,Hide,Font

si Help.Dupa cum este usor de intuit,aceste optiuni se pot utiliza pentru

a limita tipul de elemente afisate in fereastra.De exemplu,daca doriti sa

vedeti doar variabilele declarate PUBLIC,deselectati restul optiunilor,sau

daca doriti sa vedeti doar obiectele si variabilele locale,selectati doar

Locals si Objects.

Pentru a putea aprecia valoarea acestei ferestre,deschideti in Debugger

un program care contine un numar mai mare de obiecte si variabile.

Dupa ce programul a fost deschis in fereastra Trace,inainte de a par-

curge prima linie de cod,in fereastra LOCALS se va afisa directorul numit

"gaerrors",care contine o arie de date de tip boolean initializate la

valoarea false (.F.).Aceasta arie este creata automat cu comanda LOCAL.

Yüklə 1,41 Mb.

Dostları ilə paylaş:
1   ...   6   7   8   9   10   11   12   13   ...   17




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin