git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@286 c93665c3-c93d-084d-9b98-7d5f4a9c3376
170 lines
5.6 KiB
ObjectPascal
170 lines
5.6 KiB
ObjectPascal
unit uViewCliente;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uViewContacto, DB, uDADataTable, DBCtrls,
|
|
StdCtrls, Mask, ExtCtrls, uCustomView,
|
|
uViewBase, JvComponent, JvFormAutoSize, cxControls, uBizContactos,
|
|
cxContainer, cxEdit, cxTextEdit, cxDBEdit, dxLayoutLookAndFeels,
|
|
dxLayoutControl, cxMemo, cxHyperLinkEdit, ImgList, ActnList, Buttons,
|
|
PngSpeedButton, PngImageList, cxGraphics, cxMaskEdit, cxDropDownEdit,
|
|
cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, uGruposClienteController,
|
|
cxCheckBox, cxSpinEdit, Grids, DBGrids;
|
|
|
|
type
|
|
IViewCliente = interface(IViewContacto)
|
|
['{C06F4653-1745-4B7E-A3DC-102B2F23238E}']
|
|
end;
|
|
|
|
TfrViewCliente = class(TfrViewContacto, IViewCliente)
|
|
dxLayoutControlContactoItem24: TdxLayoutItem;
|
|
eNombreComercial: TcxDBTextEdit;
|
|
dxLayoutControlContactoItem26: TdxLayoutItem;
|
|
cbClienteBloqueado: TcxDBCheckBox;
|
|
dxLayoutControlContactoGroup18: TdxLayoutGroup;
|
|
dxLayoutControlContactoItem19: TdxLayoutItem;
|
|
cbGrupoCliente: TcxDBComboBox;
|
|
dxLayoutControlContactoItem16: TdxLayoutItem;
|
|
eBloqueo: TcxDBTextEdit;
|
|
actBloqueoCliente: TAction;
|
|
dxLayoutControlContactoGroup10: TdxLayoutGroup;
|
|
dxLayoutControlContactoItem20: TdxLayoutItem;
|
|
cxDBCheckBox1: TcxDBCheckBox;
|
|
dxLayoutControlContactoItem21: TdxLayoutItem;
|
|
Label1: TLabel;
|
|
dxLayoutControlContactoItem22: TdxLayoutItem;
|
|
cbRapel: TcxDBCheckBox;
|
|
dxLayoutControlContactoItem23: TdxLayoutItem;
|
|
Label2: TLabel;
|
|
dxLayoutControlContactoGroup14: TdxLayoutGroup;
|
|
dxLayoutControlContactoItem27: TdxLayoutItem;
|
|
eMailAdministracion: TcxDBHyperLinkEdit;
|
|
dxLayoutControlContactoItem28: TdxLayoutItem;
|
|
PngSpeedButton4: TPngSpeedButton;
|
|
dxLayoutControlContactoGroup15: TdxLayoutGroup;
|
|
actMandarCorreoAdministracion: TAction;
|
|
procedure cbGrupoClientePropertiesInitPopup(Sender: TObject);
|
|
procedure cbGrupoClientePropertiesValidate(Sender: TObject;
|
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
procedure CustomViewCreate(Sender: TObject);
|
|
procedure CustomViewDestroy(Sender: TObject);
|
|
procedure actBloqueoClienteExecute(Sender: TObject);
|
|
procedure eMailAdministracionPropertiesEditValueChanged(Sender: TObject);
|
|
procedure eMailAdministracionPropertiesValidate(Sender: TObject;
|
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
procedure actMandarCorreoAdministracionExecute(Sender: TObject);
|
|
procedure actMandarCorreoAdministracionUpdate(Sender: TObject);
|
|
protected
|
|
FGrupoController: IGruposClienteController;
|
|
procedure SetContacto(const Value: IBizContacto); override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses
|
|
uBizGruposCliente;
|
|
|
|
type
|
|
THackcxDBHyperLinkEdit = class(TcxDBHyperLinkEdit);
|
|
|
|
{ TfrViewCliente }
|
|
|
|
procedure TfrViewCliente.actBloqueoClienteExecute(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
eBloqueo.Enabled := cbClienteBloqueado.Checked;
|
|
end;
|
|
|
|
procedure TfrViewCliente.actMandarCorreoAdministracionExecute(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
THackcxDBHyperLinkEdit(eMailTrabajo).DoStart;
|
|
end;
|
|
|
|
procedure TfrViewCliente.actMandarCorreoAdministracionUpdate(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
(Sender as TAction).Enabled := (Length(eMailAdministracion.Text) > 0)
|
|
end;
|
|
|
|
procedure TfrViewCliente.cbGrupoClientePropertiesInitPopup(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
with cbGrupoCliente.Properties.Items do
|
|
begin
|
|
BeginUpdate;
|
|
try
|
|
Clear;
|
|
AddStrings(FGrupoController.DarListaGruposCliente);
|
|
finally
|
|
EndUpdate;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewCliente.cbGrupoClientePropertiesValidate(Sender: TObject;
|
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
var
|
|
AGrupo : IBizGrupoCliente;
|
|
begin
|
|
inherited;
|
|
with (Sender as TcxDBComboBox) do
|
|
begin
|
|
if (Length(DisplayValue) > 0) and (DisplayValue <> (Contacto as IBizCliente).GRUPO_CLIENTE) then
|
|
if Properties.LookupItems.IndexOf(DisplayValue) < 0 then
|
|
begin
|
|
Properties.LookupItems.BeginUpdate;
|
|
AGrupo := FGrupoController.BuscarTodos;
|
|
AGrupo.DataTable.Active := True;
|
|
try
|
|
FGrupoController.Anadir(AGrupo);
|
|
AGrupo.DESCRIPCION := DisplayValue;
|
|
FGrupoController.Guardar(AGrupo);
|
|
Properties.LookupItems.Add(DisplayValue);
|
|
finally
|
|
Properties.LookupItems.EndUpdate;
|
|
AGrupo := NIL;
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewCliente.CustomViewCreate(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
FGrupoController := TGruposClienteController.Create;
|
|
end;
|
|
|
|
procedure TfrViewCliente.CustomViewDestroy(Sender: TObject);
|
|
begin
|
|
FGrupoController := NIL;
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrViewCliente.eMailAdministracionPropertiesEditValueChanged(
|
|
Sender: TObject);
|
|
begin
|
|
if not VarIsNull((Sender as TcxDBHyperLinkEdit).EditValue) then
|
|
(Sender as TcxDBHyperLinkEdit).EditValue := StringReplace((Sender as TcxDBHyperLinkEdit).EditValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
|
end;
|
|
|
|
procedure TfrViewCliente.eMailAdministracionPropertiesValidate(Sender: TObject;
|
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
begin
|
|
if not VarIsNull(DisplayValue) then
|
|
DisplayValue := StringReplace(DisplayValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
|
end;
|
|
|
|
procedure TfrViewCliente.SetContacto(const Value: IBizContacto);
|
|
begin
|
|
inherited;
|
|
if Assigned(FContacto) then
|
|
eBloqueo.Enabled := cbClienteBloqueado.Checked;
|
|
end;
|
|
|
|
end.
|