İki Birleşik formu silme

1 2
02/11/2009, 16:11

HAKKI34

Ekteki örnekte iki formu sil yapınca 2. table deki verileri silmiyor..
Yardımcı olursanız sevinirim.. Sil olayında neden 1 tablo silinirken 2. deki silinmiyor...

Şimdiden tşk ediyorum

Forum çoğunlu office 2003 kullanır o yüzden dönüştürüldü. Forum kurallarımızı okuyan herkes de örneklerini önce sıkıştır onar yaparak ( ki sizin örneğinizde 1/3 küçüldü) sonra da sıkıştırarak ekler ( ki sizin örneğinizde 1/40 küçüldü)
02/11/2009, 16:26

ayhan2122

Komut8'in olay yordamına ;
Kod:
Private Sub Komut8_Click()
On Error GoTo Err_Komut25_Click

If MsgBox("Ekrandaki tüm bilgiler silinecek", vbYesNo, "Onaylıyor musunuz ?") = vbYes Then
    DoCmd.RunCommand acCmdSelectRecord
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.RunSQL "DELETE Tablo2.Kimlik, Tablo2.[No] FROM Tablo2 WHERE (((Tablo2.[No])=[Forms]![Veri]![No]));"
Else
End If

Exit_Komut25_Click:
    Exit Sub

Err_Komut25_Click:
    MsgBox Err.Description
    Resume Exit_Komut25_Click
End Sub
02/11/2009, 17:02

HAKKI34

(02/11/2009, 16:26)ayhan2122 yazdı: Komut8'in olay yordamına ;
Kod:
Private Sub Komut8_Click()
On Error GoTo Err_Komut25_Click

If MsgBox("Ekrandaki tüm bilgiler silinecek", vbYesNo, "Onaylıyor musunuz ?") = vbYes Then
    DoCmd.RunCommand acCmdSelectRecord
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.RunSQL "DELETE Tablo2.Kimlik, Tablo2.[No] FROM Tablo2 WHERE (((Tablo2.[No])=[Forms]![Veri]![No]));"
Else
End If

Exit_Komut25_Click:
    Exit Sub

Err_Komut25_Click:
    MsgBox Err.Description
    Resume Exit_Komut25_Click
End Sub

Veriyi sıkıştırmadığım için özür dilerim..Bu örnek çalışmadı malesef..1 tablo bilgileri silinirken 2. tablo silinmedi...
Yukarıdaki örneğin çözümününü yaparsanız çok memnun olacağım..
Silme işlemi malesef 1 tablo verilerine de işlerken 2. Tabloda verileri kalıyor..
İlişkilerde her hangi bir sorun yok...Tek sorun silme işleminde neden 2. tablo verilerini silmiyor....Şimdiden tşkler..Acaba silme tersten mi işletilmeli..?
Walla oldu...Tersten düşünmek gerekiyormuş..

Private Sub Komut8_Click()
On Error GoTo Err_Komut8_Click

If MsgBox("Ekrandaki tüm bilgiler silinecek", vbYesNo, "Onaylıyor musunuz ?") = vbYes Then

DoCmd.RunSQL "DELETE Tablo2.Kimlik, Tablo2.[No] FROM Tablo2 WHERE (((Tablo2.[No])=[Forms]![Veri]![No]));"
DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdDeleteRecord
Else
End If

Exit_Komut8_Click:
Exit Sub

Err_Komut8_Click:
MsgBox Err.Description
Resume Exit_Komut8_Click
End Sub
02/11/2009, 17:20

Taruz

Merhaba..

Ayhan Bey'in eklediği silme sorgusunu şart satırından sonra ilk başa alınız..

Kod:
............
DoCmd.RunSQL ............
DoCmd.RunCommand .......
DoCmd.RunCommand ..........

Aslında tüm bunlara gerek de yok bence.. İlişkiler penceresinden iki tablo arasındaki bağı tüm seçenekleri işaretleyerek yaparsanız tablo1 deki veri silindiğinde (ya da güncellendiğinde) zaten diğer tablodaki bağlı kayıtlar da silinecektir..
02/11/2009, 18:01

HAKKI34

Slm.
Bu konuyu örneğim üzerinde yaparsanız çok memnun olurum..
Benim için çok önemli...
Şimdiden tşk ederim..
02/11/2009, 21:20

mehmetdemiral

İstediğiniz örnek ekte. İlk gönderdiğiniz örnek üzerinde sadece tablo ilişkilerini düzenledim.
1 2