unit uViewPedidoProveedor; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewBase, uBizPedidosProveedor, DB, uDADataTable, uCustomView, AppEvnts, StdCtrls, Mask, DBCtrls, uViewObservaciones, uViewDatosPedidoProveedor, uViewDatosYSeleccionProveedor, cxGraphics, cxDropDownEdit, cxImageComboBox, cxDBEdit, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxCalendar, dxLayoutControl, cxControls, cxMemo; type IViewPedidoProveedor = interface(IViewBase) ['{C5385699-C1A4-4AEB-B3D0-EE3BDB322FE2}'] function GetPedido: IBizPedidoProveedor; procedure SetPedido(const Value: IBizPedidoProveedor); property Pedido: IBizPedidoProveedor read GetPedido write SetPedido; function GetViewProveedorPedido: TfrViewDatosYSeleccionProveedor; procedure SetViewProveedorPedido(const Value: TfrViewDatosYSeleccionProveedor); property ViewProveedorPedido: TfrViewDatosYSeleccionProveedor read GetViewProveedorPedido write SetViewProveedorPedido; end; TfrViewPedidoProveedor = class(TfrViewBase, IViewPedidoProveedor) DADataSource: TDADataSource; frViewProveedorPedido: TfrViewDatosYSeleccionProveedor; dxLayoutControl1Group_Root: TdxLayoutGroup; dxLayoutControl1: TdxLayoutControl; dxLayoutControl1Item1: TdxLayoutItem; dxLayoutControl1Item2: TdxLayoutItem; edtFechaPedido: TcxDBDateEdit; dxLayoutControl1Item4: TdxLayoutItem; edtFechaConfirmacion: TcxDBDateEdit; dxLayoutControl1Item5: TdxLayoutItem; edtFechaEntrega: TcxDBDateEdit; dxLayoutControl1Group1: TdxLayoutGroup; dxLayoutControl1Group2: TdxLayoutGroup; dxLayoutControl1Item6: TdxLayoutItem; memObservaciones: TcxDBMemo; cbSituacion: TcxDBComboBox; dxLayoutControl1Item7: TdxLayoutItem; dxLayoutControl1Item3: TdxLayoutItem; eReferencia: TcxDBTextEdit; dxLayoutControl1Group5: TdxLayoutGroup; dxLayoutControl1Group6: TdxLayoutGroup; dxLayoutControl1Group7: TdxLayoutGroup; dxLayoutControl1Group8: TdxLayoutGroup; dxLayoutControl1Item8: TdxLayoutItem; memDireccionEntrega: TcxDBMemo; dxLayoutControl1Group3: TdxLayoutGroup; procedure cbSituacionPropertiesInitPopup(Sender: TObject); procedure CustomViewCreate(Sender: TObject); procedure CustomViewDestroy(Sender: TObject); protected FPedido : IBizPedidoProveedor; FViewProveedorPedido : TfrViewDatosYSeleccionProveedor; function GetPedido: IBizPedidoProveedor; procedure SetPedido(const Value: IBizPedidoProveedor); virtual; function GetViewProveedorPedido: TfrViewDatosYSeleccionProveedor; procedure SetViewProveedorPedido(const Value: TfrViewDatosYSeleccionProveedor); public property Pedido: IBizPedidoProveedor read GetPedido write SetPedido; property ViewProveedorPedido: TfrViewDatosYSeleccionProveedor read GetViewProveedorPedido; end; implementation {$R *.dfm} { TfrViewPedidoProveedor } procedure TfrViewPedidoProveedor.cbSituacionPropertiesInitPopup( Sender: TObject); begin inherited; with cbSituacion.Properties.Items do begin if Count = 0 then begin BeginUpdate; try Clear; AddStrings(Pedido.DarListaSituaciones); finally EndUpdate; end; end; end; end; procedure TfrViewPedidoProveedor.CustomViewCreate(Sender: TObject); begin inherited; FViewProveedorPedido := frViewProveedorPedido; FViewProveedorPedido.MsgElegirProveedor := 'Elija el proveedor al que se le realizará el pedido.'; end; procedure TfrViewPedidoProveedor.CustomViewDestroy(Sender: TObject); begin FViewProveedorPedido := Nil; inherited; end; function TfrViewPedidoProveedor.GetPedido: IBizPedidoProveedor; begin Result := FPedido; end; function TfrViewPedidoProveedor.GetViewProveedorPedido: TfrViewDatosYSeleccionProveedor; begin Result := FViewProveedorPedido; end; procedure TfrViewPedidoProveedor.SetPedido(const Value: IBizPedidoProveedor); begin FPedido := Value; if Assigned(FPedido) then DADataSource.DataTable := FPedido.DataTable else DADataSource.DataTable := NIL; frViewProveedorPedido.Proveedor := FPedido.Proveedor; end; procedure TfrViewPedidoProveedor.SetViewProveedorPedido(const Value: TfrViewDatosYSeleccionProveedor); begin FViewProveedorPedido := Value; end; end.