Formlar Arası İlişki Kurmak

1 2
30/10/2016, 01:35

mmert06

arkadaşlar mrb. ekteki dosyada "Malzeme Tanımla" formuna "Tedarikler" tablosu arasında bir-çok ilişki kurmak ve "Proforma" formundaki "Stok No" alanına stok numarasını yazdığımda "Malzeme Adı" ve "Birimi" alanlarının otomatik olarak "Tedarikler" tablosundan gelmesini istiyorum. Daha önce tedarik edilmemiş bir malzemeyi "Malzeme Tanımla" formu ile tanımlamak ve böylece "Proforma" formuna eklemek istiyorum. bu konuda yardımcı olabilirseniz sevinirim iyi çalışmalar
30/10/2016, 11:32

ozanakkaya

Merhaba,
Malzeme isimli formdan veri girişi yaparak Malzemeler tablosuna veri ekliyorsunuz. 

Tedarik tablosuna veriyi hangi form ile ekliyorsunuz?
30/10/2016, 11:53

mmert06

Ozan bey. "Tedarikler"tablosu için form oluşturup "Malzeme Tanımla" formunun alt formu olacak şekilde ayarlamak istiyorum.Çünkü her bir malzeme için bir den çok tedarik kaydı olacak. Malzeme tanımlanırken ayni form içerisindeki alt forma tedarik kaydı girişi de yapilabilecek boylece bu alt form sürekli form olabilir.
30/10/2016, 12:29

ozanakkaya

Bahsettiğiniz işleme göre, tedarikler tablosunda aynı stok kodlu birden fazla kayıt olacak. 
Bu durumda proforma formunda stok kodu yazdığınızda malzeme adı ve birimi alanına hangi veri aktarılacak?
Yoksa sorunuzu ben mi yanlış anladım?
30/10/2016, 13:17

mmert06

Öncelikle amacım program yaptırmak değil gerçekten bu konuda takıldığım için sormaktır. Zaten bu formun amacı da soru sorarak öğrenmektir diye düşünüyorum. ozan bey size basitçe söyle anlatayım.:
1)Her bir malzemenin kendine ait ayrı bir stok kodu, adı, birimi ve teknik şartnamesi var. Yani "stok kodu" malzeme adı" ve "birimi" ve "teknik şartnamesi" alanları her bir malzeme için sabit
Örnek;
stok no                  malzeme adı                        birimi                   teknik şartnamesi
4213678942136      İÇ CEPHE BOYASI                kg                       Beyaz renkli, TSE'li mat iç cephe boyası olacaktır.

5126897456231      RULO FIRÇA                        adet                    Plastik saplı, iplik rulo olacaktır.
Malzemeler ait bu özellikler "Malzeme Tanımlama" formu aracılığı ile "Malzemeler" tablosuna kaydedilecektir.
2)Her bir malzemenin, her sene değişik firmalardan alımı yapılmakta yani tedarik edilmektedir. Yani bir malzemenin birden çok firmadan alımı yapılmaktadır. Örnek;
stok no                  malzeme adı                        tedarik tarihi       tedarik edilen firma     tedarik birim fiyatı                                        
4213678942136      İÇ CEPHE BOYASI                11.10.2013         ABC Ltd.Şti.                3,00 TL
4213678942136      İÇ CEPHE BOYASI                05.07.2014         DEF Ltd.Şti.                3,75 TL                                 
5126897456231      RULO FIRÇA                        08.09.2013         CEZ Ltd.Şti.                5,00 TL                                           
5126897456231      RULO FIRÇA                        06.05.2015         LMK Ltd.Şti.                5,50 TL
Malzemelere ait bu tedarik kayıtları "Malzeme Tanımlama" formuna eklenecek bir alt form yardımı ile "Tedarikler" tablosuna kaydedilecektir. Yani sizin de dediğiniz gibi "Tedarikler" tablosunda her bir stok numarası için birden fazla kayıt olacaktır.
3) "Proforma" formundaki sürekli formda yer alan "stok no" alanına stok numarasını yazdığımda ve enter tuşuna bastığımda "malzeme adı" ve "birimi" alanlarına "Malzemeler" tablosundan otomatik olarak verilerin gelmesini istiyorum. Örneğin;
Proforma formunda "STOK NO" alanına 4213678942136 yazdığımda ve enter tuşuna bastığımda "MALZEME ADI" alanına "İÇ CEPHE BOYASI" ve "BİRİMİ" alanına "kg" verilerinin otomatik olarak "Malzemeler" tablosundan gelmesini istiyorum.
4)Proforma formundaki "Birim Fiyat" ve "Toplam Fiyat" alanları boş olacaktır. Bu alanlara fiyat teklifi alacağımız firmalar kendileri el yazısı ile dolduracaktır.
30/10/2016, 15:51

ozanakkaya

(30/10/2016, 01:35)mmert06 yazdı: "Proforma" formundaki "Stok No" alanına stok numarasını yazdığımda "Malzeme Adı" ve "Birimi" alanlarının otomatik olarak "Tedarikler" tablosundan gelmesini istiyorum.

(30/10/2016, 13:17)mmert06 yazdı: Proforma formunda "STOK NO" alanına 4213678942136 yazdığımda ve enter tuşuna bastığımda "MALZEME ADI" alanına "İÇ CEPHE BOYASI" ve "BİRİMİ" alanına "kg" verilerinin otomatik olarak "Malzemeler" tablosundan gelmesini istiyorum.


Merhaba, Mevzuyu netleştirmek adına sorunuza karşılık soru soruyorum. Sonuçta emek ve zaman harcanıp problemi çözmeye çalışıyoruz. İlk mesajınızda Tedarikler tablosu, son mesajınızda da Malzemeler tablosu yazmışsınız. 

Ayrıca, uygulamanızın başlangıcında iken Yapılmaması Gereken Ölümcül Hatalar

"Malzeme Tanımla" adında form ismi olmamalı, formun ismi "frm_malzeme_tanimla" şeklinde olmalı,

İstediğiniz işlem için Dlookup kodu kullanıldı.

Dim VarMi As Integer

VarMi = Nz(DLookup("[malzeme_id]", "Malzemeler", "[stok_no]='" & Me.stok_no & "'"), 0)

If VarMi <> 0 Then

   Me.malzeme_adi = Dlookup ("[malzeme_adi]", "Malzemeler", "[stok_no]='" & Me.stok_no & "'")
   Me.Birimi = Dlookup ("[Birimi]", "Malzemeler", "[stok_no]='" & Me.stok_no & "'")

End If

Uygulamanızın düzenlenmiş hali ektedir.  İnceleyip olumlu/olumsuz bildirimde bulununuz.
1 2