Form ve Alt Formlar Arası Veri Aktarımı

1 2
03/07/2015, 14:19

Akifff

Arkadaşlar yaptığım sistemde aşağıda resimde gösterdiğim işlevi yapmak istiorum. Form veri aktarma kodlarını denedim fakat bi yerde hata yapıyorum sanırım formu bulduramıyorum. Kodları nota dönüştürdüm. Yardımlarınızı bekliyorum. Saygılar.




06/07/2015, 11:55

Akifff

Bir yardım edecek yok mu
06/07/2015, 12:45

POWER

İstediğiniz elbette mümkün ama sorununuz anlaşılmıyor.

Biraz detay verip tekrar anlatınız...
06/07/2015, 12:55

ozanakkaya

Ben sorudan anladığım kadarıyla uygulamayı düzenledim. Butona tıklayınca forma ve alt forma veriyi aktarıyor. 

Ancak servis giriş tablosundan dolayı aktarılan formda personel ismi görünmüyor. Tabloda personel alanının sayı yapılması, bu alana da personel tablosundaki personel no alanındaki sayının aktarılması gerekli.
06/07/2015, 13:53

Akifff

Ozanhocam çok sağolun personel isim kısmını anladım sanırım o kısmını ben hallederim, siz büyük kısmını yapmışsınız ellerinize sağlık
09/07/2015, 12:31

Akifff

Hocam forma yeni konu açmak istemedim şimdi boş yere yer tutmasın aynı sistemle alakalı ufak bir sorunum var. Sizin yol gösterdiğiniz kodu aşağıdaki şekilde düzenledim fakat BildirimServisAktarma formunda aktar dediğim zaman Parça Adı parametresini istiyor. Sanırım DLook kodunda hata yaptım. İstediğim aktarmayı yaptıktan sonra Servis Giriş Formunda altformda parça adı kısmına parçanın adı gelmeli. Yardımcı olursanız çok sevinirim. Teşekkürler.

Kod:
Private Sub Komut14_Click()

If MsgBox("Bildirimi Servis Formuna aktarmak istiyor musunuz?", vbYesNo, "Aktarım Onay") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO ServisGiris ( BildirimID, [Servis Tarihi], Şantiye, Perosnel, MakinaID ) SELECT ArızaBildirimAnaTablo.[Bildirim ID], ArızaBildirimAnaTablo.[Bildirim Tarihi], ArızaBildirimAnaTablo.Şantiye, ArızaBildirimAnaTablo.Personel, ArızaBildirimAnaTablo.[Makina ID] FROM ArızaBildirimAnaTablo WHERE (((ArızaBildirimAnaTablo.[Bildirim ID])=[Formlar]![BildirimServisAktarma]![Liste0]));"
DoCmd.RunSQL "INSERT INTO ServisGirisAltForm ( [Bildirim ID], [Servis ID], [Parça Adı], [Bildirim Açıklaması], [Durumu] ) SELECT ArızaBildirimAltForm2.[Bildirim ID], DLookUp('[ServisID]','ServisGiris','[BildirimID]=' & [Bildirim ID]) AS X, DLookUp('[Makina Tam Adı]','YedekMakina','[Parça ID]=' & [Parça Adı]) AS Y, ArızaBildirimAltForm2.Açıklama, ArızaBildirimAltForm2.Durumu FROM ArızaBildirimAltForm2 WHERE (((ArızaBildirimAltForm2.[Bildirim ID])=[Formlar]![BildirimServisAktarma]![Liste0]));"
DoCmd.SetWarnings True
If MsgBox("Bildirim Servis Formuna aktarıldı, Bildirim silinsin mi?", vbYesNo, "Silme Onayı") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunSQL "Delete ArızaBildirimAnaTablo.[Bildirim ID] FROM ArızaBildirimAnaTablo WHERE (((ArızaBildirimAnaTablo.[Bildirim ID])=[Formlar]![BildirimServisAktarma]![Liste0]));"
DoCmd.SetWarnings True
End If

If MsgBox("Aktarım ve silme işlemi yapıldı Form açılsın mı?", vbYesNo, "Form Aç") = vbYes Then
DoCmd.OpenForm "ServisGirisFormu", , , "[BildirimID]=" & [Liste0]

End If
Me.Liste0.Requery
End If
1 2