Sorgulama !!!
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Sorgulama !!!
Arkadaşlar;
İki tane DBEdit1.Text ve DBEdit2.Text var bu iki alanı bir Button2 yardımı ile nasıl kontrol ettirebilirim? İki alanı da boş geçmemesi gerekiyor.
Button1 Kayıt için kullanıyorum ve DBEdit1.Text için sorgusu;
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
end
Else
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
Bu alanı da üst koda nasıl dahil edebilirim?
if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
end;
İki tane DBEdit1.Text ve DBEdit2.Text var bu iki alanı bir Button2 yardımı ile nasıl kontrol ettirebilirim? İki alanı da boş geçmemesi gerekiyor.
Button1 Kayıt için kullanıyorum ve DBEdit1.Text için sorgusu;
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
end
Else
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
Bu alanı da üst koda nasıl dahil edebilirim?
if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
end;
Kod: Tümünü seç
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
exit;
end;
if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
exit;
end;
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
"Evine bakmaktan aciz olan; ilerici, üç kıtaya hükmeden ecdadın mı gerici?"
Kod: Tümünü seç
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
end
Else if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
end
else
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
end;
merhaba,
benimde çalışmamda böyle bir işlem vardı ve ben
gibi bir yapı ile bu işi yapmıştım şimdi kodlar elimde tam olarak yok bulursam atarım.
or yerine and kullandığımda olmuyordu. vel hasıl kelam edit1 veya edit2 boş ise mesaj ver yok değilse şu işlemi yop gibi bir yoldu
kolay gelsin
benimde çalışmamda böyle bir işlem vardı ve ben
Kod: Tümünü seç
if (edit1.text'') or (edit2.text'') then
or yerine and kullandığımda olmuyordu. vel hasıl kelam edit1 veya edit2 boş ise mesaj ver yok değilse şu işlemi yop gibi bir yoldu
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Kod: Tümünü seç
procedure TFormArsivSrg.ArsivSrg_BtnTarihBulClick(Sender: TObject);
var
tarih1,tarih2:tdate;
begin
if (checkbox1.Checked=false) and (checkbox2.Checked=false) then
begin
application.MessageBox('Lütfen Bir Seçim Yapınız....','Seçim Uyarısı',MB_OK);
end
else
begin
if checkbox1.Checked =true then
begin
arsivsrgibquery.Close;
arsivsrgibquery.SQL.Clear;
arsivsrgibquery.sql.Add('select*from ARSIVTESCIL');
arsivsrgibquery.SQL.Add('where DOGUM_TARIHI Between :tarih1 and :tarih2');
arsivsrgibquery.ParamByName('tarih1').AsDate:=jvdateedit2.Date;
arsivsrgibquery.ParamByName('tarih2').AsDate:=jvdateedit3.date;
arsivsrgibquery.Open;
arsivsrgibquery.Last;
end;
if checkbox2.Checked =true then
begin
arsivsrgibquery.Close;
arsivsrgibquery.SQL.Clear;
arsivsrgibquery.SQL.Add('select*from ARSIVTESCIL');
arsivsrgibquery.SQL.Add('where FRM_DUZ_TARIHI Between :tarih1 and :tarih2');
arsivsrgibquery.ParamByName('tarih1').AsDate:=jvdateedit2.Date;
arsivsrgibquery.ParamByName('tarih2').AsDate:=jvdateedit3.Date;
arsivsrgibquery.Open;
arsivsrgibquery.Last;
end;
if arsivsrgibquery.IsEmpty then
application.MessageBox('Seçilen Tarihler Arası Kayıt Bulunamadı?','Sorgulama Sonucu',MB_OK);
end;
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
end
Else if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
end
else
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
end;
Aslında bu kod tam istediğim gibi fakat Setfocus da takılıyor bunu çözemedim.
begin
if DBEdit1.Text='' then
begin
Showmessage('Lütfen Müşteri Kodunu Giriniz.');
DBEdit1.Setfocus;
end
Else if DBEdit2.Text='' then
begin
Showmessage('Lütfen İşlem Kodunu Boş Geçmeyiniz.');
DBEdit2.Setfocus;
end
else
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end;
end;
Aslında bu kod tam istediğim gibi fakat Setfocus da takılıyor bunu çözemedim.
Kod: Tümünü seç
procedure TFormRaporSrg.RprSrg_BtnRaporBulClick(Sender: TObject);
var
rno1,rno2:string;
begin
if edit4.Text='' then
begin
application.MessageBox('Lütfen Birinci Kutuyu Boş Geçmeyiniz','Boş Alan Uyarısı',MB_OK);
edit4.SetFocus;
end
else
begin
if edit5.Text ='' then
begin
application.MessageBox('Lütfen İkinci Kutuyu Boş Geçmeyiniz','Boş Alan Uyarısı',MB_OK);
edit5.SetFocus;
end
else
begin
raporsrgibquery.Close;
raporsrgibquery.SQL.Clear;
raporsrgibquery.SQL.Add('select*from RAPORLAR');
raporsrgibquery.SQL.Add('Where RAPOR_NO Between :rno1 and :rno2');
raporsrgibquery.SQL.Add('order by RAPOR_NO');
raporsrgibquery.ParamByName('rno1').AsString:=edit4.Text;
raporsrgibquery.ParamByName('rno2').AsString:=edit5.Text;
raporsrgibquery.Open;
raporsrgibquery.Last;
if raporsrgibquery.IsEmpty then
showmessage('Aradığınız Kayıtlar Bulunamadı');
end;
end;
end;
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Kod: Tümünü seç
procedure TFormRaporSrg.RprSrg_BtnRaporBulClick(Sender: TObject);
var
rno1,rno2:string;
begin
if (edit4.Text ='') and (edit5.Text ='') then
begin
application.MessageBox('Lütfen Kutuları Boş Geçmeyiniz','Boş Alan Uyarısı',MB_OK);
edit4.SetFocus;
end
else
begin
if edit4.Text='' then
begin
application.MessageBox('Lütfen Birinci Kutuyu Boş Geçmeyiniz','Boş Alan Uyarısı',MB_OK);
edit4.SetFocus;
end
else
begin
if edit5.Text ='' then
begin
application.MessageBox('Lütfen İkinci Kutuyu Boş Geçmeyiniz','Boş Alan Uyarısı',MB_OK);
edit5.SetFocus;
end
else
begin
raporsrgibquery.Close;
raporsrgibquery.SQL.Clear;
raporsrgibquery.SQL.Add('select*from RAPORLAR');
raporsrgibquery.SQL.Add('Where RAPOR_NO Between :rno1 and :rno2');
raporsrgibquery.SQL.Add('order by RAPOR_NO');
raporsrgibquery.ParamByName('rno1').AsString:=edit4.Text;
raporsrgibquery.ParamByName('rno2').AsString:=edit5.Text;
raporsrgibquery.Open;
raporsrgibquery.Last;
if raporsrgibquery.IsEmpty then
showmessage('Aradığınız Kayıtlar Bulunamadı');
end;
end;
end;
end;
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Merhaba,
Dbedit1 ve Dbedit2 yi girişe zorlamak için bir butonla kontrol yerine bu iki bileşenin Onexit olayını neden kullanmıyorsunuz? Girişi onexit ile kontrol edip sadece kayıt kısmını butonla yaparsınız.
Aşağıdaki kodu dbedit1 için yazdıktan sonra form kısmında shift tuşunu basılı tutarak dbedit1 ve dbedit2 yi seçerek onexit olayına aşağıdaki procedure yi seçersiniz. Yani bir olayla her iki bileşeni de kontrol etmiş olursunuz.
Kolay gelsin.
Dbedit1 ve Dbedit2 yi girişe zorlamak için bir butonla kontrol yerine bu iki bileşenin Onexit olayını neden kullanmıyorsunuz? Girişi onexit ile kontrol edip sadece kayıt kısmını butonla yaparsınız.
Aşağıdaki kodu dbedit1 için yazdıktan sonra form kısmında shift tuşunu basılı tutarak dbedit1 ve dbedit2 yi seçerek onexit olayına aşağıdaki procedure yi seçersiniz. Yani bir olayla her iki bileşeni de kontrol etmiş olursunuz.
Kod: Tümünü seç
procedure TForm1.DBEdit1Exit(Sender: TObject);
var
bilesen:tdbedit;
begin
bilesen:=sender as tdbedit;
if bilesen.EditText='' then
begin
showmessage ('Bu alanı bos geçemezsiniz. ');
bilesen.SetFocus;
end;
end;
kolay gelsin!
onexit olayı sadece izlemek için geldiyse sorun çıkartabilir.
Birde genelde ben önce boş değilse kontrolünü uygularım,
veya hangi DBEdit i boş geçmişse
Aynı işlemi Edit lerle yapmak istersek,
veya
kolay gelsin....
onexit olayı sadece izlemek için geldiyse sorun çıkartabilir.
Birde genelde ben önce boş değilse kontrolünü uygularım,
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
if (DBEdit1.Text<>'') and (DBEdit2.Text<>'') then//
begin
//Buraya da yapmak istediğiniz kodları yazınız
ShowMessage('Hoş Geldiniz');
end
else
begin
ShowMessage('Eksik Bilgi Girişi');
DBEdit1.SetFocus;
Abort;
end;
end;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
if DBEdit1.Text<>'' then// and (DBEdit2.Text<>'') then
begin
if DBEdit2.Text<>'' then
begin
//Buraya da yapmak istediğiniz kodları yazınız
ShowMessage('Hoş Geldiniz');
end
else
begin
ShowMessage('DBEdit2 Boş');
DBEdit2.SetFocus;
Abort;
end;
end
else
begin
ShowMessage('DBEdit1 boş');
DBEdit1.SetFocus;
Abort;
end;
end;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
if (Trim(Edit1.Text)<>'') and (Trim(Edit2.Text)<>'') then
begin
//Buraya da yapmak istediğiniz kodları yazınız
ShowMessage('Hoş Geldiniz');
end
else
begin
ShowMessage('Eksik bilgi girişi');
Edit1.SetFocus;
Abort;
end;
end;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
if Trim(Edit1.Text)<>'' then // Boşlukları atmak için Trim kullanıyoruz, boşluk tuşuna basıp geçmemesi için
begin
if Trim(Edit2.Text)<>'' then
begin
//Buraya da yapmak istediğiniz kodları yazınız
ShowMessage('Hoş Geldiniz');
end
else
begin
ShowMessage('Edit2 Boş');
Edit2.SetFocus;
Abort;
end;
end
else
begin
ShowMessage('Edit1 boş');
Edit1.SetFocus;
Abort;
end;
end;
En son menderes tarafından 26 Eki 2005 03:46 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Bu şekilde kullanıyorum ama Abort da hata veriyor;
[Error] ISILGIRIS2.pas(352): Statement expected, but expression of type 'Integer' found
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text<>'' then
begin
if DBEdit30.Text<>'' then
begin
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end
else
begin
ShowMessage('Lütfen İşlem Kodunu Boş Geçmeyiniz !!!');
DBEdit30.SetFocus;
Abort;
end;
end
else
begin
ShowMessage('Lütfen Firma Kodunu Boş Geçmeyiniz !!!');
DBEdit1.SetFocus;
//Abort;
end;
end;
[Error] ISILGIRIS2.pas(352): Statement expected, but expression of type 'Integer' found
procedure TForm5.Button2Click(Sender: TObject);
begin
if DBEdit1.Text<>'' then
begin
if DBEdit30.Text<>'' then
begin
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Table1.Post;
end
else
begin
ShowMessage('Lütfen İşlem Kodunu Boş Geçmeyiniz !!!');
DBEdit30.SetFocus;
Abort;
end;
end
else
begin
ShowMessage('Lütfen Firma Kodunu Boş Geçmeyiniz !!!');
DBEdit1.SetFocus;
//Abort;
end;
end;
Sanıyorum burada integer tanımlanmış bölümü string olarak veri girdirmeye çalışıyorsunuz.ozcank yazdı:Bu şekilde kullanıyorum ama Abort da hata veriyor;
[Error] ISILGIRIS2.pas(352): Statement expected, but expression of type 'Integer' found
Table1BFIYAT.AsString:=Cedit1.Text;
Table1ADET.AsString:=Cedit2.Text;
Table1TOPTUTAR.AsString:=Cedit3.Text;
Bence Table1ADET.AsString yerine
table1.FieldByName('ADET').AsInteger:=StrToInt(Cedit2.Text);
eğer bu alan string tanımlı ise
table1.FieldByName('ADET').AsString:=Cedit2.Text;
gibi ,
sanıyorum tablenin içerisine fieldleri eklemişsiniz, bence bu hızı düşürür.
Yani table ye çift tıklayıp gelen pencereye add all fields yapılıpta eklenen alanlar.
Kolay gelsin