Problema rezolvata: refresh datagrid in VB, la insert in real time

Nu cred ca titlul este prea explicit.

Problema era in felul urmator.
Am sincronizat datagrid-ul si textbox-urile cu un Dataset, era exact ce imi trebuia.

Butonul Adauga = curata databind-ul si elibereaza textbox-urile

Butonul Salveaza = face un insert parametrizat in baza de date, dar nu cu ajutorul dataset-ului ci direct printr-o conexiune deschisa cu baza de date.

Problema a aparut la sincronizarea DataGrid-ului. Acesta nu voia sa faca refresh (fill) cu noile inregistrari pana nu inchideam si deschideam aplicatia. Naspa.

Am cautat solutii:

pe net:  google nu prea m-a ajutat de data asta, sunt dejamagit. Am gasit si cateva articole pe forum-uri care explica exact problema, care era identica cu a mea, fara un rapsuns clar. Unul dintre ele este:

http://www.vbforums.com/showthread.php?t=635307

pe la colegi: nu am facut pe nimeni sa inteleaga exact cauza problemei, am primit niste sfaturi pe care le-am urmat, dar fara nici un rezultat.

Formularul:

 Sa repet, dupa insert, valorile inserate nu apareau in datagrid pana nu inchideam si deschideam aplicatia.

Chiar am facut un compromis sa fac insert-ul cu ajutorul datase-ului, dar greseala era deja facuta, si nu a mers.

Solutia: Solutia nu am gasit-o nicaieri, dupa 4 ore de gandit am gasit-o singur.

Problema a intervenit la datasource-ul dataset-ului. Nu inteleg de ce, cand am dat in wizard sa creez sursa mi-a facut string-ul de conectare ceva de genul:

connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="|Data Directory|\Certificare distrugere.mdb""

 Am inlocuit |Data Directory| cu calea catre baza de date.

connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="D:\OMT Certificate Distrugere VSU\OMT Certificate Distrugere VSU\Certificare distrugere.mdb""

Aceast connectionstring care trebuie modificat il gasiti in fisierul app.config.

Acum toate bune si frumoase, pot trece linistit la customizare, aspect comercial si alte facilitati care le va oferi aplicatia.

PS: Foarte mare atentie cand se impacheteaza aplicatia, trebuie sa se schimbe path-ul catre locatia unde va fi baza de date dupa deploy (instalare). Ala era si rolul Data Directory…

PS2: Acest articol pentru cei care sunt prima oara pe aici face parte din dezvoltarea unei aplicatii pentru un centru Remat, pentru programul Rabla 2011.

 PS3: Daca cineva intampina problema aceasta si totusi nu pricepe din ce am scris cum se rezolva problema, ajut cu cea mai mare placere, sa nu mai piarda nimeni 4 ore.

One Response to Problema rezolvata: refresh datagrid in VB, la insert in real time

  1. Pingback: Cum am devenit IT-ist | Ionut Sinescu

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s

%d blogeri au apreciat asta: