Skip to main content

AccessTr.neT


Veri Görünümündeki Alt Formda kaydı otomatik çoğaltmak

Veri Görünümündeki Alt Formda kaydı otomatik çoğaltmak

Çözüldü #1
İyi günler. Access ustası arkadaşlara bir sorum oluacak. Bir Forma bağlı bir alt form var ve alt form veri sayfası görünümünde.Üst Forma bir Otomatik Alan var ve bu alan Alt formda tekrarlayan bir alan ile ilişkili. Altform Veri Sayfası görünümünde. Benim istediğim şey, son kayıt satırından yeni kayda geçmek için aşağı okuna bastığımda (veya enterla) yeni kayıt satırına geldiğimde üstteki satırı (kaydı) alta aynen kopyalaması ve işlem tarihini 1 artırması. Örn. Üstteki satırın Tarihi 14.07.2009 ise alttaki satıra 15.07.2009 olarak kopyalaması. Yardımcı olacak arkadaşlara şimdiden teşekkürler.
Cevapla
Çözüldü #2
nacizane bir çözümü formun geçerli olduğu olay yordamına aşağıdaki kodları yazarsan çalışacaktır sanırım Img-grin denemesini yapmadım.
bir başka yontem yeni kayıt olduğunu sorgulayarak enson kaydı tekrar ekleyen bir ekleme sorgusu olabilir. tabi örnek uygulama olursa daha kolay cevap alırsın.

Private Sub Form_Current()
' her harekette kaydı seç ve copyala
DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdCopy
'form yeni kayıtta ise secilip kopyalanan kaydı yapıştır.
If Me.NewRecord Then
DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdPaste
End If
End Sub
Cevapla
Çözüldü #3
İlginize teşekkürler ama malesef olmadı.
Cevapla
Çözüldü #4
sn access70, lütfen örneğinizi ekleyiniz, örneğiniz üzerinden yapmaya çalışalım.
Cevapla
Çözüldü #5
Tarih Alanı Çift tıklandığında çalışacak bir olay yaptım.Gocebe arkadaşınkine benzer bir şekilde :
Private Sub YolcTarihi_DblClick(Cancel As Integer)
DoCmd.GoToRecord , , acLast
DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdCopy
DoCmd.GoToRecord , "", acNewRec
DoCmd.RunCommand acCmdPaste
End Sub
Bu kod benim istediğim kopyalamayı yapıyor. Fakat ben yeni kayıtta [YolcTarihi] alanın son kayıttaki tarihten 1 gün sonrasını yazmasını istiyorum. Birde bu kodu aşağı ok tuşuna basarak nasıl çalıştırabilirim?
Tabi bir de yeni kayıtta hangi alanın kopyalanıp hangi alanların kopyalanmayacağı da belirlenebiliyordur heralde.Benim yukarıda yazdığım kodda komple kaydı kopyalayıp yeni kayda yapıştırıyor.
Son Düzenleme: 14/07/2009, 19:55, Düzenleyen: Access70.
Cevapla
Çözüldü #6
Sayın Access70
Bir örnek ekleseydiniz çoktan yapmıştık. Ama siz ısrarla örnek eklememek için direniyorsunuz. Oysa sizin önünüzde bir çalışma var, deneyip deneyip yazıyorsunuz, bizden de gökyüzündeki yıldızlara bakıp hayal kurmamızı istiyorsunuzImg-grin) Sizin yapmış olduğunuz örnek biz de de olsa, "bak burda sayı yapmışsın, olmaz canım kardeşim, burası metin olmalıydı" falan desek güzel olmaz mı?

Sorduğunuz soru oldukça basit bir çözüme sahip.

1- VBKEy ile istenen tuşa istenen olay yazılabilir. Bu açıdan alt ok tuşuna istediğiniz şeyi yaptırabilirsiniz ama hiç tavsiye etmem. Access'te işler öyle yürümüyor. Alt satıra geçildiğinde değil de mesela bir butona bu işi yaptırmak daha mantıklı olurdu.

2- Var olan tarihi ve diğer bilgileri aynen almak zorunda değilsiniz. Alan değerlerini tek tek değişkenlere atayarak buton basıldığında yeni kayda yapıştırabilirsiniz. Bunun için basit olarak dim ile değişken açma ve açılan değişkene istenen değeri atama, sonra da değişken değeriyle oymayıp metin kutusundaki yeni kayda gönderme.

3- Tarihsel değerlere ekleme yapmak için genelde +1 kullanılır ama ben

YeniTarih=DateAdd("d",EklenecekSure,ilkTarih)

komutunu öneririm. Daha doğru sonuçlar verir. En azından artık yıllarda Şubat sorunsalı başınıza dert açmaz Img-grin)

Ama ille de örnek dememiz bunları bilmeyen birinin örnek görmeden yapamamasından kaynaklanıyor. Size pasta vereceğiz ama boş tabağı da bizim vermemizi beklemeyin lütfen..
İnadına, ille de Accesstr.net...
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task