AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge FastReport Script Pascal MasterData1.Filter= ???
Thema durchsuchen
Ansicht
Themen-Optionen

FastReport Script Pascal MasterData1.Filter= ???

Ein Thema von IwasNix · begonnen am 10. Jun 2016 · letzter Beitrag vom 10. Jun 2016
Antwort Antwort
IwasNix

Registriert seit: 15. Apr 2016
Ort: 2230 Gänserndorf
9 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

FastReport Script Pascal MasterData1.Filter= ???

  Alt 10. Jun 2016, 08:37
Ich komme wieder einmal trotz Googeln nicht weiter,

ich möchte in Fast Report per Pascal-Script
(Auslöser ist ein DialogPage Kontrollkästchen) einfach den Filter setzten!

procedure CheckBox1OnClick(Sender: TfrxComponent);
begin
if CheckBox1.Checked = True then
begin
MasterData1.Filter = '(<KostErtragBasis."EigenleistungJN"> <> 0) and (<KostErtragBasis."FremdleistungJN"> = 0)';
end
else
...

Fehlermeldung: Folgende(r) Fehler trat(en) auf: Scriptfehler bei 15:23:';' excepted

Danke für jede Hilfe


PS: im MasterData1 / Objektinspektor / Filter
(<KostErtragBasis."EigenleistungJN"> <> 0) and (<KostErtragBasis."FremdleistungJN"> = 0)

funktioniert der Filter einwandfrei ...
Roman
Wär rechdschreipfehler Finded tarf sie pehalten.

IwasNix
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: FastReport Script Pascal MasterData1.Filter= ???

  Alt 10. Jun 2016, 09:10
Delphi-Quellcode:
procedure CheckBox1OnClick(Sender: TfrxComponent);
begin
  if CheckBox1.Checked = True then
  begin
       MasterData1.Filter = '(<KostErtragBasis."EigenleistungJN"> <> 0) and (<KostErtragBasis."FremdleistungJN"> = 0)';
  end
  else
    ...

hmm... ist es ein Abschreibfehler oder hast Du vergessen wie die Zuweisung in Pascal funktioniert?

Delphi-Quellcode:
procedure CheckBox1OnClick(Sender: TfrxComponent);
begin
  if CheckBox1.Checked = True then
  begin
       MasterData1.Filter := '(<KostErtragBasis."EigenleistungJN"> <> 0) and (<KostErtragBasis."FremdleistungJN"> = 0)';
  end
  else
    ...
  Mit Zitat antworten Zitat
IwasNix

Registriert seit: 15. Apr 2016
Ort: 2230 Gänserndorf
9 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: FastReport Script Pascal MasterData1.Filter= ???

  Alt 10. Jun 2016, 09:14
Wenn man blöd ist ist man es meistens im Kopf

Bin ein 'Delphi-Frischling' komme von C#
aber so ein blöder Fehler sollte nicht sein, sorry!

Danke
Roman
Wär rechdschreipfehler Finded tarf sie pehalten.

IwasNix
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: FastReport Script Pascal MasterData1.Filter= ???

  Alt 10. Jun 2016, 09:17
Bin ein 'Delphi-Frischling' komme von C#
aber so ein blöder Fehler sollte nicht sein, sorry!
ach, da passiert mir in C# auch noch oft genug beim Vergleich der Fehler, und als c# Frischling würde ich mich nicht mehr bezeichnen...
  Mit Zitat antworten Zitat
IwasNix

Registriert seit: 15. Apr 2016
Ort: 2230 Gänserndorf
9 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: FastReport Script Pascal MasterData1.Filter= ???

  Alt 10. Jun 2016, 12:20
und schon funktioniert es

Delphi-Quellcode:
// Aktuelles Jahr aus SystemDatum und 1 bzw 2 Jahre davor
procedure DialogPage1OnActivate(Sender: TfrxComponent);
begin
  rbJahrMinus2.Caption := IntToStr(YearOf(Now) - 2);
  rbJahrMinus1.Caption := IntToStr(YearOf(Now) - 1);
  rbJahrAktuell.Caption := IntToStr(YearOf(Now));
end;
  
// Filter zusammenstellen
procedure ButtonOKOnClick(Sender: TfrxComponent);
var
  myEigenLeistungFilter,
  myFremdLeistungFilter,
  myJahrFilter: String;

begin
  if chbEigenLeistung.Checked = true then
    begin
      myEigenLeistungFilter := '(<KostErtragBasis."EigenleistungJN"> <> 0)';
    end
  else
    begin
      myEigenLeistungFilter := '(<KostErtragBasis."EigenleistungJN"> = 0)';
    end;

  if chbFremdLeistung.Checked = true then
    begin
      myFremdLeistungFilter := ' and (<KostErtragBasis."FremdleistungJN"> <> 0)';
    end
  else
    begin
      myFremdLeistungFilter := ' and (<KostErtragBasis."FremdleistungJN"> = 0)';
    end;


  if rbJahrMinus2.Checked = true then
    begin
      myJahrFilter := ' and (<KostErtragBasis."SRJAHR"> = ' + rbJahrMinus2.Caption +')';
    end;
  if rbJahrMinus1.Checked = true then
    begin
      myJahrFilter := ' and (<KostErtragBasis."SRJAHR"> = ' + rbJahrMinus1.Caption +')';
    end;
  if rbJahrAktuell.Checked = true then
    begin
      myJahrFilter := ' and (<KostErtragBasis."SRJAHR"> = ' + rbJahrAktuell.Caption +')';
    end;

  MasterData1.Filter := myEigenLeistungFilter + myFremdLeistungFilter + myJahrFilter;

end;
Roman
Wär rechdschreipfehler Finded tarf sie pehalten.

IwasNix
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz