Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 09:43

Hallo zusammen,

Ich soll für einen Kunden von meiner Firma den Report so anpassen, das bestimme Sachkonten in der Summen Saldenliste nicht beachtet werden.

Dafür habe ich nun die Tabelle 15 um das Feld "SkipInGLTotal" (Boolean) erweitert. Insofern der Wert auf TRUE gesetzt ist, soll dieses Sachkonto im Report 11002 nicht beachtet werden, und dementsprechend nicht mit in die Summen Saldenliste.

Bisher habe ich es leider nur geschafft, dass wenn ich den Report drucke, die Werte für die einzelnen Sachkonten nicht angezeigt werden, jedoch bei der Summe werden diese noch beachtet.
Nun weiß ich leider nicht genau, wie ich meinen Code anpasse, damit die Werte bei der Summe auch nicht beachtet werden.

Hier ist der Code, des OnAfterGetRecord()-Triggers:
Code:

IF ("G/L Account".GETFILTER("G/L Account"."No.") <> '') THEN
  IF (("Account Type" = "G/L Account"."Account Type"::Total) OR
      ("Account Type" = "G/L Account"."Account Type"::"End-Total")) THEN
      "G/L Account".Totaling := '(' + Totaling + ')' + '&' + '(' + "G/L Account".GETFILTER("G/L Account"."No.") + ')';

IF "G/L Account".SkipInGLTotal = FALSE THEN BEGIN

SETRANGE("Date Filter",0D,CLOSINGDATE(YearStartDate-1));
CALCFIELDS("Net Change");
IF "Net Change" <> 0 THEN
  IF "Net Change" > 0 THEN
    StartBalanceType := StartBalanceType::Debit
  ELSE
    StartBalanceType := StartBalanceType::Credit
ELSE
  StartBalanceType := 0;
StartBalance := ABS("Net Change");

SETRANGE("Date Filter",StartDate,EndDate);
//+
IF JahrEndeIst3112 THEN
  SETRANGE("Date Filter",0D,AccountingPeriod."Starting Date" - 1);
//-
CALCFIELDS("Debit Amount","Credit Amount");
PeriodDebitAmount := "Debit Amount";
PeriodCreditAmount := "Credit Amount";

SETRANGE("Date Filter",0D,EndDate);
CALCFIELDS("Net Change");
IF "Net Change" <> 0 THEN
  IF "Net Change" > 0 THEN
    PeriodEndBalanceType := PeriodEndBalanceType::Debit
  ELSE
    PeriodEndBalanceType := PeriodEndBalanceType::Credit
ELSE
  PeriodEndBalanceType := 0;
PeriodEndBalance := ABS("Net Change");

SETRANGE("Date Filter",YearStartDate,EndDate);
CALCFIELDS("Debit Amount","Credit Amount");
YearDebitAmount := "Debit Amount";
YearCreditAmount := "Credit Amount";

SETRANGE("Date Filter",0D,AccountingPeriod."Starting Date" - 1);
CALCFIELDS("Net Change");
IF "Net Change" <> 0 THEN
  IF "Net Change" > 0 THEN
    EndBalanceType := EndBalanceType::Debit
  ELSE
    EndBalanceType := EndBalanceType::Credit
ELSE
  EndBalanceType := 0;
EndBalance := ABS("Net Change");

SETRANGE("Date Filter",StartDate,EndDate);

AccountTypeInt :=  "G/L Account"."Account Type";
IF NewPage THEN BEGIN
  PageGroupNo := PageGroupNo + 1;
  NewPage := FALSE;
END;
END;

NewPage := "New Page";


Schon mal danke für eure hilfe und liebe Grüße,
Wolfie

Re: Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 11:48

Hallo,
ohne mich jetzt genau in den Report reinzudenken.

Reicht ein Filter im Trigger "G/L Account - OnPreDataitem" nicht aus auf dein neues Feld??
Code:
Setrange(SkipInGLTotal,false);


Alternative über die Properties von dem DataItem "DataItemTableView".


Müsstest du dein Feld auch nicht in die Sachpostentabelle übergeben?
So wie ich sehe werden die Beträge als FlowField zusammengezählt, oder?


Gruß
Aydin

Re: Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 13:02

aydina81 hat geschrieben:Reicht ein Filter im Trigger "G/L Account - OnPreDataitem" nicht aus auf dein neues Feld??
Code:
Setrange(SkipInGLTotal,false);


Alternative über die Properties von dem DataItem "DataItemTableView".

Funktioniert beides nicht. Das Sachkonto wird zwar dann nicht angezeigt, trotzdem wird es bei der Summe beachtet.
Siehe Bild im Anhang.
aydina81 hat geschrieben:Müsstest du dein Feld auch nicht in die Sachpostentabelle übergeben?

Ich glaube eigentlich nicht, bin aber mit NAV noch nicht wirklich vertraut, deswegen lasse ich mich gern eines besseren belehren.

aydina81 hat geschrieben:So wie ich sehe werden die Beträge als FlowField zusammengezählt, oder?

Wie vorher schon kurz erwähnt, bin ich mit NAV noch nicht wirklich zu 100% vertraut. Ich soll auch nur eine Änderung an dem Vorhanden Report durchführen, sprich der ganze Code ist nicht von mir, sondern war schon vorhanden. Ich wüsste nicht, woran ich erkenne ob die Beiträge als FlowField zusammengezählt werden, oder nicht.

Ich hoffe meine Antwort hilft...

Grüße, Wolfie
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 13:44

So wie ich das sehe wird das Feld "Net Change" aus der Tabelle ID 15 Sachkonten ausgelesen.
Das ist ein FlowFIeld und kalkuliert das Feld Amount aus der Sachposten Tabelle ID 17.

Deswegen müsstest du das Feld auch in der Sachposten Tabelle haben um den Filter von dem FlowField "zusätzlich" einzugrenzen.

Alternative wäre, du müsstest deine Summe selbst berechnen per Code, dann wärst du etwas aus dem Standard raus :-)

Im Code selbst werden FlowFields mit "Calcfields" berechnet, daran kannst du es erkennen.

Gruß
Aydin

Re: Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 13:48

aydina81 hat geschrieben:So wie ich das sehe wird das Feld "Net Change" aus der Tabelle ID 15 Sachkonten ausgelesen.
Das ist ein FlowFIeld und kalkuliert das Feld Amount aus der Sachposten Tabelle ID 17.

Deswegen müsstest du das Feld auch in der Sachposten Tabelle haben um den Filter von dem FlowField "zusätzlich" einzugrenzen.


Ich probier das ganze gleich aus! Danke :D

Gruß, Wolfie

Re: Report 11002 - Bestimme Sachkonten nicht beachten

24. Juni 2014 15:38

Hallo,

mal ganz abgesehen von den technischen Schwierigkeiten möchte ich ganz dringend davon abraten, so eine Anpassung zu machen - noch dazu im Originalreport!

Die Summen-Saldenliste ist ein zentrales Abstimmelement der Finanzbuchhaltung. Ich denke die Prüfer werden SEHR begeistert sein, wenn man ihnen eine unvollständige Susa vorlegt, die möglichst noch einen Saldo ausweist.... :roll:

Viele Grüße
Mike