Seçilen Kayda Göre Metin Kutusu Gizleme-devam

1 2
07/02/2013, 18:27

Gubazi

Merhabalar,

Kayda göre metin kutusu gizleme başlıklı konudaki sorumu "sn ozanakkaya" cevaplamıştı. Ben de çözümü, farklı bir forma uygulamaya çalıştım, fakat VB konusundaki bilgimin yetersizliği dolayısıyla aynı sonucu alamadım.
Sizlerden, çözümü adım adım açıklamanızı rica edeceğim. Bunun benim gibi işin acemileri için de yol gösterici olacağını düşünüyorum.
Açıkçası "accesstr.net" ailesi olmasaydı, ben bu Access işini 3 günde bırakmıştım; o yüzden sizin ilginiz (sıkılarak da olsa detaya girmeniz) ben ve benim gibi acemiler için çok çok önemli...
---
Çözümü uygulamak istediğim dosya ektedir.
Ana formun en altındaki, Operasyon kayitlari_alt_form_1 formundaki "operasyon tipi" alanına uygulamak istiyorum.
VB kodlarını kopyalayıp, kendimce düzenledim. Fakat, "duruş" tipini seçtiğimde gelmesi gereken metin kutuları hiç görünmüyor.
Yardımlarınızı bekliyorum. Teşekkürler.
07/02/2013, 19:27

ozanakkaya

Kodu "Private Sub Tip_AfterUpdate()" şeklinde yazmışsın. Tip, açılan kutunun denetim kaynağı. Açılan kutu adı "Operasyon_tip" olduğu için "Private Sub Operasyon_tip_AfterUpdate()" şekinde yazmalısın.

Formu tasarım görünümünde aç, Operasyon_tip açılan kutusunun güncelleştirme olayı sonrasına kodu uygula,


Bunun soru ile ilgisi yok ama formun kapandığında olayına yazılı olan

DoCmd.RunSQL "DELETE Baslangic_saat, Is_emir_no, Nz([Baslangic_saat],0) AS İfade1 FROM [Operasyon Kayitlari] WHERE (((Nz([Baslangic_saat],0))=0));"
kodunu aşağıdaki ile değiştir.

docmd.setwarnings false
DoCmd.RunSQL "DELETE Baslangic_saat, Is_emir_no, Nz([Baslangic_saat],0) AS İfade1 FROM [Operasyon Kayitlari] WHERE (((Nz([Baslangic_saat],0))=0));"
docmd.setwarnings true
kodunu aşağıdaki ile değiştir.

Ayrıca, aşağıdaki konuyu mutlaka inceleyip örnek uygulamanı düzenle.

Yapılmaması gereken ölümcül hatalar
08/02/2013, 10:43

Gubazi

Sn ozanakkaya,
Alıntı:Kodu "Private Sub Tip_AfterUpdate()" şeklinde yazmışsın. Tip, açılan kutunun denetim kaynağı. Açılan kutu adı "Operasyon_tip" olduğu için "Private Sub Operasyon_tip_AfterUpdate()" şekinde yazmalısın.
Formu tasarım görünümünde aç, Operasyon_tip açılan kutusunun güncelleştirme olayı sonrasına kodu uygula,
Bu kısmı anlayarak uyguladım ve sonuç aldım.

"Delete" ile ilgili VB kodunu değiştirdim, benim için advanced sayılacağı için direkt kopyaladım.

Ölümcül hataları da incelemeye başladım.

Size ne kadar teşekkür etsem azdır...
08/02/2013, 18:42

Gubazi

Sn ozanakkaya,

VB kodlarının her ikisi de "Duruş" tipli operasyon kayıtlarını siliyor. Tekrar inceleme şansınız var mı?
09/02/2013, 01:57

ozanakkaya

(08/02/2013, 18:42)Gubazi yazdı: Sn ozanakkaya,
VB kodlarının her ikisi de "Duruş" tipli operasyon kayıtlarını siliyor. Tekrar inceleme şansınız var mı?

Sadece Başlangıç saati alanı boş ise sorgu çalışıyor. Problem göremedim. İşlem tipine ait başlangıç tarihi alanı boş veri kaydettiğinizde form kapatıldığında kayıt silinecektir.
11/02/2013, 10:36

Gubazi

Sn ozanakkaya,
Öncelikle ilginiz için teşekkürler.
---
İki operasyon tipi var. İşlemi seçtiğimde "baş.saati, bitiş saati ve üretim miktarını" kullanıyorum. Duruşu seçtiğimde, "duruş kodu, duruş açıklaması" vd kullanıyorum.
Yani, başlangıç saati alanını operasyon tipi işlem ise dolduruyorum. Eğer operasyon tipi duruş ise duruş süresi alanını dolduruyorum.
1 2