Merhabalar
Bu kez zor bir sorum olacak
.Veritabanımı ekledim.Yapmak istediklerim sırasıyla şu,Ancak nasıl yapılabilir bir fikir yürütemedim.
1-Yeni kayıt tıklayıp yeni ürün kayıdı tabloma eklemek istediğimde,
2-Çalışılacak hafta kutusunu otomatik kendisi haftaiçi tarihi olarak doldurmasını istiyorum.Ancak kural şöyle olmalı.
bu tarihi belirlerken;
(Ürünleri ben kayıt ederken zorluk derecesi verdim.basit-zor gibi.Bunlar tabiki tabloya 1-2-3-4 olarak kayıt ediliyor.)
Kural şu ; otomatik olarak bana çalışılacak hafta kutusuna ilk boş tarihi versin.Ancak verirken Bu tarih öncelikle Diğer aparat kısmındaki termin tarihlerinden önce olmamalı ve ikinci kuralda zorluk derecesi aynı gün içerisinde toplam 5 puanı geçmemeli.
Bu zor olayı nasıl çözebilirim.İlginize çok teşekkür ederim
"hafta kutusuna ilk boş tarihi versin"
Bu kısım haftanın ilk günü mü yoksa hafta içerisindeki herhangi bir gün mü? Ayrıca, örnek uygulamanıza 1-2 adet örnek veri kaydederek eklerseniz sorunuz daha kolay anlaşılır.
(11/03/2016, 06:01)ozanakkaya yazdı: [ -> ]"hafta kutusuna ilk boş tarihi versin"
Bu kısım haftanın ilk günü mü yoksa hafta içerisindeki herhangi bir gün mü? Ayrıca, örnek uygulamanıza 1-2 adet örnek veri kaydederek eklerseniz sorunuz daha kolay anlaşılır.
Şöyle ki,
bir ürün var ve ben bunu form üzerinde kayıt ederken. Çalışılacak hafta kutusuna otomatik tarih atsın istiyorum.Yani bana işi yapacağım tarihi kendi yazsın (tabiki hafta içi olmalı).Ayrıca dediğim gibi diğer kurallarada uysun istiyorum.
Aslında aklıma bir fikir geldi. Sizlere danışmak isterim mantık olarak olabilirliğini ;
2016 ve 2017 yılının tüm iş günlerini bir tabloda tarih olarak yazıyım.
daha sonra ben formdan kayıt yaparken çalışılacak hafta kutusunu oradaki tarihlerden doldursun.Ama dediğim gibi diğer kuralları nasıl uygularız onu çözemedim.
tekrar merhaba,
2016-2017 tarihlerini tablo olarak ekledim.Bu tarihlerdende haftasonlarını ve resmi tatilleri çıkardım.Yani sadece iş günlerimiz kaldı.
Şimdi bu tablodaki takvimden tarihi almasını istiyorum.Ancak her günün maksimum 5 puan değeri olmalı.Puan derkende ürün zorluk derecesi (1-2-3-4) toplamını baz almalı.
Sayın siyahca, eklediğiniz son örneği kaldırdım. Yeni örneğinize veri girişi yapmamışsınız. İşlemin gerçekleşmesini istediğiniz formda veri girişi yaparak tabloya veri ekleyin. 2-3 veriye göre formu inceleyip gerekli kodu yazalım. Sonradan "şu eksik kaldı" olayı olmasın.
Ayrıca örnek uygulamanızı önce
Access içerisinde sıkıştırın, sonra zipleyin. Son örneğiniz 35 mb. sıkıştırıp onarınca 2 mb'a düşüyor.
(12/03/2016, 04:49)ozanakkaya yazdı: [ -> ]Sayın siyahca, eklediğiniz son örneği kaldırdım. Yeni örneğinize veri girişi yapmamışsınız. İşlemin gerçekleşmesini istediğiniz formda veri girişi yaparak tabloya veri ekleyin. 2-3 veriye göre formu inceleyip gerekli kodu yazalım. Sonradan "şu eksik kaldı" olayı olmasın.
Ayrıca örnek uygulamanızı önce Access içerisinde sıkıştırın, sonra zipleyin. Son örneğiniz 35 mb. sıkıştırıp onarınca 2 mb'a düşüyor.
merhaba ozan bey,
istediklerinizi yaptım.Dosyayı ekledim.
ilginiz ve desteğiniz için teşekkür ederim.
Yeni bir modül oluştur. Modüle aşağıdaki kodları ekle
Option Compare Database
Option Explicit
Function UygunIsGunu(GeciciTarih As Date, Zorluk As Integer) As Date
Dim i As Long
i = 1
Do While i <= 3
If Weekday(GeciciTarih) <> 1 And Weekday(GeciciTarih) <> 7 And Dsum ("[ZORLUK_PUAN]", "Tablo1", "CALISILACAK_HAFTA = " & Format(GeciciTarih, "\#mm\/dd\/yyyy\#")) + Zorluk <= 4 Then
i = i + 1
GeciciTarih = DateAdd("d", 1, GeciciTarih)
Else
Exit Do
End If
Loop
Do While Weekday(GeciciTarih) = 1 Or Weekday(GeciciTarih) = 7 Or Dsum ("[ZORLUK_PUAN]", "Tablo1", "CALISILACAK_HAFTA = " & Format(GeciciTarih, "\#mm\/dd\/yyyy\#")) + Zorluk > 4
GeciciTarih = DateAdd("d", 1, GeciciTarih)
Loop
UygunIsGunu = GeciciTarih
End Function
Modülü kaydet,
Tarihi nasıl atayacağınızı bilmediğim için gerekli kodu yazamıyorum. Forma buton ekleyip tıklandığında olayına
Me.CALISILACAK_HAFTA = UygunIsGunu(Date, Çerçeve443)
yazarsan formdaki ilgili alana uygun tarihi ekler.