FlowField in temp. Tabelle

14. September 2009 13:06

Hallo zusammen,

ich habe vor einiger Zeit eine kleine nette Serien-/Chargenverfolgung geschrieben, deren Ausgabe eine temporäre Tabelle ist. Heute kam unser Controlling an und wollte zwei neue Spalten in der Tabelle haben. Und zwar die Spalten "Einstandsbetrag (tatsächlich)" und "Verkaufsbetrag (tatsächlich)". Da die temporäre Tabelle ähnlich der Artikelposten aufgebaut ist, habe ich mir einfach die FlowFields aus der "Item Ledger Entry" rüberkopiert und eingefügt. Damit dachte ich nun das Problem schnell behoben zu haben aber nix da. Ich rufe mein Form auf und alle Werte sind 0. Wenn ich hinter den FlowFields in die Wertposten abtauchen stehen dort alle Werte korrekt drin. Das heißt eigentlich is das FlowField korrekt (is ja auch nur simple kopiert), aber er zeigt halt im Feld selber immer nur 0 an.

Steh gerade irgendwie auf dem Schlauch!?!? Kann man FlowFields etwa nicht in temporären Tabellen verwenden?

Danke schonmal für Eure Hilfe
Christoph

Re: FlowField in temp. Tabelle

14. September 2009 13:50

Christoph hat geschrieben:Kann man FlowFields etwa nicht in temporären Tabellen verwenden?
Doch, kann man.

Mal wieder freudig geraten: wenn du allerdings deine Flowfields 1:1 aus der Item Ledger Entry kopiert hast, können sie nicht funktionieren, da die CalcFormula auf die Entry No. des Artikelpostens zurückgreift. Die ist aber mit ziemlicher Sicherheit in deiner Tabelle anders. Das heisst, dass du über den Drilldown in der Form zwar Wertposten angezeigt kriegst, diese aber falsch sein müssten.

Re: FlowField in temp. Tabelle

14. September 2009 13:52

CALCFIELDS fehlt bei der Berechnung.

Z.B.
Code:
CALCFIELDS("Cost Amount (Actual)");


**Edit by Mikka**
Wenn die Felder wie McClane schreibt kopiert wurden, stimmt dann kann evtl. die Berechnung der CALCFORMULAR nicht Stimmen.
Wenn es z.B. über einen Report läuft (und der die Felder füllt) müsste CALCFIELD ausgeführt werden

Re: FlowField in temp. Tabelle

14. September 2009 13:57

mikka hat geschrieben:CALCFIELDS fehlt bei der Berechnung.
Nicht, wenn das Feld in der Form angezeigt wird, oder?

Re: FlowField in temp. Tabelle

14. September 2009 14:14

Hallo Christoph,

das Problem ist, dass dein Flowfield nicht mit temporären Datensätzen umgehen kann. Das heisst es sucht nach Datensätzen die "wirklich" in der DB stehen. Wenn ich nicht komplett falsch liege wird du wohl nicht umhin kommen deine Kalkulation auszuprogrammieren.

Gruß Jan

Re: FlowField in temp. Tabelle

14. September 2009 14:18

McClane hat geschrieben:
mikka hat geschrieben:CALCFIELDS fehlt bei der Berechnung.
Nicht, wenn das Feld in der Form angezeigt wird, oder?


Wir haben uns vermutlich überschnitten, ich habe meinem Beirtrag nachträglich Editiert!

Du hast recht,
ich habe den Text oben erst anders Interpretiert, das die Werte kopiert werden (nicht die Felder selbst), dann müsste ein CALCFIELDS aus geführt werden.

**Kleiner Nachtrag beim schreiben**
Jetzt lese ich beim Schreiben meines Betrags den von Jan und komm ins grübeln (ober er Recht hat?! :mrgreen: )

Re: FlowField in temp. Tabelle

14. September 2009 14:20

Doch wir haben extra die Tabelle so aufgebaut, dass die Felder identisch zu den Artikelposten sind. Daher ist Entry No. auch die echte Entry No.
Könnte gerade echt ausrasten... ich war mir 100% sicher, dass das geht und habs in meinem Frust jetzt auf einer neuen 2009 Datenbank ausprobiert und da funktionierts... Selbe Tabelle, selbe Codeunit, selbes Form. Sieht für mich irgendwie wie ein NAV Bug aus!?!?!?

Ich schätze mal, den Topic kann man direkt wieder schließen... :-(

Re: FlowField in temp. Tabelle

14. September 2009 14:24

Ich sehe gerade, dass meine Antwort irgendwie am Thema vorbei ging...es geht ja nicht um ein Flowfield auf eine temporäre Tabelle...dann sollte das eigentlich funktionieren. Hast du die CalcFormula denn wirklich kopiert oder abgetippt? Könnte es evtl. sein, dass du zwar die richtigen Filter angegeben hast dann aber irgendein Feld summierst dass 0 ist?

Re: FlowField in temp. Tabelle

14. September 2009 14:28

Das geht auch in 5.0, 100%ig :-?

Re: FlowField in temp. Tabelle

14. September 2009 15:18

Wie gesagt in 2009 funktionierts. In 5.0 SP1 ebenfalls. Ich bin mir gerade net sicher, ob das vielleicht nur unsere Datenbank is. Is halt Objektseitig 3.70b und technisch 5.0 SP1. Müsste aber eigentlich trotzdem gehen... verwirrend :?:

Re: FlowField in temp. Tabelle

14. September 2009 15:53

Christoph hat geschrieben:verwirrend
Du sagst es :-?

Re: FlowField in temp. Tabelle

2. September 2010 10:54

Guten Morgen zusammen,

ich habe in Version 5 das gleiche Problem. Glaube ich zumindest....

Muss aber dazu sagen, dass ich mit den temp. Tabellen keinerlei Erfahrung habe.
Hier ist meine Funktion:
Code:
TempItemLedgEntry.DELETEALL;
ValueEntryRelation.SETCURRENTKEY("Source RowId");
ValueEntryRelation.SETRANGE("Source RowId",RowID);
IF ValueEntryRelation.FIND('-') THEN BEGIN
  REPEAT
   ValueEntry.GET(ValueEntryRelation."Value Entry No.");
   ItemLedgEntry.GET(ValueEntry."Item Ledger Entry No.");
   ItemLedgEntry.CALCFIELDS(ItemLedgEntry."Sales Amount (Actual)",ItemLedgEntry."Cost Amount (Actual)",
   ItemLedgEntry."Cost Amount (Expected)");
   TempItemLedgEntry := ItemLedgEntry;
   //Message(FORMAT(TempItemLedgEntry."Sales Amount (Actual)"));
  TempItemLedgEntry.INSERT;

  UNTIL ValueEntryRelation.NEXT = 0;
END;

Die Message Geschichte war nur mal zum Testen und wenn ich die aktiviere erscheinen die Wete auch fleißig... aber eben nicht auf meinem Ausdruck.
Die TempItemLedgEntry ist als record Item Ledger Entries deklariert und eben tempörär... also sollte sie ja identisch sein.

Hat vielleicht jemand aktuell doch noch eine Lösung parat? Hatte da beim Experimentieren mal irgendwann Werte drin, aber da hatte ich den Ausruck im falschen DataItem. Jetzt ist dieser in Integer und da klappt
es nicht mehr.

Vielen Dank euch

Regards
Thomas

Re: FlowField in temp. Tabelle

2. September 2010 10:58

Oh war ja ganz einfach,

hab die Calcfields geschichte in den OnAfterGetRecordTrigger geschrieben... dann gings... :-D

Danke und Gruß
Thomas