git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES2/trunk@38 40301925-124e-1c4e-b97d-170ad7a8785b
211 lines
7.6 KiB
ObjectPascal
211 lines
7.6 KiB
ObjectPascal
unit uViewContratoCliente;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, uViewBase, uBizContratosCliente, DB, uDADataTable, uCustomView,
|
||
AppEvnts, StdCtrls, Mask, DBCtrls,
|
||
uViewObservaciones, uViewDatosYSeleccionCliente,
|
||
cxGraphics, cxDropDownEdit, cxImageComboBox, cxDBEdit, cxContainer, cxEdit,
|
||
cxTextEdit, cxMaskEdit, cxCalendar, dxLayoutControl, cxControls, cxMemo,
|
||
uViewDireccionEntregaContratoCliente, Buttons, ActnList, cxLookupEdit,
|
||
cxDBLookupEdit, cxDBLookupComboBox, uFormasPagoController, uDAInterfaces,
|
||
uBizFormasPago, cxButtonEdit, uBizContactos, uContratosClienteController,
|
||
uVendedoresController, uViewClienteContrato;
|
||
|
||
type
|
||
IViewContratoCliente = interface(IViewBase)
|
||
['{3DE0231D-760E-437B-88E5-144B88024797}']
|
||
function GetController : IContratosClienteController;
|
||
procedure SetController (const Value : IContratosClienteController);
|
||
property Controller : IContratosClienteController read GetController write SetController;
|
||
|
||
function GetContrato: IBizContratoCliente;
|
||
procedure SetContrato(const Value: IBizContratoCliente);
|
||
property Contrato: IBizContratoCliente read GetContrato write SetContrato;
|
||
end;
|
||
|
||
TfrViewContratoCliente = class(TfrViewBase, IViewContratoCliente)
|
||
DADataSource: TDADataSource;
|
||
dxLayoutControl1Group_Root: TdxLayoutGroup;
|
||
dxLayoutControl1: TdxLayoutControl;
|
||
dxLayoutControl1Item2: TdxLayoutItem;
|
||
edtFechaContrato: TcxDBDateEdit;
|
||
dxLayoutControl1Group1: TdxLayoutGroup;
|
||
dxLayoutControl1Group2: TdxLayoutGroup;
|
||
dxLayoutControl1Item6: TdxLayoutItem;
|
||
memObservaciones: TcxDBMemo;
|
||
dxLayoutControl1Item3: TdxLayoutItem;
|
||
eReferencia: TcxDBTextEdit;
|
||
dxLayoutControl1Group7: TdxLayoutGroup;
|
||
ActionList1: TActionList;
|
||
dxLayoutControl1Item4: TdxLayoutItem;
|
||
cbFormaPago: TcxDBLookupComboBox;
|
||
dxLayoutControl1Item5: TdxLayoutItem;
|
||
bFormasPago: TButton;
|
||
dxLayoutControl1Group5: TdxLayoutGroup;
|
||
dsFormaPago: TDADataSource;
|
||
cbSituacion: TcxDBImageComboBox;
|
||
dxLayoutControl1Item10: TdxLayoutItem;
|
||
dxLayoutControl1Group8: TdxLayoutGroup;
|
||
dxLayoutControl1Item1: TdxLayoutItem;
|
||
dxLayoutControl1Item8: TdxLayoutItem;
|
||
memFormaPago: TcxDBMemo;
|
||
dxLayoutControl1Group3: TdxLayoutGroup;
|
||
dxLayoutControl1Item9: TdxLayoutItem;
|
||
memPlazoEntrega: TcxDBMemo;
|
||
dxLayoutControl1Group4: TdxLayoutGroup;
|
||
dxLayoutControl1Group6: TdxLayoutGroup;
|
||
dxLayoutControl1Item11: TdxLayoutItem;
|
||
dxLayoutControl1Group9: TdxLayoutGroup;
|
||
cbVendedor: TcxDBLookupComboBox;
|
||
dsVendedor: TDADataSource;
|
||
dxLayoutControl1Item7: TdxLayoutItem;
|
||
cbTipoContrato: TcxDBComboBox;
|
||
dxLayoutControl1Group11: TdxLayoutGroup;
|
||
dxLayoutControl1Item12: TdxLayoutItem;
|
||
edtlREF_CLIENTE: TcxDBTextEdit;
|
||
frViewClienteContrato1: TfrViewClienteContrato;
|
||
dxLayoutControl1Item13: TdxLayoutItem;
|
||
edtFechaDecision: TcxDBDateEdit;
|
||
dxLayoutControl1Item14: TdxLayoutItem;
|
||
edtFechaPrevMontaje: TcxDBDateEdit;
|
||
dxLayoutControl1Item15: TdxLayoutItem;
|
||
edtFechaUltPresentacion: TcxDBDateEdit;
|
||
dxLayoutControl1Group10: TdxLayoutGroup;
|
||
procedure CustomViewCreate(Sender: TObject);
|
||
procedure CustomViewDestroy(Sender: TObject);
|
||
procedure bFormasPagoClick(Sender: TObject);
|
||
procedure frViewClienteContratoButton1Click(Sender: TObject);
|
||
procedure frViewClienteContratoButton2Click(Sender: TObject);
|
||
protected
|
||
FContrato : IBizContratoCliente;
|
||
FFormasPago : IBizFormaPago;
|
||
FVendedor : IBizVendedor;
|
||
FFormasPagoController : IFormasPagoController;
|
||
FVendedoresController : IVendedoresController;
|
||
FController : IContratosClienteController;
|
||
|
||
function GetContrato: IBizContratoCliente;
|
||
procedure SetContrato(const Value: IBizContratoCliente); virtual;
|
||
|
||
function GetController : IContratosClienteController;
|
||
procedure SetController (const Value : IContratosClienteController);
|
||
public
|
||
property Controller : IContratosClienteController read GetController write SetController;
|
||
property Contrato: IBizContratoCliente read GetContrato write SetContrato;
|
||
end;
|
||
|
||
implementation
|
||
|
||
{$R *.dfm}
|
||
|
||
{ TfrViewContratoCliente }
|
||
|
||
uses
|
||
uClientesController, uBizDireccionesContacto, uPresupuestosClienteController;
|
||
|
||
|
||
procedure TfrViewContratoCliente.bFormasPagoClick(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
if Assigned(FFormasPago) then
|
||
FFormasPagoController.VerTodos(FFormasPago);
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.CustomViewCreate(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
FFormasPago := Nil;
|
||
FVendedor := Nil;
|
||
FFormasPagoController := TFormasPagoController.Create;
|
||
FVendedoresController := TVendedoresController.Create;
|
||
|
||
cbTipoContrato.Properties.Items.Clear;
|
||
cbTipoContrato.Properties.Items.Add(CTE_COCINA);
|
||
cbTipoContrato.Properties.Items.Add(CTE_ARMARIO);
|
||
cbTipoContrato.Properties.Items.Add(CTE_BANO);
|
||
cbTipoContrato.Properties.Items.Add(CTE_ELECTRODOMESTICO);
|
||
cbTipoContrato.Properties.Items.Add(CTE_OBRA);
|
||
cbTipoContrato.Properties.Items.Add(CTE_VARIOS);
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.CustomViewDestroy(Sender: TObject);
|
||
begin
|
||
FFormasPago := Nil;
|
||
FFormasPagoController := NIL;
|
||
FVendedor := Nil;
|
||
FVendedoresController := NIL;
|
||
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.frViewClienteContratoButton1Click(Sender: TObject);
|
||
begin
|
||
if Assigned(Contrato) and Assigned(Contrato.Cliente) and
|
||
Assigned (Contrato.Detalles) and (Contrato.Detalles.RecordCount > 0) then
|
||
begin
|
||
if (Application.MessageBox('Los descuentos de los art<72>culos del Contrato ser<65>n actualizados con los del nuevo cliente seleccionado, <20>Desea continuar?', 'Atenci<63>n', MB_YESNO) = IDNO) then
|
||
Exit;
|
||
end;
|
||
frViewClienteContrato1.actElegirContacto.Execute;
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.frViewClienteContratoButton2Click(Sender: TObject);
|
||
begin
|
||
if Assigned(Contrato) and Assigned(Contrato.Cliente) and
|
||
Assigned (Contrato.Detalles) and (Contrato.Detalles.RecordCount > 0) then
|
||
begin
|
||
if (Application.MessageBox('Los descuentos de los art<72>culos del Contrato ser<65>n actualizados con los del nuevo cliente seleccionado, <20>Desea continuar?', 'Atenci<63>n', MB_YESNO) = IDNO) then
|
||
Exit;
|
||
end;
|
||
frViewClienteContrato1.actAnadirContacto.Execute;
|
||
end;
|
||
|
||
function TfrViewContratoCliente.GetContrato: IBizContratoCliente;
|
||
begin
|
||
Result := FContrato;
|
||
end;
|
||
|
||
function TfrViewContratoCliente.GetController: IContratosClienteController;
|
||
begin
|
||
Result := FController;
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.SetContrato(const Value: IBizContratoCliente);
|
||
begin
|
||
FContrato := Value;
|
||
if Assigned(FContrato) then
|
||
begin
|
||
DADataSource.DataTable := FContrato.DataTable;
|
||
|
||
FFormasPago := FFormasPagoController.BuscarTodos;
|
||
dsFormaPago.DataTable := FFormasPago.DataTable;
|
||
dsFormaPago.DataTable.Active := True;
|
||
|
||
FVendedor := (FVendedoresController.BuscarTodos as IBizVendedor);
|
||
dsVendedor.DataTable := FVendedor.DataTable;
|
||
dsVendedor.DataTable.Active := True;
|
||
|
||
frViewClienteContrato1.MsgElegirCliente := 'Elija el cliente al que se le realizar<61> el contrato.';
|
||
end
|
||
else begin
|
||
DADataSource.DataTable := NIL;
|
||
dsFormaPago.DataTable := NIL;
|
||
dsVendedor.DataTable := NIL;
|
||
frViewClienteContrato1.Cliente := Nil;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrViewContratoCliente.SetController(
|
||
const Value: IContratosClienteController);
|
||
begin
|
||
FController := Value;
|
||
|
||
if Assigned(FController) then
|
||
frViewClienteContrato1.Controller := FController.ClienteController;
|
||
end;
|
||
|
||
end.
|