Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
View in multiuser env
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00550368
Message ID:
00551166
Vues:
29
>n-am pretentia sa te uiti peste tot acum, forma de zone este pentru definirea conditiei de join in view.
>problema a aparut si in forma aprobari, imi spunea ca inregistrarea este blocata de alt utilizator
>mai scoate din campurile de pe forma si lasa doar cateva.
>m-am chinuit cu un coleg la Camera de Munca si tot imi dadea eroarea de mai sus, dupa ce mi-ai trimis data trecuta am vazut ca nu am facut tot ce trebuia ca sa utilizez view-ul cum trebuie

Dorin,
1. Sfatul de a scoate din cimpuri este bun, dar era pentru tine - imi era mai usor si mie.
2. M-am uitat prin citeva forme... Citeva observatii:

-Constat ca nu folosesti de loc buffering, deci lucrezi direct pe fisiere. Nu e o ideie buna in multiuser. Daca 2 utilizatori adauga o inregistrare, APPEND BLANK face sa ai in momentul respectiv 2 inregistrari identice, cu aceiasi cheie blank.
Cind lucram pe fisier direct, in DE (data env) bufferModeOverride = 5. Cind lucram pe un view fisierul sursa nu este buffered, iar view-ul este 5. Buffering elimina nevoia de flock() sau rlock() pentru ca fiecare user lucreaza pe o copie. Cind totul e gata si vrei sa salvezi atunci dai valoare la cimpul de cheie si apoi tableupdate(), verifici daca returneaza .t. Daca nu, poti sa dai din nou tableupdate(), sau sa renunti - in care caz probabil ca ai nevoie de tablerevert() ca sa cureti bufferul.

-Am deschis citeva view-uri in relatii - nici unul nu are Send SQL Updates checked.

-Am vazut fisiere deschise exclusiv - sursa de erori in multiuser env. Chiar daca fisierul e pe discul local poti avea erori daca deschizi aplicatia de doua ori pe acelasi computer. Exclusiv poate fi justificat cind faci intretinere (PACK) de fisiere, deci cind esti sigur ca nimeni nu are acces la date.

-Am vazut ca ai PACK dupa DELETE - nu numai ca nu e nevoie, dar, din nou, cere fisierul exclusiv, si asta e incompatibil cu multiuser, SET DELETED ON este solutia.

-Am vazut ca declari variabile publice uneori chiar in metode in forme - semn de design problematic.

Nu stiu daca toate astea te vor ajuta - e greu prin corespondenta...

Succes!
Doru
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform