[Gelöst]Report mit mehreren FlowFiltern auf einen DateItem

6. Oktober 2010 19:04

Hi,

ich muss gerade einen Report erstellen, der die durchschnittliche Verweildauer von Artikeln im Lager berechnet. Dieser Bericht soll mehrere Jahre umfassen, sodass ich mehrere FlowFilter/DateFilter setzen muss. Grundlage ist das DataItem "Item" Leider komme ich hier nicht weiter.

Unter anderem möchte ich zum Beispiel den Lagerbestand (Anfangsbestand) bestimmen. (z.B. zum 31.03.2007). Danach möchte ich den Endbestand (für das Geschäfts-Jahr bestimmen, z.B. 01.04.2007..31.03.2008) usw.

Leider erhalte ich immer nur die gleichen Werte, nämlich den aktuellen Lagerbestand. Ich dachte sowas wie (bei eingeschalteten CalcField by )
Code:
OnAfterGetRecord()

SETRANGE("Date Filter", 010408D, 310309D );
EnterCell(RowNo, 5, FORMAT(Inventory), '', FALSE, FALSE, FALSE);
EnterCell(RowNo, 6, FORMAT("Sales (Qty.)"), '', FALSE, FALSE, FALSE);


müsste funktionieren. Leider tut es das nicht. Hat jemand einen Tipp für mich?

Viele Grüße,

Janosch
Zuletzt geändert von janosch am 9. November 2010 12:52, insgesamt 1-mal geändert.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

6. Oktober 2010 20:41

Inventory ist ein FlowField. Du musst es zuerst mittels
Code:
CALCFIELDS(Inventory);
berechnen lassen.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

7. Oktober 2010 09:26

Hallo.

da Inventory ein NICHT datumsabhängiges FlowField ist, sollte man hier stattdessen "Net Change" verwenden.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

7. Oktober 2010 09:33

Hallo Janosch,

Deine Anforderung wird sich wohl nur mit mehreren Dataitems auf Basis der Tabelle Item realisieren lassen.

Etwa in der Form Item, Item1, Item2

Für jedes Dataitem kannst Du dann eine abweichende Filterung (Jahr 1, Jahr 2 usw.) vornehmen.
Für jedes Dataitem auch den Calcfields-Befehl wie Natalie beschrieben hat, eintragen.

Nun kannst Du aus jedem Dataitem die fraglichen Werte abfragen: Item.Inventory, Item1.Inventory
Evtl. musst Du nicht Inventory anfrage, sondern das Feld "Net Change" (Bewegung), dies reagiert auf Flowfields, inventory nicht.

Das sollte dann die gewünschten Werte liefern.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

7. Oktober 2010 13:56

RaiNav hat geschrieben:Evtl. musst Du nicht Inventory anfrage, sondern das Feld "Net Change" (Bewegung), dies reagiert auf Flowfields, inventory nicht.

Beide Felder sind Flowfields und reagieren auf Flowfilter. Einziger Unterschied: Bei "Inventory" ist kein "Date Filter" in der Formel, und deswegen für diesen Zweck auch nicht nutzbar. Mit "Net Change" und Item1,Item2 etc. aber kein Problem.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

7. Oktober 2010 15:14

Hi,

dachte das DateFilter schon möglich ist, weil in Sales (Qty.)
Code:
-Sum("Value Entry"."Invoiced Quantity" WHERE (Item Ledger Entry Type=CONST(Sale),Item No.=FIELD(No.),Global Dimension 1 Code=FIELD(Global Dimension 1 Filter),Global Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Drop Shipment=FIELD(Drop Shipment Filter),Variant Code=FIELD(Variant Filter),Posting Date=FIELD(Date Filter)))


enthalten.

Viele Grüße,

Janosch

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

8. Oktober 2010 01:26

janosch hat geschrieben:Hi,
dachte das DateFilter schon möglich ist, weil in Sales (Qty.)
enthalten.

Da ist er dabei, aber eben nicht bei "Inventory". Das ist immer der aktuelle Bestand.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

8. Oktober 2010 14:27

Hallo Kowa,

zunächst einmal Danke für deine Antworten.

Kowa hat geschrieben:Da ist er dabei, aber eben nicht bei "Inventory". Das ist immer der aktuelle Bestand.


Mein Fehler, da habe ich mich "verlesen".

Trotzdem wundert mich eins bzw. hat mich das gaaaaanz schön ins Schwitzen gebracht. Wenn ich zum Beispiel auf der Artikelkarte einen Flowfilter mit Datefilter setze, verändert sich der Lagerbestand schon. Beim Prüfen des Felds Inventory habe ich folgendes gefunden:

Code:
Sum("Item Ledger Entry".Quantity WHERE (Item No.=FIELD(No.),Global Dimension 1 Code=FIELD(Global Dimension 1 Filter),Global Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Drop Shipment=FIELD(Drop Shipment Filter),Variant Code=FIELD(Variant Filter),Lot No.=FIELD(Lot No. Filter),Serial No.=FIELD(Serial No. Filter),Posting Date=FIELD(Date Filter)))

Posting Date=FIELD(Date Filter)

Damit müsste es dann doch gehen. Wahrscheinlich eine Anpassung in unserem System... oder verstehe ich hier etwas falsch?

Viele Grüße,

Janosch

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

8. Oktober 2010 14:46

janosch hat geschrieben:Damit müsste es dann doch gehen. Wahrscheinlich eine Anpassung in unserem System... oder verstehe ich hier etwas falsch?

Ja,das ist eine unbedachte Anpassung. Derjenige, der den "Date Filter" in die Formel gesetzt hat, hat was falsch gemacht :wink: . Leider ist das Feld "Net Change" einigen nicht bekannt, obwohl es das am Sachkonto, Debitor, Kreditor etc. genauso gibt. Bevor man den entfernt, müsste aber geprüft werden, wo das "Inventory" bei eigener Programmierung verwendet wurde und den Code dann auf "Net Change" umstellen.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

8. Oktober 2010 14:55

Hallo Kai,

Kowa hat geschrieben: ja,das ist eine unbedachte Anpassung. Derjenige der den "Date Filter" in die Formel gesetzt hat, hat was falsch gemacht.


Wie schön, wieder ein wenig klüger. Aber warum ist da jetzt was falsch? Liefert es falsche Ergebnisse (Lagerbestände)? Oder ist das von der Performance falsch/ungünstig?

Kowa hat geschrieben:Bevor man den entfernt, müsste aber geprüft werden, wo das verwendet wurde und den Code dann auf "Net Change" umstellen.

Leider verstehe ich den Satz nicht so recht. Es MUSS/SOLLTE also entfernt und durch "Net Change" ersetzt werden. Aber warum muss ich gucken wo es verwendet worden ist? Z.B. bei mir in meinen Report würden, wenn dem so ist das man andere Ergebnisse erhält, ja nur der Wert sich ändern. Oder täusche ich mich hier?

Viele Grüße,

Janosch

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

8. Oktober 2010 16:00

Der Standard erwartet, dass "Inventory" nicht auf einen gesetzten Datumsfilter reagiert. Das kann zu Fehlberechnungen bei Verfügbarkeitsberechnungen, Bestellvorschlägen etc. führen.

Eigene Anpassungen, die erwarten, dass "Inventory" nun doch auf einen gesetzten Datumsfilter reagiert, liefern nach Rückbau der Formel u.U. falsche Werte und müssen auf "Net Change" umgeschrieben werden.

Re: Report mit mehreren FlowFiltern auf gleichen DateItem

9. November 2010 12:51

Habe meinen Report auf Net Change umgestellt. Den Rückbau von Inventory (dann ohne DateFilter) steht noch an.

Vielen Dank für die Hilfe.
Gruß Janosch