16/05/2012, 15:06
accessman
iyi günler
bir tablomuz var
içinde tarihler ve izlemler vs var
bu tablotu mantıksal olarak kontrol etmemeiz lazım
nasıl mı
bir tarihteki mesela canlı bebek sayısı
daha önce olan bir tarihdeki canlı bebek sayısından az olmamalı
aynı olabilir ama fazla olmamalı
şöyle düşünelim
bir kadının izleminde toplam gebelik sayısı geçen sene 4 ise
bu sene 4 veya daha fazla olmalı
bunu nasıl kontrol edebiliriz
yani tarihe bakacak izlem değerine bakacak
aynı izlem aynı kişi için daha önce daha büyük değer girilmiş mi bakacak
tabiki bunu 500 hastanın toplam 2500 izlemi için yapacak
bir diğer ifadeyle
bir kişi için bir alandaki değer
daha önceki tarihlerde
daha küçük girilmiş mi bakacak
eğer girilmişse hastanın tc nosunu ve ilgili kaydı bir tabloya ekleyecek
bir döngü hastaları tc no ya göre tarayacak
bir döngü izlem tarihlerine göre tarayacak
işlemde önceki veya sonraki izlemdeki değeri karşılaştıracak
bu kodda nerede yanlışlık var
birinci döngüde elde ettiğim ki değeri msgboxda hastanın tc sini veriyor
ama ikinci Sql sorgusunda kriter olarak görmüyor
bul sorgu dizesinde kim değerini nasıl kullanabilirim
bir tablomuz var
içinde tarihler ve izlemler vs var
bu tablotu mantıksal olarak kontrol etmemeiz lazım
nasıl mı
bir tarihteki mesela canlı bebek sayısı
daha önce olan bir tarihdeki canlı bebek sayısından az olmamalı
aynı olabilir ama fazla olmamalı
şöyle düşünelim
bir kadının izleminde toplam gebelik sayısı geçen sene 4 ise
bu sene 4 veya daha fazla olmalı
bunu nasıl kontrol edebiliriz
yani tarihe bakacak izlem değerine bakacak
aynı izlem aynı kişi için daha önce daha büyük değer girilmiş mi bakacak
tabiki bunu 500 hastanın toplam 2500 izlemi için yapacak
bir diğer ifadeyle
bir kişi için bir alandaki değer
daha önceki tarihlerde
daha küçük girilmiş mi bakacak
eğer girilmişse hastanın tc nosunu ve ilgili kaydı bir tabloya ekleyecek
bir döngü hastaları tc no ya göre tarayacak
bir döngü izlem tarihlerine göre tarayacak
işlemde önceki veya sonraki izlemdeki değeri karşılaştıracak
Kod:
Private Sub Komut0_Click()
On Error Resume Next
Dim kim, ne As String
Dim sor, bul As String
Dim rs As New ADODB.Recordset
Dim ds As New ADODB.Recordset
sor = "SELECT kadin_izlem.Kimlikno FROM kadin_izlem ORDER BY kadin_izlem.Kimlikno;"
rs.Open sor, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
rs.MoveFirst
kim = rs.Fields("Kimlikno")
bul = "SELECT kadin_izlem.Kimlikno, kadin_izlem.YapilmaTar, kadin_izlem.CanliDogum FROM kadin_izlem WHERE (((kadin_izlem.Kimlikno)= kim)) ORDER BY kadin_izlem.YapilmaTar;"
ds.Open bul, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
ds.MoveFirst
ne = ds.Fields("Kimlikno")
'rs.Update
ds.Close
rs.Close
End Sub
birinci döngüde elde ettiğim ki değeri msgboxda hastanın tc sini veriyor
ama ikinci Sql sorgusunda kriter olarak görmüyor
bul sorgu dizesinde kim değerini nasıl kullanabilirim