Componentes.Terceros.RemObj.../internal/5.0.23.613/1/Data Abstract for Delphi/Source/Unsupported/uDAJvMTable.pas
david 2824855ea7 - Modificación del paquete RemObjects_Core_D10 para que sea un paquete de runtime/designtime (antes era designtime sólo)
- Recompilación en Delphi10 de todos los paquetes de RO para generar las DCU's en Lib\D10
- Recompilación en Delphi10 de todos los paquetes de DA para generar las DCU's en Lib\D10

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@9 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 14:06:19 +00:00

190 lines
4.2 KiB
ObjectPascal

unit uDAJvMTable;
interface
uses Classes, DB, uDAInterfaces, uDADataTable, JvMemDS;
type
TDAJvMDataset = class(TJvMemoryData, IDADataTableDataset)
private
function GetActive: boolean;
protected
function GetDataTable: TDADataTable; safecall;
procedure InternalRefresh; override;
published
property Active: boolean read GetActive;
end;
TDAJvMemDataTable = class(TDADataTable)
private
fClientDataset: TDAJvMDataset;
protected
function GetDatasetClass: TDatasetClass; override;
procedure CreateInternalFields(aDataset: TDataset; someFieldDefinitions: TDAFieldCollection); override;
procedure DoSort(const FieldNames: array of string; const Directions: array of TDASortDirection); override;
procedure DoBeforeOpenDataset; override;
procedure DoAfterCloseDataset; override;
procedure SetMasterSource(const Value: TDADataSource); override;
function GetMasterSource: TDADataSource; override;
procedure SetDetailsFields(const Value: string); override;
procedure SetMasterFields(const Value: string); override;
function GetDetailFields: string; override;
function GetMasterFields: string; override;
function GetIndexDefs: TIndexDefs;
procedure SetIndexDefs(const Value: TIndexDefs);
function GetIndexName: string;
procedure SetIndexName(const Value: string);
function GetFilter: string; override;
function GetFiltered: boolean; override;
procedure SetFilter(const Value: string); override;
procedure SetFiltered(const Value: boolean); override;
public
constructor Create(aOwner: TComponent); override;
published
property IndexDefs: TIndexDefs read GetIndexDefs write SetIndexDefs;
property IndexName: string read GetIndexName write SetIndexName;
end;
implementation
uses Variants;
constructor TDAJvMemDataTable.Create(aOwner: TComponent);
begin
inherited;
fClientDataset := TDAJvMDataset(Dataset);
fClientDataset.FilterOptions := [foCaseInsensitive];
end;
procedure TDAJvMemDataTable.CreateInternalFields(aDataset: TDataset; someFieldDefinitions: TDAFieldCollection);
begin
inherited;
fClientDataset.FieldDefs.Clear;
fClientDataset.CreateFields;
end;
procedure TDAJvMemDataTable.DoSort(const FieldNames: array of string; const Directions: array of TDASortDirection);
begin
with fclientDataset do begin
Sort(Fieldnames,Directions);
end;
end;
function TDAJvMemDataTable.GetDatasetClass: TDatasetClass;
begin
result := TDAJvMDataset;
end;
function TDAJvMemDataTable.GetMasterSource: TDADataSource;
begin
result := nil;
end;
procedure TDAJvMemDataTable.DoAfterCloseDataset;
begin
inherited;
end;
function TDAJvMemDataTable.GetFilter: string;
begin
result := fClientDataset.Filter
end;
procedure TDAJvMemDataTable.DoBeforeOpenDataset;
begin
inherited;
end;
procedure TDAJvMemDataTable.SetMasterSource(const Value: TDADataSource);
begin
inherited SetMasterSource(Value);
end;
procedure TDAJvMemDataTable.SetMasterFields(const Value: string);
begin
inherited;
end;
procedure TDAJvMemDataTable.SetDetailsFields(const Value: string);
begin
end;
function TDAJvMemDataTable.GetDetailFields: string;
begin
end;
function TDAJvMemDataTable.GetMasterFields: string;
begin
end;
function TDAJvMemDataTable.GetFiltered: boolean;
begin
result := fClientDataset.Filtered
end;
procedure TDAJvMemDataTable.SetFilter(const Value: string);
begin
fClientDataset.Filter := Value
end;
procedure TDAJvMemDataTable.SetFiltered(const Value: boolean);
begin
fClientDataset.Filtered := Value
end;
function TDAJvMemDataTable.GetIndexDefs: TIndexDefs;
begin
result := nil;
end;
procedure TDAJvMemDataTable.SetIndexDefs(const Value: TIndexDefs);
begin
end;
function TDAJvMemDataTable.GetIndexName: string;
begin
result := '';
end;
procedure TDAJvMemDataTable.SetIndexName(const Value: string);
begin
end;
function TDAJvMDataset.GetActive: boolean;
begin
result := inherited Active;
end;
function TDAJvMDataset.GetDataTable: TDADataTable;
begin
result := TDADataTable(Owner);
end;
procedure TDAJvMDataset.InternalRefresh;
begin
end;
end.