Null Division!!!

22. Oktober 2009 09:13

Guten Morgen @ Community. Ich benötige einen Faktor, mit dem Intern kalkuliert wird. Dieser wird einfach EK-Preis "durch" VK-Preis gerechnet. Jetzt hab ich mir eine Debitor-Statistik generiert, die für unseren Vertrieb als Wichtig erscheint. Nun würde ich gerne diesen Faktor berechnen lassen (Formel unter SourceExpr: (CustSalesLCY[1] - CustProfit[1]) / CustSalesLCY[1]). Dies funktioniert bestens, sofern WERTE dahinter liegen. Ist ein Wert nun noch nicht gefüllt, sprich null erscheint die Meldung "NULLDIVISION 0 / 0" Gibt es irgendein Code, bzw. Option wo ich das umgehen kann, bzw. dass hier zumindest kein Fehler mehr erscheint?!?! => Im Forum hab ich leider nix gefunden
Danke im voraus. Gruß Swen

Re: Null Division!!!

22. Oktober 2009 09:19

Ich habe letztens mal gelesen, dass ein Engländer (glaub ich zumindest) die Nulldivision definiert hat und damit auch auf sinnvolle Ergebnisse kam, aber das hat sich wohl noch nicht durchgesetzt :wink:

Kannst du die Source Expression nicht gegen eine Variable tauschen? Deren Berechnung kannst du ja abfangen, falls der Divisor Null ist.

Re: Null Division!!!

22. Oktober 2009 09:22

Moin und Danke für deinen Post!!! Ich dachte mir, den einfachen Weg zu gehen *g*. Muß mal schaun ob ich das mit einer Variablen hinbekomme!!! Danke

Re: Null Division!!!

22. Oktober 2009 09:23

Guten Morgen Swen,

zuerst: Dein Beitrag wäre deutlich lesbarer, wenn du zwischendurch auch mal die Enter-Taste drückst ;-)

Wie du festgestellt hast, kann man in der SourceExpr nicht nur Variablen, sondern auch Berechnungen eintragen.
Leider kannst du dort keine Fehler abfangen, so dass du eine weitere Variable benötigst, welche das Ergebnis speichert.
Diese Variable wird dann im OnAfterGetRecord gefüllt, sofern CustSalesLCY[1] <> 0 ist:
Code:
OnAfterGetRecord()
IF CustSalesLCY[1] <> 0 THEN
  Result := (CustSalesLCY[1] - CustProfit[1]) / CustSalesLCY[1];

Re: Null Division!!!

22. Oktober 2009 09:31

Hi Timo - Sorry - versuch mich zu BESSERN *g*

Werde das gleich mal testen und berichten.
=> Vielen Dank schon mal

Re: Null Division!!!

22. Oktober 2009 10:04

Alternativ kannst du auch eine Funktion einbauen, und die Funktion mit den 3 Parametern als SourceExpression einbauen. Das hat die Vorteile, dass man die SourceExpression über die Funktionsbezeichnung dann leichter interpretieren kann´und die Funktion ggf. auch leicht woanders weiterverwenden kann.