Tambien se arregla la lista de articulos reservados para que salgan solo aquellos reservados a obras o almacenes de la empresa activa. git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@958 0c75b7a4-871f-7646-8a2f-f78d34cc349f
147 lines
4.3 KiB
ObjectPascal
147 lines
4.3 KiB
ObjectPascal
unit uViewRecibosRemesaCliente;
|
|
|
|
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,
|
|
uBizRemesasCliente, uRemesasClienteController, uDAInterfaces;
|
|
|
|
type
|
|
IViewRecibosRemesaCliente = interface
|
|
['{5342D4B0-4BE0-4123-9515-D8ADC9058243}']
|
|
function GetRemesaCliente: IBizRemesaCliente;
|
|
procedure SetRemesaCliente(const Value: IBizRemesaCliente);
|
|
property RemesaCliente: IBizRemesaCliente read GetRemesaCliente write SetRemesaCliente;
|
|
|
|
function GetController : IRemesasClienteController;
|
|
procedure SetController (const Value : IRemesasClienteController);
|
|
property Controller : IRemesasClienteController read GetController write SetController;
|
|
end;
|
|
|
|
TfrViewRecibosRemesaCliente = class(TfrViewDetallesGenerico, IViewRecibosRemesaCliente)
|
|
cxGridViewIMPORTE: TcxGridDBColumn;
|
|
cxGridViewOTROS_GASTOS: TcxGridDBColumn;
|
|
cxGridViewIMPORTE_TOTAL: TcxGridDBColumn;
|
|
procedure CustomViewShow(Sender: TObject);
|
|
protected
|
|
FHayCambios : Boolean;
|
|
FRemesa : IBizRemesaCliente;
|
|
FController : IRemesasClienteController;
|
|
FListaRecibosIniciales: TStringList;
|
|
|
|
procedure AnadirInterno; override;
|
|
procedure EliminarInterno; override;
|
|
|
|
function GetRemesaCliente: IBizRemesaCliente;
|
|
procedure SetRemesaCliente(const Value: IBizRemesaCliente);
|
|
|
|
function GetModified: Boolean; override;
|
|
procedure SetModified(const Value: Boolean); override;
|
|
|
|
function GetController : IRemesasClienteController;
|
|
procedure SetController (const Value : IRemesasClienteController);
|
|
|
|
public
|
|
constructor Create(AOwner: TComponent); override;
|
|
destructor Destroy; override;
|
|
property RemesaCliente: IBizRemesaCliente read GetRemesaCliente write SetRemesaCliente;
|
|
property Controller : IRemesasClienteController read GetController write SetController;
|
|
end;
|
|
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses
|
|
uBizRecibosCliente, uCustomView;
|
|
|
|
{ TfrViewRecibosRemesaCliente }
|
|
|
|
procedure TfrViewRecibosRemesaCliente.AnadirInterno;
|
|
begin
|
|
//inherited; // No hacer el comportamiento normal
|
|
if FController.ElegirRecibosCliente(RemesaCliente, FListaRecibosIniciales) then
|
|
begin
|
|
Modified := True;
|
|
end;
|
|
end;
|
|
|
|
constructor TfrViewRecibosRemesaCliente.Create(AOwner: TComponent);
|
|
begin
|
|
inherited;
|
|
FHayCambios := False;
|
|
FListaRecibosIniciales := TStringList.Create;
|
|
end;
|
|
|
|
procedure TfrViewRecibosRemesaCliente.CustomViewShow(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
|
|
FRemesa.Recibos.DataTable.First;
|
|
while not FRemesa.Recibos.DataTable.eof do
|
|
begin
|
|
FListaRecibosIniciales.Add(IntToStr(FRemesa.Recibos.ID));
|
|
FRemesa.Recibos.DataTable.next;
|
|
end;
|
|
FRemesa.Recibos.DataTable.First;
|
|
end;
|
|
|
|
destructor TfrViewRecibosRemesaCliente.Destroy;
|
|
begin
|
|
FListaRecibosIniciales.Free;
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrViewRecibosRemesaCliente.EliminarInterno;
|
|
begin
|
|
//inherited; // No hacer el comportamiento normal
|
|
FController.EliminarReciboCliente(RemesaCliente);
|
|
Modified := True;
|
|
end;
|
|
|
|
function TfrViewRecibosRemesaCliente.GetController: IRemesasClienteController;
|
|
begin
|
|
Result := FController;
|
|
end;
|
|
|
|
function TfrViewRecibosRemesaCliente.GetModified: Boolean;
|
|
begin
|
|
Result := FHayCambios or inherited GetModified;
|
|
end;
|
|
|
|
function TfrViewRecibosRemesaCliente.GetRemesaCliente: IBizRemesaCliente;
|
|
begin
|
|
Result := FRemesa;
|
|
end;
|
|
|
|
procedure TfrViewRecibosRemesaCliente.SetController(
|
|
const Value: IRemesasClienteController);
|
|
begin
|
|
FController := Value;
|
|
end;
|
|
|
|
procedure TfrViewRecibosRemesaCliente.SetModified(const Value: Boolean);
|
|
begin
|
|
FHayCambios := Value;
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrViewRecibosRemesaCliente.SetRemesaCliente(
|
|
const Value: IBizRemesaCliente);
|
|
begin
|
|
FRemesa := Value;
|
|
FHayCambios := False;
|
|
if Assigned(FRemesa) then
|
|
dsDetalles.DataTable := FRemesa.Recibos.DataTable
|
|
else
|
|
dsDetalles.DataTable := NIL;
|
|
end;
|
|
|
|
end.
|