Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Was bedeutet: Fehler bei Bereichsprüfung (https://www.delphipraxis.net/170495-bedeutet-fehler-bei-bereichspruefung.html)

Jumpy 20. Sep 2012 08:56

Delphi-Version: 6

Was bedeutet: Fehler bei Bereichsprüfung
 
Hallo ich habe ein bestimmtes Programm bisher immer von Hand ausgeführt. Habe es dann auf einen anderen Server verschoben und auch nochmal per Hand ausgeführt. Hat alles funktioniert.
Nun ist es als geplante Task eingerichtet und promt ist es diese nacht nicht korrekt gelaufen.
Aufgrund des Loggings hab ich es auf diese Funktion eingegrenzt:

Delphi-Quellcode:
function TDataCollectorManager.Execute: Boolean;
var q:TADOQuery;
begin
  Result:=true;
  q:=TADOQuery.Create(nil);
  q.SQL.Text:=SQL_Main;
  try
    q.Connection:=Con;
    try
      q.Open;
      while not q.Eof do
        begin
        if not GetAndStoreData(q.FieldByName('Name').AsString,
                               q.FieldByName('ClassName').AsString,
                               q.FieldByName('ParamString').AsString) then
          Result:=false;
        q.Next;
        end;
    except on e:Exception do
      begin
      Result:=false;
      MSG.Info('DCM_Error').Text:=e.Message+CHR(13)+q.SQL.Text;
      end;
    end;
  finally
    q.Free;
  end;
end;
Der Fehler der mir per mail gemeldet wurde sieht so aus:
Code:
Info:
DCM_Error:
Fehler bei Bereichsprüfung
Select * From TRU.DataSources
e.Message scheint also: 'Fehler bei Bereichsprüfung' zu sein.

Was ist das für ein Fehler und wo tritt der auf?

(DB ist Oracle, Zugriff via ADO->ODBC->DB )

Uwe Raabe 20. Sep 2012 09:02

AW: Was bedeutet: Fehler bei Bereichsprüfung
 
Der Fehler kann in irgendeiner der aufgerufenen Methoden auftreten, wenn dort kein Errorlogging gemacht wird - z.B. in GetAndStoreData.

Bernhard Geyer 20. Sep 2012 09:09

AW: Was bedeutet: Fehler bei Bereichsprüfung
 
Zitat:

Zitat von Jumpy (Beitrag 1183667)
(DB ist Oracle, Zugriff via ADO->ODBC->DB )

Hat der Kunde auch den gleichen ODBC-Treiber bzw. die gleiche ADO-Version? Bei Oracle gibt es einige Inkompatiblitäten wenn Treiber nicht mit DB-Version übereinstimmt.

Jumpy 20. Sep 2012 09:33

AW: Was bedeutet: Fehler bei Bereichsprüfung
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1183671)
Der Fehler kann in irgendeiner der aufgerufenen Methoden auftreten, wenn dort kein Errorlogging gemacht wird - z.B. in GetAndStoreData.

Stimmt, soweit hab ich gar nicht gedacht. :wall:
Muss da mal gleich tiefer reinbohren.

Zitat:

Zitat von Bernhard Geyer (Beitrag 1183672)
Zitat:

Zitat von Jumpy (Beitrag 1183667)
(DB ist Oracle, Zugriff via ADO->ODBC->DB )

Hat der Kunde auch den gleichen ODBC-Treiber bzw. die gleiche ADO-Version? Bei Oracle gibt es einige Inkompatiblitäten wenn Treiber nicht mit DB-Version übereinstimmt.

Da ist alles gleich. Habe nur vom Entwicklungsrechner auf einen Server verschoben. Maximal der Oracle Client ist dort neuer, daher ggf. auch der ODBC-Treiber. Test ich nochmal genauer.

Danke schonmal für die Hinweise.

Kann mir vllt. nur noch jemand sagen, was ich mir unter dem Fehler vorstellen kann? Bereichsprüfung? Hilft mir betimmt bei der Suche an welchen Stellen es auftreten könne. Danke.

Medium 20. Sep 2012 10:33

AW: Was bedeutet: Fehler bei Bereichsprüfung
 
Die Bereichsprüfung ist eine Compiler-Option in den Projektoptionen. Es ehrt dich ja, dass du die überhaupt eingeschaltet hast ;)

Ursache sind hier meist Griffe hinter oder vor den gültigen Bereich von Arrays.

Bernhard Geyer 20. Sep 2012 11:33

AW: Was bedeutet: Fehler bei Bereichsprüfung
 
Zitat:

Zitat von Medium (Beitrag 1183694)
Ursache sind hier meist Griffe hinter oder vor den gültigen Bereich von Arrays.

Es könnten auch zuweisungen zu Aufzählungstypen (Enums) sein die falsche werte haben. Und hier könnte evtl. der oracle-Treiber ein Feldtypen liefern den Delphi nicht korrekt zuweisen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz