git-svn-id: https://192.168.0.254/svn/Proyectos.AbetoDesign_FactuGES/trunk@59 93f398dd-4eb6-7a46-baf6-13f46f578da2
142 lines
3.9 KiB
ObjectPascal
142 lines
3.9 KiB
ObjectPascal
unit uBizEmpresas;
|
|
|
|
interface
|
|
|
|
uses
|
|
uDAInterfaces, uDADataTable, Classes, schEmpresasClient_Intf,
|
|
uBizEmpresasDatosBancarios, uBizEmpresasTiendas;
|
|
|
|
const
|
|
BIZ_CLIENT_EMPRESA = 'Client.Empresa';
|
|
|
|
type
|
|
IBizEmpresa = interface (IEmpresas)
|
|
['{1DB69F36-969C-4078-B862-6D697670BCFD}']
|
|
procedure SetDatosBancarios(AValue : IBizEmpresasDatosBancarios);
|
|
function GetDatosBancarios : IBizEmpresasDatosBancarios;
|
|
property DatosBancarios : IBizEmpresasDatosBancarios read GetDatosBancarios write SetDatosBancarios;
|
|
|
|
procedure SetTiendas(AValue : IBizEmpresaTienda);
|
|
function GetTiendas : IBizEmpresaTienda;
|
|
property Tiendas : IBizEmpresaTienda read GetTiendas write SetTiendas;
|
|
|
|
function GetEmpresasPresupuestosComunes : TStringList;
|
|
property EmpresasPresupuestosComunes: TStringList read GetEmpresasPresupuestosComunes;
|
|
|
|
function EsNuevo : Boolean;
|
|
end;
|
|
|
|
TBizEmpresa = class(TEmpresasDataTableRules, IBizEmpresa)
|
|
protected
|
|
FDatosBancarios : IBizEmpresasDatosBancarios;
|
|
FDatosBancariosLink : TDADataSource;
|
|
FTiendas : IBizEmpresaTienda;
|
|
FTiendasLink : TDADataSource;
|
|
FEmpresasPresupuestosComunes : TStringList;
|
|
|
|
procedure OnNewRecord(Sender: TDADataTable); override;
|
|
|
|
procedure SetDatosBancarios(AValue : IBizEmpresasDatosBancarios);
|
|
function GetDatosBancarios : IBizEmpresasDatosBancarios;
|
|
procedure SetTiendas(AValue : IBizEmpresaTienda);
|
|
function GetTiendas : IBizEmpresaTienda;
|
|
function GetEmpresasPresupuestosComunes : TStringList;
|
|
|
|
public
|
|
function EsNuevo : Boolean;
|
|
procedure IniciarValoresEmpresaNueva;
|
|
|
|
constructor Create(aDataTable: TDADataTable); override;
|
|
destructor Destroy; override;
|
|
|
|
property DatosBancarios : IBizEmpresasDatosBancarios read GetDatosBancarios write SetDatosBancarios;
|
|
property Tiendas : IBizEmpresaTienda read GetTiendas write SetTiendas;
|
|
property EmpresasPresupuestosComunes: TStringList read GetEmpresasPresupuestosComunes;
|
|
end;
|
|
|
|
|
|
implementation
|
|
|
|
uses
|
|
uDataTableUtils, DateUtils, SysUtils, Dialogs,
|
|
uFactuGES_App, uConfiguracionController;
|
|
|
|
{ TBizEmpresa }
|
|
|
|
|
|
constructor TBizEmpresa.Create(aDataTable: TDADataTable);
|
|
begin
|
|
inherited;
|
|
FDatosBancariosLink := TDADataSource.Create(NIL);
|
|
FDatosBancariosLink.DataTable := aDataTable;
|
|
|
|
FTiendasLink := TDADataSource.Create(NIL);
|
|
FTiendasLink.DataTable := aDataTable;
|
|
|
|
FEmpresasPresupuestosComunes := TStringList.Create;
|
|
end;
|
|
|
|
destructor TBizEmpresa.Destroy;
|
|
begin
|
|
FDatosBancarios := NIL;
|
|
FDatosBancariosLink.Free;
|
|
FTiendas := NIL;
|
|
FTiendasLink.Free;
|
|
FreeANDNIL(FEmpresasPresupuestosComunes);
|
|
inherited;
|
|
end;
|
|
|
|
function TBizEmpresa.EsNuevo: Boolean;
|
|
begin
|
|
Result := (ID < 0);
|
|
end;
|
|
|
|
function TBizEmpresa.GetDatosBancarios: IBizEmpresasDatosBancarios;
|
|
begin
|
|
Result := FDatosBancarios;
|
|
end;
|
|
|
|
function TBizEmpresa.GetEmpresasPresupuestosComunes: TStringList;
|
|
begin
|
|
if (FEmpresasPresupuestosComunes.Count = 0) then
|
|
FEmpresasPresupuestosComunes.CommaText := AppFactuGES.Configuracion.GetSettingAsString(teBD,'EMPRESAS_PRESUPUESTOS_COMUNES', AppFactuGES.EmpresaActiva.ID);
|
|
|
|
Result := FEmpresasPresupuestosComunes;
|
|
end;
|
|
|
|
function TBizEmpresa.GetTiendas: IBizEmpresaTienda;
|
|
begin
|
|
Result := FTiendas;
|
|
end;
|
|
|
|
procedure TBizEmpresa.IniciarValoresEmpresaNueva;
|
|
begin
|
|
USUARIO := AppFactuGES.UsuarioActivo.UserName;
|
|
end;
|
|
|
|
procedure TBizEmpresa.OnNewRecord(Sender: TDADataTable);
|
|
begin
|
|
inherited;
|
|
IniciarValoresEmpresaNueva;
|
|
end;
|
|
|
|
procedure TBizEmpresa.SetDatosBancarios(AValue: IBizEmpresasDatosBancarios);
|
|
begin
|
|
FDatosBancarios := AValue;
|
|
EnlazarMaestroDetalle(FDatosBancariosLink, FDatosBancarios);
|
|
end;
|
|
|
|
procedure TBizEmpresa.SetTiendas(AValue: IBizEmpresaTienda);
|
|
begin
|
|
FTiendas := AValue;
|
|
EnlazarMaestroDetalle(FTiendasLink, FTiendas);
|
|
end;
|
|
|
|
initialization
|
|
RegisterDataTableRules(BIZ_CLIENT_EMPRESA, TBizEmpresa);
|
|
|
|
finalization
|
|
|
|
end.
|
|
|