Arkadaşlar ekleyeceğim programda ihale iş türüne göre, fiyatı en az veren firmanın;
ismini, adresini ve verdiği tutarı "tbl_kim" deki ilgili kısımlara nasıl getirebiliriz?
Satırdaki Max Değeri Ve Firmayı Bulmak
Merhaba, bu tür sorularda, tbl_ihtiyac tablosunda "asdasd" isminde firma olmamalı ve firma1,firma2 ve firma3 alanlarının tamamı dolu olmalı. "asdasd" diye bir firma firmalar tablosunda yok.
Tamam sayın hocam. Verileri güncelledim.
İki adet sorunum var.
Birincisi: Her ihtiyaç için max. 3 firma seçip atamalıyım. Bu işlemi ürün bazında değilde iş bazında yapmak istiyorum.
İkincisi: Raporda kullanmak üzere; İş konusu bazında en az fiyat teklifi veren firmanın: Verdiği fiyat, Adresi ve Firma adı bilgilerini Tbl_kimo ya nasıl aktarabilirim. Buradan Dlookup la almayı senaryo ettim.
İki adet sorunum var.
Birincisi: Her ihtiyaç için max. 3 firma seçip atamalıyım. Bu işlemi ürün bazında değilde iş bazında yapmak istiyorum.
İkincisi: Raporda kullanmak üzere; İş konusu bazında en az fiyat teklifi veren firmanın: Verdiği fiyat, Adresi ve Firma adı bilgilerini Tbl_kimo ya nasıl aktarabilirim. Buradan Dlookup la almayı senaryo ettim.
Listefirma liste kutusunun çift tıklandığında olayındaki kodu aşağıdaki ile değiştir.
Koddaki listefirmaHata: kısmında hata var, buraya dokunmadım.
2. sorunuz için,
Kodu ihaleid=1 için en az fiyat teklifi veren firmayı gösterir, istediğiniz bu ise ihaleid düzenlemesi yapılabilir.
On Error GoTo ListefirmaHata
If IsNull(Me.txtsecim) Or Me.txtsecim = 0 Then
Me.txtsecim = 1
Else
Me.txtsecim = Me.txtsecim + 1
End If
If txtsecim = 4 Then
Me.txtsecim = 1
End If
If IsNull(Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim)) Or Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = "" Then
If MsgBox("ihaleye katılan " & txtsecim & ". firma, " & Me.listefirma.Column(1) & " isimli firma olarak güncellensin mi?", vbYesNo) = vbYes Then
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
Me.frm_ihtiyac.SetFocus
DoCmd.GoToRecord , , acFirst
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
For x = 1 To Forms![frm_malzemeler]![frm_ihtiyac].Form.RecordsetClone.RecordCount - 1
DoCmd.GoToRecord , , acNext
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
Next x
DoCmd.RunCommand acCmdSaveRecord
End If
Else
If MsgBox("ihaleye katılan " & txtsecim & ". firma olan " & Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) & " isimli firma, " & Me.listefirma.Column(1) & " isimli firma olarak değiştirilsin mi?", vbYesNo) = vbYes Then
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
Me.frm_ihtiyac.SetFocus
DoCmd.GoToRecord , , acFirst
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
For x = 1 To Forms![frm_malzemeler]![frm_ihtiyac].Form.RecordsetClone.RecordCount - 1
DoCmd.GoToRecord , , acNext
Forms![frm_malzemeler]![frm_ihtiyac].Form!("txtf" & txtsecim) = Me.listefirma.Column(1)
Next x
DoCmd.RunCommand acCmdSaveRecord
End If
End If
Forms![frm_malzemeler]![frm_ihtiyac].Requery
ListefirmaCikis:
Exit Sub
ListefirmaHata:
MsgBox ("Firma Seçimleri Tamamlandı")
Resume ListefirmaCikis
Forms![frm_malzemeler]![frm_ihtiyac].Requery
Koddaki listefirmaHata: kısmında hata var, buraya dokunmadım.
2. sorunuz için,
SELECT TOP 1 GSorgu.ihale_id, firma, teklif, firma_adresi, firma_yetkilisi, firma_telefonu
FROM (SELECT ihale_id, firma1 AS firma, Sum([fr1_toplam]) AS teklif
FROM tbl_ihtiyac GROUP BY ihale_id, firma1 HAVING (((ihale_id)=1))
UNION SELECT ihale_id, firma2 AS firma, Sum([fr2_toplam]) AS teklif
FROM tbl_ihtiyac GROUP BY ihale_id, firma2 HAVING (((ihale_id)=1))
UNION SELECT ihale_id, firma3 AS firma, Sum([fr3_toplam]) AS teklif
FROM tbl_ihtiyac GROUP BY ihale_id, firma3
HAVING (((ihale_id)=1))) AS GSorgu INNER JOIN tbl_firmalar ON GSorgu.firma = tbl_firmalar.firma_adi ORDER BY GSorgu.teklif;
Kodu ihaleid=1 için en az fiyat teklifi veren firmayı gösterir, istediğiniz bu ise ihaleid düzenlemesi yapılabilir.
Evet. Bir açık var. Oda aynı firmayı kullanıcı sürekli çift tıklarsa 3 firmaya da aynısı atıyor. Mantiken seçilen bir firmanın ikinci bir firma olarak seçilmemesi gerekiyor.
Konuyu Okuyanlar: 1 Ziyaretçi