8. September 2006 16:41

Mmh, es gibt zwar keine Fehlermeldungen allerdings kann er mit dem Filter nichts anfangen und springt zur ELSE Anweisung (CurrReport.SHOWOUTPUT (FALSE) weiter????

8. September 2006 16:48

Hast du mal geprüft (mit MESSAGE), was denn als Filter verwendet wird? Ist der so, wie du das dir vorstellst? Wenn du die Tabelle manuell filterst (über Run aus dem ObjectDesigner), greift dann dieser Filter?

8. September 2006 16:56

Hi Rotsch,

werde ich leider erst am Montag ausprobieren können. Muss meinen Zug noch bekommen. Schon mal danke für Deine Hilfe und schönes Wochenende. Melde mich Montag wieder. So long....

Markus

8. September 2006 16:59

Na dann, bis nächste Woche. Auch dir ein schönes Weekend...

11. September 2006 09:17

Guten Morgen!

So, nach einem erholsamen Wochenende sind die Batterien wieder aufgeladen und es kann weiter gehen. Habe folgendes probiert:

1. Tabelle Contact Mailing Group manuell gefilter (00-200..00-220); Ergebnis hat gestimmt.
2. Im PreDataItem Trigger mit Message den Inhalt der Variable (Verteilercodefilter, Text, 1024) ausgegeben; Ergebnis stimmt auch (00-200..00-220)

Im OnAfterGetRecord Trigger habe ich diesen Filter hinterlegt:
Code:
      recContactMailingGroup.SETFILTER("Mailing Group Code",'%1',VerteilercodeFilter);


Gebe ich nur einen Wert in das Filterfeld ein (bspw. 00-200), funktioniert der Filter. Gebe ich eine Range ein (bspw. 00-200..00-220) funktioniert der Filter nicht.

Wieso funktioniert der Filter nicht, wenn ich einen Operator (..) einfüge? Hat jemand eine Idee?

11. September 2006 09:46

So, habe nun zur Sicherheit auch noch mal folgendes probiert:

Code:
  recContactMailingGroup.SETFILTER("Mailing Group Code",'%1','00-296..00-297'); 


Ergebnis: Der Filter greift nicht!

Code:
  recContactMailingGroup.SETFILTER("Mailing Group Code",'%1','00-296'); 


Ergebnis: Der Filter greift.

Offensichtlich funktioniert der Filter nicht, sobald man einen Operator einfügt. Ich kenne auch die richtige Schreibweise von SETFILTER. Bedeutet das, dass ich für jeden Möglichen Operator mit einer IF Bedingung abfragen muss?

11. September 2006 10:51

So, dann beantworte ich meine Fragen mal selbst. Offensichtlich hat sich der Befehl SETFILTER an den Platzhalter '%1' gestört. Sehr selstam. Schreibt man

Code:
      recContactMailingGroup.SETFILTER("Mailing Group Code",VerteilercodeFilter);


funktioniert der Filter. Schreibt man


Code:
      recContactMailingGroup.SETFILTER("Mailing Group Code",'%1', VerteilercodeFilter);


funktioniert der Filter nur mit einem Wert, nicht aber mit einer Range. How ever.

11. September 2006 11:06

Ja, jetzt wo du das so schreibst, erinnere ich wieder, dass ich auch schon mal darüber gestolpert bin. Ist mir aber vorher nicht mehr in den Sinn gekommen.

Aber wenns jetzt funktioniert, umso besser.

11. September 2006 15:26

Ich möchte mich aber nochmals für Eure Hilfe bedanken. Insbesondere bei Rotsch!

Grüße und bis zum nächsten mal.....

Markus

11. September 2006 18:44

Gleichermaßen geht der Dank auch an dich, Markus, da du ausführlich die verschiedenen Lösungsansätze sowie deren Ergebnisse hier protokolliert hast.
So haben alle Besucher dieser Community einen wertvollen Beitrag mehr, welcher bei ähnlich gelagerten Problemen sicherlich sehr hilfreich ist.
Ich denke da einfach nur mal an das Problem, eine Pfadangabe per MESSAGE auszugeben, ohne dass die Backslashes als Zeilenumbruch gewertet werden.
Auch hier ist die Ursache sehr ähnlich und jeder kämpft immer wieder mit denselben Problemen.

Okay, ein bisschen Kritik will ich auch noch loswerden:
Beim nächsten Mal editierst du einfach deinen Beitrag (solange noch keiner darauf geantwortet hat) und hängst die neuen Erkenntnisse unten an, anstatt einen neuen Beitrag per Antwort anzuhängen.
Nix für ungut, aber so sind unsere Regeln.