If fonksiyonu ve kullanıcı zorunlu veri girişi

1 2
23/05/2011, 14:48

sally

Merhaba;
Bu iki işlem (tahminimce tabi) birbirine bağlı olduğu için çalışmada ikisini de aynı başlıkta topladım.
Ekteki çalışmada, Günlük Ziyaretler Formunda;
- Ziyaret Durum kısmında
Eğer Takipte işaretliyse üst kısımda yer alan Teklif Edilen Makine Adedini boş geçemesin ve buraya "sıfır" yazamasın;

- Parkur kısmında ise
Toplam Makine Sayısı 0 veya 1 ise MüşteriKategorisine E
2 veya 3 ise D,
4 - 9 arası ise C,
10 - 49 arası ise B
49 dan büyük ise A yazsın.Toplam Makine Sayısı değerini Makine Sayısı1,2 ve 3 ün toplamından alıyor.
NOT: Burada bir problemim daha var. Makine Sayısı1 e değer giriyorum, Enter;
Makine Sayısı2 ye değer giriyorum, Enter dediğimde direkt olarak önce Toplam Makine Sayısı kısmına gidiyor daha sonra Makine Sayısı3 e geliyor. Halbuki enter diyerek onayladığımda bir sonraki veri yazacağım alan Makine Sayısı3 alanı. Sıralamada bir hatam mı var acaba?

- Kiralama kısmında ise
Eğer kiralama "Var" olarak işaretlendi ise Sözleşme bitim tarihini boş bırakamasın.

Bu işlemleri If komutu ile yapmaya çalıştım ancak hep hata aldım. Ek olarak tarih veya makine yazmadan geçemesin kısmını nasıl yapacağımı bilemiyorum. Amacım kesinlikle hazır almak değil. Daha bu öğrendiklerimi kullanmam gereken çok yer var. O nedenle neler yapıldığını anlatırsanız ben deneyerek tekrar gönderebilirim. Yardımlar için teşekkürler.
23/05/2011, 15:10

Hayri16

Sayın sally;
Alıntı:- Parkur kısmında ise
Toplam Makine Sayısı 0 veya 1 ise MüşteriKategorisine E
2 veya 3 ise D,
4 - 9 arası ise C,
10 - 49 arası ise B
49 dan büyük ise A yazsın.Toplam Makine Sayısı değerini Makine Sayısı1,2 ve 3 ün toplamından alıyor.
NOT: Burada bir problemim daha var. Makine Sayısı1 e değer giriyorum, Enter;
Makine Sayısı2 ye değer giriyorum, Enter dediğimde direkt olarak önce Toplam Makine Sayısı kısmına gidiyor daha sonra Makine Sayısı3 e geliyor. Halbuki enter diyerek onayladığımda bir sonraki veri yazacağım alan Makine Sayısı3 alanı. Sıralamada bir hatam mı var acaba?

- Kiralama kısmında ise
Eğer kiralama "Var" olarak işaretlendi ise Sözleşme bitim tarihini boş bırakamasın.
Bu iki sorunu sanırım çözdüm. Bir deneyip geri dönüş yaparsanız çok sevinirim. Kolay gelsin.
23/05/2011, 15:31

sally

Evet kesinlikle olmuş. Teşekkürler. Sözleşme tarihindeki veri girişini zorunlu kılma olayını sanırım ilk kısma kendim uygulayabilirim. Onu deneyeceğim sizin kodlarınızdan. Tekrar bilgi veririm.
Yalnız kiralama "Var" seçeneğini bir kere işaretleyince bir daha yok olarak işaretleyemiyoruz. Bunu değiştirebilir miyiz? Çünkü belki yanlışlıkla var olarak işaretlenecek bu seçenek. Böyle bir durumda kapatıp çıkamıyoruz ya da tekrar geri dönüp işareti kaldıramıyoruz; mutlaka sözleşme tarihi gerekiyor.
23/05/2011, 15:44

Hayri16

Sayın sally;
İlgili kodu aşağıdaki şekilde değiştirip uygulayın.
Private Sub SözleşmeBitişTarihi_Exit(Cancel As Integer)

If IsNull(SözleşmeBitişTarihi) Or SözleşmeBitişTarihi = "" Then
If Metin45 = "Var" Then
MsgBox ("Makina kiralanmışsa sözleşme tarihini boş geçemezsiniz")
Onay42.SetFocus
Exit Sub
End If
End If
End Sub
23/05/2011, 16:02

sally

Teşekkür ederim. Deneyerek bilgi vereceğim.
Müşteri Kategorisini sayıya göre bulduran kodu nerenin olay kısmına yazdınız acaba?
Günlük Ziyaretler kısmında , Teklif edilen makine sayısına geliyorum. Bende değerlendirme diye bir olay yok. Teklif edilen makinesayısında after update kısmına kodu yazdığımda işlemiyor. Access 2007 kullandığım için olabilir mi? Hatam nerede acaba?
Formda neredeyken kodu yazmak iin özellikel kısmını tıklamalıyız?
23/05/2011, 16:08

Hayri16

Sayın Sally;
"degerlendirme" benim yazdığım hesaplama yapan bir alt rutin. Makina1 makina2 makina3 değiştiğinde oraya gönderip toplam sayıya göre Harf veriyoruz.
1 2