Uretim yapılınca ürüne ait reçeteden stok düşümü

1 2
18/07/2016, 17:07

sLy_FoX

Merhaba arkadaşlar,
Öncelikle ilk konum ve mesajıma soru sorarak başlamak istemezdim ama kusuruma bakmayın lütfen.

Eklediğim veri tabanında 4 tablo var (Hammaddeler, Reçeteler, Ürünler, Üretim).

Benim yapmak istediğim işlem şu şekilde;
Üretim için bir form oluşturduğumda, 
Örneğin; 5 kg Ayran üretmek istiyorum ve 5 kg ayran üretimi girişini yaptığımda kaydet butonuna bir olay yordamı eklemek istiyorum, 

Olay yordamında ki mantık Oluşturacağım bu formda ki ürünü "Reçeteler" tablosundan bulacak ve içerisinde geçen hammaddeleri, "Hammaddeler" Tablosunda ki Hammadde Stok Miktarından otomatik olarak düşecek ve aynı zamanda "Ürünler" tablosunda ki ürünlerin stok miktarini otomatik olarak arttıracak. 

Bu arada Reçeteler tablosunda ki hammadde kullanım oranları 1 kg lik(yani formüller gram cinsinden) olarak olduğundan üretim yapılacak miktar ile hammadde kullanım oranları çarpılması gerekmekte.
Yani Ayran ürünü için formülasyon;

Ayran A 350,00
Ayran C 50,00
Ayran F 150,00
Ayran E 450,00
Toplam : 1000,00


UPDATE ile ben"Urunler" tablomda ki ürün stok miktarini arttırmayı başardım fakat bir türlü hammaddeler için ürün adından yola çıkarak reçetelerde ki kullanım miktarlarını kullarak hammadde stok düşümünü gerçekleştiremedim.


Bu konuyla ilgili yardımlarınızı bekliyorum nasıl çözebilirim bu durumu?

Şimdiden harcadığınız emeğinizi ve zamanınızı helal edin, saygılar
19/07/2016, 23:10

ozanakkaya

Merhaba,
eklediğiniz örnekte form bulunmamaktadır. Örnek uygulamanıza form ve oluşturduğunuz sorguyu eklerseniz yardımcı olmaya çalışırız. Bu şekilde yardımcı olunması zor.
20/07/2016, 00:50

sLy_FoX

(19/07/2016, 23:10)ozanakkaya yazdı: Merhaba,
eklediğiniz örnekte form bulunmamaktadır. Örnek uygulamanıza form ve oluşturduğunuz sorguyu eklerseniz yardımcı olmaya çalışırız. Bu şekilde yardımcı olunması zor.

Yapmaya çalıştığım şey ekte ki gibi ama daha kapsamlısı hocam,
mesela üretim girdiğimde URETİLEN formu üzerinden üretimi yapılan ürünün stoğu artıyor

 ben bunu birde üretimi yapılan ürünün formülünü reçeteden çekip hammaddelerden üretilen kadar düşmek istiyorum. olayım bundan ibaret aslında.
20/07/2016, 01:52

ozanakkaya

Merhaba,

forma buton ekle, butonun tıklandığında olayına aşağıdaki kodu ekle.

DoCmd.SetWarnings False
'stoktan düş

If MsgBox("Üretilen Ürün Stoktan Düşülsün mü?", vbYesNo) = vbYes Then

DoCmd.RunSQL "UPDATE (Formuller INNER JOIN Urunler ON Formuller.Urun_adi = Urunler.Urun_adi) INNER JOIN Hammaddeler ON Formuller.Hammadde_adi = Hammaddeler.Hammadde_adi SET Hammaddeler.Hammadde_StkMik = [Hammadde_StkMik]-([Hammadde_Kulmik]*[Formlar]![Uretilen]![Uretim_Miktari]) WHERE (((Urunler.UID)=[Formlar]![Uretilen]![Urun_adi]));"

End If

'üretilene ekle
If MsgBox("Üretilen Ürün Üretime Eklensin mi?", vbYesNo) = vbYes Then
DoCmd.RunSQL "UPDATE Urunler SET Urunler.Urun_StkMik = [Urun_StkMik]+Val([Formlar]![Uretilen]![Uretim_Miktari]) WHERE (((Urunler.UID)=[Formlar]![Uretilen]![Urun_adi]));"
End If
DoCmd.SetWarnings True
20/07/2016, 11:11

sLy_FoX

(20/07/2016, 01:52)ozanakkaya yazdı: Merhaba,

forma buton ekle, butonun tıklandığında olayına aşağıdaki kodu ekle.

DoCmd.SetWarnings False
'stoktan düş

If MsgBox("Üretilen Ürün Stoktan Düşülsün mü?", vbYesNo) = vbYes Then

DoCmd.RunSQL "UPDATE (Formuller INNER JOIN Urunler ON Formuller.Urun_adi = Urunler.Urun_adi) INNER JOIN Hammaddeler ON Formuller.Hammadde_adi = Hammaddeler.Hammadde_adi SET Hammaddeler.Hammadde_StkMik = [Hammadde_StkMik]-([Hammadde_Kulmik]*[Formlar]![Uretilen]![Uretim_Miktari]) WHERE (((Urunler.UID)=[Formlar]![Uretilen]![Urun_adi]));"

End If

'üretilene ekle
If MsgBox("Üretilen Ürün Üretime Eklensin mi?", vbYesNo) = vbYes Then
DoCmd.RunSQL "UPDATE Urunler SET Urunler.Urun_StkMik = [Urun_StkMik]+Val([Formlar]![Uretilen]![Uretim_Miktari]) WHERE (((Urunler.UID)=[Formlar]![Uretilen]![Urun_adi]));"
End If
DoCmd.SetWarnings True

Hocam Allah razı olsun çok sağolun tam olarak yapmak istediğimi yapmışsınız çok sağolun
15/10/2016, 12:42

kadirdursun

Sayın sLy_FoX 

Yukarıdaki kodu uyguladığınız örneği ekleyebilir misiniz?
1 2