Einzelnen Beitrag anzeigen

Benutzerbild von Ritsch
Ritsch

Registriert seit: 15. Apr 2014
Ort: Wolfenbüttel
33 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Access Violation - OnFilterRecord - UniDAC

  Alt 21. Okt 2016, 10:50
Datenbank: Sybase • Version: 10 • Zugriff über: ODBC
Hallo.

Unsere Software wurde bisher mit RAD Studio XE7 entwickelt.
Jetzt möchten wir auf 10.1 Berlin umsteigen und stoßen dabei auf ein erhebliches Problem.
Wir verwenden die UniDAC DB-Komponenten.

An unserem TUniTable arbeiten wir dem Event "OnFilterRecord".

Dort ist bspw. folgender Code

Delphi-Quellcode:
begin
  inherited;
    Accept:= (DataSet.FieldByName('D10B00000_Aktiv').AsInteger = 1);
    Accept:= (Accept and (StrToInt64Def(DataSet.FieldByName('D10B00000_ModulNr').AsString, -1) = Self.oMyD11D00000Config.iModulNr));
    Accept:= (Accept and (StrToInt64Def(DataSet.FieldByName('D10B00000_ModulUnterNr').AsString, -1) = 1));
end;
Dieser Code funktioniert tadellos wenn ich das Projekt mit XE7 erstelle.

Unter 10.1 Berlin bekomme ich nun allerdings eine Access Violation, allerdings erst beim zweiten Öffnen eines Datensatzes.
D.h. ich öffne das Programm bzw. das Modul, öffne einen Datensatz und das Event arbeitet korrekt.
Schließe ich jetzt den Datensatz und öffnen den gleichen oder einen anderen Datensatz erneut, bekomme ich eine Access Violation.
Wenn ich vorher das komplette Modul schließe und wieder öffne, funktioniert es wieder beim ersten Datensatz.

Irgendwelche Tipps?

Gruß
Richard
  Mit Zitat antworten Zitat