Seite 2 von 2

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 11:18
von Koverhage
Jan,

auch ich habe das hier schon öfters gehabt.
Bei der Zuweisung bzw dort wo der Wert für die Zuweisung errechnet wird läuft was schief.
Woher kommt der Wert bzw. wo wird der errechnet. Dieser Wert hat so viel Nachkommastellen, das Xbase++
diese nicht darstellen kann, demzufolge wird auch nur 0 angezeigt.

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 11:33
von brandelh
Nochmal, wenn der Fehler EINMAL aufgetreten ist und nicht nachgestellt werden kann, dann liegt es NICHT am Programm !

du kannst aber mal bei Alaska nachfragen wodurch normalerweise solche "Fehler" auftreten ... denn die haben ja so eine Fehlermeldung vorgesehen ;-)

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 11:54
von Koverhage
Hubert,

so ganz kann ich dem nicht zustimmen.
Das Problem bei der Division durch 0 ist: Es kommt keine Fehlermeldung zu dem Zeitpunkt an dem die Division durchgeführt wird.
Eine Fehlermeldung kommt erst, wenn irgendwas mit dem Ergebnis gemacht werden soll.

Deswegen meine Frage, wo der Wert zugewiesen wird.

Das ist wie mit dem Kinder kriegen. Wenn das Kind kommt, ist der ursächliche Zeitpunkt längst vorbei :lol:

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 11:54
von Herbert
Hubert, verstehe dich hier nicht. Niemand schrieb von nur einmaligem Fehler beim Kunden.
Koverhage hat geschrieben:Jan,
auch ich habe das hier schon öfters gehabt.
Bei der Zuweisung bzw dort wo der Wert für die Zuweisung errechnet wird läuft was schief.
Woher kommt der Wert bzw. wo wird der errechnet. Dieser Wert hat so viel Nachkommastellen, das Xbase++
diese nicht darstellen kann, demzufolge wird auch nur 0 angezeigt.
Ja, das sollte der Ansatz sein.
Daher berechtigt sich die Frage, wie der Wert als 0 dargestellt, entsteht. An diesem Punkt könntest du eine Prüfung erstellen (wenn kleiner 0.001, dann 0 einfüllen).

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 11:59
von Jan
Herbert,

na, das ist einfach: Es wird dem Arrayfeld := 0 zugewiesen. So kommt die da rein.

Jan

Re: Erklärung für Fehlermeldung?

Verfasst: Do, 21. Aug 2014 12:40
von brandelh
Herbert hat geschrieben:Hubert, verstehe dich hier nicht. Niemand schrieb von nur einmaligem Fehler beim Kunden.
Der Thread ist von JAN, einige haben Probleme mit Division durch 0, das geht aber an JANs Frage vorbei !
JAN hat selbst gesagt, er kann den Fehler bei sich nicht nachstellen.

Daher meine Feststellung ;-)

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 6:33
von Jan
Ich habe von Alaska eine Rückmeldung bekommen:
Alaska Software hat geschrieben:Der Fehler ist eine overflow oder underflow Exception bei der Rechnung
mit Fließkomma Werten. Die Null auf der linken Seite der Multiplikation
ist wahrscheinlich das Resultat einer fortgesetzen Multiplikation oder
Division wo am Ende das Ergebnis fast – aber nicht ganz genau Null ist.
In diesem Fall führt eine erneute Operation mit eben dieser Null zu
besagtem Laufzeitfehler.
OK, zwar kann ich das nicht direkt nachvollziehen, aber genau dieser Gedanke war ja hier in den Antworten auch schon geäußert worden.

Nur: Es gibt da keine Berechnung! Die Null ist direkt zugewiesen worden. Ich werde da also nochmal nachhaken.

Jan

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 7:34
von brandelh
Besonders da in deiner Zuweisung und Berechnung ja keine Kommazahlen vorkommen, oder habe ich da was übersehen ?
Dann dürfte intern auch gar keine Fließkommaberechnung in Verwendung sein.

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 8:00
von Herbert
Wieso multiplizierst du denn überhaupt, wenn die null zugewiesen wird??

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 8:59
von Jan
Hallo Herbert,

das Arrayfeld wird mit 0 initialisiert. Später kommen da aber Berechnungen drauf, die das ändern. Und diese Werte sind dann Basis für weitere Berechnungen. Mögliche Zuweisungen sind:
  • 0
  • 1
  • 2
  • 3
  • [andereArrayZeileInDiesemArray][13] * 2
  • [andereArrayZeileInDiesemArray][13] * 2 + 1
Mehr gibt es nicht! Wer es genauer wissen will: Es geht um de Berechnung der Kekule-Nummer, eine wichtige Größe in der Genealogie/Familienforschung. Details für den, den das näher interessiert, gibt es hier http://de.wikipedia.org/wiki/Kekule-Nummer

Jan

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 9:00
von Jan
Hubert,

richtig, es gibt keinerlei Komma-Zahlen in diesen Berechnungen. Immer Ganzzahlen (siehe auch meine Antwort auf Herbert)

Jan

Re: Erklärung für Fehlermeldung?

Verfasst: Fr, 22. Aug 2014 11:22
von Herbert
Unglaublich.
Schade, dass xbase keine Variablentypisierung kennt.
Das Ganze mit INT(..) lösen ist auch wahnsinnig.
Da muss dir Alaska helfen.

Re: Erklärung für Fehlermeldung?

Verfasst: Mi, 02. Feb 2022 12:34
von CRT
Nur zur Info: Habe diese Fehlermeldung heute 02.02.22 zum ersten Mal. Auf unterschiedlichen Geräten.
Ich übergebe ebenfalls eine Konstante ohne irgendwelche Berechnungen. Der Fehler tritt bei einem seit Jahren unveränderten Code auf.
Werde einfach mal die EXE überschreiben und die DBF kopieren. MAl sehen ob es hilft.

lg

Re: Erklärung für Fehlermeldung?

Verfasst: Mo, 07. Feb 2022 9:51
von CRT
Exe neu installieren hat geholfen! Dürfte defekt geworden sein. Exe liegt auf dem Server.