AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[Firebird]

Ein Thema von MyRealName · begonnen am 18. Mai 2014 · letzter Beitrag vom 19. Mai 2014
Antwort Antwort
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
689 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: [Firebird]

  Alt 19. Mai 2014, 14:05
In diesem Container kommt der Wert (wenn die SP unter Delphi aufgerufen wird) als 422.23999 an (die SP nutzt nur die Nummer des Dokuments als Parameter, der Wert der Einheiten wird drin erst festgestellt), obwohl die Quell - Tabelle 422.24000 als Wert hat.
Rufe ich diese SP allerdings im SQL Tool auf, geht es korrekt.
Woher weißt Du denn daß einmal 422.23999 und einmal 422.24000 genutzt werden?
Solltest Du dafür zwei unterschiedliche Programme/Tools nutzen, ist das der berühmte Vergleich Äpfel/Birnen.

Wenn die SP (StoredProcedure einer Datenbank) als Parameter die ID eines Datensatzes übergeben bekommt und keine Weiteren Parameter unter der Hand (Nebeneffekt) geholt werden, dann sollte das Ergebnis bei der selben ID immer das selbe sein.

Gruß
K-H
mit falschem Wert nach dem Speichern des Wareneingangs :
http://puu.sh/8Styd.png

Nach dem Ausführen der SP in einem Datenbank-Explorer :
http://puu.sh/8StAY.png

Derselbige zeigt auch jeweils diese Werte an. Und ja, ich denke auch, dass das Ergebnis immer dasselbe sein sollte. Ist es aber nicht.
  Mit Zitat antworten Zitat
Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
689 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: [Firebird]

  Alt 19. Mai 2014, 15:37
Also nach langer Suche habe ich das folgende herausgefunden :

1. Delphi hat nichts damit zu tun. Es ist ein Bug im Firebird 64bit

Der Unterschied war dass ich in der Datenbank die SP direkt aufgerufen habe, wenn ich von Delphi aus das getan habe, ging das über eine Zwischen-SP, die mir das Arbeiten mit verschiedenen Typen von Dokumenten vereinfacht zu einem Aufruf.
Rufe ich die SP direkt auf, alles ok. Rufe ich die Zwischen-SP auf, welche dann die finale SP mit den gleichen Parametern aufruft, kommt es zu diesem Fehler.
Ich konnte das auch in Delphi nachvollziehen, wenn ich den Aufruf änderte und in Delphi direkt die SP aufgerufen habe, dann funktionierte es.

Ausserdem konnte ich dann nachvollziehen, dass das nur in Firebird x64 passiert. Als ich den deinstalliert habe und dafür den 32bit draufgehauen habe, ging alles, egal wie ich die SP aufrief, direkt, indirekt oder von Delphi.

Konklusion : Bei den Kunden den firebird 64bit runter und nur nch 32bit drauf.

Danke an alle, die versucht haben, zu helfen.
Ist scheinbar kein Problem, was hier im Forum gelöst werden kann.
Ich probier mal, ein Beispiel in einer extra DB zusammenzubauen und es an die Entwickler zu senden.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: [Firebird]

  Alt 19. Mai 2014, 15:46
Ich probier mal, ein Beispiel in einer extra DB zusammenzubauen und es an die Entwickler zu senden.
Danke
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz