Einzelnen Beitrag anzeigen

Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: Firebird Procedure liefert null

  Alt 4. Mai 2017, 12:40
Ich bin sicher nicht der Firebird-Spezi, aber was passiert eigentlich hier
Code:
(cast( al.LgNr as Integer) >0 )
wenn LgNr nicht als Integer ge-castet werden kann?

Kann es sein, dass dann für alle funktionierenden Datensätze ein Protokoll geschrieben wird, aber im Fehlerfall die SP im ungültigen Zustand abbricht und dann einen Null-Wert liefert?
Das Protokoll hätte dann zwar Daten, aber ob die vollständig sind, ist nicht geklärt, oder?


Folgendes ist mir auch noch aufgefallen:
INTO :ARTNR, :LGNR, BEREINH, ART_EKNETTO Dort fehlen Doppelpunkte. Wurde zwar irgendwo schon geschrieben, aber ich habe keine Antwort darauf gesehen.

Die Folge könnte sein, das ART_EKNETTO Null ist.
In dem Fall wäre hierdurch
SQL-Code:
LE_EK = (SELECT LE_EK FROM P_GET_LEEK_STICHTAG(:ARTNR, :LGNR, :DATUM));
       IF (LE_EK <= 0 ) THEN
         LE_EK = ART_EKNETTO;
LE_EK auch Null, sobald LE_EK <= 0 ist.
Das muss aber wohl jemand mit genaueren Firebird-Kenntnissen klären.
Peter

Geändert von Jasocul ( 4. Mai 2017 um 12:50 Uhr)
  Mit Zitat antworten Zitat