SQL Raporlama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
sorgum şu şekilde ;
procedure TForm29.Button1Click(Sender: TObject);
begin
if RadioButton1.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO1BAKTAR Between :ILK1TAR AND :SON1TAR');
Query1.ParamByName('ILK1TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON1TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton4.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROMEMBAKTAR Between :ILKMTAR AND :SONMTAR');
Query1.ParamByName('ILKMTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONMTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton5.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROSONBAKTAR Between :ILKSTAR AND :SONSTAR');
Query1.ParamByName('ILKSTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONSTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
end;
procedure TForm29.Button1Click(Sender: TObject);
begin
if RadioButton1.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO1BAKTAR Between :ILK1TAR AND :SON1TAR');
Query1.ParamByName('ILK1TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON1TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton4.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROMEMBAKTAR Between :ILKMTAR AND :SONMTAR');
Query1.ParamByName('ILKMTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONMTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton5.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROSONBAKTAR Between :ILKSTAR AND :SONSTAR');
Query1.ParamByName('ILKSTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONSTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
end;
Arkadaşlar ;
Bu şekilde yaptım ama itemindex>0 da hata veriyor ne olabilir?
procedure TForm29.Button1Click(Sender: TObject);
begin
if RadioButton1.Checked or combobox1.itemindex>0 then BAKIMLI:=true
else BAKIMSIZ:=False then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Bu şekilde yaptım ama itemindex>0 da hata veriyor ne olabilir?
procedure TForm29.Button1Click(Sender: TObject);
begin
if RadioButton1.Checked or combobox1.itemindex>0 then BAKIMLI:=true
else BAKIMSIZ:=False then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
S.A.
1- şeklinde olmalı.
2- Else BAKIMSIZ := False then : else'den sonra then olmaz.
3-BAKIMLI ve BAKIMSIZ Boolean tipte değişken gibi kullanmışsınız, tanımlandı mı bunlar?
4- Verdiği hatayı da yazarsanız güzel olur.
Çözüm de şu olabilir;
Kolay gelsin...
(Not: Query kullanırken with ile birlikte yapın, tadından yenmez)
EDİT: Yanlış anlayarak cevap yazmışım.
Bir radiogroup ekleyip, içine Bakım1, Bakım2 .. Bakım5 Item'leri yerleştirirseniz çözüm bu. Ama anlamadım raidobuton ne işe yarıyor, checkbox ne işe yarıyor?
1-
Kod: Tümünü seç
if (RadioButton1.Checked) or (combobox1.itemindex>0) then
2- Else BAKIMSIZ := False then : else'den sonra then olmaz.
3-BAKIMLI ve BAKIMSIZ Boolean tipte değişken gibi kullanmışsınız, tanımlandı mı bunlar?
4- Verdiği hatayı da yazarsanız güzel olur.
Çözüm de şu olabilir;
Kod: Tümünü seç
procedure TForm29.Button1Click(Sender: TObject); var
AlanAdi: String;
Begin
AlanAdi := 'BAKIM'+inttostr(RadioGroup1.ItemIndex+1);
//BAKIM1, BAKIM2 vs.
with Query1, SQL do
begin
Close;
Clear;
Add('Select * From ROKAYIT');
Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Add('and '+AlanAdi+'=:ParamBakim');
ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
ParamByName('ParamBakim').AsBoolean := True;
Open;
end;//with
end;
(Not: Query kullanırken with ile birlikte yapın, tadından yenmez)
EDİT: Yanlış anlayarak cevap yazmışım.
Bir radiogroup ekleyip, içine Bakım1, Bakım2 .. Bakım5 Item'leri yerleştirirseniz çözüm bu. Ama anlamadım raidobuton ne işe yarıyor, checkbox ne işe yarıyor?
Gönderdiğim koddaki ParamByName('ParamBakim').AsBoolean := True satırını şu şekilde değiştirin
Doğru anladıysam çözüm bu olmalı
Kod: Tümünü seç
ParamByName('ParamBakim').AsBoolean := (ComboBox1.Text = '1');
Ulu Coder abi ya ben bunu şu şekilde kısa olarak yapabilirmiyim?
CheckBox1 form a yerleştireyim ve işaretliyse TRUE işaretsizse FALSE olanları DB den listelesin bunu nasıl yapabilirim bu benim işimi görür.
DB deki alanım BAKIM1... BAKIM5 e kadar.
if (RadioButton1.Checked) or (CheckBox1.Checked:=BAKIM1) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
CheckBox1 form a yerleştireyim ve işaretliyse TRUE işaretsizse FALSE olanları DB den listelesin bunu nasıl yapabilirim bu benim işimi görür.
DB deki alanım BAKIM1... BAKIM5 e kadar.
if (RadioButton1.Checked) or (CheckBox1.Checked:=BAKIM1) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
Ulu Coder abi ya ben bunu şu şekilde kısa olarak yapabilirmiyim?
CheckBox1 form a yerleştireyim ve işaretliyse TRUE işaretsizse FALSE olanları DB den listelesin bunu nasıl yapabilirim bu benim işimi görür.
DB deki alanım BAKIM1... BAKIM5 e kadar.
if (RadioButton1.Checked) or (CheckBox1.Checked:=BAKIM1) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
CheckBox1 form a yerleştireyim ve işaretliyse TRUE işaretsizse FALSE olanları DB den listelesin bunu nasıl yapabilirim bu benim işimi görür.
DB deki alanım BAKIM1... BAKIM5 e kadar.
if (RadioButton1.Checked) or (CheckBox1.Checked:=BAKIM1) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton2.Checked then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where ROILKBAKTAR Between :ILKRTAR AND :SONRTAR');
Query1.ParamByName('ILKRTAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SONRTAR').AsDate:=DateTimePicker2.Date;
end;
Query1.Active:=true;
if RadioButton3.Checked then
Tablonda Baım1, Bakım2, Bakım3, Bakım4, Bakım5 alanları var.
Bunları bir radioGroup'da listelemişsin.
Yani Item'ları Bakım1..Bakım5 olan bir radiogroup'un var.
Bir de CheckBox'ın var.
RadioGroup'dan Bakım1..Bakım5 arası sadece bir şey seçiyorsun ve checkBox'dan da seçilen alanın değerini girmek istiyorsun, doğru mu anladım?
Doğru anladıysam, düzeltmenizi istediğim satırı tekrar şu şekilde düzeltin:
Eğer Bakım1, bakım2, bakım3 True olanlar gibi bir sorgulama istiyorsanız, daha değişik bir şey yapmamız gerekecek.
Bunları bir radioGroup'da listelemişsin.
Yani Item'ları Bakım1..Bakım5 olan bir radiogroup'un var.
Bir de CheckBox'ın var.
RadioGroup'dan Bakım1..Bakım5 arası sadece bir şey seçiyorsun ve checkBox'dan da seçilen alanın değerini girmek istiyorsun, doğru mu anladım?
Doğru anladıysam, düzeltmenizi istediğim satırı tekrar şu şekilde düzeltin:
Kod: Tümünü seç
ParamByName('ParamBakim').AsBoolean := CheckBox1.Checked;
Arkadaşlar ;
Emeği geçen arkadaşlarıma teşekkür ediyorum.
sorumun cevabı;
if (RadioButton1.Checked) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR AND BAKIM1=:PARAM1');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
Query1.ParamByName('PARAM1').Asboolean := CheckBox2.Checked
Emeği geçen arkadaşlarıma teşekkür ediyorum.
sorumun cevabı;
if (RadioButton1.Checked) then
Begin
Query1.Sql.Clear;
Query1.Sql.Add('Select * From ROKAYIT');
Query1.Sql.Add('Where RO5BAKTAR Between :ILK5TAR AND :SON5TAR AND BAKIM1=:PARAM1');
Query1.ParamByName('ILK5TAR').AsDate:=DateTimePicker1.date;
Query1.ParamByName('SON5TAR').AsDate:=DateTimePicker2.Date;
Query1.ParamByName('PARAM1').Asboolean := CheckBox2.Checked