Search  
Wednesday, May 23, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Visual FoxPro in general  Atestat 2010...
 Re: Atestat 2010
 
 3/25/2010 4:25:06 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Intri in Options (menu, tools, options)
Forms
In Template Classes bifezi Form, apoi ii dai clasa appform - folosesti butonul din dreapta
Save as default.




Daniel Buduru
 3/25/2010 4:31:18 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Facem un form nou.
Fie din Project Manager, fie din File, New , Form
Daca formul nou nu arata ca appForm, nu s-a facut corespunzator setarea din Options si se reia de acolo.

Facem noul form la fel ca formul pe care l-am salvat clasa:

In List1.RowSource punem acelasi select.

Copiem toate controalele din container1 si le punem in nou form in container1.
Scoatem codul din refresh de la aceste controale.

Copiem codul din OnListChange, OnSave, OnDelete.

Salvam formul si il rulam.


Daniel Buduru
 3/25/2010 4:31:57 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
aici m-am incurcat :

Apoi deschzi clasa in editare
Comentezi codul din OnListChange, OnSave, OnDelete
Scoti tot ce este in container1.

 3/25/2010 4:38:01 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Deschzi clasa asa cum ai facut la sidebar -
In project manager, clases, expandezi biblio.vcx cu click pe +
Apoi selectezi appForm si dai modificare

Intei in fiecare metoda care are cod specific - asta inseamna ca in cod sunt referite campuri din cursor sau cursorul.
Comentarea se face selectand tot textul - Ctrl+A, apoi click dreapta, alegi Comment din menu contextual.
Trebuie sa puna *!* in fata fiecarei linii. * pusa in fata unei linii inseamna comentariu, ce este in acea linie este ignorat de compilator.

Editezi containerul1 - ctrl+click sau click reapta, edit, apoi selectezi toate obiectele (se numesc controale) si dai Delete



Daniel Buduru
 3/25/2010 5:16:44 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
am comentat , am facut modificarile pe clasa , am facut form nou - adaugat sters ....am rulat ...nu da nici o eroare dar cand selectez o carte din lista nu imi afiseaza in obiecte .
 3/25/2010 5:32:20 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Depanam.
Daca in form.init ai pus cod, pune pe prima linie DODEFAULT()
Mai intai verifica daca in OnListChange exista o linie thisform.Refresh. Daca nu e, trebuie adaugata.

Deschide formul in editare, mergi in OnListCghange si pune un breakpoint pe prima comanda. (click-dreapta, toggle breakpoint)
Apoi rulam.
Se va opri la breakpoint si va scoate in fata fereastra debugger-ului, cu pointerul pe linia unde e pus breakpoint-ul.
Din menu ii dai Step Into - sau F8
Va executa linie cu linie.
Daca tii cursorul mouse peste o proprietate sau variabila dintr-o linie executata, in tooltip  va aparea valoare acelei proprietati sau variabile.
Urmareste ce apare in Thisform.ListValue, daca e un numar sau altceva,
daca selectul returneaza ceva - pentru asta deschizi, din menu vfp, window,  Data Session, alegi din combo sesiunea formului, dai un browse pe cursor.
Daca in cursor nu e nimic, selectul sau filtrul nu sunt corecte.

Daca nu se opreste, lipseste un bindevent din init.

Daniel Buduru
 3/25/2010 5:53:24 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
off , imi cer scuze dar a fost greseala mea , nu copiasem tot din onlistchange ,onedit si ondelete . acum se pare ca functioneaza !
 3/25/2010 6:03:32 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
am si eu doua intrebari de curiozitate .
1. daca pun pe un buton la metoda click : un :   input '*********=' to n

asta cand rulez si apas acel buton imi va afisa : ********** ...cum fac sa mut un rand mai jos acest text

2. la unul dintre atestatele vazute , cand rula o comanda ...cand apasa un buton ...apareau niste : ........ ( puncte ) care se incarcau ....ca un fel de load si dupa cateva secunde afisa ca , comanda sa executat cu succes.
cum se face aceasta .
 3/25/2010 6:07:01 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Ok
Pune la toate controalele din container1 - mai putin la labels, daca le ai in stanga - Anchor=10. Se vor redimensiona odata cu containerul.


Facem o modificare in clasa de baza, appForm.
Vom afisa numarul de inregistrari din lista
Punem un textbox sub lista, aliniat la stanga, cu width =80 (daca e nevoie, o mai modificam)
Style=1
In controlSource punem this.parent.list1.Listcount
La dreapta lui putem pune un label in care scriem ' Inregistrari in lista'
La ambele controale - textbox si label - punem Anchor=4 - se vor misca odata cu margine de jos a formului.

Acum ar trebui sa facem si cautarile cerute, dar le vom face in formul de carti, nu in unul separat
Dar lipsesc cam 2 ore, continuam mai tarziu
Pana atunci gandeste-te cum am face sa cautam dupa titlu si autor. Ce am puen in form, cum am face sa inceapa cautarea cand se tasteaza ceva, cum ar fi selectul care ar face asta.

Daniel Buduru
 3/25/2010 6:43:04 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A) Modified By GooDy  on 3/25/2010 7:53:45 PM)
Am adaugat un textbox in form-ul carte , iar in metoda InteractivChange a textbox-ului am adaugat :
LOCAL nIndex, oList      && prevent conflict with other variables
   oList = thisform.List1   && create object reference to list box

   FOR nIndex = 1 TO oList.ListCount  
          IF UPPER( oList.ListItem(nIndex) ) = UPPER( ALLTRIM( this.Value ) )
         oList.ListIndex = nIndex   
         EXIT               
      ENDIF

   ENDFOR

   oList.Refresh       

am luat codul de pe un site , ma gandeam la ceva in genul dar nu cred ca eram in stare sa transcriu in limbaj de programare , fara erori .Functioneaza , sare la ceea ce introduc eu in text box .

OFFLINE :  te rog citete postul meu de mai sus cu cele 2 curiozitati . Multumesc !
 3/25/2010 7:34:36 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A) Modified By Daniel Buduru  on 3/25/2010 10:41:10 PM)
In primul rand, nu trebuie sa transpui in vreun limbaj de programare.
Important este sa stii ce vrei sa faci, si sa detaliezi ce vrei sa faci.
E algoritmul despre care vorbeam la inceput.
Cand algoritmul e complet, poate fi implementat in orice limbaj de programare.

Am sa raspund si la intrebarea dinainte, cea cu punctele miscatoare.
Pare a fi un progressbar - o bara de progres - care arata cat anume s-a realizat dintr-o operatie.
Am sa si dau un exemplu de cod, dar fara legaturi
lcString=''
For i=1 to 100
   lcString=lcString+'.'
   thisform.label1.caption=lcString
ENDFOR
In loc de for poti avea scan -endscan, daca parcurgi un fisier, sau altele. Principiul e acelasi

Cu input am sa-ti spun, dar nu acum. Stau tare prost cu timpul, si ma grabesc sa termini proiectul cat mai pot.

Acum vreau sa clarific un lucru:
- Daca o aplicatie vfp, lucrand cu o baza de date de cateva tabele locale, cu cateva mii de inregistrari, are nevoie de un progressbar pentru ca utilizatorul sa-si dea seama ca prohgramul nu s-a blocat, inseamna ca trebuie revazut codul.
- E adevarat insa ca un cod bine chitit poate ingenunchea un procesor dual core ...

Acum, cu cautarea, nu la pozitionarea aia in lsita ma gandeam ...
Daca vrei o pozitionare in lista, e mai rapid sa te pozitionezi pe un index, in vfp este implementat un mecanism de optimizare a filtrelor si cautarilor folosind indecsii.
Daca vrei, vom mai vorbi despre asta.

Cautarea unei carti nu e la fel de simpla cu cautarea unui cuvant. Daca nu stii titlul exact, compararea sirurilor nu e eficienta.
Nu vom face acum eliminarea diacriticelor si nici nu vom ajunge la tehnici de cautare cum sunt cele pe acre le foloseste Google - asta poate fi proiectul tau de diploma, daca faci o facultate de profil.

Vom folosi restrangerea setului de inregistrari adus in lista prin filtrari suplimentare in comanda sql.
Vom prelua text tastat intr-un textbox si il vom cauta inregistrarile in care titlul (sau / si autorul) incep cu acele caractere sau contin acele caractere in titlu.
Pentru asta avem nevoie de un selector, in care utilizatorul sa precizeze daca vrea titlurile care incep cu textul sau care contin textul.
Putem face selectorul cu un optiongroup - se apasa una sau alta dintre optiuni - sau un combobox.
Eu prefer combobox-ul, din doua motive - de aspect si de mod de parcurgere a interfetei.
Vom folosi doua randuri de controale, unul pentru titlu,  altul pentru autor.
facem mai intai un set, apoi il selectam si il duplicam, apoi. modificam ce trebuie
Deci, un label - transparent - in care scriem ' Titlu'
Apoi, pe aceeasi linie, un combobox, apoi un textbox.
Combobox-ul va avea urmatoarele proprietati:
RowSource: Incepe Cu, Contine
RowSourceType: 1 - Value
Name: cboSel1
La textbox:
Name txtFilter1
Format: !T  - va scrie cu majuscule si va trima blancurile.

Le selectezi, Copy / Paste (Ctrl+C, Ctrl+V)
Le aliniezi dedesubtul primelor
Combo se va numi cboSel2, textbox-ul txtFilter2, iar in label pui 'Autor'

Apoi cream o metoda noua in form, Dofilter
In form.Init punem:
DODEFAULT()
* Daca nu e pus deja. Dodefault executa metoda clasei si returneaza rezultatul metodei.
* Avem nevoie de ea ca sa se execute mai intai codul din AppForm.Init, si apoi codul din Form.init
Apoi legam combo si textbox
BINDEVENT(this.cboSel1,'interactiveChange',this,'DoFilter',1)
BINDEVENT(this.txtFilter1,'interactiveChange',this,'DoFilter',1)
BINDEVENT(this.cboSel2,'interactiveChange',this,'DoFilter',1)
BINDEVENT(this.txtFilter2,'interactiveChange',this,'DoFilter',1)

In DoFilter

lcTitlu=UPPER(ALLTRIM(this.txtFilter1.Text))
lcAutor=UPPER(ALLTRIM(this.txtFilter2.Text))
lnWT=thisform.cboSel1.ListIndex
lnWA=thisform.cboSel2.ListIndex
lcWhere1=IIF(lnWT=1,'','%')+lcTitlu+IIF(lnWT=3,'','%')
lcWhere2=IIF(lnWA=1,'','%')+lcAutor+IIF(lnWA=3,'','%')

lcSQL='Select left(trim(titlu)+' - '+trim(autor),100) as Titlu, idcarte from carti inner join autori on carti.idautor=autori.idautor'+;
' where UPPER(titlu) like "'+lcWhere1 +'" '+;
' AND UPPER(nume) like "'+lcWhere2+'" '+;
' order by 1 into cursor crsList1'

Thisform.List1.RowSource=lcSQL
Thisform.List1.Requery
Thisform.refresh

Tot cod netestat. Sa vedem cum merge.

Daniel Buduru
 3/25/2010 7:58:50 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
in dofilter : lcWhere1=IIF(lnWT=1,'','%')+lcTitlu+IIF(lnWT=3,'','%')

zice operator/operant type mystmatch ....

ceva nu are tipul care trebuie
 3/25/2010 8:19:42 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Combo ar trebui sa aiba BoundTo: .f.
Si pune value: 1

Daca tot nu merge, pune
lnWT=thisform.cboSel1.listindex
lnWA=thisform.cboSel2.listindex

In cboSel1.Init pune
this.Listindex=1

la fel la cboSel2

Daniel Buduru
 3/25/2010 9:31:17 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
am rezolvat ...

cand selectez din primu combo .... continue ...imi dispar - de la numele din lista ...iar randul 2 de combo si text nu executa nimic
 3/25/2010 9:40:05 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Am gresit eu promptul, pe prima linie e titlu, pe linia 2 e autor. Modifica in Label.Caption.

Incearca sa descrii mai bine ce se intampla cu primul combo, ce iti dispar de la numele din lista?
Ce se intampla daca tastezi 'A' ?

Pe linia a doua, am gresit eu in bindevent, am copiat primele doua si am uitat sa modific cboSel2 si txt2. Dar si tu le-ai luat cu copy/paste .....



Daniel Buduru
 3/26/2010 6:38:45 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
bun . am rezolvat treaba cu autorul ( labele le mutasem deoarece observasem ca sunt inversate ) .
rulez form-ul ....am lista cu Titlu - autor

selectez la titlu : Incepe Cu  ( inca nu se schima nimic ) cum apas o litera , se muta pe litera respectiva , dar in lista numai este Titlu - autor  ci TitluAutor .... sunt lipite , fara ,, - "
                        contine ...imi sare la o inregistrare care incepe cu E si se schimba formatul , fara ,, - "  titluautor legat

la fel si in cazul autorului
 3/26/2010 6:41:24 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Probabil ' - ' lipseste din selectul generat la cautare.
Fa corectura necesara si posteaza codul corectat aici.

Daniel Buduru
 3/26/2010 6:59:19 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
lcSQL='Select left(trim(titlu)+" - "+trim(autor),100) as Titlu, idcarte from carti inner join autori on carti.idautor=autori.idautor'+;
' where UPPER(titlu) like "'+lcWhere1 +'" '+;
' AND UPPER(nume) like "'+lcWhere2+'" '+;
' order by 1 into cursor crsList1'

Daniel Buduru
 3/26/2010 7:10:16 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
corect...acum totul functioneaza corect .
 3/26/2010 7:14:55 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Acum spune care a fost cauza.
Si daca timpul de raspuns e suficient de mic ca sa nu necesite atentionarea utilizatorului ca programul inca lucreaza ...


Daniel Buduru
 3/26/2010 7:18:08 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
cauza au fost ghilimelele ,  ' ' care faceau conflict cu cele principale .
timpul de raspuns este foarte scurt . Daca se leaga de intrebarile mele , aceleau au fost simple curiozitati , nu m-am gandit ca le voi folosi la proiectul meu .
 3/26/2010 7:44:56 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Nu m-am gandit ca vrei sa le folosesti in proiect, si am inteles curiozitatea.
Doar ca sa intelegi dece utilizarea unui progressbar in acel proiect nu e justificata.

Acum sa continuam.
Trebuie sa dimensionezi formul de baza  - appForm - astfel incat sa incapa bine in appFrame.
Apoi refaci celelalte formuri astfel incat sa derive din aceasta clasa. Dar asta o vei face cand poti, nu acum.

Sa vedem ce avem pana acum
Avem un form toplevel, un toolbar si un menu.
Nu avem un pad pentru program in menu si nici menu-ul in limba romana.
Va trebui sa traduci toate prompturile din acel menu in romana.
Mai trebuie un buton de exit in sidebar.
Apoi sa definim un pad pentru programe si sa punem in el aceleasi prompturi ca si in sidebar.
Vom face asta in metoda SetSidebar, odata cu configurarea butoanelor.
Vom defini un pad, un menu popup, si barurile din acest menu.
Asta o vei face singur.
Vezi in help define menu, define pad, define popup, define bar, on pad, on bar, on selection bar ...
Deschide fisierul mpr - modi comm fisier.mpr -, generat pentru menu, si vezi cam cum se defineste un menu. Noua ne trebuie un pad si un popup asociat.

Apoi reluam un pic formul de carti si de imprumuturi.
La carti nu ar fi bine sa mai punem un filtru, un combobox cu autorii, la fel cum avem in imprumuturi, astfel incat sa avem in lista doar cartile unui anumit autor?
Daca da, fa singur asta. Intreaba daca ai nelamuriri, dar la "nu stiu cum sa fac, nu-mi vine nicio idee ..." nu primesti raspuns ...

Ce se intampla daca vrem sa adaugam o carte si nu avem autorul? Sau cineva vrea un abonament si nu este inca abonat?
Cum procedam in acest caz?

Am zis de un form in care sa putem avea date despre biblioteca - ce autori, ce carti, care e valoarea totala, valoarea celor din raft, valoarea celor imprumutate ...
Care e titlul cel mai solicitat? Top 10 titluri imprumutate, top 10 autori cititi, top 10 abonati, top 10 restantieri ..
Care sunt abonatii care n-au adus cartile la timp, ce abonati au imprumutat un anumit titlu in uttimele x zile.
Cam ce vrei sa faci din astea, sau ce alte idei mai ai?
Cum ai organiza pe formuri - unul sau mai multe - si cum ai vrea sa afisezi raspunsurile?



Daniel Buduru
 3/29/2010 8:04:14 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
bun , in primul rand , imi cer scuze pentru weekendu absent , dar am avut parte de o mica excursie surpriza  :D

acum zic eu sa le luam pe rand :
1.trebuie definit un pad si un popup cu niste baruri
2. spui ca ar fii indicat ca in form-ul carti sa apara un textbox pentru filtrare , cand se incepe tastarea autorului sa se filtreze cartile
3. daca vrem sa adaugam o carte si nu gasim autorul in aceea lista , se va trece la adaugare in form-ul cu autori ....la fel si la cel cu abonatul . Sau crezi ca ar fii indicat un buton sau din meniu o scurtatura carte form-ul autori/abonament
4. ma gandeam :

top 10 titluri | top 10 autori | top10 abonati | restantierii |

ma gandeam pe un singur form ....4 butoane pe form .
rezultatele la top-uri se vor afisa in acelasi listbox  iar restantierii in alt listbox deoarece la top-uri se vor afisa doar 10 rezultate pe cand la restantierii pot intervenii mai multi rauplatnici .
 3/29/2010 8:24:05 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Ok, incepi cu menu-ul, pad, popup si bar-uri
Apoi fa si restul.


Daniel Buduru
 3/29/2010 9:22:18 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
asa arata programul meu pana in momentul de fata . Ruleaza fara erori , executa corect la apasarea pe bar-uri

http://img265.imageshack.us/img265/1337/16301745.jpg

(link imagine atasat)
 3/29/2010 9:33:30 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A) Modified By Daniel Buduru  on 3/29/2010 9:38:20 PM)
Ok, desi voiam codul aici, ca sa poata fi generat in appframe.setsidebar, astfel incat menu-ul si butoanele din sidebar sa fie in concordanta.
Merge si asa.

Pune un butom cu un + pe el la dreapta fiecarui combobox din carti si imprumuturi. Respectiv, la combo autori, combo carti si combo abonati.
In codul click lansezi formul corespunzator, astfel incat sa se poata face adaugarea unui nou autor, carau abonat, atunci cand este nevoie.

Apoi fa si formul cu top 10, asa cum l-ai descris.
Doar ca, in loc de list, vei pune un grid. Nu acvem nevoie sa selectam vreo inregistrare dintre cele afisate, asa ca nu e nevoie de list.

Pune o poza cu formul de imprumuturi, sa vad si eu cum arata.

Si apasa de trei ori la rand pe Carti in menu, pad-ul biblioteca, apoi in Window, Cascade, si fa o poza sa vedem cum arata.

Daniel Buduru
 3/29/2010 10:03:13 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A) Modified By GooDy  on 3/29/2010 10:10:10 PM)
.am pus butoanele cu +
aceasta este si imaginea :


http://img202.imageshack.us/img202/1118/97471503.jpg

http://img218.imageshack.us/img218/429/34352508.jpg
 3/29/2010 10:18:10 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Deci, la lansarea din menu nu se verifica existenta unui form cu acelasi nume.

Designul lasa mult de dorit.
Era vorba sa derivezi toate formurile din appform. N-ai apucat sa o faci sau n-ai intentia?
In appForm am precizat pe unde sa fie lista, butoanele si containerul.
Desigur, le poti lasa si asa.

Daca nu l-ai pus inca, pune cod in butoanele cu + pentru lansarea formurilor corespunzatoare.
Fa o proba, sa zicem cu imprumuturi. Adauga un abonat folosind acel buton cu +.





Daniel Buduru
 3/29/2010 10:51:55 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
codul am pus pe acele butoane si functioneaza , atat lansarea cat si adaugarea .deocamdata ma gandeam numai la functionalitate
 3/29/2010 10:58:31 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
am o mica problema ...fac un form nou si se deschide deja pre-modelat dupa appform ...daca vreau sa sterg list sau vreun buton cv nu imi da voie
 3/29/2010 11:18:07 PM
User is offlineDaniel Buduru
2332 posts
1st




Re: Atestat 2010
 (N/A)
Tools / Options / Forms  scoate bifa de la form si salveaza.

Marius, ignori atat de mult ce spun eu, incat ma opresc aici.
Aplicatia functioneaza. Nu e in faza in care eu as fi considerat-o terminata, dar tu o consideri asa si e ok.
Succes

Daniel Buduru
 3/29/2010 11:26:45 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
stiam ca m-ai invatat sa o pun ca favorita ...si cautam prin posturile tale mai vechi ...din pacate tocmai acum m-am prins ca pot sa selectez mai mule posturi per pagina ci nu numai 5 cate aveam initial ...si asa imi era greu sa dau de ceea ce imi trebuia .
Nu ignor absolut nimic din ceea ce spui tu , cand m-am referit la functionabilitate nu m-am referit la faptul ca o voi lasa asa sau ca nu ma intereseaza cum arata , nu este deloc asa ...numai ca la scoala a vazut aplicatia in stadiu in care era si sincer sunt presat de catre profesor sa vada ceva mai mult , functionabil , deoarece sunt singurul din clasa care nu a ,,contribuit" la atestat fabricat la comanda . asta era toata ideea cand am spus de functionabilitate .
 3/31/2010 12:18:37 PM
User is offlineGooDy
194 posts
5th


Re: Atestat 2010
 (N/A)
am o problema cand incerc sa salvez un imprumut nou :

cand dau save spune : eroare la salvare : Alias 'lcparentwkarea' is not found
........sa fie de la relatiile de intergritate referentiale ?

daca mai apas inca odata pe salvare imi da alta eroare :

...eroare la salvare :  cannot update the cursor Imprumut , since is read-only

am aranjat umpic designul , rezultatele :

http://img12.imageshack.us/i/70956308.jpg/

http://img225.imageshack.us/i/40695077.jpg/

http://img69.imageshack.us/i/15378776.jpg/
  Visual FoxPro  Visual FoxPro in general  Atestat 2010...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement