Sunteți pe pagina 1din 11

Noutati in Visual FoxPro 7.

Noutati in Visual FoxPro 7.0


Visual Foxpro 7.0 aduce noutati care privesc urmatoarele domenii :
 Mediul interactiv de dezvoltare
 Elementele de limbaj
 Servicii Web
 VFP Server
 VFP si XML
 Diverse caracteristici XBase
 VFP - OLE DB Provider
 Modificari fata de versiunile anterioare
Mediul interactiv de dezvoltare

Pentru a oferi un mediu de editare care sa suporte tipul de proiect pe care


trebuie sa-l dezvoltati, editorul Visual FoxPro incorporeaza tehnologiile
IntelliSense, iar mediul interactiv de dezvoltare (IDE) prezinta functionalitati
sporite. Acestea sunt :

 ferestre care, atunci cand sunt dragate, isi pot modifica forma functie de marginea spre
care se face dragarea.

Exemplu : fereastra de comenzi ;

 o noua fereastra numita Document View care ofera posibilitatea de a vedea si de a naviga
printre proceduri, functii, definitii de tip #DEFINE sau directive preprocesor in cadrul
programului sau clasei.

Exemplu : deschiderea unui program oarecare si activarea ferestrei Document View (din
toolbar sau meniul VFP).

 fereastra Properties prezinta urmatoarele imbunatatiri :

- poate fi activata chiar daca nu este dechisa nici o forma /clasa. In acest caz vor fi
afisate proprietatile desktop-ului (_SCREEN);

- proprietatile controalelor ActiveX, evenimentele si metodele sunt afisate intr-o


culoare distinctiva fata de controalele native;

- metodele si evenimentele care au cod in clasa parinte, afiseaza


informatii despre clasa pe care o mostenesc;

- poate fi activata atat din meniul Windows cat si din toolbar.

 continutul ferestrei de comenzi este salvat intr-un fisier _command.prg. Puteti sterge
fereatra selectand Clear din meniul shortcut. Fisierul este read-only la startup, prin urmare
poate fi folosit de mai multe instante ale VFP.

 toolbar-ul Standard ofera acum acces la cele mai utilizate unelte, cum ar fi: fereastrele
Properties, Document View, Class Browser si Object Browser.

 Functionalitatea Report Designer este sporita prin intermediul tastaturii :

- CTRL+TAB pentru a trece/reveni in/din modul Tab ;

- TAB si SHIFT+TAB pentru deplasare intre obiecte ;

- CTRL+E pentru a intra in editare Label si ESC pentru a iesi din acest mod.

De asemenea, in meniul Report au aparut urmatoarele optiuni :

- Bands – face posibil accesul la casetele de dialog cu proprietatile fiecarei benzi ;

- Insert Control – permite selectia de controale pentru a le introduce in raport ;

In meniul Format exista acum optiunile Foreground si Background Colors prin intermediul
carora se pot controla culorile.

 Fereastra de dialog Options ofera posibilitatea de a configura noile facilitati ale IDE.

 Alte imbunatatiri ale IDE :

- Fisierul resursa Foxuser.dbf este dechis in mod partajat, astfel incat el poate fi
accesat in mai multe instante sau de mai multi utilizatori simultan ;

- Meniul Windows are optiunea Cascading pentru a permite organizarea


ferestrelor in desktop in cascada ;

- Form/Class designer va permite acum accesul direct la controalele continute


intr-un container, cu ajutorul tastelor CTRL si CTRL+SHIFT.

- In Form/Class designer, puteti tine apasata tasta CTRL sau CTRL+SHIFT si


utiliza tastele sageti pentru a muta sau redimensiona un control in raport cu scala
grid-ului.
- Au fost introduse informatii sub forma de tooltip pentru foarte zone de editare :
in editorul de metode, in vizualizarea tabelelor, etc.

- fereastra WAIT WINDOW si casetele de dialog sistem (de exemplu, cea de


eroare) au caracteristicile setate la nivelul sistemului.

Visual FoxPro Editor

Visual FoxPro Editor include multe imbunatatiri astfel incat editarea si examinarea codului
devine mai usoara :

 Editorul VFP afiseaza acum o margine de selectie in partea stanga care permite selectarea
unei linii si specificarea de breakpoints, bookmarks sau shortcuts.

- Bookmarks refera o anumita linie astfel incat localizarea ei devine foarte usoara.
Pentru crearea bookmarks se plaseaza cursorul mouse-ului pe marginea de
selectie in dreptul liniei respective si se face dublu click cu tasta SHFT apasata
(sau se apasa ALT + SHIFT + F2). Pentru deplasarea intre bookmarks se foloseste
F2 sau ALT+F2. Stergerea lor se face folosind aceeasi procedura. Bookmarks sunt
temporare si sunt sterse atunci cand fereastra de editare este inchisa.

- Shortcuts sunt similare bookmarks si sunt persistente intre sesiunile de editare.


La crearea unui shortcut, o intrare este adaugata in Task List, facand usoara
deplasarea la codul marcat. De asemenea, Task List Manager va ajuta sa va creati
liste de tip “to-do”. Pentru crearea de shortcuts, se plaseaza cursorul mouse-ului in
dreptul liniei respective si se face dublu click cu tasta CTRL apasata (sau cu
ALT+F2). Deplasarea intre shortcuts se face la fel ca la bookmarks. Stergerea lor
se face la fel ca si crearea.

 Fereastra de dialog Find face cautari utilizand tipare “wildcard”. De asemenea, se pot
face cautari cu ajutorul tastaturii fara a deschide fereastra Find.

 In aceasta versiune, VFP deschide fisierele ca DENY WRITE si nu ca DENY READ,


astfel incat un fisier poate fi citit sau copiat chiar daca este dechis in editorul VFP.

 Puteti transforma textul selectat in majuscule sau minuscule prin intermediul meniului
shortcut.

 Meniul Format are noi optiuni pentru vizualizarea “word wrap” si vizualizarea spatiilor
albe (tab, spatii sau paragrafe).

 Un asterisc este afisat langa numele fisierului din bara de titlu a ferestrei de editare pentru
a indica ca acesta contine modificari nesalvate.

 Au fost adaugate un numar de shortcut-uri de tastatura noi pentru a se mari


productivitatea programatorului.
IntelliSense

IntelliSense afiseaza informatia in ferestre si liste, oferindu-va sintaxa completa a instructiunilor,


precum si lista variabilelor, obiectelor , proprietatilor, metodelor si evenimentelor unui
obiect. IntelliSense in Visual FoxPro are urmatoarele caracteristici :

- Cand editati un cuvant cheie legat de tabela in editor sau in fereastra de


comenzi, lista Auto Table/Field afiseaza toti membri valizi din contextul curent.

- Functionalitatea IntelliSense este activata pe masura ce tastati in editor,


ferestrele de editare a metodelor si in fereastra de comenzi

- Pentru configurarea IntelliSense se foloseste fereastra Visual FoxPro


IntelliSense Manager.

- Puteti modifica sau adauga functionalitati pentru IntelliSense modificand


continutul tabelei Foxcode.dbf.

- Puteti activa/dezactiva functionalitatea IntelliSense setand proprietatea


_VFP.EditorOption.
Elementele de limbaj
Visual FoxPro ofera o noua functionalitate prin intermediul modificarilor si imbunatatirilor aduse limbajului. Acestea se pot structura
in :

Elemente de configurare
Pentru a se alinia celorlalte produse Microsoft care suporta multiple switch-uri in linia de comanda s-au introdus urmatoarele
switch-uri :
/? – listeaza argumentele disponibile in linia de comanda
-BFileName – afiseaza fisiere grafice (.bmp,.gif sau .jpg) ca splash screen la lansarea VFP. Se poate specifica si
durata de afisare
Comenzi si variabile sistem
Urmatorul tabel afiseaza comenzile si functiile VFP care s-au modificat, precum si extensiile limbajului care ofera comportament si
functionalitate comparabila cu Visual Basic si Visual C++ :
Comenzi si variabile sistem
Elementul de limbaj Descrierea modificarii
_DBLCLICK Valoarea sa implicita este cea setata pentru intervalul dublu
click din Windows. Intervalul “incremental search” este
setat prin _ INCSEEK.
_SCREEN Suporta proprietatile Left, Width, Height, Top si hWnd
numai pentru o fereastra client.
_VFP Suporta proprietatile Left, Width, Height, Top si hWnd doar
pentru fereastra principala Visual FoxPro .
BLANK Suporta specificarea unei arii de lucru in afara ariei curente
prin intermediul clauzei IN .
CALCULATE

PACK

RECALL

SET FILTER
BROWSE Suporta acum clauza NOCAPTIONS . La fel si EDIT sau
CHANGE.
CLEAR DLLS Suporta specificarea unei liste prin intermediul
parametrului cAliasNameList r.
DECLARE - DLL Suporta specificarea tipului de data a valorii intoarse prin
intermediul parametruluicFunctionType.
DEFINE BAR Permite adaugarea unei picturi pe o optiune de meniu.
DEFINE CLASS Suporta implementare COM prin clauza IMPLEMENTS .
MODIFY COMMAND Parametrul '?' face sa apara fereastra Open.
MODIFY VIEW Suporta deschiderea VFP Designer si continuarea programului prin intermediul clauzei
NOWAIT .
MODIFY PROCEDURE
REPORT Furnizeaza numele raportului casetei de dialog Printer
Spooler.
SELECT - SQL Ofera cursoare temporare actualizabile prin intermediul
clauzei INTO CURSOR … READWRITE.
SET REPROCESS Prin intermediul clauzei SYSTEM, SET REPROCESS se
poate aplica sesiunii de date sistem care controleaza tabelele
utilizate intern, cum ar fi bazele de date, fisierelor
FOXUSER, .scx , etc.
TEXT ENDTEXT Suporta noua clauza TEXTMERGE.

SET TEXTMERGE Suporta clauza MEMVAR pentru specificarea unei variabile


care va contine rezultatul TEXTMERGE.
USE Suporta furnizarea parametrilor conexiunii prin intermediul
clauzei CONNSTRING.
VALIDATE DATABASE Suporta clauza RECOVER in interiorul unui program.
Functii
Elementul de limbaj Descrierea modificarii
ADIR( ) Afiseaza numele fisierelor cu majuscule sau
minuscule dupa caz.
ALINES( ) Permite specificarea unuia sau a mai multor
caractere de delimitare a elementelor
incExpression prin intermediul
clauzei cParseChar.
AMEMBERS( ) Suporta obiecte COM la fel ca si obiecte Visual
FoxPro, cu un nou parametru,cFlags, folosit
pentru specificarea optiunilor de filtrare.
ANETRESOURCES( ) Raporteaza resursele de retea specifice
domeniului .
ASCAN( ) Suporta limitarea cautarii la o anumita coloana
prin intermediul
parametruluinSearchColumn precum si “case-
sensitivity” sau a exactitatii prin intermediul
parametruluinFlags.
ASORT( ) Suporta specificarea “case-sensitivity” prin
intermediul parametrului nFlags.
BITAND( ), BITOR( ), BITXOR( ) Suporta compararea a mai mult de doi
parametri.
COMARRAY( ) Suporta fixarea dimensiunii vectorului.
COMCLASSINFO( ) Suporta identificarea tipului obiectului prin
intermediul parametrului nInfoType.
CREATEOBJECTEX( ) Creeaza o instanta a unui obiect COM
inregistrat (cum ar fi Visual FoxPro
Automation server) pe un computer din
retea.
CTOT( ) Suporta stilul XML pentru datele calendaristice
returnate de filtrele SQL Server 2000.
DISKSPACE( ) Suporta specificarea tipului de spatiu pe disc
pentru evaluare (total, liber sau cel destinat
utilizatorului curent).
GETDIR( ) Suporta imbunatatirile Windows prin
intermediul unor parametri aditionali.
Suporta “language scripts” prin intermediul
parametrului nFontCharSet.
GETFONT( )
GETNEXTMODIFIED( ) Suprima executarea regulilor de validare a
campurilor sau a articolelor.
GETOBJECT( ) Suporta interfata IMoniker (obiecte COM).
ISREADONLY( ) Suporta baza de date curenta.
MESSAGEBOX( ) Suporta automat transformarea valorilor non-
caracter in vederea afisarii si clauzanTimeout.
OS( ) Suporta integral functionalitatea functiei API
GetVersionEx( ).
hank you all for taking the time required to reply... sorry that I wasn’t clearer. I'm still not sure what the proper names are for what I'm
trying to ask but maybe the screen shots will help? the first screen shot is of my left monitor and the second screen shot is of my right
monitor and I have one instance of FoxPro open and spanned across both monitors... displaying around 24 different tables that are all in
relations to each other in various ways. I think that I'm trying to ask if this could be done so that the one instance of FoxPro doesn’t have to
be spanned across the two monitors but instead if there was a way to display the tables in their own view/work area/instance… without the
use of forms… as the tables displayed are opened with a FoxPro program.

Thanks again for everyone’s help,


tsibert
TamarGranor (Programmer)6 May 15 20:58
Wow! I think we all missed the boat here because you used words that mean something to VFP developers, but you didn't mean that.

I think most of us would say "Don't do that!" Use forms rather than Browse windows and show only the data you need to see. Surely no one
can really work with those 24 tables at once and understand what he's seeing.

I assume that your specific question is how you could put each table into a top-level window with its own presence on the task bar, so you
could minimize and restore each separately? The answer to that is that you could only do that by using VFP's forms; you could create a form
class that contains a single grid set up to be sized to the full size of the form. That form class could be set as a top-level form. You'd then
create an instance of the class for each of these tables.

Again, I don't recommend that. Why don't you tell us about the underlying real-world task you're trying to accomplish.

Tamar
Olaf Doschke (Programmer)7 May 15 06:16
Just to expand what Tamar said.

What we see here are a lot of Windows, each showing data of one DBF. Each one can be minimized, maximised, resized and placed where
you want. So actually, if you're fine with this kind of interface, which looks very unusable to me, you'd be able to do whatever you want with
each little window. Each titlebar has the usual windows controls minimize button, maximise button, close button and you also are able to
place a form dragging it at the title bar and resize it at the bottom right corner at the rippled triangle area. Then you can also move and
resize the outer window, foxpro itself.

It may also be helpful, if you post a portion (not necessaarily all of) the "application lookup.prg", most probably the code positions the
browse windows, so any modification you do is lost next time. But it would be useless to open 24 browse windows without positioning them.

You are far of having an application here, just a bunch of data sheets in the form you use as a developer to have simple low level insight
into DBFs. I once did such a setup with relations for a customer administrative user to be able to look into 4 tables, which was already
tedious. But 24? No, this will never work out good.

Bye, Olaf.

JRB-Bldr (Programmer)8 May 15 19:35


Its as I thought in my reply above, the terminology being used was different that we expected.

Since you are new to VFP, I'll recommend that you spend some time learning some of the more basic approaches to using VFP.
One way to do that would be to spend some time viewing the free, on-line VFP tutorials at: http://www.garfieldhudson.com/

And, I most wholeheartedly agree with the above: Don't Do It That Way.
Instead learn to create a VFP Form (don't use the VF{ wizards) and then put one or more Grid(s) onto the form to display the data.

Additionally, I can't think of why you would need ALL of those tables visible at the same time.
With that in mind, I'd suggest that you review your goal and try to strategize a better development approach.

Good Luck,
JRB-Bldr

JRB-Bldr (Programmer)8 May 15 19:42


Just to make it easier for you I'll amend the web reference link above to go directly to the VFP tutorial videos:
http://www.garfieldhudson.com/FreeVideos.aspx
Good Luck,
JRB-Bldr

S-ar putea să vă placă și