unit uViewReciboProveedor; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewBase, uBizRecibosProveedor, DB, uDADataTable, dxLayoutControl, cxControls, cxCurrencyEdit, cxDBEdit, cxMemo, cxMaskEdit, cxDropDownEdit, cxCalendar, cxContainer, cxEdit, cxTextEdit, dxLayoutLookAndFeels, ExtCtrls, uDAInterfaces, uCustomView, uViewDatosYSeleccionProveedor, uRecibosProveedorController, uViewTienda, uViewProveedorRecibo, uViewObservaciones; type IViewReciboProveedor = interface(IViewBase) ['{3EDDAF2C-2A99-43AE-8DBB-3AC300660D94}'] function GetController : IRecibosProveedorController; procedure SetController (const Value : IRecibosProveedorController); property Controller : IRecibosProveedorController read GetController write SetController; function GetRecibo: IBizRecibosProveedor; procedure SetRecibo(const Value: IBizRecibosProveedor); property Recibo: IBizRecibosProveedor read GetRecibo write SetRecibo; end; TfrViewReciboProveedor = class(TfrViewBase, IViewReciboProveedor) 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; dxLayoutControl1Group8: TdxLayoutGroup; dxLayoutControl1Item16: TdxLayoutItem; eRemesa: TcxDBTextEdit; dxLayoutControl1Group2: TdxLayoutGroup; dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList; dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel; dxLayoutControl1Group7: TdxLayoutGroup; dxLayoutControl1Group9: TdxLayoutGroup; dxLayoutControl1Item19: TdxLayoutItem; edtFechaEmision: TcxDBDateEdit; dxLayoutControl1Item20: TdxLayoutItem; eReferenciaProveedor: TcxDBTextEdit; dxLayoutControl1Item21: TdxLayoutItem; rReferenciaFacturaProv: TcxDBTextEdit; dxLayoutControl1Item4: TdxLayoutItem; rRefReciboCompensado: TcxDBTextEdit; dxLayoutControlProveedorModif: TdxLayoutGroup; dxLayoutControl1Item17: TdxLayoutItem; frViewTienda1: TfrViewTienda; dxLayoutControl1Group3: TdxLayoutGroup; dxLayoutControl1Item18: TdxLayoutItem; eDescripcion: TcxDBTextEdit; dxLayoutControl1Item8: TdxLayoutItem; eNifCif: TcxDBTextEdit; dxLayoutControl1Item6: TdxLayoutItem; frViewProveedorRecibo1: TfrViewProveedorRecibo; dxLayoutControl1Group4: TdxLayoutGroup; frViewObservaciones1: TfrViewObservaciones; dxLayoutControl1Item5: TdxLayoutItem; private FRecibo : IBizRecibosProveedor; FController : IRecibosProveedorController; function GetRecibo: IBizRecibosProveedor; procedure SetRecibo(const Value: IBizRecibosProveedor); function GetController : IRecibosProveedorController; procedure SetController (const Value : IRecibosProveedorController); public property Recibo: IBizRecibosProveedor read GetRecibo write SetRecibo; property Controller : IRecibosProveedorController read GetController write SetController; end; var frViewReciboProveedor: TfrViewReciboProveedor; implementation {$R *.dfm} { TfrViewReciboProveedor } function TfrViewReciboProveedor.GetController: IRecibosProveedorController; begin Result := FController; end; function TfrViewReciboProveedor.GetRecibo: IBizRecibosProveedor; begin Result := FRecibo; end; procedure TfrViewReciboProveedor.SetController(const Value: IRecibosProveedorController); begin FController := Value; if Assigned(FController) then frViewProveedorRecibo1.Controller := FController.ProveedorController; end; procedure TfrViewReciboProveedor.SetRecibo(const Value: IBizRecibosProveedor); begin FRecibo := Value; //Por defecto dxLayoutControlFactura.Visible := true; dxLayoutControlProveedorModif.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; dxLayoutControlProveedorModif.Visible := true; eDescripcion.Enabled := True; end; end else DADataSource.DataTable := NIL; end; end.