Skip to main content

AccessTr.neT


Onay Kutusunda Seçimlerin Temizlenmesi

Onay Kutusunda Seçimlerin Temizlenmesi

Çözüldü #1
Herkese merhaba, hocalarımıza ayrıca saygılar sunarım.

Ekte gönderdiğim örnek dosyada malzeme listesi tablosu ve bunun formu bulunmaktadır.
Form üzerindeki onay kutusunu işaretlediğim ürünlerin sipariş tablosuna eklenmesini istiyorum.
Sipariş tablosuna farklı günlerde eklenen her siparişin eklendiği tarihi ile arşivlenmesini istiyorum.

Önemli olan konu şu, her sipariş seçiminden ( onay kutusu ile ) sonra malzeme listesini tekrar açtığımda onay kutularının boş kalması gerekiyor.

Gitmeye çalıştığım nokta SİPARİŞ - SEVK ilişkili bir dosya hazırlamak.

Bu konu ile ilgili birçok örnek inceledim ama bir türlü yapamadım. Desteğiniz için şimdiden teşekkür ederim.
.zip onay kutusu ile seç ve tablo oluştur.zip (Dosya Boyutu: 65,9 KB | İndirme Sayısı: 6)
exe54, 03-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#2
tabloya ekleme işlemi, seçim yapılır yapılmaz mı olacak yoksa formdaki bir düğmeye basınca mı?
formunuzda ekleme düğmesi göremedim
Cevapla
#3
Çalışmanız veri tabanı mantığına aykırı. Malzeme listesi tablonuz ile sipariş tablonuz birebir aynı tek fark sipariş tablosunda sipariş miktarı alanı mevcut ancak bu miktarın nereden nasıl girileceği de belirlenmemiş. Aynı verilere haiz iki tanlo oluşturmak yerine checkbox ile seçim yapıldığında aktive olan sipariş tarihi ve miktarının girileceği alanların tanımlanıp tabloya kaydedilmesi gerekir. Sipariş tablosunda sadece malzeme kodu, müşteri id, miktar ve tarih gibi kayıtları bulunduracak bir yapı tasarlamanız bunu bir sub form olarak kullanmanız daha doğru olacaktır. Ancak herşeyden önce yapilmamasi gereken olumcul hatalar konusunu mutlaka inceleyin, çalışmanızı önce kağıt kalem ile planlayıp algoritmanızı belirleyin, sonra uygulamaya geçin.
Cevapla
#4
(21/05/2025, 15:10)berduş yazdı: tabloya ekleme işlemi, seçim yapılır yapılmaz mı olacak yoksa formdaki bir düğmeye basınca mı?
formunuzda ekleme düğmesi göremedim

Cevap verdiğiniz için teşekkür ederim.

Aslında formun diğer alanlarını ben halledeceğim ( sütunlara göre dinamik flitre gibi )
Ben malzeme listesinde 1 den fazla malzemeyi onay kutusundan seçtikten sonra bir buton ile seçilenleri toplu olarak sipariş tablosuna eklemesini istiyorum. Eklendikten sonra malzeme listesindeki seçili malzemelerdeki onay kutusundaki seçimlerin tamamını temizlemesini istiyorum.

Yeni bu form müşteride olacak, malzeme listesinden ihtiyaçlarını seçim yapacak ve sipariş listesine aktarmasını sağlamalı.
Daha sonra tekrar sipariş vermek istediğinde malzeme listesindeki onay kutularının boş olarak gelmesi gerekiyor.

Tekrar Teşekkür ederim.

(21/05/2025, 15:13)atoykan yazdı: Çalışmanız veri tabanı mantığına aykırı. Malzeme listesi tablonuz ile sipariş tablonuz birebir aynı tek fark sipariş tablosunda sipariş miktarı alanı mevcut ancak bu miktarın nereden nasıl girileceği de belirlenmemiş. Aynı verilere haiz iki tanlo oluşturmak yerine checkbox ile seçim yapıldığında aktive olan sipariş tarihi ve miktarının girileceği alanların tanımlanıp tabloya kaydedilmesi gerekir. Sipariş tablosunda sadece malzeme kodu, müşteri id, miktar ve tarih gibi kayıtları bulunduracak bir yapı tasarlamanız bunu bir sub form olarak kullanmanız daha doğru olacaktır. Ancak herşeyden önce yapilmamasi gereken olumcul hatalar konusunu mutlaka inceleyin, çalışmanızı önce kağıt kalem ile planlayıp algoritmanızı belirleyin, sonra uygulamaya geçin.

Merhaba,

Uyarınız için teşekkür ederim. Hazırladığım dosyada kişisel veriler olduğundan dolayı takıldığım noktayı ayırarak eklemek istedim.

Saygılarımla.
exe54, 03-11-2009 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 21/05/2025, 15:24, Düzenleyen: exe54.
Cevapla
#5
aşağıdaki kod seçilen kayıtları tabloya aktarıp seçimleri boşaltır
Dim xSQL As String
Me.Dirty = False
'[sipariş listesi] tablosuna ekleme kodu
xSQL = "INSERT INTO [sipariş listesi] ([Sipariş Tarihi] ,[Teslim Alan (Grup)] ,[Malzeme Metni] ,[Müşteri Malzeme No] ,[SAP Kodu] ,[Torio KOD] ,[Birim Fiyat EUR] ,[Koli İçi Miktar] ,[Koli Birim Fiyat EUR] ,[Parçabaşı Koli Maliyet EUR] ,[Toplam Maliyet EUR] ,[Sipariş Ver] ) " & _
"SELECT now() ,[Teslim Alan (Grup)] ,[Malzeme Metni] ,[Müşteri Malzeme No] ,[SAP Kodu] ,[Torio KOD] ,[Birim Fiyat EUR] ,[Koli İçi Miktar] ,[Koli Birim Fiyat EUR] ,[Parçabaşı Koli Maliyet EUR] ,[Toplam Maliyet EUR] ,[Sipariş Ver] " & _
"FROM [malzeme listesi] " & _
"WHERE [Sipariş Ver] = TRUE;"

' xSQL komutunu çalıştır
Set db = CurrentDb
db.Execute xSQL
'seçili olanları boşaltma kou
xSQL = "update [malzeme listesi] set [Sipariş Ver]=FALSE WHERE [Sipariş Ver] = TRUE;"
db.Execute xSQL
Me.Requery
Cevapla
#6
(21/05/2025, 22:09)berduş yazdı: aşağıdaki kod seçilen kayıtları tabloya aktarıp seçimleri boşaltır
Dim xSQL As String
Me.Dirty = False
'[sipariş listesi] tablosuna ekleme kodu
xSQL = "INSERT INTO [sipariş listesi] ([Sipariş Tarihi] ,[Teslim Alan (Grup)] ,[Malzeme Metni] ,[Müşteri Malzeme No] ,[SAP Kodu] ,[Torio KOD] ,[Birim Fiyat EUR] ,[Koli İçi Miktar] ,[Koli Birim Fiyat EUR] ,[Parçabaşı Koli Maliyet EUR] ,[Toplam Maliyet EUR] ,[Sipariş Ver] ) " & _
"SELECT now() ,[Teslim Alan (Grup)] ,[Malzeme Metni] ,[Müşteri Malzeme No] ,[SAP Kodu] ,[Torio KOD] ,[Birim Fiyat EUR] ,[Koli İçi Miktar] ,[Koli Birim Fiyat EUR] ,[Parçabaşı Koli Maliyet EUR] ,[Toplam Maliyet EUR] ,[Sipariş Ver] " & _
"FROM [malzeme listesi] " & _
"WHERE [Sipariş Ver] = TRUE;"

' xSQL komutunu çalıştır
Set db = CurrentDb
db.Execute xSQL
'seçili olanları boşaltma kou
xSQL = "update [malzeme listesi] set [Sipariş Ver]=FALSE WHERE [Sipariş Ver] = TRUE;"
db.Execute xSQL
Me.Requery


Hocam çok teşekkür ederim. Elinize sağlık. Konu kapanmıştır.
exe54, 03-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task