unit uDataModuleVendedores; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uDataModuleContactos, DB, uDADataTable, uDAScriptingProvider, uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uROTypes, uIDataModuleVendedores, uBizContactos, uDADesigntimeCall, uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDARemoteDataAdapter; type TDataModuleVendedores = class(TDataModuleContactos, IDataModuleVendedores) tbl_Vendedores: TDAMemDataTable; ds_Vendedores: TDADataSource; public function GetItem(const ID : Integer) : IBizVendedor; function NewItem : IBizVendedor; function GetItems : IBizVendedor; end; implementation {$R *.dfm} uses FactuGES_Intf, cxControls, schContactosClient_Intf, uDataTableUtils; { TDataModuleVendedores } function TDataModuleVendedores.GetItem(const ID: Integer): IBizVendedor; var Condicion: TDAWhereExpression; begin ShowHourglassCursor; try Result := Self.GetItems; with Result.DataTable.DynamicWhere do begin // (ID = :ID) Condicion := NewBinaryExpression(NewField('', fld_ContactosID), NewConstant(ID, datInteger), dboEqual); if IsEmpty then Expression := Condicion else Expression := NewBinaryExpression(Expression, Condicion, dboAnd); end; finally HideHourglassCursor; end; end; function TDataModuleVendedores.GetItems: IBizVendedor; var AContacto : TDAMemDataTable; begin ShowHourglassCursor; try AContacto := CloneDataTable(tbl_Vendedores); AContacto.BusinessRulesID := BIZ_CLIENT_VENDEDOR; with TBizVendedor(AContacto.BusinessEventsObj) do begin DatosBancarios := _GetDatosBancarios; end; Result := (AContacto as IBizVendedor); finally HideHourglassCursor; end; end; function TDataModuleVendedores.NewItem: IBizVendedor; begin Result := GetItem(ID_NULO) end; end.