Ausgabe in Sections

20. November 2008 11:21

Guten Morgen,

Ich habe eine Section in der ich nur ein Feld einer Tabelle ausgebe allerdings möchte ich die ausgabe nur haben wenn ich in einem anderen Feld aus der Tabelle eine 1 stehen habe.
Wie kann ich das ich Code (PreSection) umsetzen, ich finde einfach keine Lösung ich habe schon probiert das eine Feld auf eine 1 zu filtern und ich hatte auch schon eine If Bedingung im Code

IF MeinFeld=1 THEN CurrReport.Showoutput(True);

Aber ich bekomme immer alle Datensätze aus der Tabelle angezeigt ob das Feld mit 1 gefüllt ist oder nicht er zeigt mir immer alles an, woran kann das liegen?

MFG Wayne

Re: Ausgabe in Sections

20. November 2008 11:25

Code:
CurrReport.Showoutput(MeinFeld=1);


Dies muss in der OnPreSection-Trigger derjenigen Section stehen, die ausgeblendet werden soll, wenn DeinFeld <> 1.

Grund, warum dein Code nicht funktioniert hat:
Standardmäßig wird jede Section angezeigt (CurrReport.SHOWOUTPUT = TRUE). Dein Ansatz hätte also lauten müssen:
Code:
IF MeinFeld <> 1 THEN
  CurrReport.SHOWOUTPUT(FALSE);

Dies hätte auch funktioniert.

Re: Ausgabe in Sections

20. November 2008 11:35

Hallo Natalie,

danke für die schnelle Antwort, deine Vorschlag klappt soweit ganz gut, ich habe allerdings noch ein anderes Problem.
Ich habe mehrere Datensätze, ich hole mal etwas weiter aus...
Es geht dabei um Kundennummern und ich möchte diese nur ausgeben wenn der Datensatz eine 1 in einem bestimmten Feld enthält,
nachdem ich jetzt deinen Code probiert habe wird die komplette section nicht mehr ausgegeben.
ich bräuchte die ausgabe aber so:
angenommen ich habe 10 kdnummern davon haben 3 eine 1 im feld eingetragen, dann bräuchte ich nur die 3 mit der 1 in der section als ausgabe die anderen sollen unterdrückt werden.
Gibt es dafür auch eine lösung?

MFG John

Re: Ausgabe in Sections

20. November 2008 11:52

John Wayne hat geschrieben:ich habe schon probiert das eine Feld auf eine 1 zu filtern

Dies war wohl der richtige Ansatz.
Wie hast du das denn probiert?
Wenns ein DataItem ist, das du einschränken möchtest, dann schreibe in dieses DataItem in den OnPreDataItem-Trigger:
Code:
SETRANGE(DeinFeld, 1);

Re: Ausgabe in Sections

20. November 2008 12:03

Ich habe noch eine Kleinigkeit vergessen, ich habe in der Tabelle 2 Felder auf die es ankommt das und zwar habe ich einmal ein feld in dem steht 1 oder 0 also hat der kunde umsatz gemacht oder nicht und dann noch ein 2. Feld in der eine Zahl steht, bei dem Feld handelt es sich um eine Periode.
Insgesamt gibt es in meinem Report 12 Perioden für jede Periode möchte ich wissen ob ein kunde umsatz gemacht hat also habe ich mir 12 section erstellt, wenn ich jetzt direkt auf dem DataItem abgrenze per setrange kriege ich nur eine Periode oder ???

Ich hatte mir gedacht das es so zu lösen sei.

1.Section Body

Table Reset;
Table Key setzten;
Filter auf (Feld1,1) (das ist die Periode)
Filter auf (Feld2,1) (sagt mir ob der Kunde Umsatz gemacht hat)


2. Section

Table Reset;
Table Key setzten;
Filter auf (Feld1,2) (nächste Periode)
Filter auf (Feld2,1) (sagt mir ob der Kunde Umsatz gemacht hat)

aber so scheint es nicht zu klappen?!?!?!

:?: Wie kann ich das nur lösen :?:

Danke nochmals für deine Hilfe

Re: Ausgabe in Sections

20. November 2008 12:09

Bitte nicht unnötig verkomplizieren ;-)
Bitte denke jetzt auf Tabellen -und noch nicht auf Reportebene:
Welche Bedingungen sollen deine Datensätze (unter Berücksichtigung von Umsatz- und Periodenfeld) erfüllen, um überhaupt durchlaufen zu werden?

Erst bei den Datensätzen, die so übrig bleiben, können wir noch nachher über die korrekte Anzeige sprechen.

Re: Ausgabe in Sections

20. November 2008 12:18

der erste Step ist schon getan, sprich die Kunden habe ich schon ausgewertet und die Datensätze die mich interessieren habe ich dann ich eine temporäre Tabelle geschrieben in ein Feld habe ich die Periode geschrieben (1 bis 12) das brauchte ich für einen abgleich damit bestellungen nicht doppelt gezählt werden und in ein anderes Feld habe ich eine 1 geschrieben wenn der Kunde in der Periode Umsatz gemacht hat. Die temporäre Tabelle ist mein 2. Dataitem sozusagen steht dort die Auswertung vom 1. Dataitem drin.
nur muss ich das 2. Dataitem nurnoch 12 abgrenzen auf die Perioden und sobald in einer Periode umsatz gemacht wurde möchte ich die Kundennummer im Report ausgeben.

Ich hoffe das ist einigermaßen verständlich

MFG John

Re: Ausgabe in Sections

20. November 2008 12:21

Was möchtest du ausgeben?
Pro Periode eine Zeile? Und diese auch nur, wenn in dieser Periode Umsatz gemacht worden ist?

Re: Ausgabe in Sections

20. November 2008 13:06

der aufbau soll so aussehen das ich jede kdnr. ausgebe und diese sollen dann immer in den perioden auftauchen in denen sie umsatz gemacht hab

Beispiel:

Body Periode1:

Kunde1
Kunde2
Kunde3

Body Periode2:

Kunde2
Kunde 5
Kunde7

Body Periode3:

Kunde2
Kunde3

etc.

Re: Ausgabe in Sections

20. November 2008 14:12

Das sieht schwer danach aus, als würde ein zwischengefügtes DataItem vom Typ Datum weiterhelfen, so dass nach den Perioden gruppiert werden kann.