Skip to main content

AccessTr.neT


Parametre değerini kontrol etmek

Parametre değerini kontrol etmek

Çözüldü #1
Merhabalar

Aşağıdaki Sql i modül olarak oluşturdum ve makro üzerinden çalıştırıyorum, çalıştırdığımda Firma_Adını_Giriniz parametresi çıkıyor herhangi bir değer girdiğimde çalışıyor. sormak istediğim

1. ifadeyi nasıl kontrol altına alabilirim örn eğer değer boşsa veya tabloda yoksa uyarı versin
2. parametreyi iptal et dediğimde error veriyor ve eylem başarısız ekranını açıyor bunu nasıl engelliyebilirim ?

yardımlarınız için şimdiden çok teşekkür ederim.


"SELECT kmtportfoy.firma, tblyetkili.yetkili, tblyetkili.irttel, tblyetkili.mail, tblyetkili.nprd INTO rapor FROM kmtportfoy INNER JOIN tblyetkili ON kmtportfoy.kimlik = tblyetkili.baglanti where firma= ( Firma_Adını_Giriniz)"
select * from mutluluk,
Cevapla
Çözüldü #2
Sn febas, lütfen örneğinizi Site Kurallarına uygun hale getiriniz. Aksi halde cevap alamayacaksınız..Bilginize
Cevapla
Çözüldü #3
Ozur
özen gösteriyorumkurallara ama bazen gözden kaçabiliyor
.rar dnm.rar (Dosya Boyutu: 158,57 KB | İndirme Sayısı: 10)
select * from mutluluk,
Cevapla
Çözüldü #4
Şimdi oldu.. Ancak yeniden eklemektense öncekini kaldırıp yerine eklemeniz daha uygun olurdu.

Sorunuzun cevabına gelince; gördüğüm kadarıyla yazdığınız Sql sonunda belirttiğiniz firma= ( Firma_Adını_Giriniz) bölümünde yer alan Firma_Adını_Giriniz parametre değeri olarak karşınıza çıkmakta.. Çünkü buraya yazdığınız alanın bir form vb. yerde varolması ve bilginin buradan alınması gerekmetedir. Örneğin siz bu parametre sorulduğunda x yazarak tamam tıkladığınızda normal olarak çalıştığını ve x firmasına ait bilgilerin Excele aktarıldığını göreceksiniz. Haliyle bu soruya iptal dediğinizde Sql tamamlanamamakta ve hata mesajı vermektedir.
Cevapla
Çözüldü #5
birdahakine böyle bir sorun olmasın ama alursa belirttiğiniz şekilde yaparım Img-grin

evet tablo üzerinden kontrol sağlanıyor benimde kontrol altına almak istediğim bu kısım bu cümle içerisnde if deyimini kullanarak boş veya tablodaki veriye eşit değilse kayıt bulunmadı uyarısını verdirmek
ve parametre değerinde iptal tıklanırsa hataya düşmeden fonksiyondan çıkmak bunu nasıl yapabilirim ?
select * from mutluluk,
Cevapla
Çözüldü #6
Sn febas, sanırım ben tam olarak anlatamadım..Siz örneğin KMT formunuzdaki frm alanını ölçüt olarak Sql in sonuna yazmalısınız. Aksi halde her seferinde size parametre soracaktır. KMT formunuzu açarak ekleyeceğiniz bir düğme ile Makro'yu tetikleyin. Ancak öncesinde;

Kod:
DoCmd.RunSQL "SELECT kmtportfoy.ncst, kmtportfoy.frmadrres, kmtportfoy.frmirt, tblyetkili.yetkili, tblyetkili.irttel, tblyetkili.mail, tblyetkili.nprd INTO a FROM kmtportfoy INNER JOIN tblyetkili ON kmtportfoy.kimlik = tblyetkili.baglanti where (firma= forms!KMT!frm)"
SQL i bununla değiştirip terkar deneyin. Parametre sormayacağı için cevaplamanız gereken bir durumda olmayacak, böylelikle hata mesajı ile de karşılaşmayacaksınız..
Daha doğrusu kodlarınızı aşağıdaki ile değiştirir ve KMT formunuza ekleyeceğiniz bir düğme ile çalıştırırsanız. Boş olması halinde istediğiniz mesajı da alabilirsiniz.
Kod:
Public Function ytk()
Dim nesne, nesne1 As Object
DoCmd.SetWarnings False
If IsNull(Forms!kmt!frm) Then
Call MsgBox("Lütfen Firma alanının dolu olduğundan emin olunuz.", vbExclamation, "Dikkat")
Else
DoCmd.RunSQL "SELECT kmtportfoy.ncst, kmtportfoy.frmadrres, kmtportfoy.frmirt, tblyetkili.yetkili, tblyetkili.irttel, tblyetkili.mail, tblyetkili.nprd INTO a FROM kmtportfoy INNER JOIN tblyetkili ON kmtportfoy.kimlik = tblyetkili.baglanti where (firma= forms!KMT!frm)"

DoCmd.TransferSpreadsheet acExport, 8, "a", CurrentProject.Path & "\nprd.xls", False
Set nesne = CreateObject("Excel.Application")
Set nesne1 = nesne.Workbooks.Open(CurrentProject.Path & "\nprd.xls")
nesne.Application.Visible = True
End If
End Function

Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task