2007-11-15 19:56:08 +00:00
unit uViewPedidoProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, uBizPedidosProveedor, DB, uDADataTable, uCustomView,
AppEvnts, StdCtrls, Mask, DBCtrls,
2008-11-27 16:14:51 +00:00
uViewObservaciones,
2007-11-15 19:56:08 +00:00
cxGraphics, cxDropDownEdit, cxImageComboBox, cxDBEdit, cxContainer, cxEdit,
cxTextEdit, cxMaskEdit, cxCalendar, dxLayoutControl, cxControls, cxMemo,
uViewDireccionEntregaPedidoProv, cxLookupEdit, cxDBLookupEdit,
// uBizPedidosCliente, uPedidosClienteController,
2008-03-24 20:50:41 +00:00
cxDBLookupComboBox, uFormasPagoController, ActnList, uDAInterfaces, uBizFormasPago,
2008-11-07 21:05:48 +00:00
uViewProveedorPedido, uViewObraReserva, uObrasController,
2015-07-09 17:26:48 +00:00
uPedidosProveedorController, uViewDatosYSeleccionProveedorPedido, cxCheckBox;
2007-11-15 19:56:08 +00:00
type
IViewPedidoProveedor = interface( IViewBase)
2008-11-27 16:14:51 +00:00
[ '{6FF2FC16-307F-4B8B-A46A-3FEA270ED568}' ]
2007-11-15 19:56:08 +00:00
function GetPedido: IBizPedidoProveedor;
procedure SetPedido( const Value: IBizPedidoProveedor) ;
property Pedido: IBizPedidoProveedor read GetPedido write SetPedido;
2008-11-07 21:05:48 +00:00
function GetController : IPedidosProveedorController;
procedure SetController ( const Value : IPedidosProveedorController) ;
property Controller : IPedidosProveedorController read GetController write SetController;
2008-11-27 16:14:51 +00:00
function GetViewProveedorPedido: IViewDatosYSeleccionProveedorPedido;
property ViewProveedorPedido: IViewDatosYSeleccionProveedorPedido read GetViewProveedorPedido;
2007-11-15 19:56:08 +00:00
end ;
TfrViewPedidoProveedor = class( TfrViewBase, IViewPedidoProveedor)
DADataSource: TDADataSource;
dxLayoutControl1Group_Root: TdxLayoutGroup;
dxLayoutControl1: TdxLayoutControl;
dxLayoutControl1Item2: TdxLayoutItem;
edtFechaPedido: TcxDBDateEdit;
dxLayoutControl1Item4: TdxLayoutItem;
edtFechaConfirmacion: TcxDBDateEdit;
dxLayoutControl1Item5: TdxLayoutItem;
edtFechaEntrega: TcxDBDateEdit;
dxLayoutControl1Group1: TdxLayoutGroup;
dxLayoutControl1Group2: TdxLayoutGroup;
dxLayoutControl1Item6: TdxLayoutItem;
memObservaciones: TcxDBMemo;
dxLayoutControl1Item3: TdxLayoutItem;
eReferencia: TcxDBTextEdit;
dxLayoutControl1Group5: TdxLayoutGroup;
dxLayoutControl1Group6: TdxLayoutGroup;
dxLayoutControl1Group7: TdxLayoutGroup;
dxLayoutControl1Group8: TdxLayoutGroup;
dxLayoutControl1Group3: TdxLayoutGroup;
dxLayoutControl1Item8: TdxLayoutItem;
frViewDireccionEntregaPedidoProv1: TfrViewDireccionEntregaPedidoProv;
dxLayoutControl1Item9: TdxLayoutItem;
cbFormaPago: TcxDBLookupComboBox;
dxLayoutControl1Item10: TdxLayoutItem;
bFormasPago: TButton;
dxLayoutControl1Group4: TdxLayoutGroup;
dsFormaPago: TDADataSource;
dxLayoutControl1Item7: TdxLayoutItem;
edtFechaEnvio: TcxDBDateEdit;
dxLayoutControl1Item11: TdxLayoutItem;
eReferenciaPedidoCli: TcxTextEdit;
dxLayoutControl1Item12: TdxLayoutItem;
2008-03-12 18:11:46 +00:00
bVerPedidoCliente: TButton;
2007-11-15 19:56:08 +00:00
dxLayoutControl1Group9: TdxLayoutGroup;
dxLayoutControl1Group10: TdxLayoutGroup;
ActionList1: TActionList;
actVerPedidoCli: TAction;
2008-07-30 16:25:35 +00:00
dxLayoutControl1Item13: TdxLayoutItem;
frViewObraReserva1: TfrViewObraReserva;
dxLayoutControl1Group11: TdxLayoutGroup;
2008-11-27 16:14:51 +00:00
frViewDatosYSeleccionProveedorPedido1: TfrViewDatosYSeleccionProveedorPedido;
dxLayoutControl1Item1: TdxLayoutItem;
2015-07-09 17:26:48 +00:00
dxLayoutControl1Item14: TdxLayoutItem;
ePedidoWeb: TcxDBCheckBox;
2007-11-15 19:56:08 +00:00
procedure CustomViewCreate( Sender: TObject) ;
procedure CustomViewDestroy( Sender: TObject) ;
procedure bFormasPagoClick( Sender: TObject) ;
procedure actVerPedidoCliExecute( Sender: TObject) ;
procedure actVerPedidoCliUpdate( Sender: TObject) ;
procedure frViewProveedorPedidoButton1Click( Sender: TObject) ;
procedure frViewProveedorPedidoButton2Click( Sender: TObject) ;
2008-11-07 21:05:48 +00:00
procedure ObraReservaEditValueChanged( Sender: TObject) ;
procedure CustomViewShow( Sender: TObject) ;
2007-11-15 19:56:08 +00:00
protected
FPedido : IBizPedidoProveedor;
2008-11-07 21:05:48 +00:00
FController : IPedidosProveedorController;
2008-11-27 16:14:51 +00:00
FViewProveedorPedido : IViewDatosYSeleccionProveedorPedido;
2007-11-17 17:39:17 +00:00
FFormasPago : IBizFormaPago;
2007-11-15 19:56:08 +00:00
FFormasPagoController : IFormasPagoController;
2008-11-07 21:05:48 +00:00
FObras: TStringList;
FObrasController : IObrasController;
2007-11-15 19:56:08 +00:00
// FPedidoCliAsociado : IBizPedidoCliente;
// FPedidoCliController : IPedidosClienteController;
2007-11-17 17:39:17 +00:00
2007-11-15 19:56:08 +00:00
function GetPedido: IBizPedidoProveedor;
procedure SetPedido( const Value: IBizPedidoProveedor) ; virtual ;
2008-11-07 21:05:48 +00:00
function GetController : IPedidosProveedorController;
procedure SetController ( const Value : IPedidosProveedorController) ;
2008-11-27 16:14:51 +00:00
function GetViewProveedorPedido: IViewDatosYSeleccionProveedorPedido;
2007-11-15 19:56:08 +00:00
public
property Pedido: IBizPedidoProveedor read GetPedido write SetPedido;
2008-11-07 21:05:48 +00:00
property Controller : IPedidosProveedorController read GetController write SetController;
2008-11-27 16:14:51 +00:00
property ViewProveedorPedido: IViewDatosYSeleccionProveedorPedido read GetViewProveedorPedido;
2007-11-15 19:56:08 +00:00
end ;
implementation
2008-11-09 17:14:03 +00:00
{$R *.dfm}
2007-11-15 19:56:08 +00:00
2008-11-09 17:14:03 +00:00
uses uStringsUtils;
2008-03-24 20:50:41 +00:00
2007-11-15 19:56:08 +00:00
{ TfrViewPedidoProveedor }
procedure TfrViewPedidoProveedor. actVerPedidoCliExecute( Sender: TObject) ;
begin
inherited ;
// FPedidoCliController.Ver(FPedidoCliAsociado);
end ;
procedure TfrViewPedidoProveedor. actVerPedidoCliUpdate( Sender: TObject) ;
begin
inherited ;
// if (Sender as TAction).Enabled then
// (Sender as TAction).Enabled := Assigned(FPedidoCliAsociado)
end ;
procedure TfrViewPedidoProveedor. bFormasPagoClick( Sender: TObject) ;
begin
inherited ;
2007-11-17 17:39:17 +00:00
if Assigned( FFormasPago) then
FFormasPagoController. VerTodos( FFormasPago) ;
2007-11-15 19:56:08 +00:00
end ;
procedure TfrViewPedidoProveedor. CustomViewCreate( Sender: TObject) ;
begin
inherited ;
2007-11-17 17:39:17 +00:00
FFormasPago : = Nil ;
2007-11-15 19:56:08 +00:00
FFormasPagoController : = TFormasPagoController. Create;
2008-11-07 21:05:48 +00:00
FObrasController : = TObrasController. Create;
FObras : = FObrasController. DarListaObras;
2008-11-27 16:14:51 +00:00
FViewProveedorPedido : = frViewDatosYSeleccionProveedorPedido1;
2007-11-15 19:56:08 +00:00
eReferencia. Enabled : = False ;
end ;
procedure TfrViewPedidoProveedor. CustomViewDestroy( Sender: TObject) ;
begin
FViewProveedorPedido : = Nil ;
2008-11-07 21:05:48 +00:00
FController : = Nil ;
2007-11-17 17:39:17 +00:00
FFormasPago : = Nil ;
2007-11-15 19:56:08 +00:00
FFormasPagoController : = NIL ;
2008-11-07 21:05:48 +00:00
FObrasController : = Nil ;
FreeAndNil( FObras)
end ;
procedure TfrViewPedidoProveedor. CustomViewShow( Sender: TObject) ;
begin
2007-11-15 19:56:08 +00:00
inherited ;
2008-11-07 21:05:48 +00:00
if not FPedido. ID_OBRAISNull then
2008-11-09 17:14:03 +00:00
begin
2008-11-07 21:05:48 +00:00
frViewObraReserva1. ActivarObra( FPedido. ID_OBRA) ;
2008-11-09 17:14:03 +00:00
frViewDireccionEntregaPedidoProv1. lblObra. Caption : = FPedido. NOMBRE_OBRA;
end ;
2008-11-07 21:05:48 +00:00
frViewObraReserva1. cbObraReserva. Properties. OnEditValueChanged : = ObraReservaEditValueChanged;
2007-11-15 19:56:08 +00:00
end ;
2008-11-07 21:05:48 +00:00
procedure TfrViewPedidoProveedor. ObraReservaEditValueChanged( Sender: TObject) ;
var
2008-11-09 17:14:03 +00:00
IDObra: String ;
2008-11-07 21:05:48 +00:00
2008-11-06 19:53:42 +00:00
begin
inherited ;
2008-11-09 17:14:03 +00:00
2008-11-07 21:05:48 +00:00
IDObra : = frViewObraReserva1. DarIDObraSeleccionada;
Controller. AsignarIDObra( FPedido, IDObra) ;
2008-11-09 17:14:03 +00:00
if EsCadenaVacia( IDObra) then
2008-11-07 21:05:48 +00:00
begin
2008-11-09 17:14:03 +00:00
frViewDireccionEntregaPedidoProv1. actListaObras. Enabled : = False ;
frViewDireccionEntregaPedidoProv1. lblObra. Caption : = frViewObraReserva1. cbObraReserva. Text ;
frViewDireccionEntregaPedidoProv1. actListaAlmacenes. Execute
2008-11-07 21:05:48 +00:00
end
else
begin
2008-11-09 17:14:03 +00:00
frViewDireccionEntregaPedidoProv1. actListaObras. Enabled : = true ;
frViewDireccionEntregaPedidoProv1. actListaObras. Execute;
frViewDireccionEntregaPedidoProv1. lblObra. Caption : = frViewObraReserva1. cbObraReserva. Text ;
2008-11-07 21:05:48 +00:00
end ;
2008-11-06 19:53:42 +00:00
end ;
2007-11-15 19:56:08 +00:00
procedure TfrViewPedidoProveedor. frViewProveedorPedidoButton1Click( Sender: TObject) ;
begin
if Assigned( Pedido) and Assigned( Pedido. Proveedor) and
Assigned ( Pedido. Detalles) and ( Pedido. Detalles. RecordCount > 0 ) then
begin
if ( Application. MessageBox( 'Si cambia de proveedor, se eliminar<61> n todos sus art<72> culos del pedido actual, <20> Desea continuar?' , 'Atenci<63> n' , MB_YESNO) = IDNO) then
Exit;
end ;
2008-11-27 16:14:51 +00:00
FViewProveedorPedido. ElegirProveedor;
2007-11-15 19:56:08 +00:00
end ;
procedure TfrViewPedidoProveedor. frViewProveedorPedidoButton2Click( Sender: TObject) ;
begin
if Assigned( Pedido) and Assigned( Pedido. Proveedor) and
Assigned ( Pedido. Detalles) and ( Pedido. Detalles. RecordCount > 0 ) then
begin
if ( Application. MessageBox( 'Si cambia de proveedor, se eliminar<61> n todos sus art<72> culos del pedido actual, <20> Desea continuar?' , 'Atenci<63> n' , MB_YESNO) = IDNO) then
Exit;
end ;
2008-11-27 16:14:51 +00:00
FViewProveedorPedido. AnadirNuevoProveedor;
2007-11-15 19:56:08 +00:00
end ;
2008-11-07 21:05:48 +00:00
function TfrViewPedidoProveedor. GetController: IPedidosProveedorController;
begin
Result : = FController;
end ;
2007-11-15 19:56:08 +00:00
function TfrViewPedidoProveedor. GetPedido: IBizPedidoProveedor;
begin
Result : = FPedido;
end ;
2008-11-27 16:14:51 +00:00
function TfrViewPedidoProveedor. GetViewProveedorPedido: IViewDatosYSeleccionProveedorPedido;
2007-11-15 19:56:08 +00:00
begin
Result : = FViewProveedorPedido;
end ;
2008-11-07 21:05:48 +00:00
procedure TfrViewPedidoProveedor. SetController( const Value: IPedidosProveedorController) ;
begin
FController : = Value;
end ;
2007-11-15 19:56:08 +00:00
procedure TfrViewPedidoProveedor. SetPedido( const Value: IBizPedidoProveedor) ;
begin
FPedido : = Value;
if Assigned( FPedido) then
begin
DADataSource. DataTable : = FPedido. DataTable;
2007-11-17 17:39:17 +00:00
FFormasPago : = FFormasPagoController. BuscarTodos;
dsFormaPago. DataTable : = FFormasPago. DataTable;
2007-11-15 19:56:08 +00:00
dsFormaPago. DataTable. Active : = True ;
// FPedidoCliAsociado := NIL;
// if (FPedido.ID_PEDIDO_CLIENTE > 0) then
// begin
// FPedidoCliAsociado := FPedidoCliController.Buscar(FPedido.ID_PEDIDO_CLIENTE);
// if Assigned(FPedidoCliAsociado) then
// begin
// FPedidoCliAsociado.DataTable.Active := True;
// eReferenciaPedidoCli.Text := FPedidoCliAsociado.REFERENCIA
// end
// else
// eReferenciaPedidoCli.Text := '';
// end
// else
// eReferenciaPedidoCli.Text := 'No hay pedido asociado';
2008-11-07 21:05:48 +00:00
2008-11-27 16:14:51 +00:00
FViewProveedorPedido. Pedido : = FPedido;
2008-11-07 21:05:48 +00:00
frViewDireccionEntregaPedidoProv1. PedidoProveedor : = FPedido;
frViewObraReserva1. Obras : = FObras;
frViewObraReserva1. ObrasController : = FObrasController;
2007-11-15 19:56:08 +00:00
end
else begin
DADataSource. DataTable : = NIL ;
dsFormaPago. DataTable : = NIL ;
// FPedidoCliAsociado := NIL;
2008-11-27 16:14:51 +00:00
FViewProveedorPedido. Pedido : = NIL ;
2007-11-15 19:56:08 +00:00
end ;
end ;
end .