diff --git a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm
index d6b850fd..e332c2b1 100644
--- a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm
+++ b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm
@@ -70,9 +70,9 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral
Top = 11
Width = 168
Height = 21
+ Style = csDropDownList
ItemHeight = 13
TabOrder = 0
- Text = 'cbEsquemaColor'
end
end
object Panel4: TPanel
@@ -175,7 +175,6 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral
BevelOuter = bvNone
ParentColor = True
TabOrder = 6
- ExplicitTop = 224
object lblLongMinPass: TLabel
Left = 17
Top = 43
diff --git a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas
index a591196e..03b2c868 100644
--- a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas
+++ b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas
@@ -42,7 +42,8 @@ type
implementation
-uses uFactuGES_App;
+uses
+ uFactuGES_App;
{$R *.dfm}
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
index 790f04f3..f28352ba 100644
--- a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
@@ -46,6 +46,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -59,6 +77,30 @@
MainSource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -68,25 +110,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -104,11 +127,6 @@
-
-
-
-
-
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.res b/Source/Modulos/Contactos/Controller/Contactos_controller.res
index 8b251f31..1641339f 100644
Binary files a/Source/Modulos/Contactos/Controller/Contactos_controller.res and b/Source/Modulos/Contactos/Controller/Contactos_controller.res differ
diff --git a/Source/Modulos/Contactos/Controller/uClientesController.pas b/Source/Modulos/Contactos/Controller/uClientesController.pas
index c566674f..e565b8db 100644
--- a/Source/Modulos/Contactos/Controller/uClientesController.pas
+++ b/Source/Modulos/Contactos/Controller/uClientesController.pas
@@ -126,10 +126,9 @@ function TClientesController.Eliminar(ACliente: IBizContacto; AllItems: Boolean)
//En el caso de eliminar almenos un elemento del conjunto se devuelve true
var
bEliminado: Boolean;
-
begin
- Result := False;
-
+ bEliminado := False;
+
if not Assigned(ACliente) then
raise Exception.Create ('Contacto no asignado');
@@ -208,34 +207,33 @@ procedure TClientesController.Preview(ACliente: IBizCliente; AllItems: Boolean);
var
AReportController : IEtiquetasContactosReportController;
ListaID: TStringList;
-
begin
AReportController := TEtiquetasContactosReportController.Create;
try
- ListaID := TStringList.Create;
-
- //Si deseamos previsualizar todos los items del objeto albaran
- if AllItems then
- begin
- with ACliente.DataTable do
- begin
- First;
- while not EOF do
+ ListaID := TStringList.Create;
+ try
+ //Si deseamos previsualizar todos los items del objeto albaran
+ if AllItems then
begin
+ with ACliente.DataTable do
+ begin
+ First;
+ while not EOF do
+ begin
+ ListaID.Add(IntToStr(ACliente.ID));
+ Next;
+ end;
+ end;
+ end
+ else //Solo previsualizamos el item seleccionado
ListaID.Add(IntToStr(ACliente.ID));
- Next;
- end;
- end;
- end
- //Solo previsualizamos el item seleccionado
- else
- ListaID.Add(IntToStr(ACliente.ID));
-
- AReportController.Preview(ListaID.CommaText);
+ AReportController.Preview(ListaID.CommaText);
+ finally
+ FreeANDNil(ListaID);
+ end;
finally
AReportController := NIL;
- ListaID.Free;
end;
end;
@@ -247,30 +245,31 @@ var
begin
AReportController := TEtiquetasContactosReportController.Create;
try
- ListaID := TStringList.Create;
-
- //Si deseamos previsualizar todos los items del objeto albaran
- if AllItems then
- begin
- with ACliente.DataTable do
- begin
- First;
- while not EOF do
+ ListaID := TStringList.Create;
+ try
+ //Si deseamos previsualizar todos los items del objeto albaran
+ if AllItems then
begin
+ with ACliente.DataTable do
+ begin
+ First;
+ while not EOF do
+ begin
+ ListaID.Add(IntToStr(ACliente.ID));
+ Next;
+ end;
+ end;
+ end
+ //Solo previsualizamos el item seleccionado
+ else
ListaID.Add(IntToStr(ACliente.ID));
- Next;
- end;
- end;
- end
- //Solo previsualizamos el item seleccionado
- else
- ListaID.Add(IntToStr(ACliente.ID));
-
- AReportController.Print(ListaID.CommaText);
+ AReportController.Print(ListaID.CommaText);
+ finally
+ FreeANDNIL(ListaID);
+ end;
finally
AReportController := NIL;
- ListaID.Free;
end;
end;
@@ -320,8 +319,6 @@ end;
function TClientesController.TieneDatosBancarios(ACliente: IBizCliente): Boolean;
begin
- Result := False;
-
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (TieneDatosBancarios)');
diff --git a/Source/Modulos/Contactos/Controller/uContactosController.pas b/Source/Modulos/Contactos/Controller/uContactosController.pas
index 82d44e78..06b3561f 100644
--- a/Source/Modulos/Contactos/Controller/uContactosController.pas
+++ b/Source/Modulos/Contactos/Controller/uContactosController.pas
@@ -132,8 +132,6 @@ end;
function TContactosController.ElegirDireccion(AContacto: IBizContacto; AMensaje: String): IBizDireccionesContacto;
var
JsDialog: TJSDialog;
- Respuesta: Integer;
-
begin
Result := NIL;
JsDialog := TJSDialog.Create(nil);
@@ -175,7 +173,7 @@ begin
Result := AContacto.Direcciones;
finally
- JsDialog := NIL;
+ FreeAndNIL(JsDialog);
end;
end;
@@ -317,8 +315,6 @@ end;
function TContactosController.ValidarContacto(AContacto: IBizContacto): Boolean;
begin
- Result := False;
-
if not Assigned(AContacto) then
raise Exception.Create ('Contacto no asignado');
diff --git a/Source/Modulos/Contactos/Controller/uGruposClienteController.pas b/Source/Modulos/Contactos/Controller/uGruposClienteController.pas
index e9ee7d15..9e51fc9e 100644
--- a/Source/Modulos/Contactos/Controller/uGruposClienteController.pas
+++ b/Source/Modulos/Contactos/Controller/uGruposClienteController.pas
@@ -123,8 +123,6 @@ end;
function TGruposClienteController.ValidarGrupoCliente(AGrupoCliente: IBizGrupoCliente): Boolean;
begin
- Result := False;
-
if not Assigned(AGrupoCliente) then
raise Exception.Create ('GrupoCliente no asignada');
@@ -161,8 +159,6 @@ end;
function TGruposClienteController.Eliminar(AGrupoCliente: IBizGrupoCliente): Boolean;
begin
- Result := False;
-
if not Assigned(AGrupoCliente) then
raise Exception.Create ('GrupoCliente no asignada');
diff --git a/Source/Modulos/Contactos/Controller/uGruposProveedorController.pas b/Source/Modulos/Contactos/Controller/uGruposProveedorController.pas
index e201436a..c99eb8fa 100644
--- a/Source/Modulos/Contactos/Controller/uGruposProveedorController.pas
+++ b/Source/Modulos/Contactos/Controller/uGruposProveedorController.pas
@@ -123,8 +123,6 @@ end;
function TGruposProveedorController.ValidarGrupoProveedor(AGrupoProveedor: IBizGrupoProveedor): Boolean;
begin
- Result := False;
-
if not Assigned(AGrupoProveedor) then
raise Exception.Create ('GrupoProveedor no asignada');
@@ -161,8 +159,6 @@ end;
function TGruposProveedorController.Eliminar(AGrupoProveedor: IBizGrupoProveedor): Boolean;
begin
- Result := False;
-
if not Assigned(AGrupoProveedor) then
raise Exception.Create ('GrupoProveedor no asignada');
diff --git a/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas b/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas
index 6abd7b55..d9ef2755 100644
--- a/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas
+++ b/Source/Modulos/Contactos/Controller/uProcedenciasClienteController.pas
@@ -123,8 +123,6 @@ end;
function TProcedenciasClienteController.ValidarProcedenciaCliente(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
begin
- Result := False;
-
if not Assigned(AProcedenciaCliente) then
raise Exception.Create ('ProcedenciaCliente no asignada');
@@ -161,8 +159,6 @@ end;
function TProcedenciasClienteController.Eliminar(AProcedenciaCliente: IBizProcedenciaCliente): Boolean;
begin
- Result := False;
-
if not Assigned(AProcedenciaCliente) then
raise Exception.Create ('ProcedenciaCliente no asignada');
diff --git a/Source/Modulos/Contactos/Controller/uProveedoresController.pas b/Source/Modulos/Contactos/Controller/uProveedoresController.pas
index 3783640b..e3f4facf 100644
--- a/Source/Modulos/Contactos/Controller/uProveedoresController.pas
+++ b/Source/Modulos/Contactos/Controller/uProveedoresController.pas
@@ -116,8 +116,7 @@ var
bEliminado: Boolean;
begin
- Result := False;
-
+ bEliminado := False;
if not Assigned(AProveedor) then
raise Exception.Create ('Contacto no asignado');
@@ -200,30 +199,31 @@ var
begin
AReportController := TEtiquetasContactosReportController.Create;
try
- ListaID := TStringList.Create;
-
- //Si deseamos previsualizar todos los items del objeto albaran
- if AllItems then
- begin
- with AProveedor.DataTable do
- begin
- First;
- while not EOF do
+ ListaID := TStringList.Create;
+ try
+ //Si deseamos previsualizar todos los items del objeto albaran
+ if AllItems then
begin
+ with AProveedor.DataTable do
+ begin
+ First;
+ while not EOF do
+ begin
+ ListaID.Add(IntToStr(AProveedor.ID));
+ Next;
+ end;
+ end;
+ end
+ //Solo previsualizamos el item seleccionado
+ else
ListaID.Add(IntToStr(AProveedor.ID));
- Next;
- end;
- end;
- end
- //Solo previsualizamos el item seleccionado
- else
- ListaID.Add(IntToStr(AProveedor.ID));
-
- AReportController.Preview(ListaID.CommaText);
+ AReportController.Preview(ListaID.CommaText);
+ finally
+ FreeANDNIL(ListaID);
+ end;
finally
AReportController := NIL;
- ListaID.Free;
end;
end;
@@ -235,30 +235,31 @@ var
begin
AReportController := TEtiquetasContactosReportController.Create;
try
- ListaID := TStringList.Create;
-
- //Si deseamos previsualizar todos los items del objeto albaran
- if AllItems then
- begin
- with AProveedor.DataTable do
- begin
- First;
- while not EOF do
+ ListaID := TStringList.Create;
+ try
+ //Si deseamos previsualizar todos los items del objeto albaran
+ if AllItems then
begin
+ with AProveedor.DataTable do
+ begin
+ First;
+ while not EOF do
+ begin
+ ListaID.Add(IntToStr(AProveedor.ID));
+ Next;
+ end;
+ end;
+ end
+ //Solo previsualizamos el item seleccionado
+ else
ListaID.Add(IntToStr(AProveedor.ID));
- Next;
- end;
- end;
- end
- //Solo previsualizamos el item seleccionado
- else
- ListaID.Add(IntToStr(AProveedor.ID));
-
- AReportController.Print(ListaID.CommaText);
+ AReportController.Print(ListaID.CommaText);
+ finally
+ FreeANDNIL(ListaID);
+ end;
finally
AReportController := NIL;
- ListaID.Free;
end;
end;
diff --git a/Source/Modulos/Contactos/Controller/uVendedoresController.pas b/Source/Modulos/Contactos/Controller/uVendedoresController.pas
index d9861481..1b246e6f 100644
--- a/Source/Modulos/Contactos/Controller/uVendedoresController.pas
+++ b/Source/Modulos/Contactos/Controller/uVendedoresController.pas
@@ -26,7 +26,7 @@ type
function Duplicar(AContacto: IBizContacto): IBizContacto; override;
function Buscar(const ID: Integer): IBizContacto; override;
function BuscarTodos: IBizContacto; overload; override;
- function BuscarTodos(const CadenaIDs: String): IBizContacto; overload;
+ function BuscarTodos(const CadenaIDs: String): IBizContacto; overload;
function Nuevo : IBizContacto; override;
procedure Ver(AContacto : IBizContacto); override;
procedure VerTodos(AContactos: IBizContacto); override;
@@ -106,7 +106,6 @@ end;
function TVendedoresController.DarListaVendedores: TStringList;
var
AVendedores: IBizContacto;
- i : integer;
begin
AVendedores := BuscarTodos;
AVendedores.DataTable.Active := True;
@@ -160,10 +159,9 @@ function TVendedoresController.Eliminar(AVendedor: IBizContacto; AllItems: Boole
//En el caso de eliminar almenos un elemento del conjunto se devuelve true
var
bEliminado: Boolean;
-
begin
- Result := False;
-
+ bEliminado := False;
+
if not Assigned(AVendedor) then
raise Exception.Create ('Contacto no asignado');
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dpk b/Source/Modulos/Contactos/Model/Contactos_model.dpk
index 54d94731..9693fa7d 100644
Binary files a/Source/Modulos/Contactos/Model/Contactos_model.dpk and b/Source/Modulos/Contactos/Model/Contactos_model.dpk differ
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dproj b/Source/Modulos/Contactos/Model/Contactos_model.dproj
index 26fb6dd7..86f28038 100644
--- a/Source/Modulos/Contactos/Model/Contactos_model.dproj
+++ b/Source/Modulos/Contactos/Model/Contactos_model.dproj
@@ -49,23 +49,21 @@
MainSource
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Source/Modulos/Contactos/Model/Contactos_model.res b/Source/Modulos/Contactos/Model/Contactos_model.res
index 8b251f31..1641339f 100644
Binary files a/Source/Modulos/Contactos/Model/Contactos_model.res and b/Source/Modulos/Contactos/Model/Contactos_model.res differ
diff --git a/Source/Modulos/Contactos/Model/uBizContactos.pas b/Source/Modulos/Contactos/Model/uBizContactos.pas
index 21e4a991..70bca986 100644
--- a/Source/Modulos/Contactos/Model/uBizContactos.pas
+++ b/Source/Modulos/Contactos/Model/uBizContactos.pas
@@ -18,11 +18,6 @@ const
CATEGORIA_VENDEDOR = 3;
CATEGORIA_INSTALADOR = 4;
- PROVEEDOR_REGIMEN_IVA = 'General';
- CLIENTE_REGIMEN_IVA = 'General';
- CLIENTE_DIAS_VENCIMIENTO = 15;
- CLIENTE_RECARGO_EQUIVALENCIA = 0;
-
type
IBizContacto = interface (IContactos)
['{CD585680-26B6-47A4-B684-89C468670F4A}']
@@ -382,11 +377,21 @@ type
implementation
+
{$INCLUDE ..\..\..\FactuGES.inc}
uses
- uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App, uBizEmpresasTiendas;
+ uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App,
+ uBizEmpresasTiendas, uTiposIVAController, uBizTiposIVA,
+ uFormasPagoController, uBizFormasPago;
+
+const
+ PROVEEDOR_REGIMEN_IVA = 'General';
+ CLIENTE_REGIMEN_IVA = 'General';
+ CLIENTE_DIAS_VENCIMIENTO = 15;
+ CLIENTE_RECARGO_EQUIVALENCIA = 0;
+
{ TBizContacto }
@@ -643,13 +648,16 @@ begin
end;
procedure TBizCliente.IniciarValoresContactoNuevo;
+var
+ AFormaPagoController: IFormasPagoController;
+ ATiposIVAController: ITiposIVAController;
begin
inherited;
ID_CATEGORIA := CATEGORIA_CLIENTE;
VENCIMIENTO_FACTURAS := CLIENTE_DIAS_VENCIMIENTO;
BLOQUEADO := 0;
RECARGO_EQUIVALENCIA := CLIENTE_RECARGO_EQUIVALENCIA;
- REGIMEN_IVA := CLIENTE_REGIMEN_IVA;
+ REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString('Clientes.RegimenIVA', CLIENTE_REGIMEN_IVA);
{$IFDEF CONTABILIDAD}
IGNORAR_CONTABILIDAD := 0;
@@ -658,8 +666,23 @@ begin
IGNORAR_CONTABILIDAD := 1;
TIENE_SUBCUENTA := 0;
{$ENDIF}
+
+ AFormaPagoController := TFormasPagoController.Create;
+ try
+ ID_FORMA_PAGO := AFormaPagoController.BuscarID(AppFactuGES.Configuracion.GetSettingAsString('Clientes.FormaPago'))
+ finally
+ AFormaPagoController := NIL;
+ end;
+
+ ATiposIVAController := TTiposIVAController.Create;
+ try
+ ID_TIPO_IVA := ATiposIVAController.BuscarID(AppFactuGES.Configuracion.GetSettingAsString('Clientes.TipoIVA'))
+ finally
+ ATiposIVAController := NIL;
+ end;
end;
+
{ TBizProveedor }
function TBizProveedor.GetGRUPO_PROVEEDORValue: String;
diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dproj b/Source/Modulos/Contactos/Views/Contactos_view.dproj
index eeea6c35..af493e2e 100644
--- a/Source/Modulos/Contactos/Views/Contactos_view.dproj
+++ b/Source/Modulos/Contactos/Views/Contactos_view.dproj
@@ -49,53 +49,47 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -227,6 +221,12 @@
TCustomView
+
+
+
+
+
+