İgi ve yardımlarınız için teşekkür ederim.. Sledgeab hocamın yaptığı şekliyle oldu gibi ancak küçük bir ayrıntı kaldı.. Bu sorgu ile sadece form ve sorguda istediğim gibi sıralamayı yapıyor ama tabloda gerekli güncellemeyi yapmıyor. tablodaki kayıtlarda silinmiş olan kaydın nıra nosunu yine atlıyor..mesela sıra no 3 deki kaydı sildiğim zaman 1,2,4,5 şeklinde kalıyor..tabloyuda güncelletebilirmiyiz? sıra numarasını =DMax("[Sıra No]";"Pckasa")+1 ile yaptırdığım için tabloyu güncelleyemediğim zaman yeni kayıt dediğimde en son kayıt numarasının +1 ini veriyor.. aradan silinen kayıt numarası atladığı içinde yanlış numara vermiş oluyor..
Sn perisanoglu;
SıraNO'yu anladığım kadarıyla tablonuzda göstermek istiyorsunuz. Bu yanlıştır. Her bir kaydın kimliğini "Id" alanında belirtmişsiniz. Tekrar bir id gibi SıraNO alanı gereksiz ve karıştırıcıdır.
Ama her zaman 1,2,3,... diye sıralı durmasını istiyorsanız bunu sorguda yapmalısınız. Tabloda olmamalı.
Kayıt eklerken Id en son hangi sayıda idiyse Id'e +1 ekleyerek devam etmesi doğru olur.
Örneğin bir listede herzaman 1,2,3,.... diye sıralı olarak görünmesini isterseniz kaydı sildikten veya yeni kayıt ekledikten sonra listeyi requery yapın ( Liste0.requery ) Requery komutu ile listeniz otomatik olarak yeniden sıralanır.
Yoksa Id:1,2,3,4,5,6,7,8 olan 8 kayıttan 3 olanı silip, sonra yeni kayıt ekleyince bu yeni kaydın ( Id=9 olacak ve ) SıraNO=3 olsun derseniz bu yanlış bir yol olur.
(05/02/2012, 16:21)ayhan2122 yazdı: Sn perisanoglu;
SıraNO'yu anladığım kadarıyla tablonuzda göstermek istiyorsunuz. Bu yanlıştır. Her bir kaydın kimliğini "Id" alanında belirtmişsiniz. Tekrar bir id gibi SıraNO alanı gereksiz ve karıştırıcıdır.
Ama her zaman 1,2,3,... diye sıralı durmasını istiyorsanız bunu sorguda yapmalısınız. Tabloda olmamalı.
Kayıt eklerken Id en son hangi sayıda idiyse Id'e +1 ekleyerek devam etmesi doğru olur.
Örneğin bir listede herzaman 1,2,3,.... diye sıralı olarak görünmesini isterseniz kaydı sildikten veya yeni kayıt ekledikten sonra listeyi requery yapın ( Liste0.requery ) Requery komutu ile listeniz otomatik olarak yeniden sıralanır.
Yoksa Id:1,2,3,4,5,6,7,8 olan 8 kayıttan 3 olanı silip, sonra yeni kayıt ekleyince bu yeni kaydın ( Id=9 olacak ve ) SıraNO=3 olsun derseniz bu yanlış bir yol olur.
ilginiz için teşekkür ederim sayın ayhan2122.. ben tam olarak ne istediğimi anlatamadım sanırım..bundan dolayıda istediğim yardımı alamadım.
Saygılar iyi çalışmalar...
For i = 1 To KayitSayisi
Me.[Sıra No] = KayitSayisi + i
DoCmd.GoToRecord , , acNext
Next i
DoCmd.GoToRecord , , acFirst
For i = 1 To KayitSayisi
Me.[Sıra No] = i
DoCmd.GoToRecord , , acNext
Next i