Report Problem

6. Januar 2016 14:37

Hallo zusammen,
nach langer Zeit habe ich mal wieder mit NAV zu tun. Diesmal in der Version 2013 R2. Ich habe jetzt ein kleines Problemchen bei dem ich den Grund für das Verhalten nicht herausfinden kann und natürlich auch keine Lösung finde die auch funktioniert.

Ich habe hier einen Report (Custom "Zahlungsavis") bei dem ich folgenden Code eingefügt habe:
Code:
IF Vend.GET(PaymLine2."Account No.") THEN
  OurAccNo := Vend."Our Account No."
ELSE
  OurAccNo := '';


Das funktioniert auch soweit, allerdings nur bei einem Datensatz. Soll der Report mehr als einen Datensatz verarbeiten, also mehr als 1 Seite ausgeben, dann ist die erste Seite richtig und auf allen nachfolgenden Seiten wird nicht jeweilige Account Nummer sondern die von Seite 1 (dem 1. Datensatz) eingetragen.
Habe ich da einen Fehler gemacht oder muss ich an anderer Stelle nach der Ursache suchen?

Vielen Dank für Eure Mühe

Re: Report Problem

6. Januar 2016 15:39

Die Variable muss gelöscht werden, bevor der nächste Datensatz gelesen wird, sonst steht da immer der Wert
der ersten Abfrage drin.

Re: Report Problem

6. Januar 2016 15:54

Hallo,

die Variable ist wahrscheinlich nicht das Problem. Wo gibst du Das Feld denn aus, In einem Header, oder im Body des Berichts?

Gruß Fiddi

Re: Report Problem

6. Januar 2016 15:58

Danke für die Antworten.

Also ich das mal mit einem CLEAR versucht, da ändert sich allerdings nichts.

Das Feld wird im Header Bereich ausgegeben. Kann das zu Problemen kommen wenn ich so etwas im Header Bereich versuche?

Re: Report Problem

6. Januar 2016 17:15

Ich gehe mal davon aus dass es sich um das Zahlungsavis aus dem akquinet Zahlungsverkehr handelt und dein Code im DataItem "PaymLine2" steht. Ich würde dann im DataItem "PaymLedgEntry" im "OnAfterGetRecord" Trigger die Variable leeren:
OurAccNo := '';

Das hatte "RaiNav" gemeint.

Re: Report Problem

6. Januar 2016 17:42

Das Feld wird im Header Bereich ausgegeben.


Nun, wenn das Feld im Header- Bereich eines Berichts ausgegeben wird, dann kann dort immer nur der Wert aus dem ersten Datensatz, der ans RDLC übergeben wird, direkt verwendet werden.
Wenn du das nicht möchtest, musst du die Vorgehensweise aus den Belegberichten (z.B. 204) verwenden, die übergeben am Anfang des Bodys die Daten an den Header. Dann kannst du den Wert in dem jeweiligen Feld über code.XXX- Funktionen abfragen.

Gruppenheader haben übrigens die Angewohnheit immer nur den ersten Gruppenheader zu wiederholen, d.h. Überträge oder ähnliches in einem Groupheader funktioniert nicht. :-(

Zum löschen der Variable: Wenn die IF- Abfrage an der korrekten Stelle im OnAftreGetrecord steht, dann ist "OurAccNo" in jedem Fall korrekt initialisiert.

Gruß Fiddi

Re: Report Problem

7. Januar 2016 09:17

Vielen Dank an alle, ich denke diese Tipps bringen mich ein gutes Stück weiter.
Ich werde mich nachher damit einmal auseinandersetzen wenn mir die Zeit dazu bleibt.

Ich werde dann noch eine Rückmeldung dazu geben.