Search  
Monday, January 27, 2020 ..:: 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  Baze de date, tabele, view-uri si indecsi  Update child ta...
 Update child table dintr-un form one to many
 
 2/7/2012 11:21:30 AM
User is offlinemarin_serban
25 posts


Update child table dintr-un form one to many
 (N/A)
Salut! Am urmatoarea situatie: VFP8, o baza de date mai multe tabele t1, t2.., form-uri etc. Un form cu un combobox (apeleaza t1 parinte cu select, pt. ordine alfabetica) si t2 (cele doua tabele sunt legate dupa un camp comun: id) imi permit introducerea datelor. Problema mea: Nu reusesc sa pun conditie de inregistrare dubla in t2. Am incercat sa creez un index compus in t2, cumul, (la default value am pus id+dtos(data)) care ar trebui sa cumuleze id+dtos(data) intr-un camp cumul, numai ca, dupa ce selectez id din combo, introduc date in t2 prin intermediul form-ului in campul cumul imi pune numai dtos(data), fara id. Imi poate oferi cineva un sfat? Va multumesc!
 2/7/2012 12:32:44 PM
User is offlineDaniel Buduru
3514 posts
1st




Re: Update child table dintr-un form one to many
 (N/A)
Valoarea default a unui camp se completeaza in momentul crearii inregistrarii. In acel moment, campul ID (probabil ca in DATA ai default value DATE()) nu e completat.

1. Nu ai nevoie de un camp pentru a crea un index candidat.
    INDEX ON ID+DTOS(data) TAG IDDATA CANDIDATE
Daca id de alt tip decat caracter, se converteste la caracter cu STR(id, lungime).

2. Daca vrei sa ai in tabela un camp calculat, in completezi in record valid. Pentru asta, creezi o functie, sa zicem t2valid, pe care o pui in stored procedures in database.
In aceasta procedura vei avea comanda care completeaza campul cumul cu expresia lui:
   replace cumul with tran(id)+dtos(data)
Desigur, vei face verificarea daca s-a modificat vreunul din campurile care intra in expresia campului compus inainte de a face inlocuirea, pentru a nu o face la fiecare parcurgere a tabelei.pentru asta, vezi GETFLDSTATE() si OLDVAL().



Daniel Buduru
 2/7/2012 12:41:02 PM
User is offlinemarin_serban
25 posts


Re: Update child table dintr-un form one to many
 (N/A)
Multumesc!
  Visual FoxPro  Baze de date, tabele, view-uri si indecsi  Update child ta...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2013 Profox   Terms Of Use  Privacy Statement