Tecsitel_FactuGES2/Source/Modulos/Contactos/Data/uDataModuleProveedores.pas

129 lines
3.3 KiB
ObjectPascal
Raw Normal View History

unit uDataModuleProveedores;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uDataModuleContactos, DB, uDADataTable, uDAScriptingProvider,
uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService,
uROClient, uROBinMessage, uROWinInetHttpChannel, uBizGruposProveedor,
uIDataModuleProveedores, uBizContactos, uDADesigntimeCall,
uDARemoteDataAdapter, uDADataStreamer, uRODynamicRequest, uDAInterfaces;
type
TDataModuleProveedores = class(TDataModuleContactos, IDataModuleProveedores)
tbl_Proveedores: TDACDSDataTable;
ds_Proveedores: TDADataSource;
tbl_GruposProveedor: TDACDSDataTable;
ds_GruposProveedor: TDADataSource;
rda_Proveedores: TDARemoteDataAdapter;
rda_GruposProveedor: TDARemoteDataAdapter;
public
function GetItem(const ID : Integer) : IBizProveedor;
function NewItem : IBizProveedor;
function GetItems : IBizProveedor;
function GetItemsTiendaWeb : IBizProveedor;
function GetNextID(const DataSetName : String) : Integer; override;
function GetGruposProveedor : IBizGrupoProveedor;
end;
implementation
{$R *.dfm}
uses
cxControls, schContactosClient_Intf, uDataTableUtils;
{ TDataModuleProveedores }
function TDataModuleProveedores.GetGruposProveedor: IBizGrupoProveedor;
var
AGrupoProveedor : TDACDSDataTable;
begin
ShowHourglassCursor;
try
AGrupoProveedor := _CloneDataTable(tbl_GruposProveedor);
AGrupoProveedor.BusinessRulesID := BIZ_CLIENT_GRUPOSPROVEEDOR;
Result := (AGrupoProveedor as IBizGrupoProveedor);
finally
HideHourglassCursor;
end;
end;
function TDataModuleProveedores.GetItem(const ID: Integer): IBizProveedor;
begin
ShowHourglassCursor;
try
Result := Self.GetItems;
with Result.DataTable.Where do
begin
if NotEmpty then
AddOperator(opAND);
OpenBraket;
AddText(fld_ContactosID + ' = ' + IntToStr(ID));
CloseBraket;
end;
finally
HideHourglassCursor;
end;
end;
function TDataModuleProveedores.GetItems: IBizProveedor;
var
AContacto : TDACDSDataTable;
begin
ShowHourglassCursor;
try
AContacto := _CloneDataTable(tbl_Proveedores);
AContacto.BusinessRulesID := BIZ_CLIENT_PROVEEDOR;
with TBizProveedor(AContacto.BusinessEventsObj) do
begin
DatosBancarios := _GetDatosBancarios;
Direcciones := _GetDirecciones;
_Categorias := _GetCategorias;
end;
Result := (AContacto as IBizProveedor);
finally
HideHourglassCursor;
end;
end;
function TDataModuleProveedores.GetItemsTiendaWeb: IBizProveedor;
begin
ShowHourglassCursor;
try
Result := Self.GetItems;
with Result.DataTable.Where do
begin
if NotEmpty then
AddOperator(opAND);
OpenBraket;
AddText(fld_ProveedoresTIENDA_WEB + ' = 1');
CloseBraket;
end;
finally
HideHourglassCursor;
end;
end;
function TDataModuleProveedores.GetNextID(const DataSetName: String): Integer;
var
aDataSet : String;
begin
aDataSet := DataSetName;
if aDataSet = nme_Proveedores then
aDataSet := nme_Contactos;
Result := inherited GetNextID(aDataSet);
end;
function TDataModuleProveedores.NewItem: IBizProveedor;
begin
Result := GetItem(ID_NULO)
end;
end.