- Limpieza de código para NO usar skins de DevExpress. git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@541 0c75b7a4-871f-7646-8a2f-f78d34cc349f
239 lines
6.9 KiB
ObjectPascal
239 lines
6.9 KiB
ObjectPascal
unit uViewDireccionEntregaAlbaranCliente;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uViewBase, uBizAlbaranesCliente, cxGraphics, dxLayoutControl, cxMemo,
|
|
cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxLookupEdit,
|
|
cxDBLookupEdit, cxDBLookupComboBox, StdCtrls, cxControls, DB, uDADataTable,
|
|
ActnList, uAlbaranesClienteController, Buttons, cxDBEdit, uDAInterfaces;
|
|
|
|
type
|
|
IViewDireccionEntregaAlbaranCliente = interface(IViewBase)
|
|
['{C23A361A-98CA-450C-9F29-2DA7877601EE}']
|
|
function GetAlbaranCliente: IBizAlbaranCliente;
|
|
procedure SetAlbaranCliente(const Value: IBizAlbaranCliente);
|
|
property AlbaranCliente: IBizAlbaranCliente read GetAlbaranCliente write SetAlbaranCliente;
|
|
end;
|
|
|
|
TfrViewDireccionEntregaAlbaranCliente = class(TfrViewBase, IViewDireccionEntregaAlbaranCliente)
|
|
dxLayoutControl1: TdxLayoutControl;
|
|
dxLayoutGroup1: TdxLayoutGroup;
|
|
dsAlbaran: TDADataSource;
|
|
dsAlmacenes: TDADataSource;
|
|
dxLayoutControl1Item1: TdxLayoutItem;
|
|
eCalle: TcxDBTextEdit;
|
|
dxLayoutControl1Item4: TdxLayoutItem;
|
|
eCodigoPostal: TcxDBTextEdit;
|
|
dxLayoutControl1Item5: TdxLayoutItem;
|
|
eTlfTrabajo: TcxDBTextEdit;
|
|
dxLayoutControl1Item6: TdxLayoutItem;
|
|
ePersonaContacto: TcxDBTextEdit;
|
|
dxLayoutControl1Group3: TdxLayoutGroup;
|
|
dxLayoutControl1Group4: TdxLayoutGroup;
|
|
dxLayoutControl1Item2: TdxLayoutItem;
|
|
cbProvincia: TcxDBComboBox;
|
|
dxLayoutControl1Group1: TdxLayoutGroup;
|
|
dxLayoutControl1Item3: TdxLayoutItem;
|
|
cbPoblacion: TcxDBComboBox;
|
|
dxLayoutControl1Group2: TdxLayoutGroup;
|
|
procedure cbListaPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
procedure cbProvinciaPropertiesInitPopup(Sender: TObject);
|
|
procedure cbPoblacionPropertiesInitPopup(Sender: TObject);
|
|
protected
|
|
// FAlmacenesController : IAlmacenesController;
|
|
// FAlmacenes: IBizAlmacen;
|
|
FAlbaran : IBizAlbaranCliente;
|
|
FController : IAlbaranesClienteController;
|
|
FProvincias : TStringList;
|
|
FPoblaciones : TStringList;
|
|
procedure CargarProvincias;
|
|
procedure CargarPoblaciones;
|
|
function GetAlbaranCliente: IBizAlbaranCliente;
|
|
procedure SetAlbaranCliente(const Value: IBizAlbaranCliente);
|
|
procedure RefrescarDireccion;
|
|
public
|
|
property AlbaranCliente: IBizAlbaranCliente read GetAlbaranCliente write SetAlbaranCliente;
|
|
constructor Create(AOwner: TComponent); override;
|
|
destructor Destroy; override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses
|
|
uEditorRegistryUtils,
|
|
uProvinciasPoblacionesController, uStringsUtils;
|
|
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.CargarPoblaciones;
|
|
var
|
|
i : integer;
|
|
AID : Integer;
|
|
begin
|
|
AID := StrToInt(FProvincias.Values[cbProvincia.Text]);
|
|
with TProvinciasPoblacionesController.Create do
|
|
try
|
|
FPoblaciones := DarListaPoblaciones(AID);
|
|
|
|
with cbPoblacion.Properties.Items do
|
|
begin
|
|
BeginUpdate;
|
|
try
|
|
Clear;
|
|
for i := 0 to FPoblaciones.Count - 1 do
|
|
Add(FPoblaciones.Names[i]);
|
|
finally
|
|
EndUpdate;
|
|
end;
|
|
end;
|
|
finally
|
|
Free;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.CargarProvincias;
|
|
var
|
|
i : integer;
|
|
begin
|
|
with TProvinciasPoblacionesController.Create do
|
|
try
|
|
FProvincias := DarListaProvincias;
|
|
|
|
with cbProvincia.Properties.Items do
|
|
begin
|
|
BeginUpdate;
|
|
try
|
|
Clear;
|
|
for i := 0 to FProvincias.Count - 1 do
|
|
Add(FProvincias.Names[i]);
|
|
finally
|
|
EndUpdate;
|
|
end;
|
|
end;
|
|
finally
|
|
Free;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.cbListaPropertiesValidate(
|
|
Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
|
|
var Error: Boolean);
|
|
begin
|
|
{ if Assigned(FAlbaran) and (FAlbaran.ID_ALMACEN <> FAlmacenes.ID) then
|
|
begin
|
|
FAlbaran.Edit;
|
|
FAlbaran.CALLE := FAlmacenes.CALLE;
|
|
FAlbaran.POBLACION := FAlmacenes.POBLACION;
|
|
FAlbaran.POBLACION := FAlmacenes.POBLACION;
|
|
FAlbaran.PROVINCIA := FAlmacenes.PROVINCIA;
|
|
FAlbaran.CODIGO_POSTAL := FAlmacenes.CODIGO_POSTAL;
|
|
FAlbaran.PERSONA_CONTACTO := FAlmacenes.PERSONA_CONTACTO;
|
|
FAlbaran.TELEFONO := FAlmacenes.TELEFONO;
|
|
RefrescarDireccion;
|
|
end;}
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.cbPoblacionPropertiesInitPopup(
|
|
Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ShowHourglassCursor;
|
|
try
|
|
FreeANDNIL(FPoblaciones);
|
|
if not Assigned(FProvincias) then
|
|
CargarProvincias;
|
|
if not EsCadenaVacia(cbProvincia.Text) and (FProvincias.IndexOfName(cbProvincia.Text) <> -1) then
|
|
CargarPoblaciones
|
|
finally
|
|
HideHourglassCursor;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.cbProvinciaPropertiesInitPopup(
|
|
Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ShowHourglassCursor;
|
|
try
|
|
if not Assigned(FProvincias) then
|
|
CargarProvincias;
|
|
finally
|
|
HideHourglassCursor;
|
|
end;
|
|
end;
|
|
|
|
constructor TfrViewDireccionEntregaAlbaranCliente.Create(AOwner: TComponent);
|
|
begin
|
|
inherited;
|
|
FAlbaran := NIL;
|
|
FProvincias := NIL;
|
|
FPoblaciones := NIL;
|
|
|
|
{ FController := TAlbaranesClienteController.Create;
|
|
FAlmacenesController := TAlmacenesController.Create;
|
|
FAlmacenes := FAlmacenesController.BuscarTodos;
|
|
FAlmacenes.DataTable.Active := True;
|
|
dsAlmacenes.DataTable := FAlmacenes.DataTable;}
|
|
end;
|
|
|
|
destructor TfrViewDireccionEntregaAlbaranCliente.Destroy;
|
|
begin
|
|
{ cbLista.Properties.OnValidate := Nil;
|
|
FAlmacenesController := Nil;
|
|
FAlmacenes := Nil;
|
|
FController := NIL;
|
|
}
|
|
if Assigned(FProvincias) then
|
|
FreeANDNIL(FProvincias);
|
|
|
|
if Assigned(FPoblaciones) then
|
|
FreeANDNIL(FPoblaciones);
|
|
|
|
FAlbaran := NIL;
|
|
inherited;
|
|
end;
|
|
|
|
function TfrViewDireccionEntregaAlbaranCliente.GetAlbaranCliente: IBizAlbaranCliente;
|
|
begin
|
|
Result := FAlbaran;
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.RefrescarDireccion;
|
|
begin
|
|
{ memDireccion.Lines.Clear;
|
|
if Assigned(FAlbaran) then
|
|
begin
|
|
memDireccion.Lines.Add(FAlbaran.CALLE);
|
|
memDireccion.Lines.Add(FAlbaran.CODIGO_POSTAL + ' ' + FPedido.POBLACION);
|
|
memDireccion.Lines.Add(FAlbaran.PROVINCIA);
|
|
end;}
|
|
end;
|
|
|
|
procedure TfrViewDireccionEntregaAlbaranCliente.SetAlbaranCliente(
|
|
const Value: IBizAlbaranCliente);
|
|
begin
|
|
|
|
FAlbaran := Value;
|
|
if Assigned(FAlbaran) then
|
|
dsAlbaran.DataTable := FAlbaran.DataTable
|
|
else
|
|
dsAlbaran.DataTable := NIL;
|
|
|
|
{ cbLista.Properties.OnValidate := NIL;
|
|
dsAlbaran.DataTable := nil;
|
|
|
|
FAlbaran := Value;
|
|
|
|
if not FAlbaran.EsNuevo then
|
|
RefrescarDireccion;
|
|
|
|
// Esto al final para que no salten los eventos del cxComboBox
|
|
dsAlbaran.DataTable := FAlbaran.DataTable;
|
|
cbLista.Properties.OnValidate := cbListaPropertiesValidate;}
|
|
end;
|
|
|
|
end.
|