[GELÖST] SETFILTER im Report

31. Januar 2017 12:16

Hey,

in einem Report übergebe ich das Buchungsdatum als Filter. (g_txtFilter := "Sales Shipment Header".GETFILTERS).

Nun muss ich im Section Designer Infos über Wareneingang mit ausgeben. Diese soll ebenfalls mit dem selben Datumfilter, welcher als Filter übergeben wird, eingegrenzt werden.

Code:
g_recLagBelZeile.RESET;
g_recLagBelZeile.SETRANGE("Document Type",Lagerbelegzeile."Document Type"::Deposit);
g_recLagBelZeile.SETFILTER("Created at date", '%1', XXXXXXX);
.....


Ich komme einfach nicht dahinter, wie der SETFILTER aussehen muss, damit unterschiedliche Konstellationen abgebildet werden können.
Als Buchungsdatum werden je nach Wunsch nämlich unterschiedliche Datum übergeben. Hier nur ein paar Beispiele:

>=310117
..310117
010117..
010117..310117

Ein/Abgrenzungen werden ja normalerweise beim SETFILTER über das '%1' definiert, beispielsweise

setfilter("Posting Date", '%1', XXX);
setfilter("Posting Date", '>=%1', XXX);
setfilter("Posting Date", '..%1', XXX);

Ich weiß ja vorher nie, wonach der Mitarbeiter filtert. Wie bilde ich das nun am besten ab?

Das geht ja so gar nicht: setfilter("Posting Date", '%1', '>=010117');

Grüße
Zuletzt geändert von MSNAVLerner am 31. Januar 2017 13:28, insgesamt 1-mal geändert.

Re: SETFILTER im Report

31. Januar 2017 12:36

SETFILTER erwartet als zweiten Parameter einen String.
Du gibst dort den Platzhalter %1 an, welcher mit einem String gefüllt wird.
Es ist in deinem Fall also "doppelt-gemoppelt".

Versuche es einfach mal mit g_recLagBelZeile.SETFILTER("Created at date",g_txtFilter); (also ohne Platzhalter).

Re: SETFILTER im Report

31. Januar 2017 13:28

Hmm, interessant, es geht nun.
Mit dem Doppeltgemoppelt hast du recht.

Danke.