Forum Coders' city Strona Gwna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UytkownicyUytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj si, by sprawdzi wiadomociZaloguj si, by sprawdzi wiadomoci   ZalogujZaloguj 

Potrzebuj szybkiej odpowiedzi na moje pytanie... Zasady

[Access 2010] Operacje na Recordset, uaktualnienie tabeli

Id do strony 1, 2, 3, 4, 5  Nastpny

 
Odpowiedz do tematu    Forum Coders' city Strona Gwna -> Bazy danych
Zobacz poprzedni temat :: Zobacz nastpny temat  
Autor Wiadomo
elfface



Doczy: 31 Pa 2012
Posty: 176

PostWysany: Sro Sty 28, 2015 12:29 am  OP    Temat postu: [Access 2010] Operacje na Recordset, uaktualnienie tabeli Odpowiedz z cytatem Pisownia

Witam,
bardzo prosz o pomoc w nastpujacym problemie:
1. W TSL_Material mam zebrane rne "materiay"
2. W T_Ewidencja_Material powinny by uaktualniane wszelkie zmiany w zakresie ewidencji tych materiaw
3. Za pomoc formularza PF_Ewidencja_Summary chciabym zbiorczo dokonywa tych zmian dla zaznaczonych materiaw, ale mam problem z okreleniem niezwizanego pola "Stan" w formularzu (okrelenie iloci materiau, ktry juz znajduje si w tabeli T_Ewidencja_Material) oraz jak utworzy kwerend, ktra jednoczenie doczy nowe rekordy lub zaktualizuje istniejce rekordy w tabeli T_Ewidencja_Material.
Z gry dzikuj za pomoc.



HQH_Test_Ewidencja.rar
 Opis:

Pobierz
 Nazwa pliku:  HQH_Test_Ewidencja.rar
 Wielko pliku:  32.07 KB
 Pobierano:  92 raz(y)


_________________
=8-T
Grzegorz Z.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
karolinavb
Site Admin


Doczy: 25 Maj 2005
Posty: 7905

PostWysany: Sro Sty 28, 2015 7:50 am      Temat postu: Odpowiedz z cytatem Pisownia

To jest formularz CIGY.
Wic na przykad jak na obrazku oraz NZ.



nz_zrodlo_formantu.png
 Opis:

Pobierz
 Nazwa pliku:  nz_zrodlo_formantu.png
 Wielko pliku:  31.95 KB
 Pobierano:  151 raz(y)

Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
elfface



Doczy: 31 Pa 2012
Posty: 176

PostWysany: Pon Lut 02, 2015 2:07 pm  OP    Temat postu: Odpowiedz z cytatem Pisownia

No tak, miaem nadziej, e zrobi to zmysowo w kodzie :) Serdecznie dzikuj. Pole Stan potrzebne mi byo do porwnania z polem txtRozchod. A jeli chodzi o dalsz cz pytania, to pozwoliem sobie bardziej szczegowo opisa mj problem. Zamiarem jest "masowa" edycja ze zmian i dodawanie rekordw za pomoc formularza (utworzonej kwerendy). Z gry dzikuj za pomoc.


HQH_Test_Ewidencja.rar
 Opis:

Pobierz
 Nazwa pliku:  HQH_Test_Ewidencja.rar
 Wielko pliku:  36.43 KB
 Pobierano:  67 raz(y)


_________________
=8-T
Grzegorz Z.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
karolinavb
Site Admin


Doczy: 25 Maj 2005
Posty: 7905

PostWysany: Pon Lut 02, 2015 6:50 pm      Temat postu: Odpowiedz z cytatem Pisownia

Powiedz mi dlaczego otwierasz Recordset z ca tabel i potem FindFirst
Cytat:
"[Ew_M_Material] = " & Me.ID_Material
zamiast od razu tylko dla okrelonego Me.ID_Material ????
Tak czy tak…i tak nie ma gwarancji przy wielodostpie… na tym polu nie ma indeksu unikatowego…

W procedurze SetStatystyki dla tego ID_Material:
Cytat:
.Fields("Ew_M_Przychod").Value = Me.txtPrzychod.Value
potem:
Cytat:
.Fields("Ew_M_Przychod").Value = 0
?????

"Takich" te nie rozumiem:
Cytat:
With rstMaterial
.AddNew
.Fields("Ew_M_Material").Value = .Fields("Ew_M_Material").Value

A efekt jak na obrazku, bo na tym polu jest regua Not Is Null...
Wprowadzanie daty ma format jak na obrazku nie wiem ktry rok.... dzie czy co...



data.png
 Opis:

Pobierz
 Nazwa pliku:  data.png
 Wielko pliku:  5.56 KB
 Pobierano:  79 raz(y)


skutek_kodu.png
 Opis:

Pobierz
 Nazwa pliku:  skutek_kodu.png
 Wielko pliku:  35.55 KB
 Pobierano:  70 raz(y)

Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
elfface



Doczy: 31 Pa 2012
Posty: 176

PostWysany: Pon Lut 02, 2015 11:40 pm  OP    Temat postu: Odpowiedz z cytatem Pisownia

Md i mdz. Otwieram tabel bo chc znale w niej rekordy, ktre zaznaczam w formularzu. W przypadku gdy ich nie ma, chciabym je dopisa do tabeli, a w przypadku gdy s, to edytowa i zmieni dane. Mylaem, e naley uywac FindFirst, eby zawsze przeszukiwa tabel od pierwszego rekordu. Dlatego FindFirst.
Cytat:
zamiast od razu tylko dla okrelonego Me.ID_Material ????

No i wanie z tym mam problemy, by wyszukiwa tylko zaznaczone rekordy (te ktre wida w kwerendzie (K_Material) po zaznaczeniu checkbox'a, dlatego:
Cytat:
"[Ew_M_Material] = " & Me.ID_Material ... + moe where Material_Ewidencja = true?

Ale to, to raczej nie przejdzie, nie?
Pola w tabeli: Ew_M_Suma, _Przychod, _Rozchod to takie jakby pola pomocnicze, bo najwaniejsze jest pole Ew_M_Stan:

Kod:
.Fields("Ew_M_Stan").Value = .Fields("Ew_M_Suma").Value + Me.txtPrzychod.Value - Me.txtRozchod.Value

Po zakoczeniu kodu, te trzy pola powinny mie warto = 0, dlatego na kocu je "zeruj", eby pniej mc znowu robi obliczenia. Wiem, e to moe niejasny sposb na zliczanie, ale innego niestety nie udao mi si wymyle :/ Dlatego te s wymagane, eby unikn sytuacji, w ktrej mona je pomin. Zakadam, e mimo wszystko jest jaki sposb, by bd 3314 pomin z zachowaniem waciwoci "wymagane - tak" w tabeli?
Mj bd, bo powinno by jak sdz:
Kod:
With rstMaterial
         .AddNew
         'MsgBox strKryteriumMaterial
         .Fields("Ew_M_Material").Value = Me.ID_Material.Value

Data to: rr-mm-dd :) ale ju zmieniem na rrrr-mm-dd :)[/quote]
Wrzucam jeszcze raz z niewielkimi zmianami. Pozdrawiam.



HQH_Test_Ewidencja.rar
 Opis:

Pobierz
 Nazwa pliku:  HQH_Test_Ewidencja.rar
 Wielko pliku:  38 KB
 Pobierano:  66 raz(y)


_________________
=8-T
Grzegorz Z.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
karolinavb
Site Admin


Doczy: 25 Maj 2005
Posty: 7905

PostWysany: Sro Lut 04, 2015 8:45 pm      Temat postu: Odpowiedz z cytatem Pisownia

3314 - na polu Ew_M_Przychod jest warunek >=0, skorzystaj z NZ i nie tylko tam…
Przed operacj aktualizacji :
Kod:
If Me.Dirty Then Me.Dirty = False
Jeli korzystasz z FindFirst, Edit i AddNew to po co ten DCount ta sprawd czy masz zaznaczone w formularzu…
I dla kadego zaznaczonego... przy tym projekcie.
Co unikalnie identyfikuje materia w tabeli T_Ewidencja_Material bo nie rozumiem ????
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
elfface



Doczy: 31 Pa 2012
Posty: 176

PostWysany: Nie Lut 08, 2015 12:29 pm  OP    Temat postu: Odpowiedz z cytatem Pisownia

No tak, Nz, dzikuj za podpowied :)
Nie bardzo rozumiem dziaanie dirty w tym przypadku.
Cytat:
Co unikalnie identyfikuje
te nie za bardzo rozumiem o co pytasz? O pole ID_Ew_M, indeks unikatowy? Nie mniej jednak kompletnie nie idzie mi ten kod, wic wymylliem co innego, no i jako dziaa. Zakadam, e nie jest to najlepsze rozwizanie, ale pki co musi by :) Mam prob z problemem w cboMRodzaj_AfterUpdate, ktry pojawia si gdy 2 razy wybieram "Rozchd" lub "Przychd" i dane s wprowadzone. Powinno wtedy nie dziaa, a dziaa :/ Co w stylu
Kod:
If Me.cboMRodzaj.oldValue = Me.cboMRodzaj.Value Then Exit Sub



HQH_Test_Ewidencja.rar
 Opis:

Pobierz
 Nazwa pliku:  HQH_Test_Ewidencja.rar
 Wielko pliku:  52.07 KB
 Pobierano:  78 raz(y)


cbo_powtorzenie_wartosci.png
 Opis:

Pobierz
 Nazwa pliku:  cbo_powtorzenie_wartosci.png
 Wielko pliku:  24.06 KB
 Pobierano:  48 raz(y)


_________________
=8-T
Grzegorz Z.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
karolinavb
Site Admin


Doczy: 25 Maj 2005
Posty: 7905

PostWysany: Nie Lut 08, 2015 4:36 pm      Temat postu: Odpowiedz z cytatem Pisownia

oldValue tylko dla zwizanych kontrolek.

Zapamituj warto na przykad we waciwoci Tag tej kontrolki na zakoczenie procedury zdarzenia AfterUpdate, a sprawdzaj na pocztku.
Po co CreateQueryDef, utwrz kwerendy z parametrami.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
elfface



Doczy: 31 Pa 2012
Posty: 176

PostWysany: Pon Lut 09, 2015 7:22 pm  OP    Temat postu: Odpowiedz z cytatem Pisownia

Czy bd 3021 moe by zwizany z brakiem kodu:
Kod:
Set rstQryEdit = qdfQryEdit.OpenRecordset(dbOpenDynaset)
bezporednio przed:
Kod:
With rstQryEdit
          .MoveFirst
              Do While Not .EOF
                   .Edit
                      .Fields("Ew_M_Suma").Value = 0
                      .Fields("Ew_M_Przychod").Value = 0
                      .Fields("Ew_M_Rozchod").Value = 0
                       .Fields("Material_PR").Value = Null
                       .Fields("Material_Ewidencja").Value = False
                  .Update
                  .MoveNext
              Loop
End With
? Bo jak dodaem w dwch miejscach CheckMaterialSummary(), to zasadniczo dziaa ok :) Tylko zastanawiam si dlaczego musz rst otwiera, skoro go nigdzie nie zamykaem? No albo czego nie jarz. Jak zwykle dziki wielkie za podowied z Tagiem :) Tak co czuem e tak trzeba ;) A CreateQueryDef bo nie bardzo wiem jak stworzy tak kwerend. No chyba, e mwimy o tych, ktre ju s stworzone K_Statystyki_MaterialAdd i K_Statystyki_MaterialEdit.
Pozdrawiam i bior si dalej do roboty, bo analogicznie musz ogarn jeszcze dwie podobne tabele.



err3021.jpg
 Opis:

Pobierz
 Nazwa pliku:  err3021.jpg
 Wielko pliku:  51.45 KB
 Pobierano:  70 raz(y)


_________________
=8-T
Grzegorz Z.
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
karolinavb
Site Admin


Doczy: 25 Maj 2005
Posty: 7905

PostWysany: Pon Lut 09, 2015 9:36 pm      Temat postu: Odpowiedz z cytatem Pisownia

Cytat:
With rstQryEdit
.MoveFirst

Kod:
With rstQryEdit
    If Not (.BOF And .EOF) Then
               .MoveFirst
Nie wiem ile tego masz w tym kodzie...
Sid sobie i narysuj schemat blokowy...
Kwerendy parametryczne byy na forum...
Powrt do gry
Zobacz profil autora Wylij prywatn wiadomo
Wywietl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Gwna -> Bazy danych Wszystkie czasy w strefie CET (Europa)
Id do strony 1, 2, 3, 4, 5  Nastpny
Strona 1 z 5

 
Skocz do:  
Moesz pisa nowe tematy
Moesz odpowiada w tematach
Nie moesz zmienia swoich postw
Nie moesz usuwa swoich postw
Nie moesz gosowa w ankietach
Moesz dodawa zaczniki na tym forum
Moesz pobiera pliki z tego forum




Debug: strone wygenerowano w 0.14710 sekund, zapytan = 13
contact

| Darmowe programy i porady Jelcyna | Tansze zakupy w Helionie | MS Office Blog |