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  Proiect atestat...
 Re: Proiect atestat
 
 3/17/2010 11:55:35 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
nu tre sa creez si in \Menus\MeniuPrincipal.mpr
 3/17/2010 12:00:10 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Acuma trebe sa creezi un meniu cu generatorul de meniuri. Ai mai facut?

Pentru inceput pune o singura optiune: Fisiere
la aia mai baga un submeniu cu doua optiuni
prima: \-
a doua: Iesire
la a doua completeaza comanda CLEAR EVENTS
 3/17/2010 12:00:48 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
dupa aia recompileaza tot si da-i RUN si spune-ne ce vezi
 3/17/2010 12:07:02 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
e.JPG


Ma gandesc ca mia zis  asa pentru ca eu am MeniuPrincipal.Mpx iar acolo imi cere *.Mpr
 3/17/2010 12:07:42 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
am facut meniul, dar ii zice MeniuPrincipal.Mpx
 3/17/2010 12:12:32 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
da-i pe build , rebuild project, recompile all files
 3/17/2010 12:17:12 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Am dat,  Nu mi-a aparut nici o eroare. Am dat run la main.prg. si probabil merge prog ca nu mi-a aparut nimic
 3/17/2010 12:18:50 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A) Modified By oviciandrus  on 3/17/2010 1:19:57 PM)
nu a aparut meniul definit de tine in locul meniului fox?
 3/17/2010 12:20:02 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
o intrebare.   la optiunea fisiere aveam 2 submeniuri . al doilea era iesire, cu comanda clear events. La prima terbuia insa sa pun doar " \- " sau acolo ar fi trebuit eu  sa scriu ceva ?
 3/17/2010 12:20:22 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
ba da . a aparut.
 3/17/2010 12:21:28 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
si cand dai iesire nu apare din nou foxul
 3/17/2010 12:22:24 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
ba da.
 3/17/2010 12:29:52 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
acuma baga inainte de DO "MENUS\..."

_SCREEN.BackColor  = Rgb(0, 128, 0)
_SCREEN.Caption       = 'Dealer TELEFOANE. Atestat 2010 ...'
_SCREEN.Icon            = 'Un fisier ICO' && pe asta trebuie sa-l vezi ca iconita


dupa READ EVENTS

_SCREEN.BackColor = Rgb(255,255,255)


dupa aia dai build, build exe, recompile all si ar trebui sa ai un program exe care poate rula din windows
 3/17/2010 12:36:32 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
n-am inteles ce e cu ICO.. de unde iau un fisier ICO?  si sa zicem ca as avea un fisier ICo. ce ar trebui sa apara acolo _SCREEN.Icon            = 'cale\nume fisier.ico'
 3/17/2010 12:40:26 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
am dat search in calculator *.ico si am gasit. Iau una oarecare. Ca nu stiu cum fac eu ico.
 3/17/2010 12:49:11 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
merge.
 3/17/2010 10:33:36 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Am inteles in mare cum e cu comanda Select.  Nu prea am inteles cum scriu atunci cand nevoie de campuri din tabele diferite, atunci cand unul din camp este regular . De ex iau din contracte numar, din clienti nume si prenume si sa zic ca mai iau tot din  contracte Id_telefon.

Scriu aici cateva din exemplele pe care le-am incercat. ( Am parcurs tot helpul si am facut si acele exemple  in baza de date Testdate a Foxului. )

SELECT Stoc, Model, Producator FROM Telefoane LEFT JOIN modele LEFT JOIN producatori ON modele.Id_prod = producatori.Id_prod ON telefoane.Id_model = modele.Id_model WHERE Pret between 150 AND 800 HAVING Producator = 'Sony Ericsson' ORDER BY Pret Desc

Select Model, Producator From modele LEFT JOIN producatori on modele.Id_prod = producatori.Id_prod ORDER BY Producator ASC


SELECT Talias1.Model, Talias2.Caracteristici_principale FROM modele Talias1, telefoane Talias2

SELECT SUM(Pret) as Pret_total FROM telefoane

Am incercat si sa iau un camp cu regular , adica aveam nevoie de producator, din tabela  producatori, dar nu am reusit. NU cred ca e corecta structura, cu atat cu mai mult cu cat imi zice  "COlumn producator is not found". Asa arata incercarea mea:
SELECT  Talias1.Model, Talias1.Producator, Talias2.Caracteristici_principale FROM modele Talias1 LEFT JOIN producatori ON modele.Id_prod = producatori.Id_prod, telefoane Talias2.



Oricum in mare am inteles cum sta  treaba cu aceasta comanda.


 3/17/2010 10:38:08 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Nu prea am inteles diferentele dintre tipurile de join ( inner, right, left, full) . Comanda insert  am folosit-o cand am populat tabelele, dar ma uit acum in help si citesc tot si aici si parcurg exemple, urmand sa fac la  fel si pentru delete si update.
 3/18/2010 12:00:19 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Okei....

acuma ca ai citit help-ul si exemplele din help si cele doua exemple pe care le-ai primit pe baza ta de date inseamna ca ai facut un mare pas inaninte
inca astept cate 4 exemple de comenzi functionale pe baza ta de date (SELECT ... FROM ...., INSERT ...., UPDATE, DELETE ....)

PS. Ai voie sa parcurgi tutoriale de limbaj SQL
 3/18/2010 8:15:13 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
cu SELECT FROM am dat cateva exemple. Nu sunt  prea complexe exemplele, insa an inteles. Cu  INSERT am lucrat la popularea tabelelor. Voi mai da exemple de acolo, insa nu am inteles toate tipurile de insert. Mai erau acelea cu ARRAy si inca unu. Cu update si delete , urmeaza sa fac dar  voi  posta dupa masa. pentru ca plec putin acum.
 3/18/2010 8:18:15 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
UNde gasesc un tutorial pentru limbajul SQL?
 3/18/2010 11:29:13 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)

 florin2005840 wrote
UNde gasesc un tutorial pentru limbajul SQL?

 http://www.sql-tutorial.net/

 3/19/2010 12:32:34 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
 1.   Am citit tutorialul acela. Am inteles tot din el. Dau aici cateva exemple asa cum mi-ai cerut:


 2.   SELECT Stoc, Model, Producator FROM Telefoane LEFT JOIN modele LEFT JOIN producatori
       ON modele.Id_prod = producatori.Id_prod
       ON telefoane.Id_model = modele.Id_model
       WHERE Pret between 150 AND 800 HAVING Producator = 'Sony Ericsson' ORDER BY Pret Desc

 3.   SELECT Model, Producator FROM  modele LEFT JOIN producatori ON modele.Id_prod = producatori.Id_prod ORDER BY Producator ASC



 4.   SELECT SUM(Pret) as Pret_total FROM telefoane

 5.   SELECT Model, Producator, Stoc FROM telefoane LEFT JOIN modele LEFT JOIN producatori
       ON modele.Id_prod = producatori.id_prod
       ON telefoane.id_model = modele.Id_model
      WHERE Producator in('Nokia', 'Sony Ericsson') ORDER BY Stoc

 6.   Am inteles si cum sta treaba cu INNER JOIN sau  OUTER JOIN.

          SELECT Numar AS Numar_Contract, Nume, Prenume, SUM(Cantitate) AS Nr_Telefoane_Cumparate
          FROM contracte LEFT JOIN clienti ON contracte.Id_client = clienti.Id_client GROUP BY Nume, Prenume

          SELECT Numar AS Numar_Contract, Nume, Prenume, SUM(Cantitate) AS Nr_Telefoane_Cumparate
          FROM contracte INNER JOIN clienti ON contracte.Id_client = clienti.Id_client GROUP BY Nume, Prenume

   Presupunand ca in tabela CONTRACTE exista contracte care nu corespund niciunui client din tabela CLIENTI prima comanda imi va afisa  toate contractele existente in baza de date ( cea cu LEFT JOIN) iar a doua comanda imi va afisa doar acele contracte care au un corespondent in tabela CLIENTI.   CORECTEAZA-MA DACA GRESESC!

Totusi am o dilema. Cand tastez acea comanda in Fox  imi zice << SQL: Group By clause is missing or invalid. >> De lipsit nu lipseste, deci e gresita. Dar care e greseala ? M-am folosit de Group By ca sa imi afiseze pentru fiecare client in parte cate telefoane a cumparat ( existand posibilitatea ca un client sa cumpere 2 telefoane diferite; de asta am facut suma, sa vad cate a luat in total) ; daca nu puneam Group By imi facea suma pe coloana Cantitate si nu ma ajuta cu nimic sa vad totalul per client. Si chiar daca nu puneam Group By tot imi aparea mesajul ala.


 7.   SELECT  Nume, Prenume, Localitate FROM clienti JOIN localitati ON clienti.id_localit = localitati.Id_localit WHERE Localitate IN ('Buzau', 'Bucuresti')


 8.   SELECT * FROM producatori WHERE Producator like 'S%'


 9.   INSERT INTO clienti (Nume, Prenume, CNP, Persoana, Adresa, Id_localit) VALUES ('Dobrota', 'Alexandra', '2891223103104', 'Fizica', 'Str. Zambilelor, nr.57', 6)

 10.   INSERT INTO modele (Model, Id_prod) VALUES ('Touch 2',4)

La insert nu ar mai fi prea mult de vorbit.Am inteles si celelalte 2 tipuri de comanda ptr insert.  Din prima am inteles ca se copiaza cu comanda SCATTER continutul dintr-un tabel in variabile de memorie (MEMVAR) apoi INSERT INTO nume_tabela FROM MEMVAR insereaza continutul stocat in MEMVAR, in aceea tabela ( tabela trebuie sa aiba aceeasi structura, lucru care se face cu COPY STRUCTURE TO ).

Iar la celalat insert selecteaza anumite campuri dintr-o tabela cu SELECT FROM si le insereaza in alta tabela
          INSERT INTO tabela2 (coloana1, coloana 2)
           SELECT coloana1, coloana2 FROM tabela1



 11.  DELETE FROM  producatori                        //sterge tot continutul tabelei producatori

 12.  DELETE FROM producatori WHERE Producator = 'Sony Ericsson'                               //sterge randul cu producatorii Sony Ericsson.

Cam asta ar fi si cu Delete , si din cate am inteles nu poate fi folosit cu Outer Join , ci doar Inner ( tre sa aibe corespondent in cealalta tabela) .



 13.   UPDATE clienti SET CNP = '1910819100141' WHERE Nume = 'Dobrota' AND Prenume = 'Alexandra'

 14.     Aici am vrut sa  incerc mai multe comenzi dar nu prea am inteles ceva.
         Cum arata o comanda atunci cand de ex vreau 2 campuri din 2 tabele diferite, dintre care una din ele sa depinda de alta tabela ( legate intre ele).

Am inteles cum sa iau 2 campuri din tabele diferite dar in care nu am regular pe nici un camp ( SELECT Talias1.Model, Talias2.Caracteristici_principale FROM modele Talias1, telefoane Talias2 ).

Dar daca de ex vroiam intr-o interogare Numar ca Nr_contract, Cantitate ( din tabela CONTRACTE), Nume, Prenume, si  Localitate ( care o  iau din Id_localit care e regular, legat de Id_localit primary de la localitati )  Nume, prenume si Id_localit se afla in CLIENTI ) .

Cum fac? Daca  nu as lua in calcul  Localitatea as putea face si eu ( SELECT Talias1.Numar as Nr_contract, Talias1.Cantitate, Talias2.Nume, Talias2.Prenume FROM contracte Talias1, clienti Talias2) , dar mai departe ??

Am incercat asa
          SELECT Talias1.Numar as Nr_contract, Talias1.Cantitate, Talias2.Nume, Talias2.Prenume, Talias3.Localitate
          FROM contracte Talias1, clienti Talias2 INNER JOIN localitati Talias3
         ON clienti.Id_localit = localitati.Id_localit)                           dar la Localitate imi da NULL.  
 

 13.    INSERT INTO contracte (Data, Expirare_contract) VALUES({16.03.2010}, {17.03.2011})
        ce e gresit in comanda aceasta ? Imi zice : Date/Datetime evaluated to an invalid value.



 14.    Am incercat sa fac si ceva pentru actualizarea stocului, numai pt cazul in care as mai aduce telefoane in magazin ( desi nu e foarte practic si nu voi folosi asa ceva la mine  in program, dar m-am jucat un pic cu comenzile pe aici ). Am salvat actualizarea in alta tabela, pentru ca n-am vrut sa-mi modific datele din  baza de date. Deci :

SELECT Model, Producator, Stoc
         FROM telefoane LEFT JOIN modele LEFT JOIN producatori
        ON modele.Id_prod = producatori.id_prod
        ON telefoane.id_model = modele.Id_model
        WHERE Producator in('Nokia', 'Sony Ericsson')
INTO TABLE StocMagazin.dbf
CREATE CURSOR Aprovizionare (Aparate_aduse I(10))
INSERT INTO Aprovizionare (Aparate_aduse) VALUES (3)
UPDATE StocMagazin
         SET StocMagazin.Stoc = Aprovizionare.Aparate_aduse + StocMagazin.Stoc FROM StocMagazin WHERE StocMagazin.Model = "C 905"
SELECT * FROM StocMagazin




 15.  Intrebare: Sa presupunem ca am introdus date intr-o tabela cu INSERT INTO, dar am  omis un camp intentionat. Acum vreau sa completez acel camp. Pot folosi tot INSERT INTO (pt a adauga doar in acel camp necompletat date), sau acum am nevoie de UPDATE ? Insert practic introduce un nou rand nu ? Si idul care este de tip autointeger creste automat, desi daca folosesc insert imi va creste idul, si  voi scrie ce vroiam sa inserez pe ultimul rand  ?

Dau si un exemplu, ca nu cred ca am fost prea concis.

Am o tabela cu ID | Nume  | Prenume | CNP
ii dau INSERT INTO tabela (nume, prenume) values ('popescu', 'ion')    cnp ramanand necompletat.  Id-ul s-a facut singur 1.
Acum daca ii dau iar insert into tabela (CNP) values (12311121) va trece pe randu urmator ( face ID = 2) si scrie doar la CNP valoarea aia nu ?





   16. Am inteles cat de cat cum stau treburile. Avand  in vedere ca e prima data cand fac asa ceva cred/sper ca le-am inteles. Sunt gata sa trec mai departe.



   17. E tarziu, sunt obosit si sigur am strecurat greseli de vorbire p'aici. Deci daca dai de ceva ce nu suna prea bine sa nu zici <<uite ma asta nu stie nici sa vorbeasca si face baza de date >> ca m-am uitat si eu in posturile mele anterioare si am mai vazut greseli :) .


 
 3/19/2010 6:46:10 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A) Modified By oviciandrus  on 3/19/2010 7:48:46 AM)
Salut Florin,

ok .... sa zicem ca ai aflat cum se pune problema cu bazele de date
atentie INSERT ii pentru a adauga randuri noi si UPDATE ii pentu a modifica randuri
DELETE pentru a sterge randuri

intre timp am facut si programul principal... nu-i asa?
ai probat daca merge PP-ul din fox si din afara foxului?

Acuma urmeaza să ne mai spui ce vrei să facă aplicaţia ta în continuare?
 3/19/2010 10:28:08 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Da am facut programul principarl.

pai initial eu ma gandisem ca "pagina de pornire",sa zic asa, sa fie un form care sa contina informatii generale despre atestat, titlu, nume etc si 2 butoane INTRARE | IESIRE. IESIRE va iesi pur si simplu din program, INTRARE va intra efectiv in atestat, adica va  face legatura cu un alt form in care vor fi butoanele toate. Dar daca am facut Meniu-ul acela banuiesc ca lucrurile se schimba si toate butoanele vor aparea pe acel Meniu. Aici se rupe firul. Nu stiu sa fac butoane in meniul acela. In form as fi facut pur si simplu un buton COMMAND,il asezam unde vroiam eu,etc.. dar aici nu stiu.

Se poate sa fac in meniul principal doar 2 butoane intrare , iesire, in care intrare sa ma duca la forma  in care vor vi toate butoanele ( cum am zis mai sus) ?

Sau daca nu, atunci voi face probabil din meniu toate astea.

M-am gandit sa am 3 categorii sa zic asa TELEFOANE | CLIENTI | CONTRACTE .
 Daca as fi facut formular as fi facut 2 chenare cu titlul deasupra telefoane, in care as fi pus butoane care sa imi aifseze telefoanele din CLASA BUSINESS, NOUTATI, OFERTA , MULTIMEDIA in primul chenar, iar  in al doilea chenar o categorisire dupa preturi ( mai mici de, mai mari de ....)  si undeva mai jos ADAUGA TELEFON, MODIFICA, CAUTA TELEFON .

Apoi la clienti AFISARE CLIENTI , ADAUGA CLIENT , STERGE CLIENT, MODIFICA CLIENT EXISTENT, CAUTA CLIENT

CONTRACTE : AFISARE, ADAUGA, STERGE, CAUTA.


Daca fac toate astea intr-un meniu ar veni asa:
 Telefoane -> Clasa Business
           -> Multimedia
           -> Noutati
           -> Oferte
           -> Preturi -> mai mici de
                           -> mai mari de ....
           -> Cauta telefon
           -> Adauga
           -> Modifica

Clienti -> Afisare
        -> Cauta
        -> Adauga
        -> Modifica client existent
        -> sterge

Contracte -> Afisare
                -> Cauta
                -> Adauga
                -> Sterge


Aici intervine ce e cel mai greu. Cred ca m-am complicat cam mult.Sper sa ma descurc.Oricum singur nu prea pot :(. Astept parerea ta.
 3/19/2010 10:35:53 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Astept si sfaturi. Pana la urma e prima mea aplicatie.  Din experienta ta . Probabil ca imi poti spune ce nu isi are locul aici, sau cum altfel sa fie meniul, ce sa mai contina etc.
 3/19/2010 10:40:31 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Ce structura are meniul in momentul asta ca nu-mi mai amintesc? O captura daca se poate ...
Si mai pune o data structura bazei de date, te rog!
 3/19/2010 10:57:10 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Programul principial este acesta:
untitled.JPG


Meniul principal are doar Optiunea Fisiere care contine :
1a.JPG



Si structura bazei de date :

 1b.JPG




 3/19/2010 11:01:02 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
precizez ca la CLIENTI am adaugat coloana SERIE_CI.
Iar la telefoane coloana IMAGINE de tip General.
 3/19/2010 11:14:18 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
1. la Forms creaza un formulr nou . Salveaza-l in folderul Forms cu numele "Despre"
Pe formular scrie informatii generle despre program folosind controale. Le colorezi cum vrei etc.
2. La meniu, langa Fisiere mai pune optiunea Despre si acolo la comanda scrie DO FORM "Despre"
3. Recompilezi totul.

Creaza din nou executabilul. Lanseaza-l in executie si trimite o poza cu formularul in executie!
 3/19/2010 11:18:52 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
cand creez noul executabil, il suprascriu peste celalat sau fac un nou executabil ?
 3/19/2010 11:24:36 AM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Suprascriere
 3/19/2010 11:24:57 AM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
aa si inca ceva. Va dau aici 2 exemple cum  ma gandeam sa arate  aplicatia, asa cum am descris intr-un comment anterior cele 2 situatii :
 Prima: 1d.JPG


1e.JPG

 Sau a doua metoda
1c.JPG






 3/19/2010 12:22:35 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Bun. Ai facut ce-am zis? Iti merge noul exe cu formularul "Despre"?
 3/19/2010 12:35:44 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
mai am un  pic.
 3/19/2010 1:35:59 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
1f.JPG


Cam asa arata.
 3/19/2010 2:02:23 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Bun. Acuma, hai sa scoti de la fereastra Despre butoanele de maximizare si minimizare. In plus sa faci fereastra sa fie Modal si nu Modeless.
Si dupa aia sa-mi spui cu ce vrei sa continuam!
 3/19/2010 2:21:32 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
am facut ce ai zis. Pai cu ce sa continuam ... incep sa fac acele meniuri. Cum fac? In primu rand  raman, la varianta aceea  cu meniu ( cum  era poza cu aplicatia aceea pentru o biblioteca ) sau  la fel ca ceea cu masini ? ce-mi sugerezi ?   Eu cred ca ar fi mai potrivita ceea cu meniu  , pentru ca nu mai e nevoie sa configurez eu toate butoanele alea, sa caut poze pentru  fiecare form care contne butoane. etc.. Dar cu meniul nu stiu sa umblu deloc. Am neoive de ajutor. Nu stiu nici macar cum fac sa apara optiunile acelea ( TElefoane,  clienti , contracte , cum e si la aplicatia cu biblioteca CARTI, UNELTE... ) . Nu mi-ai zis nici ce parere ai de acele optiuni sa zic asa . Cum as vrea sa arate meniul.
Deci, ce imi spui sa fac mai departe, dupa ce ti-am spus practic ce am de gand? Ce metoda aleg si cum fac sa am butoane in meniu  ( dar nu  sus cum e in Fox la FILE, EDIT ...) , cum schimb imaginea  intr-un meniu .....
 3/19/2010 2:26:19 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
aaa... mi-am amintit. Cum pot redimensiona o  imagine astfel incat sa imi incapa  toata  in fereastra formularului ? Ca atunci cand ii dau fit to la text ca sa se incadreze intr-o caseta. Eu daca iau o poza si are rezolutie foarte mare nu mi-o arata toata. Iar daca umblu la propietatile formului la la width sau height imi modifica doar dimensiunea formului  poza  nu o vad  toata, Si sunt nevoit sa o redimensionez eu si sa o pun asa acolo. Exista vreo proprietate undeva, ca sa fac poza sa se incadreze in formul meu ?
 3/19/2010 3:45:37 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Eu as face sa arate ca o aplicatie standard de Windows cu _SCREEN-ul foxului ca suprafata de lucru si cu meniu sus. Ce sa mai inveti despre meniuri???? Ai invatat cum se proiecteaza un meniu, cum se apeleaza comenzile in dreptul optiunileor si cum se recompileaza.
Acuma eu zic sa mai pui doua optiuni la meniul Fisiere. Una Judete si una Localitati, deasupra lui \-.
 3/19/2010 3:57:04 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Pai si eu voi umbla numai de acolo de sus sa selectez tot ce voi face in  program si screenul va  fi gol sau pun eventual o imagine ???Nu pot face  ca in aplicatia cu biblioteca ( am lasat  o poza mai sus ) Adica in loc sa umblu de acolo de sus, pun acele popup-uri ( daca asa se numesc ) cum e  si la Biblioteca; Adica Carti, Unelte, Despre , Iesire. Nu mi  se pare prea interesant sa-l  las asa si sa umblu doar de acolo de sus. 
Mai ma uit pe tutoriale sa vad  cum pot face ceea  ce am zis, sau daca nu reusesc, voi face un formular ca pagina principala , pe care voi pune toate butoanele.
 3/19/2010 4:01:39 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Ai vazut Microsoft Word? Daca toate documentele sunt inchise suprafata de lucru este goala. Toate functiile programului se apeleaza din optiuni ale meniului.
Sau vrei sa pui 20-30 de butoane pe un formular pentru toate functiile aplicatiei?
 3/19/2010 4:06:50 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
32132.JPGl

la asta ma refeream. Sau daca nu, da voi pune mai multe butoane, pe formulare diferite.
 3/19/2010 5:50:46 PM
User is offlinegldesign
400 posts
2nd


Re: Proiect atestat
 (N/A)
Vad ca ai citit si ai facut progrese.
Bravo e foarte bine. Gandeste-te cate stiai acum o saptamana si cate stii acuma
Sa incerc sa te lamuresc cu selecturile care nu mergeau

La 6. ziceai "Totusi am o dilema. Cand tastez acea comanda in Fox imi zice << SQL: Group By clause is missing or invalid. >>"
In SQL adevarat intr-o comanda cu grup in Group by trebuie puse toate campurile care nu sunt agregat.
Adica trebuie sa pui group by numar,nume,prenume.
In versiunile anterioare de fox (parca de la 7 in jos) comanda pe care ai scris-o functiona.
Poti rezolva problema punind comanda SET ENGINEBEHAVIOR 70 in programul principal si atunci toate selecturile in care ai group functioneaza fara sa pui in group campurile ne-agregat.
Este o solutie care la nivelul proiectului tau zic ca este de ajuns

La 13. Iti zice "Date/Datetime evaluated to an invalid value"
Citeste despre comanda SET STRICTDATE TO
La tine pune-o 0 (zero).
Poti su din Meniu-Tools-Generale--Strict data level 0-OFF

15. cu UPDATE poti modifica un camp gol sau un camp completat (mai putin cheia primara bineinteles)


Sund de aceeasi parere cu Ovi ca meniul sa-ti arate ca la Word. Ecranul trebuie sa-ti ramana liber pt. formuri si rapoarte


 3/19/2010 6:51:22 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
multumesc pt raspunsul la acel post. As fi ramas cu o nelamurire.
 Cat despre data  nu a fost nevoie de strict date ca  mi-am dat seama care-i baiu. Trebuia introdusa in forma {^yyyy-mm-dd}

Mda, majoritatea editoarelor ( text, prelucrare video/ sunet ) au toate comenzile sus, deoarece suprafata de lucru urmeaza a fi completata ( cu text, imagini, video ..) dar in cazul meu  mi se pare un pic inestetic sa fie  suprafata de lucru goala. Oricum formurile si rapoartele se vor deschide peste butoanele pe care le-as face in meniu. Nu stiu cum sa fac.
Incerc sa ma uit  pe net, dar pierd si foarte muilt timp pentru ca totul este intr-o oarecare masura nou pt  mine. Cu ajutorul vostru am redus radical din problemele pe care le-as fi intampinat, dar oricum, pierd mult timp.  Mereu stau si ma  uit pe forum , sa vad nu mi-a mai zis cineva ceva. 

Ai vazut exemplul cu biblioteca ? c e greu de facut asa?
 3/19/2010 7:30:36 PM
User is offlinegldesign
400 posts
2nd


Re: Proiect atestat
 (N/A)
Am vazut exemplul cu biblioteca.
S-ar putea face un meniu asemanator dar nu cu generatorul de meniu ci cu un form si butoane ...
Parerea mea ca asta se poate rezolva si mai tarziu. Daca realizezi formurile de introducere/actualizare date, rapoartele, etc. acestea le poti apela din meniul principal indiferent cum arata acesta.
Acum ar trebui sa-ti definesti, asa cum a zis si Ovi, ce operatii vrei sa se faca din meniu (indiferent cum va arata acesta)
Apoi sa descrii (povestesti) ce se face si cum se face in fiecare optiune de meniu si sa incepi sa implementezi formurile de introducere/actualizare date
 3/19/2010 7:40:24 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Telefoane -> Clasa Business
           -> Multimedia
           -> Noutati
           -> Oferte
           -> Preturi -> mai mici de
                           -> mai mari de ....
           -> Cauta telefon
           -> Adauga
           -> Modifica

Clienti -> Afisare
        -> Cauta
        -> Adauga
        -> Modifica client existent
        -> sterge

Contracte -> Afisare
                -> Cauta
                -> Adauga
                -> Sterge



pai cam asa ar suna functiile programului . ce sa fac in continuare? Inca o intrebare: rapoartele, sau interogarile le fac scriind aceea comanda un butonul de comanda de pe form nu ?  Sau    le fac interactiv  adica  din project manager si la butonul de comanda de  pe form scriu do nume.qpr , etc    ?
Pff, care ar fi  deci urmatorul pas ? ce sa fac?

 3/19/2010 7:50:23 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
sa zicem ca fac pana la urma meniul asa. Sus acolo pe bara. As fi vrut  sa fie un form,dar fac asa. Ce tre sa fac acum ?
 3/19/2010 7:57:16 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
Eu zic asa:

1. sa faci un formular modal numit JUDETE pe care sa-l salvezi in folderul Forms. Fara butoane de maximizare/minimizare si fara posibilitatea de a-l redimensiona. Daca vrei poti sa-l centrezi automat in mijlocul ecranului.
!!! La DataSession pune 2 = Private Data Session. Asta ca fiecare formular sa lucreze cu datele lui fara sa se influenteze.

2. din meniu de la optiunea Fisiere/Judete sa lansezi formularul in executie cu: DO FORM "JUDETE"

3. Pe formular pui urmatoarele controale: un grid in care vom vedea judetele, butoane pentru adaugare, modificare, stergere si iesire (vorbim aici doar despre tabela simpla de judete, care nu are legaturi cu alte tabele). Alege tu pozitionarea gridului, a butoanelor si dimensiunile lor in asa fel incat sa-ti
placa, sa fie practic ....

4. Recompileaza executa si arata-ne o poza chiar daca in grid nu sunt date.
 3/19/2010 8:03:01 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atestat
 (N/A)
 florin2005840 wrote
sa zicem ca fac pana la urma meniul asa. Sus acolo pe bara. As fi vrut  sa fie un form,dar fac asa. Ce tre sa fac acum ?


Asa cum a zis colegul meu in a te ajuta la proiect, incearca sa ne povestesti ce vrei sa faca aplicatia in felul urmator:

1. Vreau ca utilizatorul sa apese un buton, sa apara o fereastra, acolo sa poata sa ... in final sa vada ....
2. Utilizatorul sa poata vedea localitatile inregistrate in baza de date. Sa poata adauga o localitate noua completand numele ei si judetul din care face parte, sa modifice daca a gresit, sa stearga, sa listeze etc.
3
4
5
6
etc etc
 3/19/2010 8:07:31 PM
User is offlinegldesign
400 posts
2nd


Re: Proiect atestat
 (N/A)
Da hai sa o luam pe formuri
Nu povestim toate odata.
Hai sa facem form-ul Judete

Rapoartele la timpul lor (mai la sfarsit)
 3/19/2010 8:09:52 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
Cum il centrez automat in mijlocul ecranului ?  Cum il fac fara posibilitatea de a-l redimensiona ? Un grid = interogare ?Fac un buton pe care pun o interogare care imi afiseaza toate judetele?  sau  la ce se refera un grid ?

Incerc sa scriu acum o descriere a proiectului cat mai  pe larg.
 3/19/2010 8:18:42 PM
User is offlinegldesign
400 posts
2nd


Re: Proiect atestat
 (N/A)
Nu cred ca trebuie sa descrii acum tot proiectul.
Sa facem formul Judete pt ca e relativ simplu, inveti cum se face un form si apoi trecem si la formuri mai complexe
Trebuie sa citesti despre formuri
Uita-te la exemplele din fox
Program- Do
Alegi din folderul Fox-ului Samples-Solution-Solution Se deschide Solution Samples si ai acolo printre altele Forms
La toate exemplele de aici poti vedea si codul
Aici ar trebui "sa pierzi" ceva timp si sa studiezi exemplele (si la celelalte categorii)
 3/19/2010 8:20:33 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
am facut formul. Dar nu stiu la ce se refera gridul si de unde ii pun proprietatea sa se deschida automat pe centru si de unde il pot restrictiona sa se redimensioneze.
 3/19/2010 8:21:39 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atestat
 (N/A)
am vazut grid la Form controls dar cum il  folosesc?
 3/19/2010 8:22:29 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atesta
 (N/A)
Lasa descrierea pentru la noapte cand noi ceilalti o sa dormin :) Hai sa ne ocupam de formularul judete.

Vezi proprietatile formularului si spune-ne daca gasesti cum se centreaza si cum il faci sa nu poata userul sa-l redimensioneze.
Pe un grid poti sa pui imaginim butoane, liste, textboxuri, labeluri etc si griduri. Cerceteaza care-i ala gridul si pune-l pe formular.
 3/19/2010 8:25:12 PM
User is offlinegldesign
400 posts
2nd


Re: Proiect atestat
 (N/A)
Poate ca ar trebui sa citesti intai in Help-ul Fox
Pe Content- Using Visual Fox- Developing Visual... -Creating Aplicaton- Creating the user interface-Working with forms (de fapt tot capitolul despre interfata)
 3/19/2010 8:26:31 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atesta
 (N/A)
Ok. Deci am dat new form . Se deschide asa

 3/19/2010 8:28:02 PM
User is offlineoviciandrus
762 posts
www.comptech.ro
1st




Re: Proiect atesta
 (N/A)
Daca nu gasesti, incearca pe google intrebari de genul "VFP How to ...."
 3/19/2010 8:28:03 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atesta
 (N/A)
2a.JPGOk. Deci am dat new form . Se deschide asa



Gridul inseamna acel fond gri pe care se deschide formul sau grid asa cum am selectat eu din FOrm controls ?

 3/19/2010 8:49:28 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atesta
 (N/A)
uff, am avut o problema cu forumul. Imi  zicea A critical error has occured. . Acum am rezolvat-o merge.. Deci , referitor la ultima mea intrebare ? care este gridul > fondul acela gri sau ce am deschis eu ?
 3/19/2010 8:57:48 PM
User is offlineflorin2005840
557 posts
1st


Re: Proiect atesta
 (N/A)
Atunci citesc tot asta acum. Si vad io. Incerc sa umblu   pe aici , poate ma descurc.
  Visual FoxPro  Visual FoxPro in general  Proiect atestat...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement