in letzter Zeit häufen sich in meinen Programmen Fehlermeldung in der Funktion str() alle betroffenen Zeilen haben die letzten 10-20 Jahre OHNE solche Fehlermeldungen gearbeitet.
Der Funktion wird jeweils das Ergebnis einer Rechnung z.B. aus 2 Datenbankfelder übergeben:
Code: Alles auswählen
?? str(field->skontoabz/(field->skontober/100),10,1)
------------------------------------------------------------------------------
oError:args :
-> VALTYPE:N
VALUE: 0.00
-> VALTYPE:N
VALUE: 10
-> VALTYPE:N
VALUE: 1
canDefault : F
canRetry : F
canSubstitute: T
cargo :
description : Ungültiger numerischer Wert für Operation
filename :
genCode : 12
operation : str
osCode : 0
severity : 2
subCode : 5
subSystem : BASE
thread : 1
tries : 0
Beide Datenbankfelder sind vom Typ "N" Nummerisch Länge 10 Stellen, 2 Dez. Stellen. Ein oder beide Werte können 0 enthalten.
Division durch 0 ist im Errorhandler abgefangen so dass jeweils 0 Zurückgegeben wird.
Der Zugriff auf die Datenbank erfolgt über ADSDBE.
Xbase-Version 2.0.807
ADS-Version 10.10.0.49 axcws32.dll Version 10.10.0.49
Es ist nicht nur obige Zeile betroffen, sondern viele verschiedene Zeilen mit jeweils unterschiedlichen Auswertungen(Rechnungen).
Der Fehler kann nicht bewusst herbeigeführt werden.
Er schlägt sporadisch zu, Tagelang gar nicht, dann wieder mehrfach.
Obige Zeile ist seit über 20 Jahren im Code, die vergangenen Jahre hat es auch nicht ein Problem gegeben, erst seit einer der letzten Xbase Versionen häufen sich diese Fehler auf eine Anzahl die der Kunden nicht mehr aktzeptiert.
Kennt jemand diese neue Erscheinung?
Gruss Carlo