Fragen zur Integration in Produkte von Fremdherstellern (FireDAC)
Eine Liste mit Fragen und Antworten zur Integration in Produkte von Fremdherstellern.
F1: Gibt es ein FastReport-Add-on (oder ein anderes) und wird es offiziell unterstützt?
A: Bitte wenden Sie sich an FastReport.
F2: Unidirektionale Abfrage und DevExpress-Tabelle. Bei "Query.FetchOptions.Unidirectional = True" wird TDataset(Query) nicht auf Unidirectional gesetzt (TDataset(Query).IsUnidirectional = False). Aufgrund dessen entstehen Probleme mit der DevExpress-Tabelle.
A: Das Problem liegt daran, dass durch Setzen von TDataset(Query).IsUnidirectional auf True die Funktionalität von TFDDataSet außer Kraft gesetzt wird. Gegenwärtig gibt es keine richtige Lösung, und weitere Nachforschungen sind nötig. Ändern Sie zur Vermeidung dieses Problems die DevEx-Quelldatei. Führen Sie dazu Folgendes aus:
- Öffnen Sie die Unit "ExpressDataController\Sources\cxDBData.pas":
- Suchen Sie nach TcxDBDataProvider.IsUniDirectional, und ersetzen Sie es durch:
function TcxDBDataProvider.IsUniDirectional: Boolean;
begin
if Assigned(DataSet) then begin
{$IFDEF DELPHI6}
if DataSet.IsUniDirectional then
Result := True
else
{$ENDIF}
if DataSet is TFDRdbmsDataSet then
Result := TFDRdbmsDataSet(DataSet).FetchOptions.Unidirectional
else
Result := False;
end
else
Result := False;
end;