Parametre değerini kontrol etmek
Tarih
08/05/2010 22:19
Konu Sahibi
febas
Yorumlar
14
Okunma
3278
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



febas
Aktif Üye
Kullanici Avatari
Aktif Üye
40
11/04/2010
6
İstanbul
Ofis 2003
20/05/2010,13:56
Çözüldü 
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


ercansahin
BlackEagle
Kullanici Avatari
Uzman
E.... Ş....
3.739
14/11/2008
Ankara
Ofis 2010 32 Bit
Dün,20:30
Çözüldü 
Sn febas, lütfen örneğinizi Site Kurallarına uygun hale getiriniz. Aksi halde cevap alamayacaksınız..Bilginize
Cevapla


febas
Aktif Üye
Kullanici Avatari
Aktif Üye
40
11/04/2010
6
İstanbul
Ofis 2003
20/05/2010,13:56
Çözüldü 
Ozur
özen gösteriyorumkurallara ama bazen gözden kaçabiliyor


Ek Dosyalar
.rar   dnm.rar (Dosya Boyutu: 158,57 KB / İndirme Sayısı: 10)
select * from mutluluk,
Cevapla


ercansahin
BlackEagle
Kullanici Avatari
Uzman
E.... Ş....
3.739
14/11/2008
Ankara
Ofis 2010 32 Bit
Dün,20:30
Çözüldü 
Ş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


febas
Aktif Üye
Kullanici Avatari
Aktif Üye
40
11/04/2010
6
İstanbul
Ofis 2003
20/05/2010,13:56
Çözüldü 
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


ercansahin
BlackEagle
Kullanici Avatari
Uzman
E.... Ş....
3.739
14/11/2008
Ankara
Ofis 2010 32 Bit
Dün,20:30
Çözüldü 
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:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Parametre girin hatası nightashes 3 56 04/12/2016, 23:07 Mesut Kaytan
  raporu pdf olarak kayıt etmek mehmetb84 4 127 04/11/2016, 14:22 mehmetb84
  Raporu Pdf Olarak Kayıt etmek m_demir 8 269 04/11/2016, 13:07 atoz112
Çözüldü Com1 Port Kontrol Sorunu madworld 6 2.136 01/09/2016, 10:55 atoz112
  Linkteki Resmi Bilgisayar kayıt Etmek Makrovba 4 480 19/04/2016, 17:22 ozanakkaya


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya