25. Februar 2013 14:43
Hallo zusammen,
ich habe hier leider ein Problem, welches ich einfach nicht nachvollziehen kann.
Es gibt einen Report, welcher (vorher über ein Flowfield in einer anderen Tabelle, jetzt zur Problemsuche direkt) in einem bestimmten Datumsfenster in der Tabelle Artikelposten zu einzelnen Artikeln die gebuchten Gewichte summiert.
Das Gewicht-Feld "Reflora Kunststoff" ist ein Decimal Feld und hat sicherheitshalber 4:4 DecimalPlaces. Diese 4 Nachkommastellen werden auch ausgereizt.
- Code:
Artikelposten.SETCURRENTKEY(Postenart,"Artikelnr.","Herkunftsnr.",Einheitencode,Reflora,Buchungsdatum);
Artikelposten.SETFILTER(Postenart,'Verkauf');
Artikelposten.SETFILTER("Artikelnr.","Artikelnr.");
Artikelposten.SETFILTER(Einheitencode,Code);
Artikelposten.SETRANGE(Reflora,TRUE);
Artikelposten.SETFilter(Buchungsdatum,GetFilter(Datumsfilter));
Artikelposten.SETFILTER("Herkunftsnr.",'<>11811');
ArtPostFilter:=Artikelposten.Getfilters();
IF Artikelposten.FIND('-') THEN
REPEAT
GesamtKunststoff1 += Artikelposten."Reflora Kunststoff";
Gesamtpappe1 += Artikelposten."Reflora Pappe";
KunststoffNeu+=Artikelposten."Reflora Kunststoff";
PappeNeu+=Artikelposten."Reflora Pappe";
UNTIL Artikelposten.NEXT=0;
Nun soll er über diesen Code die Zeilen summieren. Wie gesagt, vorher war das ein Flowfield in einer anderen Tabelle, brachte mir aber exakt die gleichen Ergebnisse.
Wenn ich nun je einen Quartalsbericht über alle Artikel laufen lassen, bekomme ich schöne und auch sinnvolle Ergebnisse.
Ab jetzt kommt aber das Problem.
Wenn ich einen Filter über das gesamte Jahr laufen lasse, ist es leider etwas weniger als die Summe der Quartale.
Das kann man auch ein wenig runter brechen, die Summe dreier Monate ist größer als direkt das Quartal usw.
Das geht ca. bis auf einen halben Monat und ab dann verschwinden die Differenzen, so dass man einzelne Positionen ausschließen kann.
Für mich liegt nahe, dass es irgendwo Rundungsprobleme gibt, jedoch sind alle Felder und Variablen Decimal und mindestens 4:4.
Zusätzlich meine ich gelesen zu haben, das Navision intern Decimalen eh nicht rundet, aber das weiß ich nicht genau.
Hat hierzu vielleicht irgendwer eine Idee oder noch einen Ansatzpunkt?
Vielen Dank
Gruß Steffen