Merhaba Arkadaşlar
Eklediğim uygulamada PersonelBilgileri Formunda seçili müşteriye ait Genel Rapor ve İki Tarih Arası rapor almak istiyorum.
Bu konuda yardımlarınıza ihtiyacım var. Yardımlarınız için şimdiden teşekkürler.
Personel tablosundaki S_No alanında, personele atanan sayı kaydediliyor. Bu sayı, PersonelBilgileri Tablosundaki Personel** alanına Ali Demir için 1, Fatma Duman için 2 olarak kaydediliyor.
Yani Personel tablosundaki S_No alanı ile Personel Bilgileri tablosundaki Personel** alanı ilişkili. Her iki alanda da personele ait sayı var.
Siz Personel tablosundaki Personel** alanı ile PersonelBilgileri tablosundaki S. NO: alanını sorguda ilişkilendirirseniz sorgu sonuç vermez.
Ayrıca Personel tablosundaki alan S_No değil personel_id olmalı, PersonelBilgileri tablosundaki Personel** alanı da personel_id olmalı ki karışıklık olmasın.
Hocam belirtiğiniz gibi Personel tablosundaki S_No Personel_id olarak değiştirdim. PersonelBilgileri tablosundaki Personel** de Personel_id olarak değiştirdim. Personel Formundan PersonelBilgileri Formuna geçiş yapmak için Komut185 tıkladığımızda Form_PersonelBilgileri.mtn_S_No = Form_Personel.Personel_id hata veriyor.
Tablo ilişkilendirmelerini de belirtiğiniz şekilde değiştirdim. Verileri tablolara aktarmiyor.
Uygulamanızda "Form_Personel" adında form var mı?
Form_PersonelBilgileri.mtn_S_No = Form_Personel.Personel_id
kodu hatalı.
Forms!PersonelBilgileri.mtn_S_No = Forms!Personel.Personel_id şeklinde olması gerekiyor,
Diğer husus, s_no alanını Personel_id olarak değiştirmiş olabilirsiniz, ancak Personel formunuzda Personel_id adında metin kutusu var mı? yok ise niye Form_Personel.Personel_id yazdınız.
Tablodaki alanı veya formdaki denetimi koda doğru tanıtmazsanız çalışmaz.
Forms!Personel.Personel_id şeklindeki kod, Personel formundaki Personel_id alanını temsil eder, sizin formunuzda Personel_id adında denetim yok. Denetim kaynağı Personel_id olan S_No_txt adında denetim var.
Personel formundaki listee isimli liste kutusunun güncelleştirme sonrasında olayında
Me.RecordsetClone.FindFirst "[S_No]=" & CLng(Nz(Me.Listee.Column(0), 0))
şeklinde kod var. Tablodaki S_No'yu Personel_id olarak değiştirdiyseniz bu kodu da değiştirmelisiniz.
Tablodaki alan ile ilişkili
Dsum ,
Dlookup kodu kullandıysanız ve Personel** alanını Personel_id olarak değiştirdiyseniz
=DSum("[VerilenTutar]";"PersonelBilgileri";"[Personel**] = " & [mtn_S_No])
Bu koddaki Personel** yerine Personel_id yazmalısınız.
Formda herhangi bir olay yordamını çağırdığınızda ve hata verdiğinde hatanın sebebini yazar. Sizin bu hata iletisinden hatayı görebiliyor olmanız gerekiyor.
Çok Teşekkürler Hocam Ellerinize sağlık.
Hocam konuyu taşıyabilirsiniz. Saygılarımla sağlıklı günler diliyorum.
Uygulamanızdaki gördüğüm hataları düzelttim. Önceki mesajımda belirttiğim gibi, on error resume next benzeri kod yok ise, hata durumunda hatanın sebebini yazar, gerekli düzeltmeyi yaparsınız.