AlonsoYSal_FactuGES2/Source/Modulos/Recibos de cliente/Views/uViewReciboCliente.pas
2019-11-18 10:36:42 +00:00

135 lines
4.5 KiB
ObjectPascal

unit uViewReciboCliente;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, uBizRecibosCliente, DB, uDADataTable, dxLayoutControl,
cxControls, cxCurrencyEdit, cxDBEdit, cxMemo, cxMaskEdit, cxDropDownEdit,
cxCalendar, cxContainer, cxEdit, cxTextEdit, dxLayoutLookAndFeels, ExtCtrls,
uDAInterfaces, uCustomView, uViewDatosYSeleccionCliente, uRecibosClienteController,
uViewTienda, uViewClienteRecibo, uViewObservaciones;
type
IViewReciboCliente = interface(IViewBase)
['{5DDA0CF0-1A57-492E-B7AE-614E6A7236B5}']
function GetController : IRecibosClienteController;
procedure SetController (const Value : IRecibosClienteController);
property Controller : IRecibosClienteController read GetController write SetController;
function GetRecibo: IBizRecibosCliente;
procedure SetRecibo(const Value: IBizRecibosCliente);
property Recibo: IBizRecibosCliente read GetRecibo write SetRecibo;
end;
TfrViewReciboCliente = class(TfrViewBase, IViewReciboCliente)
DADataSource: TDADataSource;
dxLayoutControl1Group_Root: TdxLayoutGroup;
dxLayoutControl1: TdxLayoutControl;
dxLayoutControl1Item1: TdxLayoutItem;
eReferencia: TcxDBTextEdit;
dxLayoutControl1Item2: TdxLayoutItem;
eSituacion: TcxDBTextEdit;
dxLayoutControl1Item3: TdxLayoutItem;
edtFechaVencimiento: TcxDBDateEdit;
dxLayoutControl1Group1: TdxLayoutGroup;
dxLayoutControl1Item7: TdxLayoutItem;
eFechaEmision: TcxDBTextEdit;
dxLayoutControl1Item9: TdxLayoutItem;
eImporteTotal: TcxDBCurrencyEdit;
dxLayoutControlFactura: TdxLayoutGroup;
dxLayoutControl1Item10: TdxLayoutItem;
eNombreCliente: TcxDBTextEdit;
dxLayoutControl1Item11: TdxLayoutItem;
eNifCif: TcxDBTextEdit;
dxLayoutControl1Group8: TdxLayoutGroup;
dxLayoutControl1Item16: TdxLayoutItem;
eRemesa: TcxDBTextEdit;
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
dxLayoutControl1Group7: TdxLayoutGroup;
dxLayoutControl1Item19: TdxLayoutItem;
edtFechaEmision: TcxDBDateEdit;
dxLayoutControl1Item4: TdxLayoutItem;
rRefReciboCompensado: TcxDBTextEdit;
dxLayoutControl1Group2: TdxLayoutGroup;
dxLayoutControl1Group3: TdxLayoutGroup;
dxLayoutControlClienteModif: TdxLayoutGroup;
dxLayoutControl1Item17: TdxLayoutItem;
eDescripcion: TcxDBTextEdit;
dxLayoutControl1Item18: TdxLayoutItem;
frViewTienda1: TfrViewTienda;
dxLayoutControl1Group5: TdxLayoutGroup;
dxLayoutControl1Item6: TdxLayoutItem;
frViewClienteRecibo1: TfrViewClienteRecibo;
dxLayoutControl1Group4: TdxLayoutGroup;
frViewObservaciones1: TfrViewObservaciones;
dxLayoutControl1Item5: TdxLayoutItem;
private
FRecibo : IBizRecibosCliente;
FController : IRecibosClienteController;
function GetRecibo: IBizRecibosCliente;
procedure SetRecibo(const Value: IBizRecibosCliente);
function GetController : IRecibosClienteController;
procedure SetController (const Value : IRecibosClienteController);
public
property Recibo: IBizRecibosCliente read GetRecibo write SetRecibo;
property Controller : IRecibosClienteController read GetController write SetController;
end;
var
frViewReciboCliente: TfrViewReciboCliente;
implementation
{$R *.dfm}
{ TfrViewReciboCliente }
function TfrViewReciboCliente.GetController: IRecibosClienteController;
begin
Result := FController;
end;
function TfrViewReciboCliente.GetRecibo: IBizRecibosCliente;
begin
Result := FRecibo;
end;
procedure TfrViewReciboCliente.SetController(const Value: IRecibosClienteController);
begin
FController := Value;
if Assigned(FController) then
frViewClienteRecibo1.Controller := FController.ClienteController;
end;
procedure TfrViewReciboCliente.SetRecibo(const Value: IBizRecibosCliente);
begin
FRecibo := Value;
//Por defecto
dxLayoutControlFactura.Visible := true;
dxLayoutControlClienteModif.Visible := false;
eDescripcion.Enabled := False;
if Assigned(FRecibo) then
begin
DADataSource.DataTable := FRecibo.DataTable;
frViewTienda1.DataItem := FRecibo.DataTable;
if FRecibo.SinFactura then
begin
dxLayoutControlFactura.Visible := false;
dxLayoutControlClienteModif.Visible := true;
eDescripcion.Enabled := True;
end;
end
else
DADataSource.DataTable := NIL;
end;
end.