From 82e2edc744e160fbbe2322e6f92e1125aae7b0b1 Mon Sep 17 00:00:00 2001 From: roberto Date: Wed, 15 Sep 2010 16:04:17 +0000 Subject: [PATCH] =?UTF-8?q?Se=20adaptan=20los=20presupuestos=20de=20client?= =?UTF-8?q?e=20para=20que=20cuando=20se=20a=C3=B1adan=20se=20elija=20el=20?= =?UTF-8?q?tipo=20de=20presupuesto,=20rellenando=20la=20forma=20de=20pago,?= =?UTF-8?q?=20plazos=20y=20observaciones=20de=20ese=20tipo=20de=20presupue?= =?UTF-8?q?sto.=20Pantalla=20de=20configuraci=C3=B3n=20en=20la=20que=20se?= =?UTF-8?q?=20puede=20cambiar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@535 f4e31baf-9722-1c47-927c-6f952f962d4b --- Database/scripts/factuges.sql | 3 +- Installer/librerias.txt | 4 +- Source/ApplicationBase/ApplicationBase.dpk | 17 +- Source/ApplicationBase/ApplicationBase.dproj | 62 +- .../Controller/uConfiguracionController.pas | 103 ++-- .../Views/uEditorConfiguracion.dfm | 18 +- .../Views/uViewConfiguracionGeneral.dfm | 24 +- .../Views/uViewConfiguracionGeneral.pas | 18 +- .../Controller/uUsuariosController.pas | 8 +- Source/Base/Base.dproj | 96 +-- .../uDataModuleConfiguracion.pas | 14 +- Source/Cliente/FactuGES.dproj | 3 +- Source/Cliente/FactuGES.rc | 8 +- Source/Cliente/FactuGES.res | Bin 171984 -> 171984 bytes Source/GUIBase/GUIBase.dproj | 56 +- Source/GUIBase/GUIBase.res | Bin 4748 -> 384 bytes Source/Informes/InfContratoCliente.fr3 | 16 +- .../Controller/Articulos_controller.dproj | 10 +- .../Articulos/Data/Articulos_data.dproj | 2 +- .../Controller/Contactos_controller.dproj | 26 +- .../Contactos/Data/Contactos_data.dproj | 12 +- .../Contactos/Model/Contactos_model.dproj | 30 +- .../Modulos/Contactos/Model/uBizContactos.pas | 6 +- .../Contactos/Views/Contactos_view.dproj | 68 +- .../Views/uViewConfiguracionContactos.dfm | 31 +- .../Views/uViewConfiguracionContactos.pas | 26 +- .../ContratosCliente_controller.RES | Bin 4748 -> 384 bytes .../Model/schContratosClienteClient_Intf.pas | 16 +- .../Reports/uRptContratosCliente_Server.dfm | 63 +- .../Reports/uRptContratosCliente_Server.pas | 6 + .../Views/ContratosCliente_view.RES | Bin 4748 -> 384 bytes .../FacturasProveedor_controller.RES | Bin 4748 -> 384 bytes .../Model/schFacturasProveedorClient_Intf.pas | 10 +- .../Views/FacturasProveedor_view.res | Bin 4748 -> 384 bytes .../uPresupuestosClienteController.pas | 86 ++- .../Views/PresupuestosCliente_view.dpk | 30 +- .../Views/PresupuestosCliente_view.dproj | 55 +- .../Views/uEditorPresupuestosCliente.dfm | 30 +- .../Views/uEditorPresupuestosCliente.pas | 48 +- .../uPresupuestosClienteViewRegister.pas | 17 +- .../Views/uViewConfiguracionDocArmario.dfm | 83 +++ .../Views/uViewConfiguracionDocArmario.pas | 68 ++ .../Views/uViewConfiguracionDocBano.dfm | 83 +++ .../Views/uViewConfiguracionDocBano.pas | 68 ++ .../Views/uViewConfiguracionDocCocina.dfm | 83 +++ .../Views/uViewConfiguracionDocCocina.pas | 68 ++ .../uViewConfiguracionDocElectrodomestico.dfm | 83 +++ .../uViewConfiguracionDocElectrodomestico.pas | 68 ++ .../Views/uViewConfiguracionDocVarios.dfm | 83 +++ .../Views/uViewConfiguracionDocVarios.pas | 68 ++ .../Views/uViewPresupuestoCliente.dfm | 19 +- .../Views/uViewPresupuestoCliente.pas | 7 + .../uGenerarContratosCliUtils.pas | 1 + Source/Servicios/FactuGES.RODL | 8 + Source/Servicios/FactuGES_Intf.pas | 18 + Source/Servicios/FactuGES_Invk.pas | 23 + Source/Servicios/RODLFile.res | Bin 43164 -> 43432 bytes .../Configuracion/srvConfiguracion_Impl.dfm | 52 +- .../Configuracion/srvConfiguracion_Impl.pas | 54 +- Source/Servidor/FactuGES_Server.dproj | 581 +++++++++--------- Source/Servidor/FactuGES_Server.rc | 10 +- Source/Servidor/FactuGES_Server.res | Bin 23348 -> 23352 bytes 62 files changed, 1898 insertions(+), 652 deletions(-) create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocArmario.pas create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocBano.pas create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocCocina.pas create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocElectrodomestico.pas create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocVarios.dfm create mode 100644 Source/Modulos/Presupuestos de cliente/Views/uViewConfiguracionDocVarios.pas diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index 14cd639d..57c873a7 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -638,7 +638,8 @@ CREATE TABLE CONFIGURACION ( ID TIPO_ID NOT NULL, CODIGO VARCHAR(50) NOT NULL, VALOR TIPO_CONCEPTO NOT NULL, - ID_EMPRESA TIPO_ID + ID_EMPRESA TIPO_ID, + VALOR_BLOB TIPO_NOTAS ); CREATE TABLE CONT_APUNTES ( diff --git a/Installer/librerias.txt b/Installer/librerias.txt index 18520401..674a51f9 100644 --- a/Installer/librerias.txt +++ b/Installer/librerias.txt @@ -12,6 +12,7 @@ cxPageControlD11.bpl cxTreeListD11.bpl DataAbstract_Core_D11.bpl dclcxLibraryD11.bpl +dxNavBarD11.bpl dxBarD11.bpl dxBarExtItemsD11.bpl dxComnD11.bpl @@ -74,4 +75,5 @@ vcljpg100.bpl vclshlctrls100.bpl vclsmp100.bpl vclx100.bpl -xmlrtl100.bpl \ No newline at end of file +xmlrtl100.bpl +dcldxCoreD11.bpl \ No newline at end of file diff --git a/Source/ApplicationBase/ApplicationBase.dpk b/Source/ApplicationBase/ApplicationBase.dpk index 1e59cbb1..93c02c0b 100644 --- a/Source/ApplicationBase/ApplicationBase.dpk +++ b/Source/ApplicationBase/ApplicationBase.dpk @@ -48,7 +48,18 @@ requires vclactnband, designide, ccpackD11, - dxNavBarD11; + dxNavBarD11, + JvCoreD11R, + Jcl, + JclVcl, + JvMMD11R, + JvStdCtrlsD11R, + JvSystemD11R, + JvCtrlsD11R, + dxCoreD11, + cxEditorsD11, + cxDataD11, + cxExtEditorsD11; contains uFactuGES_App in 'uFactuGES_App.pas', @@ -111,13 +122,13 @@ contains uDataModuleProvinciasPoblaciones in 'ProvinciasPoblaciones\Data\uDataModuleProvinciasPoblaciones.pas', uProvinciasPoblacionesController in 'ProvinciasPoblaciones\Controller\uProvinciasPoblacionesController.pas', uConfiguracionController in 'Configuracion\Controller\uConfiguracionController.pas', - uViewConfiguracionBase in 'Configuracion\Views\uViewConfiguracionBase.pas' {frViewConfiguracionBase: TCustomView}, uEditorConfiguracion in 'Configuracion\Views\uEditorConfiguracion.pas' {fConfiguracionEditor}, uViewConfiguracionGeneral in 'Configuracion\Views\uViewConfiguracionGeneral.pas' {frViewConfiguracionGeneral: TFrame}, uIViewConfiguracionBase in 'Configuracion\Controller\Views\uIViewConfiguracionBase.pas', schUsuariosClient_Intf in 'Usuarios\Model\schUsuariosClient_Intf.pas', schUsuariosServer_Intf in 'Usuarios\Model\schUsuariosServer_Intf.pas', uEditorElegirEjercicios in 'Ejercicios\Views\uEditorElegirEjercicios.pas' {fEditorElegirEjercicios: TCustomEditor}, - uIEditorElegirEjercicios in 'Ejercicios\Controller\View\uIEditorElegirEjercicios.pas'; + uIEditorElegirEjercicios in 'Ejercicios\Controller\View\uIEditorElegirEjercicios.pas', + uViewConfiguracionBase in 'Configuracion\Views\uViewConfiguracionBase.pas' {frViewConfiguracionBase: TFrame}; end. diff --git a/Source/ApplicationBase/ApplicationBase.dproj b/Source/ApplicationBase/ApplicationBase.dproj index 4d84e7ea..7c7c24db 100644 --- a/Source/ApplicationBase/ApplicationBase.dproj +++ b/Source/ApplicationBase/ApplicationBase.dproj @@ -56,42 +56,50 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfiguracionEditor
- -
frViewConfiguracionBase
- TCustomView -
+
frViewConfiguracionGeneral
TFrame
+ + + + + + diff --git a/Source/ApplicationBase/Configuracion/Controller/uConfiguracionController.pas b/Source/ApplicationBase/Configuracion/Controller/uConfiguracionController.pas index 9ebe67bc..4426ab86 100644 --- a/Source/ApplicationBase/Configuracion/Controller/uConfiguracionController.pas +++ b/Source/ApplicationBase/Configuracion/Controller/uConfiguracionController.pas @@ -4,9 +4,12 @@ interface uses Classes, SysUtils, uDADataTable, uControllerBase, uIViewConfiguracionBase, - uViewConfiguracionBase, uClassRegistryUtils, JvAppXMLStorage; + uViewConfiguracionBase, uClassRegistryUtils, JvAppXMLStorage, + uROTypes, uDataModuleConfiguracion; type + TEnumAlmacen = (teXML, teBD); + IPluginConfigurable = interface ['{30063608-BFD2-47B9-80FA-F10A5067AF82}'] function GetVistaConfiguracion : TClass; @@ -16,39 +19,40 @@ type IConfiguracionController = interface(IControllerBase) ['{F29215BA-0D34-4AE9-B9A9-C80ABF49A81D}'] procedure ConfigurarAplicacion; - procedure AplicarConfiguracion; + procedure AplicarConfiguracion; procedure SalvarConfiguracion; procedure CargarConfiguracion; - function GetSettingAsString(const ASettingName: String; const ADefaultValue : String = ''): String; - function GetSettingAsInteger(const ASettingName: String; const ADefaultValue : Integer = 0): Integer; - function GetSettingAsFloat(const ASettingName: String; const ADefaultValue : Float = 0): Float; - function GetSettingAsBoolean(const ASettingName: String; const ADefaultValue : Boolean = False): Boolean; + function GetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : String = ''): String; + function GetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Integer = 0): Integer; + function GetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Float = 0): Float; + function GetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Boolean = False): Boolean; - procedure SetSettingAsString(const ASettingName: String; AValue : String); - procedure SetSettingAsInteger(const ASettingName: String; AValue : Integer); - procedure SetSettingAsFloat(const ASettingName: String; AValue : Float); - procedure SetSettingAsBoolean(const ASettingName: String; AValue : Boolean); + procedure SetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : String); + procedure SetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Integer); + procedure SetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Float); + procedure SetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Boolean); end; TConfiguracionController = class(TControllerBase, IConfiguracionController) private FAppXMLFileStorage : TJvAppXMLFileStorage; + FAppDBStorage : TdmConfiguracion; public procedure SalvarConfiguracion; procedure AplicarConfiguracion; procedure CargarConfiguracion; procedure ConfigurarAplicacion; - function GetSettingAsString(const ASettingName: String; const ADefaultValue : String = ''): String; - function GetSettingAsInteger(const ASettingName: String; const ADefaultValue : Integer = 0): Integer; - function GetSettingAsFloat(const ASettingName: String; const ADefaultValue : Float = 0): Float; - function GetSettingAsBoolean(const ASettingName: String; const ADefaultValue : Boolean = False): Boolean; + function GetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : String = ''): String; + function GetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Integer = 0): Integer; + function GetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Float = 0): Float; + function GetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue : Boolean = False): Boolean; - procedure SetSettingAsString(const ASettingName: String; AValue : String); - procedure SetSettingAsInteger(const ASettingName: String; AValue : Integer); - procedure SetSettingAsFloat(const ASettingName: String; AValue : Float); - procedure SetSettingAsBoolean(const ASettingName: String; AValue : Boolean); + procedure SetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : String); + procedure SetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Integer); + procedure SetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Float); + procedure SetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; AValue : Boolean); constructor Create; override; destructor Destroy; override; @@ -57,7 +61,7 @@ type implementation uses - Forms, uEditorConfiguracion, uViewConfiguracionGeneral, uDMBase, + Forms, uEditorConfiguracion, uViewConfiguracionGeneral, uDMBase, JvAppStorage, uAppInfoUtils, Controls, uViewConfiguracionRegistryUtils; const @@ -121,37 +125,54 @@ begin FileName := 'Rodax Software' + PathDelim + GetAppName + PathDelim + CONFIG_INI_FILE; end; + FAppDBStorage := dmConfiguracion; + ViewConfiguracionRegistry.RegisterClass(TfrViewConfiguracionGeneral, 'General'); end; destructor TConfiguracionController.Destroy; begin FreeANDNIL(FAppXMLFileStorage); + + FAppDBStorage := NIL; + inherited; end; -function TConfiguracionController.GetSettingAsBoolean( +function TConfiguracionController.GetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue: Boolean): Boolean; begin - Result := FAppXMLFileStorage.ReadBoolean(ASettingName, ADefaultValue) + case AFuente of + teXML: Result := FAppXMLFileStorage.ReadBoolean(ASettingName, ADefaultValue); + teBD: Result := FAppDBStorage.DarValor(ASettingName); + end; end; -function TConfiguracionController.GetSettingAsFloat(const ASettingName: String; +function TConfiguracionController.GetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue: Float): Float; begin - Result := FAppXMLFileStorage.ReadFloat(ASettingName, ADefaultValue); + case AFuente of + teXML: Result := FAppXMLFileStorage.ReadFloat(ASettingName, ADefaultValue); + teBD: Result := FAppDBStorage.DarValor(ASettingName); + end; end; -function TConfiguracionController.GetSettingAsInteger( +function TConfiguracionController.GetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; const ADefaultValue: Integer): Integer; begin - Result := FAppXMLFileStorage.ReadInteger(ASettingName, ADefaultValue); + case AFuente of + teXML: Result := FAppXMLFileStorage.ReadInteger(ASettingName, ADefaultValue); + teBD: Result := FAppDBStorage.DarValor(ASettingName); + end; end; -function TConfiguracionController.GetSettingAsString(const ASettingName, +function TConfiguracionController.GetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName, ADefaultValue: String): String; begin - Result := FAppXMLFileStorage.ReadString(ASettingName, ADefaultValue); + case AFuente of + teXML: Result := FAppXMLFileStorage.ReadString(ASettingName, ADefaultValue); + teBD: Result := FAppDBStorage.DarValor(ASettingName); + end; end; procedure TConfiguracionController.SalvarConfiguracion; @@ -159,28 +180,40 @@ begin FAppXMLFileStorage.Flush; end; -procedure TConfiguracionController.SetSettingAsBoolean( +procedure TConfiguracionController.SetSettingAsBoolean(const AFuente: TEnumAlmacen; const ASettingName: String; AValue: Boolean); begin - FAppXMLFileStorage.WriteBoolean(ASettingName, AValue); + case AFuente of + teXML: FAppXMLFileStorage.WriteBoolean(ASettingName, AValue); + teBD: FAppDBStorage.GuardarValor(ASettingName, AValue); + end; end; -procedure TConfiguracionController.SetSettingAsFloat(const ASettingName: String; +procedure TConfiguracionController.SetSettingAsFloat(const AFuente: TEnumAlmacen; const ASettingName: String; AValue: Float); begin - FAppXMLFileStorage.WriteFloat(ASettingName, AValue); + case AFuente of + teXML: FAppXMLFileStorage.WriteFloat(ASettingName, AValue); + teBD: FAppDBStorage.GuardarValor(ASettingName, AValue); + end; end; -procedure TConfiguracionController.SetSettingAsInteger( +procedure TConfiguracionController.SetSettingAsInteger(const AFuente: TEnumAlmacen; const ASettingName: String; AValue: Integer); begin - FAppXMLFileStorage.WriteInteger(ASettingName, AValue); + case AFuente of + teXML: FAppXMLFileStorage.WriteInteger(ASettingName, AValue); + teBD: FAppDBStorage.GuardarValor(ASettingName, AValue); + end; end; -procedure TConfiguracionController.SetSettingAsString( +procedure TConfiguracionController.SetSettingAsString(const AFuente: TEnumAlmacen; const ASettingName: String; AValue: String); begin - FAppXMLFileStorage.WriteString(ASettingName, AValue); + case AFuente of + teXML: FAppXMLFileStorage.WriteString(ASettingName, AValue); + teBD: FAppDBStorage.GuardarValor(ASettingName, AValue); + end; end; diff --git a/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm b/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm index 1e6bad15..dd0371b4 100644 --- a/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm +++ b/Source/ApplicationBase/Configuracion/Views/uEditorConfiguracion.dfm @@ -3,7 +3,7 @@ object fConfiguracionEditor: TfConfiguracionEditor Top = 0 Caption = 'Configuraci'#243'n de FactuGES' ClientHeight = 524 - ClientWidth = 635 + ClientWidth = 733 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText @@ -32,7 +32,7 @@ object fConfiguracionEditor: TfConfiguracionEditor TabOrder = 0 View = 17 ViewStyle.ColorSchemeName = 'Blue' - OptionsBehavior.SideBar.AllowSelectLinks = True + OptionsBehavior.Common.AllowSelectLinks = True OptionsView.Common.ShowGroupCaptions = False OptionsView.NavigationPane.ShowHeader = False OptionsView.NavigationPane.ShowOverflowPanel = False @@ -47,16 +47,17 @@ object fConfiguracionEditor: TfConfiguracionEditor object Panel2: TPanel Left = 0 Top = 482 - Width = 635 + Width = 733 Height = 42 Align = alBottom BevelOuter = bvNone TabOrder = 1 + ExplicitWidth = 635 DesignSize = ( - 635 + 733 42) object bCancelar: TButton - Left = 552 + Left = 650 Top = 10 Width = 75 Height = 25 @@ -65,9 +66,10 @@ object fConfiguracionEditor: TfConfiguracionEditor Caption = '&Cancelar' ModalResult = 2 TabOrder = 0 + ExplicitLeft = 552 end object bAceptar: TButton - Left = 471 + Left = 569 Top = 10 Width = 75 Height = 25 @@ -75,13 +77,14 @@ object fConfiguracionEditor: TfConfiguracionEditor Caption = '&Aceptar' ModalResult = 1 TabOrder = 1 + ExplicitLeft = 471 end end object PageControlMain: TPageControl AlignWithMargins = True Left = 166 Top = 6 - Width = 461 + Width = 559 Height = 468 Margins.Left = 4 Margins.Top = 6 @@ -89,5 +92,6 @@ object fConfiguracionEditor: TfConfiguracionEditor Margins.Bottom = 8 Align = alClient TabOrder = 2 + ExplicitWidth = 461 end end diff --git a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm index 2cb891ee..f64ac370 100644 --- a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm +++ b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.dfm @@ -1,17 +1,19 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral - Height = 375 inherited Panel1: TPanel + Width = 424 inherited Label3: TLabel - Width = 429 Caption = 'Apariencia' ExplicitWidth = 63 end end + inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel + Width = 434 + end object Panel2: TPanel AlignWithMargins = True Left = 5 Top = 142 - Width = 441 + Width = 424 Height = 22 Margins.Left = 5 Margins.Top = 0 @@ -35,11 +37,10 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral ParentBackground = False ParentFont = False TabOrder = 2 - ExplicitTop = 109 object Label2: TLabel Left = 6 Top = 4 - Width = 429 + Width = 412 Height = 14 Align = alTop Caption = 'Seguridad' @@ -50,7 +51,7 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral AlignWithMargins = True Left = 5 Top = 68 - Width = 441 + Width = 424 Height = 74 Margins.Left = 5 Margins.Top = 0 @@ -91,7 +92,7 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral AlignWithMargins = True Left = 5 Top = 164 - Width = 441 + Width = 424 Height = 72 Margins.Left = 5 Margins.Top = 0 @@ -101,7 +102,6 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral BevelOuter = bvNone ParentColor = True TabOrder = 4 - ExplicitTop = 131 object Label4: TLabel Left = 17 Top = 43 @@ -140,7 +140,7 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral AlignWithMargins = True Left = 5 Top = 236 - Width = 441 + Width = 424 Height = 22 Margins.Left = 5 Margins.Top = 0 @@ -164,11 +164,10 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral ParentBackground = False ParentFont = False TabOrder = 5 - ExplicitTop = 203 object Label5: TLabel Left = 6 Top = 4 - Width = 429 + Width = 412 Height = 14 Align = alTop Caption = 'Usuarios' @@ -179,7 +178,7 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral AlignWithMargins = True Left = 5 Top = 258 - Width = 441 + Width = 424 Height = 72 Margins.Left = 5 Margins.Top = 0 @@ -189,7 +188,6 @@ inherited frViewConfiguracionGeneral: TfrViewConfiguracionGeneral BevelOuter = bvNone ParentColor = True TabOrder = 6 - ExplicitTop = 225 object lblLongMinPass: TLabel Left = 17 Top = 43 diff --git a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas index 7056f649..1d3ce9d7 100644 --- a/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas +++ b/Source/ApplicationBase/Configuracion/Views/uViewConfiguracionGeneral.pas @@ -44,7 +44,7 @@ type implementation uses - uFactuGES_App, uDMBase; + uFactuGES_App, uDMBase, uConfiguracionController; {$R *.dfm} @@ -55,11 +55,11 @@ procedure TfrViewConfiguracionGeneral.CargarValores; ASkinName : String;} begin inherited; - edtLongMinPass.Text := AppFactuGES.Configuracion.GetSettingAsString('MinPasswordLength', '3'); - edtNumIntentos.Text := AppFactuGES.Configuracion.GetSettingAsString('MaxLoginAttempts', '3'); - cbPassObligatoria.Checked := AppFactuGES.Configuracion.GetSettingAsBoolean('ForcePassword', True); + edtLongMinPass.Text := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'MinPasswordLength', '3'); + edtNumIntentos.Text := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'MaxLoginAttempts', '3'); + cbPassObligatoria.Checked := AppFactuGES.Configuracion.GetSettingAsBoolean(teXML, 'ForcePassword', True); - cbMostrarMenu.Checked := AppFactuGES.Configuracion.GetSettingAsBoolean('MostrarBarraMenus', True); + cbMostrarMenu.Checked := AppFactuGES.Configuracion.GetSettingAsBoolean(teXML, 'MostrarBarraMenus', True); {cbEsquemaColor.Items.Add('Usar estilo nativo de Windows'); cbEsquemaColor.Items.AddStrings(dmBase.DarListaSkins); @@ -86,11 +86,11 @@ procedure TfrViewConfiguracionGeneral.GuardarValores; ASkinName : String;} begin inherited; - AppFactuGES.Configuracion.SetSettingAsString('MinPasswordLength', edtLongMinPass.Text); - AppFactuGES.Configuracion.SetSettingAsString('MaxLoginAttempts', edtNumIntentos.Text); - AppFactuGES.Configuracion.SetSettingAsBoolean('ForcePassword', cbPassObligatoria.Checked); + AppFactuGES.Configuracion.SetSettingAsString(teXML, 'MinPasswordLength', edtLongMinPass.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML, 'MaxLoginAttempts', edtNumIntentos.Text); + AppFactuGES.Configuracion.SetSettingAsBoolean(teXML, 'ForcePassword', cbPassObligatoria.Checked); - AppFactuGES.Configuracion.SetSettingAsBoolean('MostrarBarraMenus', cbMostrarMenu.Checked); + AppFactuGES.Configuracion.SetSettingAsBoolean(teXML, 'MostrarBarraMenus', cbMostrarMenu.Checked); {if cbEsquemaColor.ItemIndex = 0 then ASkinName := '' diff --git a/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas b/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas index e1985bc2..41d28cce 100644 --- a/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas +++ b/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas @@ -175,7 +175,7 @@ uses uDAInterfaces, uDataTableUtils, uDialogUtils, uFactuGES_App, Dialogs, uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorLogin, uIEditorUsuarios, uIEditorUsuario, uIEditorPerfilesUsuario, - uIEditorPerfilUsuario, uEditorCambiarPassword; + uIEditorPerfilUsuario, uEditorCambiarPassword, uConfiguracionController; { TUsuariosController } @@ -678,9 +678,9 @@ procedure TUsuariosController.RecogerConfiguracion; begin with FUserControl do begin - Login.MaxLoginAttempts := AppFactuGES.Configuracion.GetSettingAsInteger('MaxLoginAttempts', 3); - UserPasswordChange.ForcePassword := AppFactuGES.Configuracion.GetSettingAsBoolean('ForcePassword', True); - UserPasswordChange.MinPasswordLength := AppFactuGES.Configuracion.GetSettingAsInteger('MinPasswordLength', 3); + Login.MaxLoginAttempts := AppFactuGES.Configuracion.GetSettingAsInteger(teXML, 'MaxLoginAttempts', 3); + UserPasswordChange.ForcePassword := AppFactuGES.Configuracion.GetSettingAsBoolean(teXML, 'ForcePassword', True); + UserPasswordChange.MinPasswordLength := AppFactuGES.Configuracion.GetSettingAsInteger(teXML, 'MinPasswordLength', 3); end; end; diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj index 057ca2e1..426db58c 100644 --- a/Source/Base/Base.dproj +++ b/Source/Base/Base.dproj @@ -58,55 +58,55 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfigurarConexion
TForm diff --git a/Source/Base/Configuracion/uDataModuleConfiguracion.pas b/Source/Base/Configuracion/uDataModuleConfiguracion.pas index 6c6beb2e..853a6f5f 100644 --- a/Source/Base/Configuracion/uDataModuleConfiguracion.pas +++ b/Source/Base/Configuracion/uDataModuleConfiguracion.pas @@ -4,8 +4,8 @@ interface uses SysUtils, Classes, uRORemoteService, uDADataTable, - uDABINAdapter, uROClient, IniFiles, - uDADataStreamer; + uDABINAdapter, uROClient, IniFiles, Variants, + uDADataStreamer, uROTypes; const SERVER_URL = 'http://localhost:8099/bin'; @@ -19,6 +19,7 @@ type FIniFile : TIniFile; public function DarValor(const CODIGO: String; const ValorPorDefecto: String = ''): Variant; + procedure GuardarValor(const CODIGO: String; const Valor: Variant); procedure LeerConfiguracion; procedure SalvarConfiguracion; constructor Create(AOwner: TComponent); override; @@ -33,7 +34,7 @@ implementation {$R *.dfm} uses - Forms, FactuGES_Intf, Variants, uDataModuleConexion, + Forms, FactuGES_Intf, uDataModuleConexion, uSistemaFunc, SHFolder, uAppInfoUtils; const @@ -68,6 +69,13 @@ begin inherited; end; +procedure TdmConfiguracion.GuardarValor(const CODIGO: String; const Valor: Variant); +begin + RORemoteService.Channel := dmConexion.ROChannel; + RORemoteService.Message := dmConexion.ROMessage; + (RORemoteService as IsrvConfiguracion).GuardarValor(CODIGO, Valor); +end; + procedure TdmConfiguracion.LeerConfiguracion; begin with FIniFile do diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index f7de5674..a15e6211 100644 --- a/Source/Cliente/FactuGES.dproj +++ b/Source/Cliente/FactuGES.dproj @@ -51,8 +51,7 @@ Delphi.Personality VCLApplication -FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2440FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.4.4.0FactuGESFactuGES2.4.4.0 - +FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2450FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.4.5.0FactuGESFactuGES2.4.5.0 File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found FactuGES.dprFalse diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc index f11b9e9e..960a36d5 100644 --- a/Source/Cliente/FactuGES.rc +++ b/Source/Cliente/FactuGES.rc @@ -1,7 +1,7 @@ MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Factuges.ico" 1 VERSIONINFO -FILEVERSION 2,4,4,0 -PRODUCTVERSION 2,4,4,0 +FILEVERSION 2,4,5,0 +PRODUCTVERSION 2,4,5,0 FILEFLAGSMASK 0x3FL FILEFLAGS 0x00L FILEOS 0x40004L @@ -13,10 +13,10 @@ BEGIN BLOCK "0C0A04E4" BEGIN VALUE "CompanyName", "Rodax Software S.L.\0" - VALUE "FileVersion", "2.4.4.0\0" + VALUE "FileVersion", "2.4.5.0\0" VALUE "InternalName", "FactuGES\0" VALUE "ProductName", "FactuGES\0" - VALUE "ProductVersion", "2.4.4.0\0" + VALUE "ProductVersion", "2.4.5.0\0" END END BLOCK "VarFileInfo" diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index 70d0df225a05e9300820ee6e17710a2938ae556a..043cf3f8f934e93361a79a191d733f093d528161 100644 GIT binary patch delta 42 xcmcbxpXCs7+9yv&tp2tXgdAnJf_(|s&zh-Hvk@m4G91M delta 42 xcmcbxpXCs7+9vu&tp2tXfplfJf_(|s&zh-Hvk?&4Fv!I diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj index 87df91ca..f44e3be7 100644 --- a/Source/GUIBase/GUIBase.dproj +++ b/Source/GUIBase/GUIBase.dproj @@ -58,34 +58,34 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fDialogBase
diff --git a/Source/GUIBase/GUIBase.res b/Source/GUIBase/GUIBase.res index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Informes/InfContratoCliente.fr3 b/Source/Informes/InfContratoCliente.fr3 index 590b77a1..95663798 100644 --- a/Source/Informes/InfContratoCliente.fr3 +++ b/Source/Informes/InfContratoCliente.fr3 @@ -1,5 +1,5 @@ - + @@ -9,7 +9,7 @@ - + @@ -64,16 +64,16 @@ - + - - + + - - - + + + diff --git a/Source/Modulos/Articulos/Controller/Articulos_controller.dproj b/Source/Modulos/Articulos/Controller/Articulos_controller.dproj index a3202e7f..30a7bf31 100644 --- a/Source/Modulos/Articulos/Controller/Articulos_controller.dproj +++ b/Source/Modulos/Articulos/Controller/Articulos_controller.dproj @@ -54,11 +54,11 @@ MainSource - - - - - + + + + + diff --git a/Source/Modulos/Articulos/Data/Articulos_data.dproj b/Source/Modulos/Articulos/Data/Articulos_data.dproj index 5846d795..126ef528 100644 --- a/Source/Modulos/Articulos/Data/Articulos_data.dproj +++ b/Source/Modulos/Articulos/Data/Articulos_data.dproj @@ -54,7 +54,7 @@ MainSource - +
DataModuleArticulos
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj index bdd649ed..9f86cd58 100644 --- a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj @@ -53,19 +53,19 @@ MainSource - - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dproj b/Source/Modulos/Contactos/Data/Contactos_data.dproj index e957e06a..8087b682 100644 --- a/Source/Modulos/Contactos/Data/Contactos_data.dproj +++ b/Source/Modulos/Contactos/Data/Contactos_data.dproj @@ -49,12 +49,12 @@ MainSource - - - - - - + + + + + +
DataModuleClientes
TDAClientDataModule diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dproj b/Source/Modulos/Contactos/Model/Contactos_model.dproj index 18f6eded..d62420c8 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.dproj +++ b/Source/Modulos/Contactos/Model/Contactos_model.dproj @@ -49,22 +49,22 @@ MainSource - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Contactos/Model/uBizContactos.pas b/Source/Modulos/Contactos/Model/uBizContactos.pas index 8dda5a35..9108c724 100644 --- a/Source/Modulos/Contactos/Model/uBizContactos.pas +++ b/Source/Modulos/Contactos/Model/uBizContactos.pas @@ -435,7 +435,7 @@ implementation uses - uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App, + uDataTableUtils, Classes, DateUtils, SysUtils, uFactuGES_App, uConfiguracionController, uBizEmpresasTiendas, uBizTiposIVA, uBizFormasPago; const @@ -741,7 +741,7 @@ begin ID_CATEGORIA := CATEGORIA_CLIENTE; BLOQUEADO := 0; RECARGO_EQUIVALENCIA := CLIENTE_RECARGO_EQUIVALENCIA; - REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString('Clientes.RegimenIVA', CLIENTE_REGIMEN_IVA); + REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Clientes.RegimenIVA', CLIENTE_REGIMEN_IVA); //CONTABILIDAD if Assigned(AppFactuGES.EjercicioActivo) then @@ -826,7 +826,7 @@ procedure TBizProveedor.IniciarValoresContactoNuevo; begin inherited; ID_CATEGORIA := CATEGORIA_PROVEEDOR; - REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString('Proveedores.RegimenIVA', PROVEEDOR_REGIMEN_IVA); + REGIMEN_IVA := AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Proveedores.RegimenIVA', PROVEEDOR_REGIMEN_IVA); //CONTABILIDAD if Assigned(AppFactuGES.EjercicioActivo) then diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dproj b/Source/Modulos/Contactos/Views/Contactos_view.dproj index e93efe53..a035001b 100644 --- a/Source/Modulos/Contactos/Views/Contactos_view.dproj +++ b/Source/Modulos/Contactos/Views/Contactos_view.dproj @@ -47,40 +47,40 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fEditorCliente
diff --git a/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.dfm b/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.dfm index 1362c0ef..b17fcef9 100644 --- a/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.dfm +++ b/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.dfm @@ -1,20 +1,20 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos - Width = 547 - Height = 411 + ExplicitWidth = 547 + ExplicitHeight = 411 inherited Panel1: TPanel Width = 537 ExplicitTop = 49 ExplicitWidth = 537 inherited Label3: TLabel - Width = 525 + Width = 166 Caption = 'Configuraci'#243'n para clientes' - ExplicitTop = 5 - ExplicitWidth = 525 + ExplicitWidth = 166 end end inherited JvGradientHeaderPanel1: TJvGradientHeaderPanel Width = 547 LabelCaption = 'Configuraci'#243'n para contactos' + ExplicitWidth = 547 end object Panel3: TPanel AlignWithMargins = True @@ -64,7 +64,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 0 end object cbRegimenIVA: TComboBox @@ -73,7 +73,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 1 end object bFormasPago: TButton @@ -100,7 +100,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 4 end end @@ -108,7 +108,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos AlignWithMargins = True Left = 5 Top = 223 - Width = 537 + Width = 424 Height = 130 Margins.Left = 5 Margins.Top = 0 @@ -118,6 +118,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos BevelOuter = bvNone ParentColor = True TabOrder = 3 + ExplicitWidth = 537 object Label7: TLabel Left = 17 Top = 37 @@ -152,7 +153,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 0 end object cbRegimenIVAProv: TComboBox @@ -161,7 +162,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 1 end object Button1: TButton @@ -188,7 +189,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos Width = 168 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 4 end end @@ -196,7 +197,7 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos AlignWithMargins = True Left = 5 Top = 201 - Width = 537 + Width = 424 Height = 22 Margins.Left = 5 Margins.Top = 0 @@ -222,14 +223,14 @@ inherited frViewConfiguracionContactos: TfrViewConfiguracionContactos TabOrder = 4 ExplicitLeft = -1 ExplicitTop = 239 + ExplicitWidth = 537 object Label6: TLabel Left = 6 Top = 4 - Width = 525 + Width = 196 Height = 14 Align = alTop Caption = 'Configuraci'#243'n para proveedores' - ExplicitWidth = 196 end end end diff --git a/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.pas b/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.pas index 63b9efd2..61c31e7a 100644 --- a/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.pas +++ b/Source/Modulos/Contactos/Views/uViewConfiguracionContactos.pas @@ -52,7 +52,7 @@ implementation {$R *.dfm} uses - uRegimenIVAUtils, uFactuGES_App; + uRegimenIVAUtils, uFactuGES_App, uConfiguracionController; { TfrViewConfiguracionBase1 } @@ -89,14 +89,14 @@ begin cbIVA.Items := FTiposIVAController.DarListaTiposIVA; cbTipoIVAProv.Items := cbIVA.Items; - cbRegimenIVA.ItemIndex := cbRegimenIVA.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Clientes.RegimenIVA', cbRegimenIVA.Items[0])); - cbRegimenIVAProv.ItemIndex := cbRegimenIVAProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Proveedores.RegimenIVA', cbRegimenIVAProv.Items[0])); + cbRegimenIVA.ItemIndex := cbRegimenIVA.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Clientes.RegimenIVA', cbRegimenIVA.Items[0])); + cbRegimenIVAProv.ItemIndex := cbRegimenIVAProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Proveedores.RegimenIVA', cbRegimenIVAProv.Items[0])); - cbFormaPago.ItemIndex := cbFormaPago.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Clientes.FormaPago', cbFormaPago.Items[0])); - cbFormaPagoProv.ItemIndex := cbFormaPagoProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Proveedores.FormaPago', cbFormaPagoProv.Items[0])); + cbFormaPago.ItemIndex := cbFormaPago.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Clientes.FormaPago', cbFormaPago.Items[0])); + cbFormaPagoProv.ItemIndex := cbFormaPagoProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML, 'Proveedores.FormaPago', cbFormaPagoProv.Items[0])); - cbIVA.ItemIndex := cbIVA.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Clientes.TipoIVA')); - cbTipoIVAProv.ItemIndex := cbTipoIVAProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString('Proveedores.TipoIVA')); + cbIVA.ItemIndex := cbIVA.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML,'Clientes.TipoIVA')); + cbTipoIVAProv.ItemIndex := cbTipoIVAProv.Items.IndexOf (AppFactuGES.Configuracion.GetSettingAsString(teXML,'Proveedores.TipoIVA')); end; constructor TfrViewConfiguracionContactos.Create(AOwner: TComponent); @@ -126,13 +126,13 @@ end; procedure TfrViewConfiguracionContactos.GuardarValores; begin inherited; - AppFactuGES.Configuracion.SetSettingAsString('Clientes.RegimenIVA', cbRegimenIVA.Text); - AppFactuGES.Configuracion.SetSettingAsString('Clientes.FormaPago', cbFormaPago.Text); - AppFactuGES.Configuracion.SetSettingAsString('Clientes.TipoIVA', cbIVA.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Clientes.RegimenIVA', cbRegimenIVA.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Clientes.FormaPago', cbFormaPago.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Clientes.TipoIVA', cbIVA.Text); - AppFactuGES.Configuracion.SetSettingAsString('Proveedores.RegimenIVA', cbRegimenIVAProv.Text); - AppFactuGES.Configuracion.SetSettingAsString('Proveedores.FormaPago', cbFormaPagoProv.Text); - AppFactuGES.Configuracion.SetSettingAsString('Proveedores.TipoIVA', cbTipoIVAProv.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Proveedores.RegimenIVA', cbRegimenIVAProv.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Proveedores.FormaPago', cbFormaPagoProv.Text); + AppFactuGES.Configuracion.SetSettingAsString(teXML,'Proveedores.TipoIVA', cbTipoIVAProv.Text); end; diff --git a/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.RES b/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.RES index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas b/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas index 3bbd73e5..0492828d 100644 --- a/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas +++ b/Source/Modulos/Contratos de cliente/Model/schContratosClienteClient_Intf.pas @@ -3,7 +3,7 @@ unit schContratosClienteClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; + Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids @@ -251,7 +251,7 @@ type end; { TValoresDataTableRules } - TValoresDataTableRules = class(TDADataTableRules, IValores) + TValoresDataTableRules = class(TIntfObjectDADataTableRules, IValores) private protected { Property getters and setters } @@ -310,7 +310,7 @@ type end; { TPropiedadesDataTableRules } - TPropiedadesDataTableRules = class(TDADataTableRules, IPropiedades) + TPropiedadesDataTableRules = class(TIntfObjectDADataTableRules, IPropiedades) private protected { Property getters and setters } @@ -357,7 +357,7 @@ type end; { TListaAnosContratosDataTableRules } - TListaAnosContratosDataTableRules = class(TDADataTableRules, IListaAnosContratos) + TListaAnosContratosDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosContratos) private protected { Property getters and setters } @@ -452,7 +452,7 @@ type end; { TContratosClienteBeneficiosDataTableRules } - TContratosClienteBeneficiosDataTableRules = class(TDADataTableRules, IContratosClienteBeneficios) + TContratosClienteBeneficiosDataTableRules = class(TIntfObjectDADataTableRules, IContratosClienteBeneficios) private protected { Property getters and setters } @@ -807,7 +807,7 @@ type end; { TContratosClienteDataTableRules } - TContratosClienteDataTableRules = class(TDADataTableRules, IContratosCliente) + TContratosClienteDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente) private f_FORMA_PAGO: IROStrings; f_PLAZO_ENTREGA: IROStrings; @@ -1143,7 +1143,7 @@ type end; { TTiposCapitulosDataTableRules } - TTiposCapitulosDataTableRules = class(TDADataTableRules, ITiposCapitulos) + TTiposCapitulosDataTableRules = class(TIntfObjectDADataTableRules, ITiposCapitulos) private protected { Property getters and setters } @@ -1292,7 +1292,7 @@ type end; { TContratosCliente_DetallesDataTableRules } - TContratosCliente_DetallesDataTableRules = class(TDADataTableRules, IContratosCliente_Detalles) + TContratosCliente_DetallesDataTableRules = class(TIntfObjectDADataTableRules, IContratosCliente_Detalles) private protected { Property getters and setters } diff --git a/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.dfm b/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.dfm index 3d86288c..746bca7d 100644 --- a/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.dfm +++ b/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.dfm @@ -176,6 +176,31 @@ object RptContratosCliente: TRptContratosCliente DataType = datCurrency end> end + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + Name = 'IBX' + SQL = + 'SELECT VALOR_BLOB'#10'FROM CONFIGURACION'#10'WHERE CODIGO = '#39'CONDICIONES' + + '_COCINA'#39#10 + StatementType = stSQL + ColumnMappings = < + item + DatasetField = 'VALOR_BLOB' + TableField = 'VALOR_BLOB' + end> + end> + Name = 'Informe_Condiciones' + Fields = < + item + Name = 'VALOR_BLOB' + DataType = datBlob + end> + end item Params = < item @@ -812,7 +837,7 @@ object RptContratosCliente: TRptContratosCliente PrintOptions.Printer = 'Por defecto' PrintOptions.PrintOnSheet = 0 ReportOptions.CreateDate = 39065.872423495400000000 - ReportOptions.LastChange = 40071.577940347220000000 + ReportOptions.LastChange = 40420.450887569440000000 ScriptLanguage = 'PascalScript' ShowProgress = False StoreInDFM = False @@ -1494,4 +1519,40 @@ object RptContratosCliente: TRptContratosCliente Left = 440 Top = 128 end + object frxDBCondiciones: TfrxDBDataset + UserName = 'frxDBCondiciones' + CloseDataSource = False + DataSource = DADSCondiciones + BCDToCurrency = False + Left = 352 + Top = 192 + end + object DADSCondiciones: TDADataSource + DataSet = tbl_Condiciones.Dataset + DataTable = tbl_Condiciones + Left = 352 + Top = 248 + end + object tbl_Condiciones: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'VALOR_BLOB' + DataType = datBlob + end> + Params = <> + MasterMappingMode = mmWhere + MasterParamsMappings.Strings = ( + 'ID_PRESUPUESTO=ID') + LogChanges = False + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteFetchEnabled = False + LocalSchema = schReport + LocalDataStreamer = DABin2DataStreamer1 + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moAllInOneFetch] + LogicalName = 'Informe_Condiciones' + IndexDefs = <> + Left = 352 + Top = 304 + end end diff --git a/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.pas b/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.pas index b721e2c6..5eebb038 100644 --- a/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.pas +++ b/Source/Modulos/Contratos de cliente/Reports/uRptContratosCliente_Server.pas @@ -66,6 +66,9 @@ type cabeceraCODIGO_POSTAL: TIBStringField; schReport: TDASchema; DataDictionary: TDADataDictionary; + frxDBCondiciones: TfrxDBDataset; + DADSCondiciones: TDADataSource; + tbl_Condiciones: TDAMemDataTable; procedure DataModuleCreate(Sender: TObject); procedure DataModuleDestroy(Sender: TObject); function frxReportUserFunction(const MethodName: string; @@ -397,6 +400,7 @@ begin tbl_Cabecera.Active := False; tbl_Capitulos.Active := False; tbl_Detalles.Active := False; + tbl_Condiciones.Active := False; FreeANDNIL(FListaNombresClientes); end; @@ -515,6 +519,7 @@ begin tbl_Cabecera.Active := False; tbl_Capitulos.Active := False; tbl_Detalles.Active := False; + tbl_Condiciones.Active := False; tbl_Cabecera.ParamByName('ID').AsInteger := AID; tbl_Capitulos.ParamByName('ID_PRE_CON').AsInteger := AID; @@ -526,6 +531,7 @@ begin tbl_Cabecera.Active := True; tbl_Capitulos.Active := True; tbl_Detalles.Active := True; + tbl_Condiciones.Active := True; AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString); if VarIsNull(AInforme) then diff --git a/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.RES b/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.RES index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.RES b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.RES index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas index fbe4f03e..a7acb476 100644 --- a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas +++ b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas @@ -3,7 +3,7 @@ unit schFacturasProveedorClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; + Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids @@ -181,7 +181,7 @@ type end; { TListaAnosFacturasDataTableRules } - TListaAnosFacturasDataTableRules = class(TDADataTableRules, IListaAnosFacturas) + TListaAnosFacturasDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosFacturas) private protected { Property getters and setters } @@ -252,7 +252,7 @@ type end; { TFacturasProveedor_ContratosDataTableRules } - TFacturasProveedor_ContratosDataTableRules = class(TDADataTableRules, IFacturasProveedor_Contratos) + TFacturasProveedor_ContratosDataTableRules = class(TIntfObjectDADataTableRules, IFacturasProveedor_Contratos) private protected { Property getters and setters } @@ -568,7 +568,7 @@ type end; { TFacturasProveedorDataTableRules } - TFacturasProveedorDataTableRules = class(TDADataTableRules, IFacturasProveedor) + TFacturasProveedorDataTableRules = class(TIntfObjectDADataTableRules, IFacturasProveedor) private f_OBSERVACIONES: IROStrings; procedure OBSERVACIONES_OnChange(Sender: TObject); @@ -928,7 +928,7 @@ type end; { TFacturasProveedor_DetallesDataTableRules } - TFacturasProveedor_DetallesDataTableRules = class(TDADataTableRules, IFacturasProveedor_Detalles) + TFacturasProveedor_DetallesDataTableRules = class(TIntfObjectDADataTableRules, IFacturasProveedor_Detalles) private protected { Property getters and setters } diff --git a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas b/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas index 7e0ad50c..6b81c8ad 100644 --- a/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas +++ b/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas @@ -10,7 +10,42 @@ uses uBizPresupuestosCliente, uBizDireccionesContacto, uBizDetallesPresupuestoCliente, uIntegerListUtils; +const + CTE_COCINA = 'Cocina'; + CTE_BANO = 'Baño'; + CTE_ARMARIO = 'Armarios'; + CTE_ELECTRODOMESTICO = 'Electrodomésticos'; + CTE_VARIOS = 'Varios'; + + + CTE_FORMA_PAGO_COCINA = 'FORMA_PAGO_COCINA'; + CTE_PLAZOS_ENTREGA_COCINA = 'PLAZOS_ENTREGA_COCINA'; + CTE_OBSERVACIONES_COCINA = 'OBSERVACIONES_COCINA'; + CTE_CONDICIONES_COCINA = 'CONDICIONES_COCINA'; + + CTE_FORMA_PAGO_ARMARIO = 'FORMA_PAGO_ARMARIO'; + CTE_PLAZOS_ENTREGA_ARMARIO = 'PLAZOS_ENTREGA_ARMARIO'; + CTE_OBSERVACIONES_ARMARIO = 'OBSERVACIONES_ARMARIO'; + CTE_CONDICIONES_ARMARIO = 'CONDICIONES_ARMARIO'; + + CTE_FORMA_PAGO_BANO = 'FORMA_PAGO_BANO'; + CTE_PLAZOS_ENTREGA_BANO = 'PLAZOS_ENTREGA_BANO'; + CTE_OBSERVACIONES_BANO = 'OBSERVACIONES_BANO'; + CTE_CONDICIONES_BANO = 'CONDICIONES_BANO'; + + CTE_FORMA_PAGO_ELECTRODOMESTICO = 'FORMA_PAGO_ELECTRODOMESTICO'; + CTE_PLAZOS_ENTREGA_ELECTRODOMESTICO = 'PLAZOS_ENTREGA_ELECTRODOMESTICO'; + CTE_OBSERVACIONES_ELECTRODOMESTICO = 'OBSERVACIONES_ELECTRODOMESTICO'; + CTE_CONDICIONES_ELECTRODOMESTICO = 'CONDICIONES_ELECTRODOMESTICO'; + + CTE_FORMA_PAGO_VARIOS = 'FORMA_PAGO_VARIOS'; + CTE_PLAZOS_ENTREGA_VARIOS = 'PLAZOS_ENTREGA_VARIOS'; + CTE_OBSERVACIONES_VARIOS = 'OBSERVACIONES_VARIOS'; + CTE_CONDICIONES_VARIOS = 'CONDICIONES_VARIOS'; + type + TEnumTiposPresupuesto = (teCocina, teArmario, teBano, teElectrodomestico, teVarios); + IPresupuestosClienteController = interface(IControllerBase) ['{21ED0332-F0E0-468D-8D53-8CA362757191}'] function GetClienteController: IClientesController; @@ -39,7 +74,7 @@ type const AHeaderText: String = ''); procedure VerDireccionEntrega(APresupuesto : IBizPresupuestoCliente); function Nuevo : IBizPresupuestoCliente; - function Anadir(APresupuesto : IBizPresupuestoCliente) : Boolean; + function Anadir(APresupuesto : IBizPresupuestoCliente; ATipo: TEnumTiposPresupuesto) : Boolean; function Eliminar(const ID : Integer): Boolean; overload; function Eliminar(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false): Boolean; overload; function Guardar(APresupuesto : IBizPresupuestoCliente): Boolean; @@ -108,7 +143,7 @@ type function Guardar(APresupuesto : IBizPresupuestoCliente): Boolean; procedure DescartarCambios(APresupuesto : IBizPresupuestoCliente); virtual; function Existe(const ID: Integer) : Boolean; virtual; - function Anadir(APresupuesto : IBizPresupuestoCliente) : Boolean; + function Anadir(APresupuesto : IBizPresupuestoCliente; ATipo: TEnumTiposPresupuesto) : Boolean; function Buscar(const ListaID: TIntegerList): IBizPresupuestoCliente; overload; function Buscar(const ID: Integer): IBizPresupuestoCliente; overload; function BuscarTodos: IBizPresupuestoCliente; overload; @@ -145,7 +180,7 @@ implementation uses Controls, cxControls, DB, uEditorRegistryUtils, uEditorPreview, DateUtils, uIEditorPresupuestosCliente, uDataModulePresupuestosCliente, Variants, - uBizContactos, uDataTableUtils, uDataModuleUsuarios, uFactuGES_App, + uBizContactos, uDataTableUtils, uDataModuleUsuarios, uFactuGES_App, uConfiguracionController, schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente, uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente, schContactosClient_Intf, uPresupuestosClienteReportController, @@ -153,11 +188,54 @@ uses { TPresupuestosClienteController } -function TPresupuestosClienteController.Anadir(APresupuesto: IBizPresupuestoCliente): Boolean; +function TPresupuestosClienteController.Anadir(APresupuesto: IBizPresupuestoCliente; ATipo: TEnumTiposPresupuesto): Boolean; begin if not Assigned(APresupuesto) then raise Exception.Create ('Presupuesto no asignado (Anadir)'); APresupuesto.Insert; + + case ATipo of + teCocina: begin + APresupuesto.TIPO_PRESUPUESTO := CTE_COCINA; + APresupuesto.FORMA_PAGO.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_FORMA_PAGO_COCINA)); + APresupuesto.PLAZO_ENTREGA.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_PLAZOS_ENTREGA_COCINA)); + APresupuesto.OBSERVACIONES.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_COCINA)); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_C_VACIO, 'MUEBLES DE COCINA ', False, APresupuesto.Detalles); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', True, APresupuesto.Detalles); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'AUMENTO POR ', False, APresupuesto.Detalles); + end; + teArmario:begin + APresupuesto.TIPO_PRESUPUESTO := CTE_ARMARIO; + APresupuesto.FORMA_PAGO.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_FORMA_PAGO_ARMARIO)); + APresupuesto.PLAZO_ENTREGA.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_PLAZOS_ENTREGA_ARMARIO)); + APresupuesto.OBSERVACIONES.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_ARMARIO)); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_AF, 'FRENTE DE ARMARIO Nº ', False, APresupuesto.Detalles); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_AI, 'INTERIOR DE ARMARIO Nº ', False, APresupuesto.Detalles); + end; + teBano: begin + APresupuesto.TIPO_PRESUPUESTO := CTE_BANO; + APresupuesto.FORMA_PAGO.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_FORMA_PAGO_BANO)); + APresupuesto.PLAZO_ENTREGA.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_PLAZOS_ENTREGA_BANO)); + APresupuesto.OBSERVACIONES.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_BANO)); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_B, 'MUEBLE DE BAÑO Nº ', False, APresupuesto.Detalles); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'IMPORTES ', True, APresupuesto.Detalles); + end; + teElectrodomestico: begin + APresupuesto.TIPO_PRESUPUESTO := CTE_ELECTRODOMESTICO; + APresupuesto.FORMA_PAGO.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_FORMA_PAGO_ELECTRODOMESTICO)); + APresupuesto.PLAZO_ENTREGA.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_PLAZOS_ENTREGA_ELECTRODOMESTICO)); + APresupuesto.OBSERVACIONES.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_ELECTRODOMESTICO)); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_E, 'ELECTRODOMÉSTICOS ', False, APresupuesto.Detalles); + end; + teVarios: begin + APresupuesto.TIPO_PRESUPUESTO := CTE_VARIOS; + APresupuesto.FORMA_PAGO.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_FORMA_PAGO_VARIOS)); + APresupuesto.PLAZO_ENTREGA.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_PLAZOS_ENTREGA_VARIOS)); + APresupuesto.OBSERVACIONES.Add(AppFactuGES.Configuracion.GetSettingAsString(teBD,CTE_OBSERVACIONES_VARIOS)); + (Self.DetallesController as IDetallesPresupuestoClienteController).AnadirCapitulo(TIPO_CAPITULO_V, 'VARIOS ', False, APresupuesto.Detalles); + end; + end; + Result := True; end; diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk index 2cc4c283..b10dbc7c 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk +++ b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dpk @@ -31,7 +31,28 @@ requires PresupuestosCliente_controller, Articulos_view, GestorInformes_controller, - PreCli_ConCli_relation; + PreCli_ConCli_relation, + rtl, + vcl, + JvCoreD11R, + vcldb, + dbrtl, + vcljpg, + vclx, + Jcl, + JclVcl, + JvMMD11R, + JvStdCtrlsD11R, + JvSystemD11R, + JvCtrlsD11R, + cxLibraryD11, + dxThemeD11, + dxGDIPlusD11, + dxCoreD11, + cxEditorsD11, + cxDataD11, + cxExtEditorsD11, + ApplicationBase; contains uPresupuestosClienteViewRegister in 'uPresupuestosClienteViewRegister.pas', @@ -49,6 +70,11 @@ contains uEditorAsignarDescuento in 'uEditorAsignarDescuento.pas' {fEditorAsignarDescuento}, uEditorFechaDecisionPresupuesto in 'uEditorFechaDecisionPresupuesto.pas' {fEditorFechaDecisionPresupuesto}, uViewTotalesPresupuesto in 'uViewTotalesPresupuesto.pas' {frViewTotalesPresupuesto: TFrame}, - uViewPresupuestoCliente in 'uViewPresupuestoCliente.pas' {frViewPresupuestoCliente: TFrame}; + uViewPresupuestoCliente in 'uViewPresupuestoCliente.pas' {frViewPresupuestoCliente: TFrame}, + uViewConfiguracionDocArmario in 'uViewConfiguracionDocArmario.pas' {frViewConfiguracionDocArmario: TFrame}, + uViewConfiguracionDocBano in 'uViewConfiguracionDocBano.pas' {frViewConfiguracionDocBano: TFrame}, + uViewConfiguracionDocCocina in 'uViewConfiguracionDocCocina.pas' {frViewConfiguracionDocCocina: TFrame}, + uViewConfiguracionDocElectrodomestico in 'uViewConfiguracionDocElectrodomestico.pas' {frViewConfiguracionDocElectrodomestico: TFrame}, + uViewConfiguracionDocVarios in 'uViewConfiguracionDocVarios.pas' {frViewConfiguracionDocVarios: TFrame}; end. diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj index 62c06807..ba38bcb1 100644 --- a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj +++ b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj @@ -49,13 +49,30 @@ MainSource - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + +
fEditorAsignarDescuento
@@ -83,6 +100,26 @@ TfEditorPedidosClientePreview
+ +
frViewPresupuestoCliente
+ TFrame +
+ +
frViewConfiguracionDocBano
+ TFrame +
+ +
frViewConfiguracionDocCocina
+ TFrame +
+ +
frViewConfiguracionDocElectrodomestico
+ TFrame +
+ +
frViewConfiguracionDocVarios
+ TFrame +
frViewDatosYSeleccionClientePresupuesto
TFrame @@ -115,6 +152,10 @@
frViewTotalesPresupuesto
TFrame
+ + + +