Tecsitel_FactuGES2/Source/Modulos/Remesas de proveedor/Views/uViewRecibosRemesaProveedor.pas
2007-11-20 15:45:03 +00:00

130 lines
3.8 KiB
ObjectPascal

unit uViewRecibosRemesaProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesGenerico, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ActnList, ImgList, PngImageList,
uDADataTable, ComCtrls, ToolWin, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView,
cxGrid, cxImageComboBox, cxCurrencyEdit,
uBizRemesasProveedor, uRemesasProveedorController, uDAInterfaces;
type
IViewRecibosRemesaProveedor = interface
['{033DF6AF-C694-4C15-A48E-C7BA42DFF9FE}']
function GetRemesaProveedor: IBizRemesaProveedor;
procedure SetRemesaProveedor(const Value: IBizRemesaProveedor);
property RemesaProveedor: IBizRemesaProveedor read GetRemesaProveedor write SetRemesaProveedor;
function GetController : IRemesasProveedorController;
procedure SetController (const Value : IRemesasProveedorController);
property Controller : IRemesasProveedorController read GetController write SetController;
end;
TfrViewRecibosRemesaProveedor = class(TfrViewDetallesGenerico, IViewRecibosRemesaProveedor)
cxGridViewIMPORTE: TcxGridDBColumn;
cxGridViewOTROS_GASTOS: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL: TcxGridDBColumn;
protected
FHayCambios : Boolean;
FRemesa : IBizRemesaProveedor;
FController : IRemesasProveedorController;
procedure AnadirInterno; override;
procedure EliminarInterno; override;
function GetRemesaProveedor: IBizRemesaProveedor;
procedure SetRemesaProveedor(const Value: IBizRemesaProveedor);
function GetModified: Boolean; override;
procedure SetModified(const Value: Boolean); override;
function GetController : IRemesasProveedorController;
procedure SetController (const Value : IRemesasProveedorController);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
property RemesaProveedor: IBizRemesaProveedor read GetRemesaProveedor write SetRemesaProveedor;
property Controller : IRemesasProveedorController read GetController write SetController;
end;
implementation
{$R *.dfm}
uses
uBizRecibosProveedor, uCustomView;
{ TfrViewRecibosRemesaProveedor }
procedure TfrViewRecibosRemesaProveedor.AnadirInterno;
begin
//inherited; // No hacer el comportamiento normal
if FController.ElegirRecibosProveedor(RemesaProveedor) then
begin
Modified := True;
end;
end;
constructor TfrViewRecibosRemesaProveedor.Create(AOwner: TComponent);
begin
inherited;
FHayCambios := False;
end;
destructor TfrViewRecibosRemesaProveedor.Destroy;
begin
inherited;
end;
procedure TfrViewRecibosRemesaProveedor.EliminarInterno;
begin
//inherited; // No hacer el comportamiento normal
FController.EliminarReciboProveedor(RemesaProveedor);
Modified := True;
end;
function TfrViewRecibosRemesaProveedor.GetController: IRemesasProveedorController;
begin
Result := FController;
end;
function TfrViewRecibosRemesaProveedor.GetModified: Boolean;
begin
Result := FHayCambios or inherited GetModified;
end;
function TfrViewRecibosRemesaProveedor.GetRemesaProveedor: IBizRemesaProveedor;
begin
Result := FRemesa;
end;
procedure TfrViewRecibosRemesaProveedor.SetController(
const Value: IRemesasProveedorController);
begin
FController := Value;
end;
procedure TfrViewRecibosRemesaProveedor.SetModified(const Value: Boolean);
begin
FHayCambios := Value;
inherited;
end;
procedure TfrViewRecibosRemesaProveedor.SetRemesaProveedor(
const Value: IBizRemesaProveedor);
begin
FRemesa := Value;
FHayCambios := False;
if Assigned(FRemesa) then
dsDetalles.DataTable := FRemesa.Recibos.DataTable
else
dsDetalles.DataTable := NIL;
end;
end.