diff --git a/Build/Build.fbp5 b/Build/Build.fbp5
index fcfa9a68..8b7071ba 100644
--- a/Build/Build.fbp5
+++ b/Build/Build.fbp5
@@ -102,11 +102,13 @@
False
-
-
-
-
+
+ Usuarios
+ 0
+
+ Usuarios
+ True
+ True
+ False
+ True
+ False
+
+ 0
+ False
+ 0
+ 1000
+ False
+
+
+
+ 0
+
+ True
+ False
+ False
+ True
+ True
+ 0
+ 1252
+ 12
+ Release
+ False
+
+
+ True
+ True
+
+ False
+
+ False
+ False
+ True
+ True
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ 3082
+
+ 1
+ 0
+ 0
+ False
+ 0
+ %source_path%\Modulos\Usuarios\Model\Usuarios_model.dpk
+ True
+ 0
+
+
+ rcBorland
+ 1000
+
+ False
+ False
+ False
+ False
+ [usPackages,usCompiler,usLinker,usVersionInfo]
+ False
+ False
+
+
+
+ False
+ False
+ False
+ False
+ False
+ True
+ False
+ False
+ %package_path%
+
+
+
+ False
+ %modules_dcp_path%
+ False
+
+ False
+
+ False
+ True
+ False
+ False
+ True
+ 4194304
+ False
+ False
+ False
+ True
+ %library_path%
+ 0
+ False
+ 0
+ 1048576
+ 16384
+
+ True
+ True
+ %output_path%
+ False
+
+ False
+ fa8
+ False
+ False
+
+ True
+ True
+ False
+ False
+ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+
+ False
+ False
+ True
+
+
+
+
+
+ 0
+
+ True
+ False
+ False
+ True
+ True
+ 0
+ 1252
+ 12
+ Release
+ False
+
+
+ True
+ True
+
+ False
+
+ False
+ False
+ False
+ True
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ 3081
+
+ 1
+ 0
+ 0
+ False
+ 0
+ %source_path%\Modulos\Usuarios\Data\Usuarios_data.dpk
+ True
+ 0
+
+
+ rcBorland
+ 1000
+
+ False
+ False
+ False
+ False
+ [usPackages,usCompiler,usLinker,usVersionInfo]
+ False
+ False
+
+
+
+ False
+ False
+ False
+ False
+ False
+ True
+ False
+ False
+ %package_path%
+
+
+
+ False
+ %modules_dcp_path%
+ False
+
+ False
+
+ False
+ True
+ False
+ False
+ True
+ 4194304
+ False
+ False
+ False
+ True
+ %library_path%
+ 0
+ False
+ 0
+ 1048576
+ 16384
+
+ True
+ True
+ %output_path%
+ False
+
+ False
+ fa8
+ False
+ False
+
+ True
+ True
+ False
+ False
+ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+
+ False
+ False
+ True
+
+
+
+
+
+ 0
+
+ True
+ False
+ False
+ True
+ True
+ 0
+ 1252
+ 12
+ Release
+ False
+
+
+ True
+ True
+
+ False
+
+ False
+ False
+ False
+ True
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ 3081
+
+ 1
+ 0
+ 0
+ False
+ 0
+ %source_path%\Modulos\Usuarios\Controller\Usuarios_controller.dpk
+ True
+ 0
+
+
+ rcBorland
+ 1000
+
+ False
+ False
+ False
+ False
+ [usPackages,usCompiler,usLinker,usVersionInfo]
+ False
+ False
+
+
+
+ False
+ False
+ False
+ False
+ False
+ True
+ False
+ False
+ %package_path%
+
+
+
+ False
+ %modules_dcp_path%
+ False
+
+ False
+
+ False
+ True
+ False
+ False
+ True
+ 4194304
+ False
+ False
+ False
+ True
+ %library_path%
+ 0
+ False
+ 0
+ 1048576
+ 16384
+
+ True
+ True
+ %output_path%
+ False
+
+ False
+ fa8
+ False
+ False
+
+ True
+ True
+ False
+ False
+ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+
+ False
+ False
+ True
+
+
+
+
+
+ 0
+
+ True
+ False
+ False
+ True
+ True
+ 0
+ 1252
+ 12
+ Release
+ False
+
+
+ False
+ True
+
+ False
+
+ False
+ False
+ True
+ True
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ 3082
+
+ 1
+ 0
+ 0
+ False
+ 0
+
+
+ True
+ 0
+
+
+ rcBorland
+ 1000
+
+ False
+ False
+ False
+ False
+ [usPackages,usCompiler,usLinker,usVersionInfo]
+ False
+ False
+
+
+
+ False
+ False
+ False
+ False
+ False
+ True
+ False
+ False
+ %package_path%
+
+
+
+ False
+ %modules_dcp_path%
+ False
+
+ False
+
+ False
+ True
+ False
+ False
+ True
+ 4194304
+ False
+ False
+ False
+ True
+ %library_path%
+ 0
+ False
+ 0
+ 1048576
+ 16384
+
+ True
+ True
+ %output_path%
+ False
+
+ False
+ fa8
+ False
+ False
+
+ True
+ True
+ False
+ False
+ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+
+ False
+ False
+ True
+
+
+
+
+
+ 0
+
+ True
+ False
+ False
+ True
+ True
+ 0
+ 1252
+ 12
+ Release
+ False
+
+
+ False
+ True
+
+ False
+
+ False
+ False
+ False
+ True
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ False
+ 3081
+
+ 1
+ 0
+ 0
+ False
+ 0
+
+
+ True
+ 0
+
+
+ rcBorland
+ 1000
+
+ False
+ False
+ False
+ False
+ [usPackages,usCompiler,usLinker,usVersionInfo]
+ False
+ False
+
+
+
+ False
+ False
+ False
+ False
+ False
+ True
+ False
+ False
+ %package_path%
+
+
+
+ False
+ %modules_dcp_path%
+ False
+
+ False
+
+ False
+ True
+ False
+ False
+ True
+ 4194304
+ False
+ False
+ False
+ True
+ %library_path%
+ 0
+ False
+ 0
+ 1048576
+ 16384
+
+ True
+ True
+ %output_path%
+ False
+
+ False
+ fa8
+ False
+ False
+
+ True
+ True
+ False
+ False
+ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+
+ False
+ False
+ True
+
+
+
diff --git a/Build/Build.fbv b/Build/Build.fbv
index 4421a723..411786d2 100644
--- a/Build/Build.fbv
+++ b/Build/Build.fbv
@@ -1 +1 @@
-
+
diff --git a/Build/Build.log b/Build/Build.log
new file mode 100644
index 00000000..4bde328a
--- /dev/null
+++ b/Build/Build.log
@@ -0,0 +1,456 @@
+
+Project Validated Successfully
+
+Project File: C:\Codigo Tecsitel\Build\Build.fbp5
+
+Build Started: 25/09/2007 10:07:26
+
+
+[Start ActionList: Main]
+
+[Set Variable project_path to [ C:\Codigo Tecsitel\Build ]]
+
+[String Replace]
+String Replace: \\Build has been replaced with
+
+[Borrar ficheros temporales]
+
+[Run DOS Command [ C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\msbuild.exe "C:\Codigo Tecsitel\Source\ClearFiles.msbuild" ]]
+Microsoft (R) Build Engine Version 2.0.50727.42
+[Microsoft .NET Framework, Version 2.0.50727.42]
+Copyright (C) Microsoft Corporation 2005. All rights reserved.
+
+Build started 25/09/2007 10:07:28.
+__________________________________________________
+Project "C:\Codigo Tecsitel\Source\ClearFiles.msbuild" (default targets):
+
+Target ShowFiles:
+ Base\Base.dcu;Base\ClassRegistry\uClassRegistryUtils.dcu;Base\ClassRegistry\uEditorRegistryUtils.dcu;Base\ClassRegistry\uInformeRegistryUtils.dcu;Base\ClassRegistry\uViewRegistryUtils.dcu;Base\ControllerBase\ControllerBase.dcu;Base\ControllerBase\uControllerBase.dcu;Base\ControllerBase\uControllerDetallesBase.dcu;Base\ControllerBase\uControllerDetallesDTO.dcu;Base\GUIBase\GUIBase.dcu;Base\GUIBase\uBizInformesAware.dcu;Base\GUIBase\uDialogBase.dcu;Base\GUIBase\uEditorBase.dcu;Base\GUIBase\uEditorBasico.dcu;Base\GUIBase\uEditorDBBase.dcu;Base\GUIBase\uEditorDBItem.dcu;Base\GUIBase\uEditorGridBase.dcu;Base\GUIBase\uEditorItem.dcu;Base\GUIBase\uEditorPreview.dcu;Base\GUIBase\uViewBarraSeleccion.dcu;Base\GUIBase\uViewBase.dcu;Base\GUIBase\uViewDetallesBase.dcu;Base\GUIBase\uViewDetallesDTO.dcu;Base\GUIBase\uViewDetallesGenerico.dcu;Base\GUIBase\uViewFiltroBase.dcu;Base\GUIBase\uViewFormaPago.dcu;Base\GUIBase\uViewGrid.dcu;Base\GUIBase\uViewGrid2Niveles.dcu;Base\GUIBase\uViewGridBase.dcu;Base\GUIBase\uViewIncidencias.dcu;Base\GUIBase\uViewObservaciones.dcu;Base\GUIBase\uViewPreview.dcu;Base\GUIBase\uViewTotales.dcu;Base\uActualizacion.dcu;Base\uConfigurarConexion.dcu;Base\uDataModuleBase.dcu;Base\uDataModuleConexion.dcu;Base\uDataModuleConfiguracion.dcu;Base\Usuarios\uCambiarPassword.dcu;Base\Usuarios\uDataModuleUsuarios.dcu;Base\Usuarios\uLoginForm.dcu;Base\Usuarios\Usuarios.dcu;Base\Usuarios\uUsuario.dcu;Base\Usuarios\uUsuarios.dcu;Base\Utiles\MD5.dcu;Base\Utiles\uDataTableUtils.dcu;Base\Utiles\uDateUtils.dcu;Base\Utiles\uDBSelectionListUtils.dcu;Base\Utiles\uDialogUtils.dcu;Base\Utiles\uGridUtils.dcu;Base\Utiles\uInfoProjectUtils.dcu;Base\Utiles\uIntegerListUtils.dcu;Base\Utiles\uNumUtils.dcu;Base\Utiles\uPasswordUtils.dcu;Base\Utiles\uSistemaFunc.dcu;Modulos\Contactos\Controller\uContactosController.dcu;Modulos\Contactos\Controller\uDireccionesContactoController.dcu;Modulos\Contactos\Controller\uEmpleadosController.dcu;Modulos\Contactos\Controller\uEtiquetasContactosReportController.dcu;Modulos\Contactos\Controller\uFichasEmpleadoReportController.dcu;Modulos\Contactos\Controller\View\uIEditorCliente.dcu;Modulos\Contactos\Controller\View\uIEditorClientes.dcu;Modulos\Contactos\Controller\View\uIEditorContacto.dcu;Modulos\Contactos\Controller\View\uIEditorContactos.dcu;Modulos\Contactos\Controller\View\uIEditorDireccionContacto.dcu;Modulos\Contactos\Controller\View\uIEditorElegirClientes.dcu;Modulos\Contactos\Controller\View\uIEditorElegirContactos.dcu;Modulos\Contactos\Controller\View\uIEditorElegirDireccionEntrega.dcu;Modulos\Contactos\Controller\View\uIEditorEmpleado.dcu;Modulos\Contactos\Controller\View\uIEditorEmpleados.dcu;Modulos\Contactos\Controller\View\uIEditorEtiquetasContactosPreview.dcu;Modulos\Contactos\Controller\View\uIEditorFichasEmpleadoPreview.dcu;Modulos\Contactos\Data\Contactos_data.dcu;Modulos\Contactos\Data\uDataModuleClientes.dcu;Modulos\Contactos\Data\uDataModuleContactos.dcu;Modulos\Contactos\Data\uDataModuleEmpleados.dcu;Modulos\Contactos\Data\uDataModuleProveedores.dcu;Modulos\Contactos\Model\Contactos_model.dcu;Modulos\Contactos\Model\Data\uIDataModuleClientes.dcu;Modulos\Contactos\Model\Data\uIDataModuleContactos.dcu;Modulos\Contactos\Model\Data\uIDataModuleEmpleados.dcu;Modulos\Contactos\Model\Data\uIDataModuleEtiquetasContactosReport.dcu;Modulos\Contactos\Model\Data\uIDataModuleFichasEmpleadoReport.dcu;Modulos\Contactos\Model\Data\uIDataModuleProveedores.dcu;Modulos\Contactos\Model\schContactosClient_Intf.dcu;Modulos\Contactos\Model\schContactosServer_Intf.dcu;Modulos\Contactos\Model\uBizCategoriasContacto.dcu;Modulos\Contactos\Model\uBizClientesDescuentos.dcu;Modulos\Contactos\Model\uBizContactos.dcu;Modulos\Contactos\Model\uBizContactosDatosBancarios.dcu;Modulos\Contactos\Model\uBizDireccionesContacto.dcu;Modulos\Contactos\Model\uBizGruposCliente.dcu;Modulos\Contactos\Model\uBizGruposEmpleado.dcu;Modulos\Contactos\Model\uBizGruposProveedor.dcu;Modulos\Contactos\Utiles\uRegimenIVAUtils.dcu;Modulos\Empresas\Controller\Empresas_controller.dcu;Modulos\Empresas\Controller\uDatosBancariosEmpresaController.dcu;Modulos\Empresas\Controller\uEmpresasController.dcu;Modulos\Empresas\Controller\View\uIEditorDatosBancarioEmpresa.dcu;Modulos\Empresas\Controller\View\uIEditorEmpresa.dcu;Modulos\Empresas\Controller\View\uIEditorEmpresas.dcu;Modulos\Empresas\Data\Empresas_data.dcu;Modulos\Empresas\Data\uDataModuleEmpresas.dcu;Modulos\Empresas\Model\Data\uIDataModuleEmpresas.dcu;Modulos\Empresas\Model\Empresas_model.dcu;Modulos\Empresas\Model\schEmpresasClient_Intf.dcu;Modulos\Empresas\Model\schEmpresasServer_Intf.dcu;Modulos\Empresas\Model\uBizEmpresas.dcu;Modulos\Empresas\Model\uBizEmpresasDatosBancarios.dcu;Modulos\Empresas\Plugin\Empresas_plugin.dcu;Modulos\Empresas\Plugin\uPluginEmpresas.dcu;Modulos\Empresas\Views\Empresas_view.dcu;Modulos\Empresas\Views\uEditorDatosBancariosEmpresa.dcu;Modulos\Empresas\Views\uEditorEmpresa.dcu;Modulos\Empresas\Views\uEmpresasViewRegister.dcu;Modulos\Empresas\Views\uViewDatosBancarios.dcu;Modulos\Empresas\Views\uViewEmpresa.dcu;Modulos\Formas de pago\Controller\FormasPago_controller.dcu;Modulos\Formas de pago\Controller\uFormasPagoController.dcu;Modulos\Formas de pago\Controller\uFormasPagoPlazosController.dcu;Modulos\Formas de pago\Controller\View\uIEditorFormaPago.dcu;Modulos\Formas de pago\Controller\View\uIEditorFormasPago.dcu;Modulos\Formas de pago\Data\FormasPago_data.dcu;Modulos\Formas de pago\Data\uDataModuleFormasPago.dcu;Modulos\Formas de pago\Model\Data\uIDataModuleFormasPago.dcu;Modulos\Formas de pago\Model\FormasPago_model.dcu;Modulos\Formas de pago\Model\schFormasPagoClient_Intf.dcu;Modulos\Formas de pago\Model\schFormasPagoServer_Intf.dcu;Modulos\Formas de pago\Model\uBizFormasPago.dcu;Modulos\Formas de pago\Model\uBizFormasPagoPlazos.dcu;Modulos\Formas de pago\Plugin\FormasPago_plugin.dcu;Modulos\Formas de pago\Plugin\uPluginFormasPago.dcu;Modulos\Formas de pago\Views\FormasPago_view.dcu;Modulos\Formas de pago\Views\uEditorFormaPago.dcu;Modulos\Formas de pago\Views\uEditorFormasPago.dcu;Modulos\Formas de pago\Views\uFormasPagoViewRegister.dcu;Modulos\Tipos de IVA\Controller\TiposIVA_controller.dcu;Modulos\Tipos de IVA\Controller\uTiposIVAController.dcu;Modulos\Tipos de IVA\Controller\View\uIEditorTipoIVA.dcu;Modulos\Tipos de IVA\Controller\View\uIEditorTiposIVA.dcu;Modulos\Tipos de IVA\Data\TiposIVA_data.dcu;Modulos\Tipos de IVA\Data\uDataModuleTiposIVA.dcu;Modulos\Tipos de IVA\Model\Data\uIDataModuleTiposIVA.dcu;Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.dcu;Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.dcu;Modulos\Tipos de IVA\Model\TiposIVA_model.dcu;Modulos\Tipos de IVA\Model\uBizTiposIVA.dcu;Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dcu;Modulos\Tipos de IVA\Plugin\uPluginTiposIVA.dcu;Modulos\Tipos de IVA\Views\TiposIVA_view.dcu;Modulos\Tipos de IVA\Views\uEditorTipoIVA.dcu;Modulos\Tipos de IVA\Views\uEditorTiposIVA.dcu;Modulos\Tipos de IVA\Views\uTiposIVAViewRegister.dcu;Servicios\FactuGES_Intf.dcu;Servidor\DARemoteService_Impl.dcu;Servidor\DataAbstract3_Intf.dcu;Servidor\DataAbstract4_Intf.dcu;Servidor\DataAbstract4_Invk.dcu;Servidor\DataAbstractService_Impl.dcu;Servidor\FactuGES_Intf.dcu;Servidor\FactuGES_Invk.dcu;Servidor\RegExpr.dcu;Servidor\schContactosClient_Intf.dcu;Servidor\schContactosServer_Intf.dcu;Servidor\schEmpresasClient_Intf.dcu;Servidor\schEmpresasServer_Intf.dcu;Servidor\schFamiliasClient_Intf.dcu;Servidor\schFamiliasServer_Intf.dcu;Servidor\schFormasPagoClient_Intf.dcu;Servidor\schFormasPagoServer_Intf.dcu;Servidor\schTiposIVAClient_Intf.dcu;Servidor\schTiposIVAServer_Intf.dcu;Servidor\srvConfiguracion_Impl.dcu;Servidor\srvContactos_Impl.dcu;Servidor\srvEmpresas_Impl.dcu;Servidor\srvFamilias_Impl.dcu;Servidor\srvFormasPago_Impl.dcu;Servidor\srvLogin_Impl.dcu;Servidor\srvTiposIVA_Impl.dcu;Servidor\uAcercaDe.dcu;Servidor\uBizClientesServer.dcu;Servidor\uBizContactosServer.dcu;Servidor\uBizEmpleadosServer.dcu;Servidor\uBizProveedoresServer.dcu;Servidor\uBusinessUtils.dcu;Servidor\uConexionBD.dcu;Servidor\uConfGeneral.dcu;Servidor\uConfiguracion.dcu;Servidor\uDAADODriver.dcu;Servidor\uDAADOInterfaces.dcu;Servidor\uDABin2DataStreamer.dcu;Servidor\uDABINAdapter.dcu;Servidor\uDABusinessProcessor.dcu;Servidor\uDACache.dcu;Servidor\uDAClasses.dcu;Servidor\uDADatasetWrapper.dcu;Servidor\uDADataStreamer.dcu;Servidor\uDADataTable.dcu;Servidor\uDADataTableReferenceCollection.dcu;Servidor\uDADelta.dcu;Servidor\uDADriverManager.dcu;Servidor\uDAEngine.dcu;Servidor\uDAExceptions.dcu;Servidor\uDAExpressionEvaluator.dcu;Servidor\uDAHelpers.dcu;Servidor\uDAIBInterfaces.dcu;Servidor\uDAIBXDriver.dcu;Servidor\uDAInterfaces.dcu;Servidor\uDAInterfacesEx.dcu;Servidor\uDAMacroProcessors.dcu;Servidor\uDAMacros.dcu;Servidor\uDAMemDataset.dcu;Servidor\uDAMemDataTable.dcu;Servidor\uDAOracleInterfaces.dcu;Servidor\uDAPostgresInterfaces.dcu;Servidor\uDARegExpr.dcu;Servidor\uDARes.dcu;Servidor\uDAScriptingProvider.dcu;Servidor\uDASQL92Interfaces.dcu;Servidor\uDASQL92QueryBuilder.dcu;Servidor\uDASupportClasses.dcu;Servidor\uDatabaseUtils.dcu;Servidor\uDataModuleServer.dcu;Servidor\uDAUtils.dcu;Servidor\uDAWhere.dcu;Servidor\uDAXMLUtils.dcu;Servidor\uFrameConfiguracion.dcu;Servidor\uReferenciasUtils.dcu;Servidor\uRestriccionesUsuarioUtils.dcu;Servidor\uROBinaryHelpers.dcu;Servidor\uROBinMessage.dcu;Servidor\uROCipher.dcu;Servidor\uroCipher1.dcu;Servidor\uROCiphers.dcu;Servidor\uROClasses.dcu;Servidor\uROClient.dcu;Servidor\uROClientIntf.dcu;Servidor\uROComInit.dcu;Servidor\uROCompression.dcu;Servidor\uRODECConst.dcu;Servidor\uRODECUtil.dcu;Servidor\uRODL.dcu;Servidor\uRODLToXML.dcu;Servidor\uRODynamicRequest.dcu;Servidor\uROEncryption.dcu;Servidor\uROEventRepository.dcu;Servidor\uROHash.dcu;Servidor\uROHtmlServerInfo.dcu;Servidor\uROHTTPDispatch.dcu;Servidor\uROHTTPTools.dcu;Servidor\uROIndyHTTPServer.dcu;Servidor\uROIndyTCPServer.dcu;Servidor\uROMSXML2_TLB.dcu;Servidor\uROMSXMLImpl.dcu;Servidor\uROPoweredByRemObjectsButton.dcu;Servidor\uRORemoteDataModule.dcu;Servidor\uRORemoteService.dcu;Servidor\uRORes.dcu;Servidor\uROSerializer.dcu;Servidor\uROServer.dcu;Servidor\uROServerIntf.dcu;Servidor\uROSessions.dcu;Servidor\uROStreamSerializer.dcu;Servidor\uROTypes.dcu;Servidor\uROXMLIntf.dcu;Servidor\uROZLib.dcu;Servidor\uSchemaUtilsServer.dcu;Servidor\uServerAppUtils.dcu;Servidor\uServerMainForm.dcu;Servidor\uSesionesUtils.dcu;Servidor\uUsersManager.dcu;Lib\Base.dcp;Lib\ControllerBase.dcp;Lib\GUIBase.dcp;Modulos\Lib\Contactos_data.dcp;Modulos\Lib\Contactos_model.dcp;Modulos\Lib\Empresas_controller.dcp;Modulos\Lib\Empresas_data.dcp;Modulos\Lib\Empresas_model.dcp;Modulos\Lib\Empresas_plugin.dcp;Modulos\Lib\Empresas_view.dcp;Modulos\Lib\FormasPago_controller.dcp;Modulos\Lib\FormasPago_data.dcp;Modulos\Lib\FormasPago_model.dcp;Modulos\Lib\FormasPago_plugin.dcp;Modulos\Lib\FormasPago_view.dcp;Modulos\Lib\TiposIVA_controller.dcp;Modulos\Lib\TiposIVA_data.dcp;Modulos\Lib\TiposIVA_model.dcp;Modulos\Lib\TiposIVA_plugin.dcp;Modulos\Lib\TiposIVA_view.dcp;Modulos\Lib\Usuarios.dcp
+
+Build succeeded.
+ 0 Warning(s)
+ 0 Error(s)
+
+Time Elapsed 00:00:00.04
+Program returned code : 0
+
+[Crear directorios de salida]
+
+[List Iterator]
+Setting items...
+Found 8 Items
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Database ]]
+Created directory : C:\Codigo Tecsitel\Output\Debug\Database
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Cliente ]]
+Created directory : C:\Codigo Tecsitel\Output\Debug\Cliente
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Servidor ]]
+Created directory : C:\Codigo Tecsitel\Output\Debug\Servidor
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Servidor\Informes ]]
+Created directory : C:\Codigo Tecsitel\Output\Debug\Servidor\Informes
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Release\Database ]]
+Created directory : C:\Codigo Tecsitel\Output\Release\Database
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Release\Cliente ]]
+Created directory : C:\Codigo Tecsitel\Output\Release\Cliente
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Release\Servidor ]]
+Created directory : C:\Codigo Tecsitel\Output\Release\Servidor
+
+[List Iterator]
+
+[Create Directory [ C:\Codigo Tecsitel\Output\Release\Servidor\Informes ]]
+Created directory : C:\Codigo Tecsitel\Output\Release\Servidor\Informes
+
+[List Iterator]
+
+[Reset Variable to Default]
+
+[Listar valores de las variables del proyecto]
+Current variable values :
+base_dcp_path = C:\Codigo Tecsitel\Source\Lib
+library_3rdparty_path = C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\Indy10;C:\Codigo Tecsitel\Lib;C:\Codigo Tecsitel\Lib\RemObjects\RemObjects_SDK;C:\Codigo Tecsitel\Lib\RemObjects\Data_Abstract;C:\Codigo Tecsitel\Lib\CCPack;C:\Codigo Tecsitel\Lib\CFPack;C:\Codigo Tecsitel\Lib\GUISDK;C:\Codigo Tecsitel\Lib\PluginSDK;C:\Codigo Tecsitel\Lib\DevExpressVCL;C:\Codigo Tecsitel\Lib\FastReport3;C:\Codigo Tecsitel\Lib\JCL;C:\Codigo Tecsitel\Lib\JVCL;C:\Codigo Tecsitel\Lib\PngComponents;C:\Codigo Tecsitel\Lib\cxIntl5;C:\Codigo Tecsitel\Lib\cxIntlPrintSys3;C:\Codigo Tecsitel\Lib\TB2k+TBX;C:\Codigo Tecsitel\Lib\Mustangpeak\MPCommonLib;C:\Codigo Tecsitel\Lib\Mustangpeak\EasyListview;C:\Codigo Tecsitel\Lib\JSDialog;
+library_path = C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib;C:\Archivos de programa\CodeGear\RAD Studio\5.0\Imports;C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\Indy10;C:\Codigo Tecsitel\Lib;C:\Codigo Tecsitel\Lib\RemObjects\RemObjects_SDK;C:\Codigo Tecsitel\Lib\RemObjects\Data_Abstract;C:\Codigo Tecsitel\Lib\CCPack;C:\Codigo Tecsitel\Lib\CFPack;C:\Codigo Tecsitel\Lib\GUISDK;C:\Codigo Tecsitel\Lib\PluginSDK;C:\Codigo Tecsitel\Lib\DevExpressVCL;C:\Codigo Tecsitel\Lib\FastReport3;C:\Codigo Tecsitel\Lib\JCL;C:\Codigo Tecsitel\Lib\JVCL;C:\Codigo Tecsitel\Lib\PngComponents;C:\Codigo Tecsitel\Lib\cxIntl5;C:\Codigo Tecsitel\Lib\cxIntlPrintSys3;C:\Codigo Tecsitel\Lib\TB2k+TBX;C:\Codigo Tecsitel\Lib\Mustangpeak\MPCommonLib;C:\Codigo Tecsitel\Lib\Mustangpeak\EasyListview;C:\Codigo Tecsitel\Lib\JSDialog;;C:\Codigo Tecsitel\Source\Lib
+modules_dcp_path = C:\Codigo Tecsitel\Source\Modulos\Lib
+output_path = C:\Codigo Tecsitel\Output\Debug
+package_path = C:\Codigo Tecsitel\Output\Debug\Cliente
+project_path = C:\Codigo Tecsitel
+source_path = C:\Codigo Tecsitel\Source
+
+[Servidor]
+
+[Compile Servidor\FactuGES_Server.dpr]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Servidor\FactuGES_Server.dpr" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizContactosServer.pas(34) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+Utiles\uBusinessUtils.pas(13) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+Utiles\uBusinessUtils.pas(20) Warning: W1000 Symbol 'TDARemoteService' is deprecated
+Utiles\uBusinessUtils.pas(21) Warning: W1000 Symbol 'TDARemoteService' is deprecated
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizEmpleadosServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizClientesServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizProveedoresServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.pas(110) Warning: W1035 Return value of function 'TsrvContactos.GenerateEtiquetasReport' might be undefined
+C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.pas(124) Warning: W1035 Return value of function 'TsrvContactos.GenerateFichaEmpleadoReport' might be undefined
+Utiles\uSchemaUtilsServer.pas(8) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated
+Utiles\uSchemaUtilsServer.pas(17) Warning: W1000 Symbol 'TDARemoteService' is deprecated
+Utiles\uSchemaUtilsServer.pas(42) Hint: H2164 Variable 'APos' is declared but never used in 'TReplicarDataSet.GenerateNewSQL'
+Utiles\uSchemaUtilsServer.pas(134) Hint: H2164 Variable 'AField' is declared but never used in 'TReplicarDataSet.GetNewDataSet'
+26272 lines, 8.33 seconds, 3271728 bytes code, 202776 bytes data.
+
+[Base]
+
+[Compile Base\Base.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\Base.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+Utiles\uDataTableUtils.pas(205) Hint: H2077 Value assigned to 'CloneDataTable' never used
+Utiles\uDataTableUtils.pas(413) Warning: W1000 Symbol 'TDABINAdapter' is deprecated
+Utiles\uDataTableUtils.pas(449) Warning: W1000 Symbol 'TDABINAdapter' is deprecated
+Utiles\uDataTableUtils.pas(531) Warning: W1036 Variable 'ADetailFields' might not have been initialized
+uDataModuleConexion.pas(6) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleConexion.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated
+uConfigurarConexion.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleConfiguracion.pas(6) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleConfiguracion.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated
+Utiles\uPasswordUtils.pas(40) Warning: W1012 Constant expression violates subrange bounds
+ClassRegistry\uInformeRegistryUtils.pas(48) Hint: H2077 Value assigned to 'aOwner' never used
+Base.dpk(87) Warning: W1033 Unit 'JSRichEdit' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSLabel' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSUrlLabel' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSProgressBar' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSCheckBox' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSButton' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSGraphUtil' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSDialogStrs' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSDialog' implicitly imported into package 'Base'
+Base.dpk(87) Warning: W1033 Unit 'JSDialogs' implicitly imported into package 'Base'
+5054 lines, 4.36 seconds, 132820 bytes code, 888 bytes data.
+
+[Compile Base\ControllerBase\ControllerBase.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\ControllerBase\ControllerBase.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uControllerDetallesBase.pas(301) Warning: W1036 Variable 'DeletePosicion' might not have been initialized
+uControllerDetallesDTO.pas(20) Hint: H2365 Override method TControllerDetallesDTO.ValidarCampos should match case of ancestor TControllerDetallesBase.validarCampos
+uControllerDetallesDTO.pas(37) Hint: H2077 Value assigned to 'ImporteTotal' never used
+810 lines, 0.27 seconds, 16484 bytes code, 76 bytes data.
+
+[Compile Base\GUIBase\GUIBase.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\GUIBase\GUIBase.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uEditorBase.pas(141) Warning: W1010 Method 'ShowModal' hides virtual method of base type 'TCustomForm'
+uViewGridBase.pas(98) Warning: W1010 Method 'GetPopupMenu' hides virtual method of base type 'TControl'
+uViewGridBase.pas(267) Warning: W1035 Return value of function 'TfrViewGridBase.Locate' might be undefined
+uEditorPreview.pas(81) Warning: W1010 Method 'FormShow' hides virtual method of base type 'TfEditorBase'
+uViewDetallesBase.pas(487) Hint: H2077 Value assigned to 'TfrViewDetallesBase.darPosicionCAMPO' never used
+uViewDetallesBase.pas(150) Hint: H2219 Private symbol 'OnSelectChange' declared but never used
+4022 lines, 3.59 seconds, 72032 bytes code, 164 bytes data.
+
+[Módulos]
+
+[General]
+
+[Empresas]
+
+[Compile Modulos\Empresas\Model\Empresas_model.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Model\Empresas_model.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+2955 lines, 0.73 seconds, 52996 bytes code, 84 bytes data.
+
+[Compile Modulos\Empresas\Data\Empresas_data.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Data\Empresas_data.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uDataModuleEmpresas.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated
+uDataModuleEmpresas.pas(7) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleEmpresas.pas(14) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated
+151 lines, 0.77 seconds, 8060 bytes code, 72 bytes data.
+
+[Compile Modulos\Empresas\Controller\Empresas_controller.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Controller\Empresas_controller.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uEmpresasController.pas(102) Hint: H2077 Value assigned to 'TEmpresasController.Eliminar' never used
+uEmpresasController.pas(184) Hint: H2077 Value assigned to 'TEmpresasController.ValidarEmpresa' never used
+442 lines, 1.09 seconds, 13056 bytes code, 84 bytes data.
+
+[Compile Base\Usuarios\Usuarios.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\Usuarios\Usuarios.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uDataModuleUsuarios.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated
+uDataModuleUsuarios.pas(7) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleUsuarios.pas(15) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated
+uDataModuleUsuarios.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated
+534 lines, 0.86 seconds, 14828 bytes code, 116 bytes data.
+
+[Compile Modulos\Empresas\Views\Empresas_view.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Views\Empresas_view.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uEditorEmpresa.pas(24) Warning: W1010 Method 'FormShow' hides virtual method of base type 'TfEditorBase'
+608 lines, 0.97 seconds, 17276 bytes code, 88 bytes data.
+
+[Compile Modulos\Empresas\Plugin\Empresas_plugin.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Plugin\Empresas_plugin.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+186 lines, 0.92 seconds, 10028 bytes code, 72 bytes data.
+
+[Formas de pago]
+
+[Compile Modulos\Formas de pago\Model\FormasPago_model.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Model\FormasPago_model.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+1368 lines, 0.48 seconds, 27436 bytes code, 84 bytes data.
+
+[Compile Modulos\Formas de pago\Data\FormasPago_data.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Data\FormasPago_data.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uDataModuleFormasPago.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated
+uDataModuleFormasPago.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleFormasPago.pas(15) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated
+129 lines, 0.53 seconds, 7728 bytes code, 72 bytes data.
+
+[Compile Modulos\Formas de pago\Controller\FormasPago_controller.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Controller\FormasPago_controller.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uFormasPagoController.pas(81) Warning: W1000 Symbol 'OpenBraket' is deprecated
+uFormasPagoController.pas(83) Warning: W1000 Symbol 'CloseBraket' is deprecated
+uFormasPagoController.pas(153) Hint: H2077 Value assigned to 'TFormasPagoController.ValidarFormaPago' never used
+uFormasPagoController.pas(218) Hint: H2077 Value assigned to 'TFormasPagoController.Eliminar' never used
+426 lines, 0.58 seconds, 11632 bytes code, 84 bytes data.
+
+[Compile Modulos\Formas de pago\Views\FormasPago_view.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Views\FormasPago_view.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+447 lines, 0.67 seconds, 13528 bytes code, 80 bytes data.
+
+[Compile Modulos\Formas de pago\Plugin\FormasPago_plugin.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Plugin\FormasPago_plugin.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+120 lines, 0.64 seconds, 8620 bytes code, 68 bytes data.
+
+[Tipos de IVA]
+
+[Compile Modulos\Tipos de IVA\Model\TiposIVA_model.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Model\TiposIVA_model.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+735 lines, 0.41 seconds, 15224 bytes code, 80 bytes data.
+
+[Compile Modulos\Tipos de IVA\Data\TiposIVA_data.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\TiposIVA_data.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uDataModuleTiposIVA.pas(29) Warning: W1006 Unit 'uDAClientDataModule' is deprecated
+uDataModuleTiposIVA.pas(31) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleTiposIVA.pas(38) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated
+146 lines, 0.53 seconds, 7696 bytes code, 72 bytes data.
+
+[Compile Modulos\Tipos de IVA\Controller\TiposIVA_controller.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Controller\TiposIVA_controller.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uTiposIVAController.pas(192) Hint: H2077 Value assigned to 'TTiposIVAController.ValidarTipoIVA' never used
+uTiposIVAController.pas(257) Hint: H2077 Value assigned to 'TTiposIVAController.Eliminar' never used
+457 lines, 0.58 seconds, 11072 bytes code, 76 bytes data.
+
+[Compile Modulos\Tipos de IVA\Views\TiposIVA_view.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Views\TiposIVA_view.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+423 lines, 0.67 seconds, 12252 bytes code, 80 bytes data.
+
+[Compile Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+116 lines, 0.61 seconds, 8420 bytes code, 68 bytes data.
+
+[Contactos]
+
+[Compile Modulos\Contactos\Model\Contactos_model.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+14343 lines, 0.97 seconds, 243688 bytes code, 136 bytes data.
+
+[Compile Modulos\Contactos\Data\Contactos_data.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uDataModuleContactos.pas(7) Warning: W1006 Unit 'uDAClientDataModule' is deprecated
+uDataModuleContactos.pas(9) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleContactos.pas(17) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated
+uDataModuleClientes.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleProveedores.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+uDataModuleProveedores.pas(61) Warning: W1000 Symbol 'OpenBraket' is deprecated
+uDataModuleProveedores.pas(63) Warning: W1000 Symbol 'CloseBraket' is deprecated
+uDataModuleEmpleados.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated
+552 lines, 0.89 seconds, 14988 bytes code, 84 bytes data.
+
+[Compile Modulos\Contactos\Controller\Contactos_controller.dpk]
+Running Borland Resource compiler....
+Borland Resource Compiler Version 5.40
+Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
+Resource Compiled OK.
+Running Delphi compiler....
+Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.dpk" /Q
+CodeGear Delphi for Win32 compiler version 18.5
+Copyright (c) 1983,2007 CodeGear
+uContactosController.pas(190) Hint: H2164 Variable 'NuevoID' is declared but never used in 'TContactosController.Guardar'
+uContactosController.pas(227) Hint: H2077 Value assigned to 'TContactosController.ValidarContacto' never used
+uEmpleadosController.pas(76) Hint: H2077 Value assigned to 'TEmpleadosController.Eliminar' never used
+uEmpleadosController.pas(114) Warning: W1036 Variable 'bEliminado' might not have been initialized
+uEmpleadosController.pas(177) Warning: W1036 Variable 'ID_Fichas' might not have been initialized
+uEmpleadosController.pas(212) Warning: W1036 Variable 'ID_Fichas' might not have been initialized
+uClientesController.pas(150) Hint: H2077 Value assigned to 'TClientesController.Eliminar' never used
+uClientesController.pas(188) Warning: W1036 Variable 'bEliminado' might not have been initialized
+uClientesController.pas(251) Warning: W1036 Variable 'ListaID' might not have been initialized
+uClientesController.pas(286) Warning: W1036 Variable 'ListaID' might not have been initialized
+uClientesController.pas(293) Hint: H2077 Value assigned to 'TClientesController.TieneDatosBancarios' never used
+uClientesController.pas(360) Error: E2250 There is no overloaded version of 'CopyDataTable' that can be called with these arguments
+Contactos_controller.dpk(64) Fatal: F2063 Could not compile used unit 'uClientesController.pas'
+
+[End ActionList: Main]
+
+Build Failed!
+
+
+Exit with return code: 1 (BUILDFAILED)
+
diff --git a/Database/FACTUGES.FDB b/Database/FACTUGES.FDB
index f214b427..850051ab 100644
Binary files a/Database/FACTUGES.FDB and b/Database/FACTUGES.FDB differ
diff --git a/Database/FACTUGES_USERSCONTROL.FDB b/Database/FACTUGES_USERSCONTROL.FDB
new file mode 100644
index 00000000..d790511a
Binary files /dev/null and b/Database/FACTUGES_USERSCONTROL.FDB differ
diff --git a/Sanlam.SanQuote.proj b/Sanlam.SanQuote.proj
index bf507192..041d9efe 100644
--- a/Sanlam.SanQuote.proj
+++ b/Sanlam.SanQuote.proj
@@ -161,11 +161,11 @@
-
+
-
+
@@ -189,6 +189,9 @@
+
+
\ No newline at end of file
diff --git a/Source/Base/Base.dcu b/Source/Base/Base.dcu
new file mode 100644
index 00000000..5ac21cea
Binary files /dev/null and b/Source/Base/Base.dcu differ
diff --git a/Source/Base/Base.dpk b/Source/Base/Base.dpk
index eb08d3b8..c08bf607 100644
--- a/Source/Base/Base.dpk
+++ b/Source/Base/Base.dpk
@@ -57,7 +57,8 @@ requires
JvStdCtrlsD11R,
JvDlgsD11R,
JvNetD11R,
- JvPageCompsD11R;
+ JvPageCompsD11R,
+ JSDialog100;
contains
uDataTableUtils in 'Utiles\uDataTableUtils.pas',
@@ -76,7 +77,7 @@ contains
uEditorRegistryUtils in 'ClassRegistry\uEditorRegistryUtils.pas',
uDialogUtils in 'Utiles\uDialogUtils.pas',
uNumUtils in 'Utiles\uNumUtils.pas',
- MD5 in 'Utiles\MD5.pas',
+ uMD5 in 'Utiles\uMD5.pas',
uPasswordUtils in 'Utiles\uPasswordUtils.pas',
uInfoProjectUtils in 'Utiles\uInfoProjectUtils.pas',
uActualizacion in 'uActualizacion.pas' {fActualizacion: Form},
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index ba013b7a..ccd405cb 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -33,6 +33,10 @@
..\..\Output\Debug\Cliente
..\Lib
3
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp
Delphi.Personality
@@ -58,68 +62,38 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
diff --git a/Source/Base/Usuarios/Usuarios.drc b/Source/Base/Usuarios/Usuarios.drc
deleted file mode 100644
index d605020d..00000000
--- a/Source/Base/Usuarios/Usuarios.drc
+++ /dev/null
@@ -1,21 +0,0 @@
-/* VER185
- Generated by the CodeGear Delphi Pascal Compiler
- because -GD or --drc was supplied to the compiler.
-
- This file contains compiler-generated resources that
- were bound to the executable.
- If this file is empty, then no compiler-generated
- resources were bound to the produced executable.
-*/
-
-STRINGTABLE
-BEGIN
-END
-
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\uLoginForm.dfm */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\uCambiarPassword.dfm */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\uDataModuleUsuarios.DFM */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\uUsuarios.dfm */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\uUsuario.dfm */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\Usuarios.res */
-/* C:\Codigo Tecsitel\Source\Base\Usuarios\Usuarios.drf */
diff --git a/Source/Base/Usuarios/Usuarios.res b/Source/Base/Usuarios/Usuarios.res
deleted file mode 100644
index 784f75e0..00000000
Binary files a/Source/Base/Usuarios/Usuarios.res and /dev/null differ
diff --git a/Source/Base/Usuarios/uDataModuleUsuarios.dfm b/Source/Base/Usuarios/uDataModuleUsuarios.dfm
deleted file mode 100644
index ce6d0400..00000000
--- a/Source/Base/Usuarios/uDataModuleUsuarios.dfm
+++ /dev/null
@@ -1,17 +0,0 @@
-object dmUsuarios: TdmUsuarios
- OldCreateOrder = True
- OnCreate = DAClientDataModuleCreate
- Height = 205
- Width = 355
- object ROLoginService: TRORemoteService
- Message = dmConexion.ROMessage
- Channel = dmConexion.ROChannel
- ServiceName = 'srvLogin'
- Left = 48
- Top = 32
- end
- object DABINAdapter: TDABINAdapter
- Left = 48
- Top = 104
- end
-end
diff --git a/Source/Base/Usuarios/uDataModuleUsuarios.pas b/Source/Base/Usuarios/uDataModuleUsuarios.pas
deleted file mode 100644
index 369a5f3c..00000000
--- a/Source/Base/Usuarios/uDataModuleUsuarios.pas
+++ /dev/null
@@ -1,209 +0,0 @@
-unit uDataModuleUsuarios;
-
-interface
-
-uses {vcl:} SysUtils, Classes, DB, DBClient,
- {RemObjects:} uDAClientDataModule, uDADataTable, uDABINAdapter,
- uROServiceComponent, uRORemoteService, uROClient, uROBinMessage,
- uROWinInetHttpChannel, uDAScriptingProvider, uDACDSDataTable,
- FactuGES_Intf, uIntegerListUtils, uBizEmpresas, uDADataStreamer;
-
-const
- PERFIL_ADMINISTRADORES = 'Administradores';
-
-type
- TdmUsuarios = class(TDAClientDataModule)
- ROLoginService: TRORemoteService;
- DABINAdapter: TDABINAdapter;
- procedure DAClientDataModuleCreate(Sender: TObject);
- procedure DAClientDataModuleDestroy(Sender: TObject);
- private
- FUsuario : String;
- FPassword : String; // Lo guardo para poder hacer una reconexión
-
- FLoginInfo: TRdxLoginInfo;
- FEmpresaActual: IBizEmpresa;
- function CambiarPassword (const APassword : String) : boolean; overload;
- function GetEsAdministrador: Boolean;
-
- function GetEmpresas: TIntegerList;
-
- procedure SetEmpresaActual(const Value: IBizEmpresa);
- function GetIDEmpresaActual: Integer;
- procedure SetIDEmpresaActual(const Value: Integer);
- public
- function Login: Boolean; overload;
- function Login(Usuario: String; Password: String): Boolean; overload;
- procedure Logout;
- procedure CambiarPassword; overload;
- property EsAdministrador : Boolean read GetEsAdministrador;
- property IDEmpresaActual : Integer read GetIDEmpresaActual write SetIDEmpresaActual;
- property EmpresaActual : IBizEmpresa read FEmpresaActual write SetEmpresaActual;
- property Empresas : TIntegerList read GetEmpresas;
- property LoginInfo: TRdxLoginInfo read FLoginInfo;
- end;
-
-var
- dmUsuarios: TdmUsuarios;
-
-implementation
-
-{$R *.DFM}
-
-uses
- Forms, Controls, uDataTableUtils, uDataModuleConexion, uLoginForm,
- uCambiarPassword, Dialogs, Windows, uEmpresasController;
-
-{ TDAClientDataModule1 }
-
-procedure TdmUsuarios.DAClientDataModuleCreate(Sender: TObject);
-begin
- ROLoginService.Channel := dmConexion.Channel;
- ROLoginService.Message := dmConexion.Message;
- FEmpresaActual := nil;
- FUsuario := '';
- FPassword := '';
- FLoginInfo := NIL;
-end;
-
-function TdmUsuarios.Login: Boolean;
-begin
- // Intento hacer login si el usuario ya lo había hecho antes
- if (Length(FUsuario) > 0) then
- if Login(FUsuario, FPassword) then
- begin
- Result := True;
- Exit;
- end;
-
- // Si no funcionar el login anterior o es la primera vez,
- // saco la pantalla de login
- with TfLoginForm.Create(NIL) do
- try
- if Assigned(FLoginInfo) then
- edtUser.Text := FLoginInfo.Usuario;
- Result := (ShowModal = mrOK)
- finally
- Free;
- end;
-end;
-
-function TdmUsuarios.Login(Usuario: String; Password: String): Boolean;
-begin
- // Libero la información del login anterior (sesión, etc)
- if Assigned(FLoginInfo) then
- FreeANDNil(FLoginInfo);
-
- Result := (ROLoginService as IsrvLogin).Login(Usuario, Password, FLoginInfo);
-
- if Result then
- begin
- // Lo guardo para poder reconectarme
- FUsuario := Usuario;
- FPassword := Password;
- end;
-end;
-
-procedure TdmUsuarios.Logout;
-begin
- (ROLoginService as IsrvLogin).Logout;
- if Assigned(FLoginInfo) then
- FreeANDNil(FLoginInfo);
- FUsuario := '';
- FPassword := '';
-end;
-
-procedure TdmUsuarios.SetEmpresaActual(const Value: IBizEmpresa);
-begin
- FEmpresaActual := Value;
- FEmpresaActual.DataTable.Active := True;
-end;
-
-procedure TdmUsuarios.SetIDEmpresaActual(const Value: Integer);
-var
- AEmpresasController : IEmpresasController;
- AEmpresa : IBizEmpresa;
-begin
- AEmpresasController := TEmpresasController.Create;
- AEmpresa := AEmpresasController.Buscar(Value);
- AEmpresa.DataTable.Active := True;
-
- if not AEmpresa.IsEmpty then
- begin
- FEmpresaActual := AEmpresa;
- FEmpresaActual.DataTable.Active := True;
- end
- else
- FEmpresaActual := NIL;
-end;
-
-procedure TdmUsuarios.DAClientDataModuleDestroy(Sender: TObject);
-begin
- if Assigned(FLoginInfo) then
- FreeANDNil(FLoginInfo);
-end;
-
-function TdmUsuarios.GetEmpresas: TIntegerList;
-var
- i : integer;
-begin
- Result := TIntegerList.Create;
-
- if not Assigned(FLoginInfo) then
- raise Exception.Create('Usuario no validado en el sistema (login)');
-
- for i := 0 to FLoginInfo.Empresas.Count - 1 do
- Result.Add(FLoginInfo.Empresas.Items[i]);
-end;
-
-function TdmUsuarios.GetEsAdministrador: Boolean;
-var
- I: Integer;
-begin
- Result := False;
-
- if not Assigned(FLoginInfo) then
- raise Exception.Create('Usuario no validado en el sistema (login)');
-
- for I := 0 to FLoginInfo.Perfiles.Count - 1 do
- if FLoginInfo.Perfiles.Items[I] = PERFIL_ADMINISTRADORES then
- begin
- Result := True;
- Break;
- end;
-end;
-
-function TdmUsuarios.GetIDEmpresaActual: Integer;
-begin
- if not Assigned(FEmpresaActual) then
- Result := ID_NULO
- else
- Result := FEmpresaActual.ID;
-end;
-
-procedure TdmUsuarios.CambiarPassword;
-begin
- with TfCambiarPassword.Create(NIL) do
- try
- if ShowModal = mrOk then
- if CambiarPassword(edtPassword.Text) then
- Application.MessageBox('La contraseña ha sido cambiada correctamente.', 'Información', MB_OK);
- finally
- Free;
- end;
-end;
-
-function TdmUsuarios.CambiarPassword(const APassword: String): boolean;
-begin
-{ if not (ROLoginService as IsrvLogin).SetUserPassword(LoginInfo.UserID, APassword) then
- raise Exception.Create('Error en el servidor. No se ha podido cambiar la contraseña');}
- Result := True;
-end;
-
-initialization
- dmUsuarios := TdmUsuarios.Create(nil);
-
-finalization
- FreeAndNil(dmUsuarios);
-
-end.
diff --git a/Source/Base/Utiles/uDataTableUtils.pas b/Source/Base/Utiles/uDataTableUtils.pas
index 15a87fc7..89be2601 100644
--- a/Source/Base/Utiles/uDataTableUtils.pas
+++ b/Source/Base/Utiles/uDataTableUtils.pas
@@ -19,6 +19,12 @@ function SetFieldNull(ATarget: TDADataTable; const FieldName: String): Boolean;
procedure ConectarTabla (ATarget: TDADataTable);
procedure DesconectarTabla (ATarget: TDADataTable);
+procedure CopyDataTable(ASource : TDADataTable; ATarget: TDADataTable;
+ const OnlySelectedRows : Boolean = False);
+
+procedure CopyDataTable2(ASource : TDADataTable; ATarget : TDADataTable;
+ const OnlySelectedRows : Boolean = False);
+
procedure CloneDataTable(const ASource : TDACDSDataTable;
var ATarget : TDACDSDataTable;
RemoteUpdate: Boolean = True); overload;
@@ -33,9 +39,6 @@ procedure DuplicarRegistros(ASource : TDADataTable; ATarget : TDADataTable;
AModo : TModoDuplicarRegistros; APermitirRepetidos: Boolean = True;
Const WithDeltas: Boolean = True; Const WithKey: Boolean = False);
-procedure CopyDataTable(ASource : TDADataTable; ATarget : TDADataTable;
- const OnlySelectedRows : Boolean = False);
-
procedure DeleteAllTable(const ADataTable : TDADataTable);
function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean;
@@ -54,6 +57,80 @@ uses
Classes, DB, uDAClasses, SysUtils, uDABINAdapter, uROTypes, cxControls,
Dialogs, Variants, uDBSelectionListUtils, uROClasses, uDADataStreamer;
+
+procedure CopyDataTable(ASource : TDADataTable;
+ ATarget: TDADataTable;
+ const OnlySelectedRows : Boolean);
+var
+ AStream : Binary;
+ AFilter : String;
+ AFiltered : Boolean;
+ AObj : ISeleccionable;
+ i : Integer;
+begin
+ AFilter := '';
+ AFiltered := False;
+
+ if not Assigned(ASource) then
+ raise Exception.Create ('No se ha asignado la tabla de origen (CopyDataTable)');
+
+ if not Assigned(ATarget) then
+ raise Exception.Create ('No se ha asignado la tabla de destino (CopyDataTable)');
+
+ if not ATarget.Active then
+ ATarget.Active := True;
+
+ if OnlySelectedRows then
+ begin
+ if not Supports(ASource, ISeleccionable, aObj) then
+ raise Exception.Create('El origen de datos no soporta la interfaz ISeleccionable (CopyDataTable)');
+
+ if ASource.Filtered then
+ begin
+ AFiltered := True;
+ AFilter := ASource.Filter;
+ ASource.Filtered := False;
+ end;
+
+ ASource.Filter := '';
+ if ASource.Active then
+ ASource.Close;
+
+ for i := 0 to AObj.SelectedRecords.Count - 1 do
+ begin
+ if (i > 0) then
+ ASource.Filter := ASource.Filter + ' or ';
+ ASource.Filter := ASource.Filter + '(ID = ' + IntToStr(AObj.SelectedRecords.Items[i]) + ')';
+ end;
+
+ ASource.Filtered := True;
+ end;
+
+ if not ASource.Active then
+ ASource.Open;
+
+ AStream := Binary.Create;
+ DesconectarTabla(ATarget);
+ try
+ ASource.SaveToStream(AStream);
+ ShowMessage(AStream.ToReadableString);
+ ATarget.LoadFromStream(AStream.Clone);
+ finally
+ FreeAndNil(AStream);
+ ConectarTabla(ATarget);
+ // Dejar el filtro de la tabla origen como estaba
+ if OnlySelectedRows then
+ begin
+ ASource.Filtered := False;
+ ASource.Filter := AFilter;
+ if AFiltered then
+ ASource.Filtered := True;
+ end;
+ end;
+end;
+
+
+
function SetFieldNull(ATarget: TDADataTable; const FieldName: String): Boolean;
begin
Result := False;
@@ -139,8 +216,6 @@ var
i : Integer;
ATarget : TDAMemDataTable;
begin
- Result := NIL;
-
if not Assigned(ASource) then
raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)');
@@ -343,7 +418,7 @@ begin
end;
-procedure CopyDataTable(ASource : TDADataTable; ATarget : TDADataTable;
+procedure CopyDataTable2(ASource : TDADataTable; ATarget : TDADataTable;
const OnlySelectedRows : Boolean = False);
var
DABin: Binary;
diff --git a/Source/Base/Utiles/MD5.pas b/Source/Base/Utiles/uMD5.pas
similarity index 96%
rename from Source/Base/Utiles/MD5.pas
rename to Source/Base/Utiles/uMD5.pas
index 585edb50..9f13d52a 100644
--- a/Source/Base/Utiles/MD5.pas
+++ b/Source/Base/Utiles/uMD5.pas
@@ -10,7 +10,7 @@
{ http://www.faqs.org/rfcs/rfc1321.html }
{******************************************************************}
-unit md5;
+unit uMD5;
interface
diff --git a/Source/Base/Utiles/uPasswordUtils.pas b/Source/Base/Utiles/uPasswordUtils.pas
index 9333b53a..f078ee07 100644
--- a/Source/Base/Utiles/uPasswordUtils.pas
+++ b/Source/Base/Utiles/uPasswordUtils.pas
@@ -7,7 +7,7 @@ function EncriptarPasswordOSC(const password : string): String;
implementation
uses
- MD5, SysUtils;
+ uMD5, SysUtils;
function EncriptarPassword(const password : string): String;
var
diff --git a/Source/Base/uActualizacion.dcu b/Source/Base/uActualizacion.dcu
new file mode 100644
index 00000000..5b3f801f
Binary files /dev/null and b/Source/Base/uActualizacion.dcu differ
diff --git a/Source/Base/uClassRegistryUtils.dcu b/Source/Base/uClassRegistryUtils.dcu
new file mode 100644
index 00000000..47e0e091
Binary files /dev/null and b/Source/Base/uClassRegistryUtils.dcu differ
diff --git a/Source/Base/uConfigurarConexion.dcu b/Source/Base/uConfigurarConexion.dcu
new file mode 100644
index 00000000..f05beed4
Binary files /dev/null and b/Source/Base/uConfigurarConexion.dcu differ
diff --git a/Source/Base/uDBSelectionListUtils.dcu b/Source/Base/uDBSelectionListUtils.dcu
new file mode 100644
index 00000000..7c9c2acb
Binary files /dev/null and b/Source/Base/uDBSelectionListUtils.dcu differ
diff --git a/Source/Base/uDataModuleBase.dcu b/Source/Base/uDataModuleBase.dcu
new file mode 100644
index 00000000..41560ec8
Binary files /dev/null and b/Source/Base/uDataModuleBase.dcu differ
diff --git a/Source/Base/uDataModuleConexion.dcu b/Source/Base/uDataModuleConexion.dcu
new file mode 100644
index 00000000..6d49a6cc
Binary files /dev/null and b/Source/Base/uDataModuleConexion.dcu differ
diff --git a/Source/Base/uDataModuleConexion.pas b/Source/Base/uDataModuleConexion.pas
index 78f9d421..9eb17cab 100644
--- a/Source/Base/uDataModuleConexion.pas
+++ b/Source/Base/uDataModuleConexion.pas
@@ -3,7 +3,7 @@ unit uDataModuleConexion;
interface
uses
- SysUtils, Classes, uROServiceComponent, uRORemoteService, uDADataTable,
+ SysUtils, Classes, uRORemoteService, uDADataTable,
uDABINAdapter, uROClient, uROBinMessage, uROWinInetHttpChannel,
uDADataStreamer;
diff --git a/Source/Base/uDataModuleConfiguracion.dcu b/Source/Base/uDataModuleConfiguracion.dcu
new file mode 100644
index 00000000..59ff9989
Binary files /dev/null and b/Source/Base/uDataModuleConfiguracion.dcu differ
diff --git a/Source/Base/uDataTableUtils.dcu b/Source/Base/uDataTableUtils.dcu
new file mode 100644
index 00000000..1ebd04ec
Binary files /dev/null and b/Source/Base/uDataTableUtils.dcu differ
diff --git a/Source/Base/uDateUtils.dcu b/Source/Base/uDateUtils.dcu
new file mode 100644
index 00000000..600b98fc
Binary files /dev/null and b/Source/Base/uDateUtils.dcu differ
diff --git a/Source/Base/uDialogUtils.dcu b/Source/Base/uDialogUtils.dcu
new file mode 100644
index 00000000..5da4cebe
Binary files /dev/null and b/Source/Base/uDialogUtils.dcu differ
diff --git a/Source/Base/uEditorRegistryUtils.dcu b/Source/Base/uEditorRegistryUtils.dcu
new file mode 100644
index 00000000..6a1cf67b
Binary files /dev/null and b/Source/Base/uEditorRegistryUtils.dcu differ
diff --git a/Source/Base/uGridUtils.dcu b/Source/Base/uGridUtils.dcu
new file mode 100644
index 00000000..ecc0863f
Binary files /dev/null and b/Source/Base/uGridUtils.dcu differ
diff --git a/Source/Base/uInfoProjectUtils.dcu b/Source/Base/uInfoProjectUtils.dcu
new file mode 100644
index 00000000..a088f835
Binary files /dev/null and b/Source/Base/uInfoProjectUtils.dcu differ
diff --git a/Source/Base/uInformeRegistryUtils.dcu b/Source/Base/uInformeRegistryUtils.dcu
new file mode 100644
index 00000000..bfe79c29
Binary files /dev/null and b/Source/Base/uInformeRegistryUtils.dcu differ
diff --git a/Source/Base/uIntegerListUtils.dcu b/Source/Base/uIntegerListUtils.dcu
new file mode 100644
index 00000000..9c43d0c6
Binary files /dev/null and b/Source/Base/uIntegerListUtils.dcu differ
diff --git a/Source/Base/uMD5.dcu b/Source/Base/uMD5.dcu
new file mode 100644
index 00000000..7ddabcdb
Binary files /dev/null and b/Source/Base/uMD5.dcu differ
diff --git a/Source/Base/uNumUtils.dcu b/Source/Base/uNumUtils.dcu
new file mode 100644
index 00000000..b3e9001c
Binary files /dev/null and b/Source/Base/uNumUtils.dcu differ
diff --git a/Source/Base/uPasswordUtils.dcu b/Source/Base/uPasswordUtils.dcu
new file mode 100644
index 00000000..a3dfab3b
Binary files /dev/null and b/Source/Base/uPasswordUtils.dcu differ
diff --git a/Source/Base/uSistemaFunc.dcu b/Source/Base/uSistemaFunc.dcu
new file mode 100644
index 00000000..593b0693
Binary files /dev/null and b/Source/Base/uSistemaFunc.dcu differ
diff --git a/Source/Base/uViewRegistryUtils.dcu b/Source/Base/uViewRegistryUtils.dcu
new file mode 100644
index 00000000..c1056eaf
Binary files /dev/null and b/Source/Base/uViewRegistryUtils.dcu differ
diff --git a/Source/Base_Group.groupproj b/Source/Base_Group.groupproj
index 5d91f2ec..ef4ef9aa 100644
--- a/Source/Base_Group.groupproj
+++ b/Source/Base_Group.groupproj
@@ -7,7 +7,6 @@
-
Default.Personality
@@ -42,23 +41,14 @@
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Cliente/Base.drc b/Source/Cliente/Base.drc
new file mode 100644
index 00000000..5a5f211c
--- /dev/null
+++ b/Source/Cliente/Base.drc
@@ -0,0 +1,55 @@
+/* VER185
+ Generated by the CodeGear Delphi Pascal Compiler
+ because -GD or --drc was supplied to the compiler.
+
+ This file contains compiler-generated resources that
+ were bound to the executable.
+ If this file is empty, then no compiler-generated
+ resources were bound to the produced executable.
+*/
+
+#define JSDialogStrs_StrAssignSourceMustB 65520
+#define JSDialogStrs_StrYouMustAssociateA 65521
+#define JSDialogStrs_sBtnYes 65522
+#define JSDialogStrs_sBtnNo 65523
+#define JSDialogStrs_sBtnOK 65524
+#define JSDialogStrs_sBtnCancel 65525
+#define JSDialogStrs_sBtnHelp 65526
+#define JSDialogStrs_sBtnAbort 65527
+#define JSDialogStrs_sBtnRetry 65528
+#define JSDialogStrs_sBtnIgnore 65529
+#define JSDialogStrs_sBtnAll 65530
+#define JSDialogStrs_sBtnNoToAll 65531
+#define JSDialogStrs_sBtnYesToAll 65532
+#define JSDialogStrs_sBtnClose 65533
+#define JSDialogStrs_StrConfirmation 65534
+#define uClassRegistryUtils_eClassnotFound 65535
+STRINGTABLE
+BEGIN
+ JSDialogStrs_StrAssignSourceMustB, "Assign source must be a TJsDialog"
+ JSDialogStrs_StrYouMustAssociateA, "You must associate a Help File with your application"
+ JSDialogStrs_sBtnYes, "&Yes"
+ JSDialogStrs_sBtnNo, "&No"
+ JSDialogStrs_sBtnOK, "OK"
+ JSDialogStrs_sBtnCancel, "Cancel"
+ JSDialogStrs_sBtnHelp, "&Help"
+ JSDialogStrs_sBtnAbort, "&Abort"
+ JSDialogStrs_sBtnRetry, "&Retry"
+ JSDialogStrs_sBtnIgnore, "&Ignore"
+ JSDialogStrs_sBtnAll, "&All"
+ JSDialogStrs_sBtnNoToAll, "N&o to All"
+ JSDialogStrs_sBtnYesToAll, "Yes to &All"
+ JSDialogStrs_sBtnClose, "&Close"
+ JSDialogStrs_StrConfirmation, "Confirmation"
+ uClassRegistryUtils_eClassnotFound, "Class \"%s\" was not found in the registry."
+END
+
+/* C:\Codigo Tecsitel\Lib\JSDialog\mbimg.res */
+/* C:\Codigo Tecsitel\Lib\JSDialog\vistaimg.res */
+/* ..\Base\uConfigurarConexion.dfm */
+/* ..\Base\uDataModuleConexion.dfm */
+/* ..\Base\uDataModuleConfiguracion.dfm */
+/* ..\Base\uDataModuleBase.DFM */
+/* ..\Base\uActualizacion.dfm */
+/* C:\Codigo Tecsitel\Source\Base\Base.res */
+/* Base.drf */
diff --git a/Source/Cliente/Contactos_controller.drc b/Source/Cliente/Contactos_controller.drc
new file mode 100644
index 00000000..eeee0c01
--- /dev/null
+++ b/Source/Cliente/Contactos_controller.drc
@@ -0,0 +1,16 @@
+/* VER185
+ Generated by the CodeGear Delphi Pascal Compiler
+ because -GD or --drc was supplied to the compiler.
+
+ This file contains compiler-generated resources that
+ were bound to the executable.
+ If this file is empty, then no compiler-generated
+ resources were bound to the produced executable.
+*/
+
+STRINGTABLE
+BEGIN
+END
+
+/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.res */
+/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.drf */
diff --git a/Source/Cliente/FactuGES.dpr b/Source/Cliente/FactuGES.dpr
index 44b906fc..18c64e48 100644
--- a/Source/Cliente/FactuGES.dpr
+++ b/Source/Cliente/FactuGES.dpr
@@ -15,11 +15,18 @@ uses
{$R *.res}
-var
+var
Version : String;
begin
Application.Initialize;
+
+ // ¡¡¡Fallo en Delphi 2007!!!
+ // Tengo que ponerlo a false porque si no el formulario principal no se puede poner por encima de los formularios hijos.
+ // Luego, en el formulario principal cambio los paramátros para obligar a que aparezca el icono en la barra de tareas.
+ Application.MainFormOnTaskbar := False;
+
+
Application.Title := 'FactuGES';
{ fActualizacion := TfActualizacion.Create(Application);
diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj
index 3589b28b..7daa3c52 100644
--- a/Source/Cliente/FactuGES.dproj
+++ b/Source/Cliente/FactuGES.dproj
@@ -5,7 +5,7 @@
FactuGES.dpr
Debug
AnyCPU
- PluginSDK_D10R;GUISDK_D11;Base;GUIBase;Usuarios;Contactos_plugin;Empresas_plugin;Empresas_controller;Empresas_model
+ PluginSDK_D10R;GUISDK_D11;Base;GUIBase;Empresas_plugin;Empresas_controller;Empresas_model
DCC32
..\..\Output\Debug\Cliente\FactuGES.exe
true
@@ -41,10 +41,10 @@
.\
.\
.\
- ..\Lib;..\Modulos\Lib
- ..\Lib;..\Modulos\Lib
- ..\Lib;..\Modulos\Lib
- ..\Lib;..\Modulos\Lib
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib
+ $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib
DEBUG;
@@ -58,10 +58,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CodeGear Control Panel Applet Package
CodeGear WebSnap Components
CodeGear SOAP Components
Microsoft Office XP Sample Automation Server Wrapper Components
+ VCL for the Web Design Package for CodeGear RAD Studio
Microsoft Office 2000 Sample Automation Server Wrapper Components
+ CodeGear C++Builder Internet Explorer 5 Components Package
+ Borland Sample Controls Design Time Package
CodeGear C++Builder Office 2000 Servers Package
CodeGear C++Builder Office XP Servers Package
FactuGES.dprFalse
diff --git a/Source/Cliente/FactuGES.drc b/Source/Cliente/FactuGES.drc
index d7f8b7a3..dfb2ecdf 100644
--- a/Source/Cliente/FactuGES.drc
+++ b/Source/Cliente/FactuGES.drc
@@ -14,8 +14,8 @@ END
/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */
-/* C:\Codigo Tecsitel\Source\Cliente\uSplash.dfm */
-/* C:\Codigo Tecsitel\Source\Cliente\uAcercaDe.dfm */
+/* uSplash.dfm */
+/* uAcercaDe.dfm */
/* C:\Codigo Tecsitel\Source\Cliente\uPantallaPrincipal.dfm */
/* C:\Codigo Tecsitel\Source\Cliente\FactuGES.res */
/* C:\Codigo Tecsitel\Source\Cliente\FactuGES.drf */
diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res
index 4f8fdad1..ec91cebe 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/Cliente/FactuGES.rsb b/Source/Cliente/FactuGES.rsb
new file mode 100644
index 00000000..19ec614f
Binary files /dev/null and b/Source/Cliente/FactuGES.rsb differ
diff --git a/Source/Cliente/FormasPago_model.drc b/Source/Cliente/FormasPago_model.drc
new file mode 100644
index 00000000..7824d92d
--- /dev/null
+++ b/Source/Cliente/FormasPago_model.drc
@@ -0,0 +1,16 @@
+/* VER185
+ Generated by the CodeGear Delphi Pascal Compiler
+ because -GD or --drc was supplied to the compiler.
+
+ This file contains compiler-generated resources that
+ were bound to the executable.
+ If this file is empty, then no compiler-generated
+ resources were bound to the produced executable.
+*/
+
+/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */
+/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
+/* Unit1.dfm */
+/* uAcercaDe.dfm */
+/* uSplash.dfm */
+/* uPantallaPrincipal.dfm */
diff --git a/Source/Cliente/JvJansD11R.drc b/Source/Cliente/JvJansD11R.drc
new file mode 100644
index 00000000..bd599d08
--- /dev/null
+++ b/Source/Cliente/JvJansD11R.drc
@@ -0,0 +1,15 @@
+/* VER185
+ Generated by the CodeGear Delphi Pascal Compiler
+ because -GD or --drc was supplied to the compiler.
+
+ This file contains compiler-generated resources that
+ were bound to the executable.
+ If this file is empty, then no compiler-generated
+ resources were bound to the produced executable.
+*/
+
+/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */
+/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
+/* uAcercaDe.dfm */
+/* uSplash.dfm */
+/* uPantallaPrincipal.dfm */
diff --git a/Source/Cliente/mainicon.ico b/Source/Cliente/mainicon.ico
new file mode 100644
index 00000000..ccc92276
Binary files /dev/null and b/Source/Cliente/mainicon.ico differ
diff --git a/Source/Cliente/uAcercaDe.dcu b/Source/Cliente/uAcercaDe.dcu
new file mode 100644
index 00000000..fcbd9fba
Binary files /dev/null and b/Source/Cliente/uAcercaDe.dcu differ
diff --git a/Source/Cliente/uClienteUtils.dcu b/Source/Cliente/uClienteUtils.dcu
new file mode 100644
index 00000000..bd95e971
Binary files /dev/null and b/Source/Cliente/uClienteUtils.dcu differ
diff --git a/Source/Cliente/uMainMenuController.dcu b/Source/Cliente/uMainMenuController.dcu
new file mode 100644
index 00000000..a1f011fe
Binary files /dev/null and b/Source/Cliente/uMainMenuController.dcu differ
diff --git a/Source/Cliente/uMainMenuController.pas b/Source/Cliente/uMainMenuController.pas
index 45381c1d..4ebff258 100644
--- a/Source/Cliente/uMainMenuController.pas
+++ b/Source/Cliente/uMainMenuController.pas
@@ -38,7 +38,7 @@ implementation
uses
Dialogs, PNGImage, uModuleController, uPluginEmpresas,
uBizEmpresas, schEmpresasClient_Intf,
- uMenuUtils, uDataModuleUsuarios;
+ uMenuUtils;
{ TMainMenuController }
@@ -65,7 +65,8 @@ end;
procedure TMainMenuController.CambiarEmpresaClick(Sender: TObject);
begin
- dmUsuarios.IDEmpresaActual := (Sender as TMenuItem).Tag;
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+ // dmUsuarios.IDEmpresaActual := (Sender as TMenuItem).Tag;
end;
procedure TMainMenuController.InitMainMenu;
diff --git a/Source/Cliente/uMenuUtils.dcu b/Source/Cliente/uMenuUtils.dcu
new file mode 100644
index 00000000..1f374a4f
Binary files /dev/null and b/Source/Cliente/uMenuUtils.dcu differ
diff --git a/Source/Cliente/uNavPaneController.dcu b/Source/Cliente/uNavPaneController.dcu
new file mode 100644
index 00000000..db588ebd
Binary files /dev/null and b/Source/Cliente/uNavPaneController.dcu differ
diff --git a/Source/Cliente/uNavPaneUtils.dcu b/Source/Cliente/uNavPaneUtils.dcu
new file mode 100644
index 00000000..c6d3edd2
Binary files /dev/null and b/Source/Cliente/uNavPaneUtils.dcu differ
diff --git a/Source/Cliente/uPantallaPrincipal.dcu b/Source/Cliente/uPantallaPrincipal.dcu
new file mode 100644
index 00000000..264fea8b
Binary files /dev/null and b/Source/Cliente/uPantallaPrincipal.dcu differ
diff --git a/Source/Cliente/uPantallaPrincipal.dfm b/Source/Cliente/uPantallaPrincipal.dfm
index 1a52c5c4..388c34aa 100644
--- a/Source/Cliente/uPantallaPrincipal.dfm
+++ b/Source/Cliente/uPantallaPrincipal.dfm
@@ -2,8 +2,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
Left = 358
Top = 250
Caption = 'Pantalla principal'
- ClientHeight = 451
- ClientWidth = 559
+ ClientHeight = 487
+ ClientWidth = 751
Color = clWindow
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -22,8 +22,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
object pnlContenido: TTBXAlignmentPanel
Left = 0
Top = 0
- Width = 559
- Height = 429
+ Width = 751
+ Height = 465
Margins.Left = 5
Margins.Top = 5
Margins.Right = 5
@@ -35,7 +35,7 @@ object fPantallaPrincipal: TfPantallaPrincipal
Left = 215
Top = 5
Width = 5
- Height = 419
+ Height = 455
ResizeStyle = rsPattern
ExplicitLeft = 210
ExplicitHeight = 570
@@ -44,7 +44,7 @@ object fPantallaPrincipal: TfPantallaPrincipal
Left = 5
Top = 5
Width = 210
- Height = 419
+ Height = 455
ActivePage = pagInicio
Align = alLeft
AutoHeaders = True
@@ -89,7 +89,7 @@ object fPantallaPrincipal: TfPantallaPrincipal
Left = 0
Top = 0
Width = 208
- Height = 346
+ Height = 382
Background.Stretch = False
Background.Proportional = False
Background.Center = False
@@ -99,7 +99,7 @@ object fPantallaPrincipal: TfPantallaPrincipal
ImageIndex = 0
object Panel1: TPanel
Left = 0
- Top = 260
+ Top = 296
Width = 208
Height = 86
Align = alBottom
@@ -152,8 +152,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
object pnlBorde: TJvXPContainer
Left = 220
Top = 5
- Width = 334
- Height = 419
+ Width = 526
+ Height = 455
BoundColor = clActiveCaption
BoundLines = [blLeft, blTop, blRight, blBottom]
Caption = 'pnlBorde'
@@ -161,8 +161,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
object pnlMain: TTBXAlignmentPanel
Left = 1
Top = 1
- Width = 332
- Height = 417
+ Width = 524
+ Height = 453
Align = alClient
Color = clWindow
TabOrder = 0
@@ -202,8 +202,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
end
object TBXStatusBar1: TTBXStatusBar
Left = 0
- Top = 429
- Width = 559
+ Top = 465
+ Width = 751
Images = StatusPanelImageList
Panels = <
item
diff --git a/Source/Cliente/uPantallaPrincipal.pas b/Source/Cliente/uPantallaPrincipal.pas
index 5bd1da51..bc9c7850 100644
--- a/Source/Cliente/uPantallaPrincipal.pas
+++ b/Source/Cliente/uPantallaPrincipal.pas
@@ -112,9 +112,11 @@ type
procedure OnThemeChange(Sender: TObject);
procedure RegisterModule(AModuleInfo : TModuleInfo);
procedure ExecuteActionMenu(Sender : TObject);
+ procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND;
protected
function GetWorkPanel : TWinControl;
function GetEmpresasController : IEmpresasController;
+ procedure CreateParams(var Params: TCreateParams); override;
public
function IsShortcut(var Message: TWMKey): Boolean; override;
procedure OnWorkPanelChanged(AEditor : ICustomEditor);
@@ -130,13 +132,13 @@ implementation
uses
uDataModuleConexion, uModuleController, uDataModuleBase, Math, uMenuUtils,
- uSplash, uAcercaDe, UxTheme, Themes, uDataModuleUsuarios, uPluginEmpresas,
+ uSplash, uAcercaDe, UxTheme, Themes, uPluginEmpresas,
uNavPaneController, uMainMenuController, uROSessions, FactuGES_Intf,
uDialogUtils, uActualizacion, uROClient, cxControls;
{$R *.dfm}
-function OpenThemeData(hwnd: HWND; pszClassList: LPCWSTR): THandle; stdcall;
+{function OpenThemeData(hwnd: HWND; pszClassList: LPCWSTR): THandle; stdcall;
external 'uxtheme.dll';
function CloseThemeData(hTheme: THandle): HRESULT; stdcall;
@@ -145,7 +147,7 @@ function CloseThemeData(hTheme: THandle): HRESULT; stdcall;
function DrawThemeBackground(hTheme: THandle; hdc: HDC; iPartId, iStateId:
Integer; const pRect: TRect;
pClipRect: PRECT): HRESULT; stdcall;
- external 'uxtheme.dll';
+ external 'uxtheme.dll';}
{
***************************** TfPantallaPrincipal ******************************
@@ -183,7 +185,7 @@ end;
procedure TfPantallaPrincipal.FormDestroy(Sender: TObject);
begin
-// ReleaseEmbedded;
+// ReleaseEmbedded;
HostManager.UnloadModules;
ApplicationEvents.CancelDispatch;
end;
@@ -199,8 +201,11 @@ var
ATitulo : String;
begin
ATitulo := Application.Title + ' - ' + dmBase.DarVersion;
- if Assigned(dmUsuarios.EmpresaActual) then
- ATitulo := ATitulo + ' - ' + dmUsuarios.EmpresaActual.NOMBRE;
+
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+{ if Assigned(dmUsuarios.EmpresaActual) then
+ ATitulo := ATitulo + ' - ' + dmUsuarios.EmpresaActual.NOMBRE;}
+
Caption := ATitulo;
if dmConexion.HayConexion then
@@ -208,9 +213,10 @@ begin
else
TBXStatusBar1.Panels[0].Caption := 'Desconectado';
- if Assigned(dmUsuarios.LoginInfo) then
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+{ if Assigned(dmUsuarios.LoginInfo) then
TBXStatusBar1.Panels[1].Caption := dmUsuarios.LoginInfo.Usuario
- else
+ else}
TBXStatusBar1.Panels[1].Caption := '';
end;
@@ -334,14 +340,15 @@ begin
NavPaneController.InitNavPane;
- if dmUsuarios.Empresas.Count = 1 then
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+ { if dmUsuarios.Empresas.Count = 1 then
begin
// Oculto la página de inicio para que no parezca
// que se pueden manejar varias empresas.
JvNavigationPane.ActivePageIndex := 1;
pagInicio.PageList := NIL;
pagInicio.Visible := False;
- end;
+ end;}
RefrescarUI;
end;
@@ -351,7 +358,8 @@ procedure TfPantallaPrincipal.actLoginExecute(Sender: TObject);
begin
HostManager.UnloadModules;
- if dmUsuarios.Login then
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+ { if dmUsuarios.Login then
begin
ShowHourglassCursor;
SplashScreen.Update;
@@ -370,7 +378,7 @@ begin
end;
end
else
- Application.Terminate;
+ Application.Terminate;}
end;
procedure TfPantallaPrincipal.actMenuComprasExecute(Sender: TObject);
@@ -380,7 +388,8 @@ end;
procedure TfPantallaPrincipal.actMenuComprasUpdate(Sender: TObject);
begin
- (Sender as TAction).Enabled := Assigned(dmUsuarios.EmpresaActual);
+// OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+// (Sender as TAction).Enabled := Assigned(dmUsuarios.EmpresaActual);
end;
procedure TfPantallaPrincipal.actLogisticaMenuExecute(Sender: TObject);
@@ -412,8 +421,9 @@ procedure TfPantallaPrincipal.ApplicationEventsException(Sender: TObject;
begin
if E is EROSessionNotFound then
begin
- if not dmUsuarios.Login then
- ShowMessage(E.Message);
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+{ if not dmUsuarios.Login then
+ ShowMessage(E.Message);}
end
else
ShowMessage(E.Message);
@@ -457,6 +467,13 @@ begin
OnWorkPanelChanged(FContenido);
end;
+procedure TfPantallaPrincipal.WMSysCommand(var Msg: TMessage);
+begin
+ //No tocar, sirve para recuperar el foco el formulario principal cuando
+ // tenemos varios formularios hijos abiertos a la vez.
+ DefaultHandler(Msg);
+end;
+
procedure TfPantallaPrincipal.CargarModulos;
begin
HostManager.LoadModule('Empresas_plugin.bpl');
@@ -466,8 +483,10 @@ begin
// HostManager.LoadModule('Familias_plugin.bpl');
// HostManager.LoadModule('Articulos_plugin.bpl');
// HostManager.LoadModule('Inventario_plugin.bpl');
- HostManager.LoadModule('Contactos_plugin.bpl');
-// HostManager.LoadModule('RecibosCliente_plugin.bpl');
+
+//HostManager.LoadModule('Contactos_plugin.bpl');
+
+ // HostManager.LoadModule('RecibosCliente_plugin.bpl');
// HostManager.LoadModule('RemesasCliente_plugin.bpl');
// HostManager.LoadModule('FacturasCliente_plugin.bpl');
// HostManager.LoadModule('RecibosProveedor_plugin.bpl');
@@ -520,6 +539,17 @@ begin
end;
end;
+procedure TfPantallaPrincipal.CreateParams(var Params: TCreateParams);
+begin
+ // ¡¡¡Fallo en Delphi 2007!!!
+ // Cambio los paramátros para obligar a que aparezca el icono en la barra de tareas.
+ inherited CreateParams(Params);
+ with Params do begin
+ ExStyle := ExStyle or WS_EX_APPWINDOW;
+ WndParent := GetDesktopwindow;
+ end;
+end;
+
procedure TfPantallaPrincipal.actActualizacionesExecute(Sender: TObject);
begin
fActualizacion := TfActualizacion.Create(Self);
@@ -584,7 +614,8 @@ begin
//Se libera el contenido que tenga ya que cambiamos de empresa;
ReleaseEmbedded;
- dmUsuarios.IDEmpresaActual := JvNavigationPane.ActivePage.Tag;
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+ //dmUsuarios.IDEmpresaActual := JvNavigationPane.ActivePage.Tag;
RefrescarUI;
end;
diff --git a/Source/Cliente/uSplash.dcu b/Source/Cliente/uSplash.dcu
new file mode 100644
index 00000000..23bc24b7
Binary files /dev/null and b/Source/Cliente/uSplash.dcu differ
diff --git a/Source/FactuGES_Group.groupproj b/Source/FactuGES_Group.groupproj
index bb62afa2..8a745eba 100644
--- a/Source/FactuGES_Group.groupproj
+++ b/Source/FactuGES_Group.groupproj
@@ -7,7 +7,6 @@
-
@@ -29,6 +28,9 @@
+
+
+
@@ -100,14 +102,32 @@
-
-
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -272,13 +292,13 @@
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Lib/Base.dcp b/Source/Lib/Base.dcp
new file mode 100644
index 00000000..d5e87b4d
Binary files /dev/null and b/Source/Lib/Base.dcp differ
diff --git a/Source/Lib/ControllerBase.dcp b/Source/Lib/ControllerBase.dcp
new file mode 100644
index 00000000..bd9a0797
Binary files /dev/null and b/Source/Lib/ControllerBase.dcp differ
diff --git a/Source/Lib/GUIBase.dcp b/Source/Lib/GUIBase.dcp
new file mode 100644
index 00000000..00af78c1
Binary files /dev/null and b/Source/Lib/GUIBase.dcp differ
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dcu b/Source/Modulos/Contactos/Controller/Contactos_controller.dcu
new file mode 100644
index 00000000..dda9cb1b
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/Contactos_controller.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
index c584af61..a97bbbff 100644
--- a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk
@@ -23,7 +23,6 @@ package Contactos_controller;
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$IMPLICITBUILD ON}
-{%TogetherDiagram 'ModelSupport_Contactos_controller\default.txaPackage'}
requires
rtl,
@@ -32,7 +31,7 @@ requires
GUIBase,
Contactos_model,
Contactos_data;
-
+
contains
uContactosController in 'uContactosController.pas',
uIEditorContactos in 'View\uIEditorContactos.pas',
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak
new file mode 100644
index 00000000..7d1b8717
--- /dev/null
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak
@@ -0,0 +1,66 @@
+package Contactos_controller;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$IMPLICITBUILD OFF}
+{%TogetherDiagram 'ModelSupport_Contactos_controller\default.txaPackage'}
+
+requires
+ rtl,
+ vcl,
+ Base,
+ GUIBase,
+ Contactos_model,
+ Contactos_data;
+
+contains
+ uContactosController in 'uContactosController.pas',
+ uIEditorContactos in 'View\uIEditorContactos.pas',
+ uIEditorContacto in 'View\uIEditorContacto.pas',
+ uIEditorCliente in 'View\uIEditorCliente.pas',
+ uIEditorClientes in 'View\uIEditorClientes.pas',
+ uClientesController in 'uClientesController.pas',
+ uIEditorProveedores in 'View\uIEditorProveedores.pas',
+ uIEditorEmpleados in 'View\uIEditorEmpleados.pas',
+ uIEditorEmpleado in 'View\uIEditorEmpleado.pas',
+ uIEditorProveedor in 'View\uIEditorProveedor.pas',
+ uProveedoresController in 'uProveedoresController.pas',
+ uEmpleadosController in 'uEmpleadosController.pas',
+ uIEditorElegirClientes in 'View\uIEditorElegirClientes.pas',
+ uIEditorElegirProveedores in 'View\uIEditorElegirProveedores.pas',
+ uIEditorElegirContactos in 'View\uIEditorElegirContactos.pas',
+ uIEditorDireccionContacto in 'View\uIEditorDireccionContacto.pas',
+ uDireccionesContactoController in 'uDireccionesContactoController.pas',
+ uIEditorElegirDireccionEntrega in 'View\uIEditorElegirDireccionEntrega.pas',
+ uGruposClienteController in 'uGruposClienteController.pas',
+ uIEditorGruposCliente in 'View\uIEditorGruposCliente.pas',
+ uGruposProveedorController in 'uGruposProveedorController.pas',
+ uGruposEmpleadoController in 'uGruposEmpleadoController.pas',
+ uIEditorGruposProveedor in 'View\uIEditorGruposProveedor.pas',
+ uIEditorGruposEmpleado in 'View\uIEditorGruposEmpleado.pas',
+ uFichasEmpleadoReportController in 'uFichasEmpleadoReportController.pas',
+ uIEditorFichasEmpleadoPreview in 'View\uIEditorFichasEmpleadoPreview.pas',
+ uEtiquetasContactosReportController in 'uEtiquetasContactosReportController.pas',
+ uIEditorEtiquetasContactosPreview in 'View\uIEditorEtiquetasContactosPreview.pas';
+
+end.
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
index ceb309c7..13542221 100644
--- a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
+++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj
@@ -42,7 +42,10 @@
Delphi.Personality
Package
-FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
+FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
+
+
+
JCL Debug IDE extension
JCL Project Analyzer
JCL Open and Save IDE dialogs with favorite folders
@@ -53,7 +56,12 @@
MainSource
-
+
+
+
+
+
+
@@ -82,5 +90,490 @@
+
+
+
diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.identcache b/Source/Modulos/Contactos/Controller/Contactos_controller.identcache
new file mode 100644
index 00000000..eb5f1875
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/Contactos_controller.identcache differ
diff --git a/Source/Modulos/Contactos/Controller/uClientesController.dcu b/Source/Modulos/Contactos/Controller/uClientesController.dcu
new file mode 100644
index 00000000..ebb817e4
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uClientesController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uClientesController.pas b/Source/Modulos/Contactos/Controller/uClientesController.pas
index 1d8a7f28..b7ebadf8 100644
--- a/Source/Modulos/Contactos/Controller/uClientesController.pas
+++ b/Source/Modulos/Contactos/Controller/uClientesController.pas
@@ -52,7 +52,8 @@ implementation
uses
Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController,
- uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase;
+ uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase,
+ Dialogs;
{ TClientesController }
@@ -351,24 +352,30 @@ end;
procedure TClientesController.Ver(AContacto: IBizContacto);
var
AEditor : IEditorCliente;
+ AItem : IBizCliente;
begin
AEditor := NIL;
ShowHourglassCursor;
try
- CreateEditor('EditorCliente', IEditorCliente, AEditor);
- with AEditor do
- begin
- Contacto := AContacto;
- Controller := Self;
- end;
+ AItem := (FDataModule as IDataModuleClientes).GetItem(AContacto.ID);
+ AItem.DataTable.Active := True;
+
+// CopyDataTable(AContacto.DataTable, AItem.DataTable, True);
+
+ CreateEditor('EditorCliente', IEditorCliente, AEditor);
+ with AEditor do
+ begin
+ Contacto := AItem;
+ Controller := Self;
+ end;
finally
HideHourglassCursor;
end;
if Assigned(AEditor) then
try
- AEditor.ShowModal;
- AEditor.Release;
+ AEditor.Show;
+ //AEditor.Release;
finally
AEditor := NIL;
end;
diff --git a/Source/Modulos/Contactos/Controller/uContactosController.dcu b/Source/Modulos/Contactos/Controller/uContactosController.dcu
new file mode 100644
index 00000000..54055b77
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uContactosController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uContactosController.pas b/Source/Modulos/Contactos/Controller/uContactosController.pas
index 10e424c8..40816334 100644
--- a/Source/Modulos/Contactos/Controller/uContactosController.pas
+++ b/Source/Modulos/Contactos/Controller/uContactosController.pas
@@ -63,7 +63,7 @@ implementation
uses
Dialogs, uEditorRegistryUtils, cxControls, DB, uDAInterfaces, uDataTableUtils,
- uDataModuleUsuarios, schContactosClient_Intf;
+ schContactosClient_Intf;
{ TContactosController }
@@ -86,8 +86,9 @@ begin
Result.Edit;
with Result do
begin
- ID_EMPRESA := dmUsuarios.IDEmpresaActual;
- USUARIO := dmUsuarios.LoginInfo.Usuario;
+ // OJO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!111
+ //ID_EMPRESA := dmUsuarios.IDEmpresaActual;
+ //USUARIO := dmUsuarios.LoginInfo.Usuario;
end;
Result.Post;
@@ -181,7 +182,7 @@ var
ASeleccionados : IBizContacto;
begin
ASeleccionados := Self.Buscar(ID_NULO);
- CopyDataTable(AContactos.DataTable, ASeleccionados.DataTable, True);
+ CopyDataTable2(AContactos.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
end;
@@ -236,9 +237,10 @@ begin
raise Exception.Create('Debe indicar al menos el nombre de este contacto.');
// Asegurarse de valores en campos "automáticos"
- AContacto.Edit;
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+ {AContacto.Edit;
AContacto.USUARIO := dmUsuarios.LoginInfo.Usuario;
- AContacto.Post;
+ AContacto.Post;}
Result := True;
end;
@@ -257,8 +259,9 @@ begin
with AContacto.DataTable.DynamicWhere do
begin
// (ID = :ID)
- Expression := NewBinaryExpression(NewField('', fld_ContactosID_EMPRESA),
- NewConstant(dmUsuarios.IDEmpresaActual, datInteger), dboEqual);
+ // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+{ Expression := NewBinaryExpression(NewField('', fld_ContactosID_EMPRESA),
+ NewConstant(dmUsuarios.IDEmpresaActual, datInteger), dboEqual);}
end;
end;
diff --git a/Source/Modulos/Contactos/Controller/uDireccionesContactoController.dcu b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.dcu
new file mode 100644
index 00000000..d840bc99
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uEmpleadosController.dcu b/Source/Modulos/Contactos/Controller/uEmpleadosController.dcu
new file mode 100644
index 00000000..9113f6b3
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uEmpleadosController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.dcu b/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.dcu
new file mode 100644
index 00000000..fceb1fb9
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uEtiquetasContactosReportController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uFichasEmpleadoReportController.dcu b/Source/Modulos/Contactos/Controller/uFichasEmpleadoReportController.dcu
new file mode 100644
index 00000000..c7cd1f3a
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uFichasEmpleadoReportController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uGruposClienteController.dcu b/Source/Modulos/Contactos/Controller/uGruposClienteController.dcu
new file mode 100644
index 00000000..0b22da98
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uGruposClienteController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uGruposEmpleadoController.dcu b/Source/Modulos/Contactos/Controller/uGruposEmpleadoController.dcu
new file mode 100644
index 00000000..d7048c38
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uGruposEmpleadoController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uGruposProveedorController.dcu b/Source/Modulos/Contactos/Controller/uGruposProveedorController.dcu
new file mode 100644
index 00000000..b420f562
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uGruposProveedorController.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorCliente.dcu b/Source/Modulos/Contactos/Controller/uIEditorCliente.dcu
new file mode 100644
index 00000000..88a6170c
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorCliente.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorClientes.dcu b/Source/Modulos/Contactos/Controller/uIEditorClientes.dcu
new file mode 100644
index 00000000..aa81ad39
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorClientes.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorContacto.dcu b/Source/Modulos/Contactos/Controller/uIEditorContacto.dcu
new file mode 100644
index 00000000..2ac3b590
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorContacto.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorContactos.dcu b/Source/Modulos/Contactos/Controller/uIEditorContactos.dcu
new file mode 100644
index 00000000..7ec79075
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorContactos.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorDireccionContacto.dcu b/Source/Modulos/Contactos/Controller/uIEditorDireccionContacto.dcu
new file mode 100644
index 00000000..f4f038cd
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorDireccionContacto.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorElegirClientes.dcu b/Source/Modulos/Contactos/Controller/uIEditorElegirClientes.dcu
new file mode 100644
index 00000000..a10fcd68
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorElegirClientes.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorElegirContactos.dcu b/Source/Modulos/Contactos/Controller/uIEditorElegirContactos.dcu
new file mode 100644
index 00000000..c409241d
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorElegirContactos.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorElegirDireccionEntrega.dcu b/Source/Modulos/Contactos/Controller/uIEditorElegirDireccionEntrega.dcu
new file mode 100644
index 00000000..43f56d92
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorElegirDireccionEntrega.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorElegirProveedores.dcu b/Source/Modulos/Contactos/Controller/uIEditorElegirProveedores.dcu
new file mode 100644
index 00000000..b5827b97
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorElegirProveedores.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorEmpleado.dcu b/Source/Modulos/Contactos/Controller/uIEditorEmpleado.dcu
new file mode 100644
index 00000000..6e0495aa
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorEmpleado.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorEmpleados.dcu b/Source/Modulos/Contactos/Controller/uIEditorEmpleados.dcu
new file mode 100644
index 00000000..3573d4e2
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorEmpleados.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorEtiquetasContactosPreview.dcu b/Source/Modulos/Contactos/Controller/uIEditorEtiquetasContactosPreview.dcu
new file mode 100644
index 00000000..c9339d84
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorEtiquetasContactosPreview.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorFichasEmpleadoPreview.dcu b/Source/Modulos/Contactos/Controller/uIEditorFichasEmpleadoPreview.dcu
new file mode 100644
index 00000000..7d87a13f
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorFichasEmpleadoPreview.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorGruposCliente.dcu b/Source/Modulos/Contactos/Controller/uIEditorGruposCliente.dcu
new file mode 100644
index 00000000..6d64462b
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorGruposCliente.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorGruposEmpleado.dcu b/Source/Modulos/Contactos/Controller/uIEditorGruposEmpleado.dcu
new file mode 100644
index 00000000..2be28012
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorGruposEmpleado.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorGruposProveedor.dcu b/Source/Modulos/Contactos/Controller/uIEditorGruposProveedor.dcu
new file mode 100644
index 00000000..51d16c49
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorGruposProveedor.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorProveedor.dcu b/Source/Modulos/Contactos/Controller/uIEditorProveedor.dcu
new file mode 100644
index 00000000..c31a1781
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorProveedor.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uIEditorProveedores.dcu b/Source/Modulos/Contactos/Controller/uIEditorProveedores.dcu
new file mode 100644
index 00000000..2647a869
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uIEditorProveedores.dcu differ
diff --git a/Source/Modulos/Contactos/Controller/uProveedoresController.dcu b/Source/Modulos/Contactos/Controller/uProveedoresController.dcu
new file mode 100644
index 00000000..9e8af0dd
Binary files /dev/null and b/Source/Modulos/Contactos/Controller/uProveedoresController.dcu differ
diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dcu b/Source/Modulos/Contactos/Data/Contactos_data.dcu
new file mode 100644
index 00000000..bef6db63
Binary files /dev/null and b/Source/Modulos/Contactos/Data/Contactos_data.dcu differ
diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dpk b/Source/Modulos/Contactos/Data/Contactos_data.dpk
index 4ce57ece..22fc93c9 100644
--- a/Source/Modulos/Contactos/Data/Contactos_data.dpk
+++ b/Source/Modulos/Contactos/Data/Contactos_data.dpk
@@ -29,7 +29,6 @@ requires
rtl,
vcl,
Base,
- Usuarios,
Contactos_model;
contains
diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak b/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak
new file mode 100644
index 00000000..a8cde674
--- /dev/null
+++ b/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak
@@ -0,0 +1,41 @@
+package Contactos_data;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$IMPLICITBUILD OFF}
+{%TogetherDiagram 'ModelSupport_Contactos_data\default.txaPackage'}
+
+requires
+ rtl,
+ vcl,
+ Base,
+ Usuarios,
+ Contactos_model;
+
+contains
+ uDataModuleContactos in 'uDataModuleContactos.pas' {DataModuleContactos: TDAClientDataModule},
+ uDataModuleClientes in 'uDataModuleClientes.pas' {DataModuleClientes : TDAClientDataModule},
+ uDataModuleProveedores in 'uDataModuleProveedores.pas' {DataModuleProveedores: TDAClientDataModule},
+ uDataModuleEmpleados in 'uDataModuleEmpleados.pas' {DataModuleEmpleados: TDAClientDataModule};
+
+end.
diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dproj b/Source/Modulos/Contactos/Data/Contactos_data.dproj
index 09e59b1d..884d6893 100644
--- a/Source/Modulos/Contactos/Data/Contactos_data.dproj
+++ b/Source/Modulos/Contactos/Data/Contactos_data.dproj
@@ -69,7 +69,6 @@
-
diff --git a/Source/Modulos/Usuarios/Controller/Usuarios_controller.res b/Source/Modulos/Usuarios/Controller/Usuarios_controller.res
new file mode 100644
index 00000000..86c94e6a
Binary files /dev/null and b/Source/Modulos/Usuarios/Controller/Usuarios_controller.res differ
diff --git a/Source/Modulos/Usuarios/Controller/Usuarios_data.dcu b/Source/Modulos/Usuarios/Controller/Usuarios_data.dcu
new file mode 100644
index 00000000..a68ce238
Binary files /dev/null and b/Source/Modulos/Usuarios/Controller/Usuarios_data.dcu differ
diff --git a/Source/Modulos/Usuarios/Controller/uUsuariosController.dcu b/Source/Modulos/Usuarios/Controller/uUsuariosController.dcu
new file mode 100644
index 00000000..e679cf3e
Binary files /dev/null and b/Source/Modulos/Usuarios/Controller/uUsuariosController.dcu differ
diff --git a/Source/Modulos/Usuarios/Controller/uUsuariosController.pas b/Source/Modulos/Usuarios/Controller/uUsuariosController.pas
new file mode 100644
index 00000000..cb78c693
--- /dev/null
+++ b/Source/Modulos/Usuarios/Controller/uUsuariosController.pas
@@ -0,0 +1,313 @@
+unit uUsuariosController;
+
+interface
+
+
+uses
+ Classes, SysUtils, uDADataTable, uControllerBase,
+ uIDataModuleUsuarios, uDataModuleUsuarios, UCBase;
+
+type
+ IUsuariosController = interface(IObservador)
+ ['{DD963EEC-5880-4DE7-AF55-B5080B538D84}']
+
+ {procedure Logoff;
+ procedure Execute;
+ procedure StartLogin;
+ procedure ShowUserManager;
+ procedure ShowProfileManager;
+ procedure ShowLogManager;
+ procedure ShowChangePassword;
+ procedure ChangeUser(IDUser: Integer; Login, Name, Mail: String; Profile,UserExpired,UserDaysSun: Integer; PrivUser: Boolean);
+ procedure ChangePassword(IDUser: Integer; NewPassword: String);
+ procedure AddRight(idUser: Integer; ItemRight: TObject; FullPath: Boolean = True); overload;
+ procedure AddRight(idUser: Integer; ItemRight: String); overload;
+ procedure AddRightEX(idUser: Integer; Module, FormName, ObjName: String);
+ function VerificaLogin(User, Password: String): Boolean;
+ function GetLocalUserName: String;
+ function GetLocalComputerName: String;
+ function AddUser(Login, Password, Name, Mail: String; Profile , UserExpired , DaysExpired : Integer; PrivUser: Boolean): Integer;
+ function ExisteUsuario(Login: String): Boolean;
+ property CurrentUser: TUCCurrentUser read FCurrentUser write FCurrentUser;
+ property CurrentEmpresa : TEmpresaDef read FEmpresaAtual write FEmpresaAtual;
+ property UserSettings: TUCUserSettings read FUserSettings write SetUserSettings;}
+
+{ function BuscarTodos: IBizFormaPago;
+ function Buscar(ID: Integer): IBizFormaPago;
+ procedure VerTodos(AUsuarios: IBizFormaPago);
+ procedure Ver(AFormaPago: IBizFormaPago);
+ procedure Anadir(AFormaPago : IBizFormaPago);
+ function Eliminar(AFormaPago : IBizFormaPago): Boolean;
+ function Guardar(AFormaPago : IBizFormaPago): Boolean;
+ procedure DescartarCambios(AFormaPago : IBizFormaPago);
+ function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean;
+ function DarListaUsuarios: TStringList;}
+ end;
+
+ TUsuariosController = class(TObservador, IUsuariosController)
+ protected
+ FDataModule : IDataModuleUsuarios;
+ FUserControl: TUserControl;
+
+ procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
+ function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
+
+// function ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean;
+ procedure AsignarDataModule;
+ procedure InicializarUserControl;
+ public
+ constructor Create; virtual;
+ destructor Destroy; override;
+
+{ function Eliminar(AFormaPago : IBizFormaPago): Boolean;
+ function Guardar(AFormaPago : IBizFormaPago): Boolean; virtual;
+ procedure DescartarCambios(AFormaPago : IBizFormaPago); virtual;
+ procedure Anadir(AFormaPago : IBizFormaPago);
+ function BuscarTodos: IBizFormaPago;
+ function Buscar(ID: Integer): IBizFormaPago;
+ procedure VerTodos(AUsuarios: IBizFormaPago);
+ procedure Ver(AFormaPago: IBizFormaPago);
+ function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean;
+ function DarListaUsuarios: TStringList;}
+
+ published
+ property UserControl : TUserControl read FUserControl;
+ end;
+
+implementation
+
+uses
+ cxControls, DB, uEditorRegistryUtils, schUsuariosClient_Intf,
+ uDAInterfaces, uDataTableUtils, uDialogUtils,
+ uDateUtils, uROTypes, DateUtils, Controls, Windows;
+
+{ TUsuariosController }
+
+{procedure TUsuariosController.Anadir(AFormaPago: IBizFormaPago);
+begin
+ AFormaPago.Insert;
+end;}
+
+procedure TUsuariosController.AsignarDataModule;
+begin
+ FDataModule := TDataModuleUsuarios.Create(Nil);
+end;
+
+{function TUsuariosController.Buscar(ID: Integer): IBizFormaPago;
+begin
+ ShowHourglassCursor;
+ try
+ Result := BuscarTodos;
+ with Result.DataTable.Where do
+ begin
+ if NotEmpty then
+ AddOperator(opAND);
+ OpenBraket;
+ AddText(fld_UsuariosID + ' = ' + IntToStr(ID));
+ CloseBraket;
+ end;
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
+function TUsuariosController.BuscarTodos: IBizFormaPago;
+begin
+ Result := FDataModule.GetItems;
+end;}
+
+constructor TUsuariosController.Create;
+begin
+ AsignarDataModule;
+ FUserControl := TUserControl.Create(nil);
+ InicializarUserControl;
+end;
+
+function TUsuariosController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
+begin
+ Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
+end;
+
+{
+function TUsuariosController.DarListaUsuarios: TStringList;
+var
+ AUsuarios: IBizFormaPago;
+begin
+ AUsuarios := BuscarTodos;
+ AUsuarios.DataTable.Active := True;
+ Result := TStringList.Create;
+ try
+ with Result do
+ begin
+ AUsuarios.DataTable.First;
+ while not AUsuarios.DataTable.EOF do
+ begin
+ Add(AUsuarios.DESCRIPCION);
+ AUsuarios.DataTable.Next;
+ end;
+ end;
+ finally
+ AUsuarios := NIL;
+ end;
+end;
+
+procedure TUsuariosController.DescartarCambios(AFormaPago: IBizFormaPago);
+begin
+ if not Assigned(AFormaPago) then
+ raise Exception.Create ('Forma de pago no asignada');
+
+ ShowHourglassCursor;
+ try
+ if (AFormaPago.State in dsEditModes) then
+ AFormaPago.Cancel;
+
+ AFormaPago.DataTable.CancelUpdates;
+ finally
+ HideHourglassCursor;
+ end;
+end;
+}
+destructor TUsuariosController.Destroy;
+begin
+ FreeANDNIL(FUserControl);
+ FDataModule := NIL;
+ inherited;
+end;
+procedure TUsuariosController.InicializarUserControl;
+begin
+ FDataModule.InicializarCamposUserControl(FUserControl);
+ with FUserControl do
+ begin
+ Criptografia := cMD5;
+ AutoStart := False;
+ end;
+end;
+
+{
+function TUsuariosController.ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean;
+begin
+ Result := False;
+
+ if not Assigned(AFormaPago) then
+ raise Exception.Create ('Forma de pago no asignada');
+
+ if (AFormaPago.DataTable.State in dsEditModes) then
+ AFormaPago.DataTable.Post;
+
+ if Length(AFormaPago.REFERENCIA) = 0 then
+ raise Exception.Create('Debe indicar una referencia para esta forma de pago.');
+
+ if Length(AFormaPago.DESCRIPCION) = 0 then
+ raise Exception.Create('Debe indicar una descripción para esta forma de pago.');
+
+ Result := True;
+end;
+
+procedure TUsuariosController.Ver(AFormaPago: IBizFormaPago);
+var
+ AEditor : IEditorFormaPago;
+begin
+ AEditor := NIL;
+ ShowHourglassCursor;
+ try
+ CreateEditor('EditorFormaPago', IEditorFormaPago, AEditor);
+ with AEditor do
+ FormaPago := AFormaPago;
+ finally
+ HideHourglassCursor;
+ end;
+
+ if Assigned(AEditor) then
+ try
+ AEditor.ShowModal;
+ AEditor.Release;
+ finally
+ AEditor := NIL;
+ end;
+end;
+
+procedure TUsuariosController.VerTodos(AUsuarios: IBizFormaPago);
+var
+ AEditor : IEditorUsuarios;
+begin
+ AEditor := NIL;
+ ShowHourglassCursor;
+ try
+ CreateEditor('EditorUsuarios', IEditorUsuarios, AEditor);
+ with AEditor do
+ Usuarios := AUsuarios;
+ finally
+ HideHourglassCursor;
+ end;
+
+ if Assigned(AEditor) then
+ try
+ AEditor.ShowModal;
+ AEditor.Release;
+ finally
+ AEditor := NIL;
+ end;
+end;
+
+function TUsuariosController.Eliminar(AFormaPago: IBizFormaPago): Boolean;
+begin
+ Result := False;
+
+ if not Assigned(AFormaPago) then
+ raise Exception.Create ('Forma de pago no asignada');
+
+ ShowHourglassCursor;
+ try
+ if (AFormaPago.State in dsEditModes) then
+ AFormaPago.Cancel;
+
+ AFormaPago.Delete;
+ AFormaPago.DataTable.ApplyUpdates;
+ HideHourglassCursor;
+ Result := True;
+ finally
+ HideHourglassCursor;
+ end;
+end;}
+
+procedure TUsuariosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
+begin
+ inherited;
+//
+end;
+
+{function TUsuariosController.Guardar(AFormaPago: IBizFormaPago): Boolean;
+begin
+ Result := False;
+
+ if ValidarFormaPago(AFormaPago) then
+ begin
+ ShowHourglassCursor;
+ try
+ AFormaPago.DataTable.ApplyUpdates;
+ Result := True;
+ finally
+ HideHourglassCursor;
+ end;
+ end;
+end;
+
+function TUsuariosController.Localizar(AUsuarios: IBizFormaPago; ADescripcion: String): Boolean;
+begin
+ Result := True;
+ ShowHourglassCursor;
+ try
+ with AUsuarios.DataTable do
+ begin
+ DisableControls;
+ First;
+ if not Locate(fld_UsuariosDESCRIPCION, ADescripcion, []) then
+ Result := False;
+ EnableControls;
+ end;
+ finally
+ HideHourglassCursor;
+ end;
+end;}
+
+end.
diff --git a/Source/Modulos/Usuarios/Data/Usuarios_data.dcu b/Source/Modulos/Usuarios/Data/Usuarios_data.dcu
new file mode 100644
index 00000000..b4118c49
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/Usuarios_data.dcu differ
diff --git a/Source/Base/Usuarios/Usuarios.dpk b/Source/Modulos/Usuarios/Data/Usuarios_data.dpk
similarity index 75%
rename from Source/Base/Usuarios/Usuarios.dpk
rename to Source/Modulos/Usuarios/Data/Usuarios_data.dpk
index b5fa2fda..55320c6f 100644
--- a/Source/Base/Usuarios/Usuarios.dpk
+++ b/Source/Modulos/Usuarios/Data/Usuarios_data.dpk
@@ -1,4 +1,4 @@
-package Usuarios;
+package Usuarios_data;
{$R *.res}
{$ALIGN 8}
@@ -28,16 +28,21 @@ package Usuarios;
requires
vcl,
vcldb,
+ pckMD5,
+ pckUserControl_RT,
+ pckUCDataConnector,
+ JvMMD11R,
Base,
Empresas_model,
Empresas_controller,
- JvMMD11R;
+ Usuarios_model;
contains
uDataModuleUsuarios in 'uDataModuleUsuarios.pas' {dmUsuarios: TDAClientDataModule},
uUsuarios in 'uUsuarios.pas' {fUsuarios},
uUsuario in 'uUsuario.pas' {fUsuario},
uLoginForm in 'uLoginForm.pas' {fLoginForm},
- uCambiarPassword in 'uCambiarPassword.pas' {fCambiarPassword};
+ uCambiarPassword in 'uCambiarPassword.pas' {fCambiarPassword},
+ uUCROConn in 'uUCROConn.pas';
end.
diff --git a/Source/Modulos/Usuarios/Data/Usuarios_data.dproj b/Source/Modulos/Usuarios/Data/Usuarios_data.dproj
new file mode 100644
index 00000000..f27787a5
--- /dev/null
+++ b/Source/Modulos/Usuarios/Data/Usuarios_data.dproj
@@ -0,0 +1,80 @@
+
+
+
+ {0e3d28a9-51af-483b-b478-472a086ee120}
+ Usuarios_data.dpk
+ Debug
+ AnyCPU
+ DCC32
+ ..\..\..\..\Output\Debug\Cliente\Usuarios_data.bpl
+
+
+ 7.0
+ False
+ False
+ 0
+ 3
+ .\
+ .\
+ .\
+ ..\..\..\..\Output\Release\Cliente
+ ..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ RELEASE
+
+
+ 7.0
+ 3
+ .\
+ .\
+ .\
+ ..\..\..\..\Output\Debug\Cliente
+ ..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+
+
+ Delphi.Personality
+ Package
+
+FalseTrueFalseGestión de usuariosTrueFalseFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse1030FalseFalseFalseFalseFalse308212521.0.3.01.0.0.0Usuarios_data.dpk
+
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Modulos/Usuarios/Data/Usuarios_data.drc b/Source/Modulos/Usuarios/Data/Usuarios_data.drc
new file mode 100644
index 00000000..4263e775
--- /dev/null
+++ b/Source/Modulos/Usuarios/Data/Usuarios_data.drc
@@ -0,0 +1,21 @@
+/* VER185
+ Generated by the CodeGear Delphi Pascal Compiler
+ because -GD or --drc was supplied to the compiler.
+
+ This file contains compiler-generated resources that
+ were bound to the executable.
+ If this file is empty, then no compiler-generated
+ resources were bound to the produced executable.
+*/
+
+STRINGTABLE
+BEGIN
+END
+
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\uLoginForm.dfm */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\uCambiarPassword.dfm */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\uDataModuleUsuarios.DFM */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\uUsuarios.dfm */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\uUsuario.dfm */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\Usuarios_data.res */
+/* C:\Codigo Tecsitel\Source\Modulos\Usuarios\Data\Usuarios_data.drf */
diff --git a/Source/Base/Usuarios/Usuarios.rc b/Source/Modulos/Usuarios/Data/Usuarios_data.rc
similarity index 100%
rename from Source/Base/Usuarios/Usuarios.rc
rename to Source/Modulos/Usuarios/Data/Usuarios_data.rc
diff --git a/Source/Modulos/Usuarios/Data/Usuarios_data.res b/Source/Modulos/Usuarios/Data/Usuarios_data.res
new file mode 100644
index 00000000..aa75bf0c
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/Usuarios_data.res differ
diff --git a/Source/Modulos/Usuarios/Data/uCambiarPassword.dcu b/Source/Modulos/Usuarios/Data/uCambiarPassword.dcu
new file mode 100644
index 00000000..a3cc2bea
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uCambiarPassword.dcu differ
diff --git a/Source/Base/Usuarios/uCambiarPassword.dfm b/Source/Modulos/Usuarios/Data/uCambiarPassword.dfm
similarity index 100%
rename from Source/Base/Usuarios/uCambiarPassword.dfm
rename to Source/Modulos/Usuarios/Data/uCambiarPassword.dfm
diff --git a/Source/Base/Usuarios/uCambiarPassword.pas b/Source/Modulos/Usuarios/Data/uCambiarPassword.pas
similarity index 100%
rename from Source/Base/Usuarios/uCambiarPassword.pas
rename to Source/Modulos/Usuarios/Data/uCambiarPassword.pas
diff --git a/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dcu b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dcu
new file mode 100644
index 00000000..e6b697d8
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dcu differ
diff --git a/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dfm b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dfm
new file mode 100644
index 00000000..1b2ff77c
--- /dev/null
+++ b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.dfm
@@ -0,0 +1,76 @@
+object DataModuleUsuarios: TDataModuleUsuarios
+ OldCreateOrder = True
+ OnCreate = DAClientDataModuleCreate
+ Height = 205
+ Width = 355
+ object ROLoginService: TRORemoteService
+ Message = dmConexion.ROMessage
+ Channel = dmConexion.ROChannel
+ ServiceName = 'srvLogin'
+ Left = 48
+ Top = 32
+ end
+ object srvUsuarios: TRORemoteService
+ Message = dmConexion.ROMessage
+ Channel = dmConexion.ROChannel
+ ServiceName = 'srvUsuarios'
+ Left = 152
+ Top = 32
+ end
+ object Bin2DataStreamer: TDABin2DataStreamer
+ Left = 48
+ Top = 104
+ end
+ object UserControl1: TUserControl
+ ApplicationID = 'ProjetoNovo'
+ LogControl.TableLog = 'UCLog'
+ EncryptKey = 0
+ Login.InitialLogin.User = 'admin'
+ Login.InitialLogin.Email = 'usercontrol@usercontrol.net'
+ Login.InitialLogin.Password = '123mudar'
+ Login.MaxLoginAttempts = 0
+ ExtraRights = <>
+ TableUsers.FieldUserID = 'UCIdUser'
+ TableUsers.FieldUserName = 'UCUserName'
+ TableUsers.FieldLogin = 'UCLogin'
+ TableUsers.FieldPassword = 'UCPassword'
+ TableUsers.FieldEmail = 'UCEmail'
+ TableUsers.FieldPrivileged = 'UCPrivileged'
+ TableUsers.FieldTypeRec = 'UCTypeRec'
+ TableUsers.FieldProfile = 'UCProfile'
+ TableUsers.FieldKey = 'UCKey'
+ TableUsers.FieldDateExpired = 'UCPassExpired'
+ TableUsers.FieldUserExpired = 'UCUserExpired'
+ TableUsers.FieldUserDaysSun = 'UCUserDaysSun'
+ TableUsers.TableName = 'UCTabUsers'
+ TableEmpresa.FieldID = 'UCID'
+ TableEmpresa.FieldName = 'UCNOME'
+ TableEmpresa.TableName = 'UCEMPRESA'
+ TableEmpresa.Active = False
+ TableEmpresa.IDInteiro = False
+ TableRights.FieldUserID = 'UCIdUser'
+ TableRights.FieldModule = 'UCModule'
+ TableRights.FieldComponentName = 'UCCompName'
+ TableRights.FieldFormName = 'UCFormName'
+ TableRights.FieldKey = 'UCKey'
+ TableRights.TableName = 'UCTabRights'
+ TableUsersLogged.FieldLogonID = 'UCIdLogon'
+ TableUsersLogged.FieldUserID = 'UCIdUser'
+ TableUsersLogged.FieldApplicationID = 'UCApplicationId'
+ TableUsersLogged.FieldMachineName = 'UCMachineName'
+ TableUsersLogged.FieldData = 'UCData'
+ TableUsersLogged.TableName = 'UCTabUsersLogged'
+ TableHistory.TableName = 'UCTABHistory'
+ TableHistory.FieldApplicationID = 'ApplicationID'
+ TableHistory.FieldUserID = 'UserID'
+ TableHistory.FieldEventDate = 'EventDate'
+ TableHistory.FieldEventTime = 'EventTime'
+ TableHistory.FieldForm = 'Form'
+ TableHistory.FieldCaptionForm = 'FormCaption'
+ TableHistory.FieldEvent = 'Event'
+ TableHistory.FieldObs = 'Obs'
+ TableHistory.FieldTableName = 'tName'
+ Left = 192
+ Top = 120
+ end
+end
diff --git a/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.pas b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.pas
new file mode 100644
index 00000000..2e697243
--- /dev/null
+++ b/Source/Modulos/Usuarios/Data/uDataModuleUsuarios.pas
@@ -0,0 +1,287 @@
+unit uDataModuleUsuarios;
+
+interface
+
+uses
+ SysUtils, Classes, DB, DBClient, uDADataTable,
+ FactuGES_Intf, uIntegerListUtils, uBizEmpresas,
+ UCBase, UCDataConnector, uUCROConn, uDARemoteDataAdapter,
+ uDARemoteCommand, uROClient, uRORemoteService, uDADataStreamer,
+ uDABin2DataStreamer, uDAScriptingProvider, uIDataModuleUsuarios;
+
+const
+ PERFIL_ADMINISTRADORES = 'Administradores';
+
+type
+ TDataModuleUsuarios = class(TDataModule, IDataModuleUsuarios)
+ ROLoginService: TRORemoteService;
+ srvUsuarios: TRORemoteService;
+ Bin2DataStreamer: TDABin2DataStreamer;
+ UserControl1: TUserControl;
+ procedure DAClientDataModuleCreate(Sender: TObject);
+ procedure DAClientDataModuleDestroy(Sender: TObject);
+ private
+ FDataConnector : TUCROConn;
+ FUsuario : String;
+ FPassword : String; // Lo guardo para poder hacer una reconexión
+
+ FLoginInfo: TRdxLoginInfo;
+ FEmpresaActual: IBizEmpresa;
+ function CambiarPassword (const APassword : String) : boolean; overload;
+ function GetEsAdministrador: Boolean;
+
+ function GetEmpresas: TIntegerList;
+
+ procedure SetEmpresaActual(const Value: IBizEmpresa);
+ function GetIDEmpresaActual: Integer;
+ procedure SetIDEmpresaActual(const Value: Integer);
+ function GetDataConnector : TUCDataConnector;
+ public
+ procedure InicializarCamposUserControl (AUserControl : TUserControl);
+ function Login: Boolean; overload;
+ function Login(Usuario: String; Password: String): Boolean; overload;
+ procedure Logout;
+ procedure CambiarPassword; overload;
+
+ property EsAdministrador : Boolean read GetEsAdministrador;
+ property IDEmpresaActual : Integer read GetIDEmpresaActual write SetIDEmpresaActual;
+ property EmpresaActual : IBizEmpresa read FEmpresaActual write SetEmpresaActual;
+ property Empresas : TIntegerList read GetEmpresas;
+ property LoginInfo: TRdxLoginInfo read FLoginInfo;
+ property DataConnector : TUCDataConnector read GetDataConnector;
+ end;
+
+implementation
+
+{$R *.DFM}
+
+uses
+ Forms, Controls, uDataTableUtils, uDataModuleConexion, uLoginForm,
+ uCambiarPassword, Dialogs, Windows, uEmpresasController, schUsuariosClient_Intf;
+
+{ TDAClientDataModule1 }
+
+procedure TDataModuleUsuarios.DAClientDataModuleCreate(Sender: TObject);
+begin
+ ROLoginService.Channel := dmConexion.Channel;
+ ROLoginService.Message := dmConexion.Message;
+
+ FDataConnector := TUCROConn.Create(nil);
+ FDataConnector.RemoteService := srvUsuarios;
+
+ FUsuario := '';
+ FPassword := '';
+ FLoginInfo := NIL;
+end;
+
+function TDataModuleUsuarios.Login: Boolean;
+begin
+ // Intento hacer login si el usuario ya lo había hecho antes
+ if (Length(FUsuario) > 0) then
+ if Login(FUsuario, FPassword) then
+ begin
+ Result := True;
+ Exit;
+ end;
+
+ // Si no funcionar el login anterior o es la primera vez,
+ // saco la pantalla de login
+ with TfLoginForm.Create(NIL) do
+ try
+ if Assigned(FLoginInfo) then
+ edtUser.Text := FLoginInfo.Usuario;
+ Result := (ShowModal = mrOK)
+ finally
+ Free;
+ end;
+end;
+
+function TDataModuleUsuarios.Login(Usuario: String; Password: String): Boolean;
+begin
+ // Libero la información del login anterior (sesión, etc)
+ if Assigned(FLoginInfo) then
+ FreeANDNil(FLoginInfo);
+
+ Result := (ROLoginService as IsrvLogin).Login(Usuario, Password, FLoginInfo);
+
+ if Result then
+ begin
+ // Lo guardo para poder reconectarme
+ FUsuario := Usuario;
+ FPassword := Password;
+ end;
+end;
+
+procedure TDataModuleUsuarios.Logout;
+begin
+ (ROLoginService as IsrvLogin).Logout;
+ if Assigned(FLoginInfo) then
+ FreeANDNil(FLoginInfo);
+ FUsuario := '';
+ FPassword := '';
+end;
+
+procedure TDataModuleUsuarios.SetEmpresaActual(const Value: IBizEmpresa);
+begin
+ FEmpresaActual := Value;
+ FEmpresaActual.DataTable.Active := True;
+end;
+
+procedure TDataModuleUsuarios.SetIDEmpresaActual(const Value: Integer);
+var
+ AEmpresasController : IEmpresasController;
+ AEmpresa : IBizEmpresa;
+begin
+ AEmpresasController := TEmpresasController.Create;
+ AEmpresa := AEmpresasController.Buscar(Value);
+ AEmpresa.DataTable.Active := True;
+
+ if not AEmpresa.IsEmpty then
+ begin
+ FEmpresaActual := AEmpresa;
+ FEmpresaActual.DataTable.Active := True;
+ end
+ else
+ FEmpresaActual := NIL;
+end;
+
+procedure TDataModuleUsuarios.DAClientDataModuleDestroy(Sender: TObject);
+begin
+ if Assigned(FDataConnector) then
+ FreeANDNIL(FDataConnector);
+
+ if Assigned(FLoginInfo) then
+ FreeANDNIL(FLoginInfo);
+end;
+
+function TDataModuleUsuarios.GetDataConnector: TUCDataConnector;
+begin
+ Result := FDataConnector;
+end;
+
+function TDataModuleUsuarios.GetEmpresas: TIntegerList;
+var
+ i : integer;
+begin
+ Result := TIntegerList.Create;
+
+ if not Assigned(FLoginInfo) then
+ raise Exception.Create('Usuario no validado en el sistema (login)');
+
+ for i := 0 to FLoginInfo.Empresas.Count - 1 do
+ Result.Add(FLoginInfo.Empresas.Items[i]);
+end;
+
+function TDataModuleUsuarios.GetEsAdministrador: Boolean;
+var
+ I: Integer;
+begin
+ Result := False;
+
+ if not Assigned(FLoginInfo) then
+ raise Exception.Create('Usuario no validado en el sistema (login)');
+
+ for I := 0 to FLoginInfo.Perfiles.Count - 1 do
+ if FLoginInfo.Perfiles.Items[I] = PERFIL_ADMINISTRADORES then
+ begin
+ Result := True;
+ Break;
+ end;
+end;
+
+function TDataModuleUsuarios.GetIDEmpresaActual: Integer;
+begin
+ if not Assigned(FEmpresaActual) then
+ Result := ID_NULO
+ else
+ Result := FEmpresaActual.ID;
+end;
+
+procedure TDataModuleUsuarios.InicializarCamposUserControl(
+ AUserControl: TUserControl);
+begin
+ if not Assigned(AUserControl) then
+ raise Exception.Create('UserControl no asignado (InicializarUserControl)');
+
+ with AUserControl do
+ begin
+ DataConnector := FDataConnector;
+
+ with TableUsers do
+ begin
+ TableName := nme_USUARIOS;
+ FieldUserID := fld_USUARIOSID;
+ FieldUserName := fld_USUARIOSUSERNAME;
+ FieldLogin := fld_USUARIOSLOGIN;
+ FieldPassword := fld_USUARIOSPASS;
+ FieldEmail := fld_USUARIOSEMAIL;
+ FieldPrivileged := fld_USUARIOSPRIVILEGED;
+ FieldTypeRec := fld_USUARIOSTIPO;
+ FieldProfile := fld_USUARIOSID_PERFIL;
+ FieldUserExpired := fld_USUARIOSBLOQUEADO;
+ FieldDateExpired := fld_USUARIOSPASSEXPIRED;
+ FieldUserDaysSun := fld_USUARIOSUSERDAYSSUN;
+ FieldKey := fld_USUARIOSCHECKSUM;
+ end;
+
+ with TableRights do
+ begin
+ TableName := nme_PERMISOS;
+ FieldUserID := fld_PERMISOSID_USUARIO;
+ FieldModule := fld_PERMISOSMODULO;
+ FieldComponentName := fld_PERMISOSNOMBRECOMP;
+ FieldFormName := fld_PERMISOSEXNOMBREFORM;
+ FieldKey := fld_PERMISOSCHECKSUM;
+ end;
+
+ with TableUsersLogged do
+ begin
+ TableName := nme_USUARIOS_LOGON;
+ FieldLogonID := fld_USUARIOS_LOGONLOGONID;
+ FieldUserID := fld_USUARIOS_LOGONID_USUARIO;
+ FieldApplicationID := fld_USUARIOS_LOGONAPLICACION;
+ FieldMachineName := fld_USUARIOS_LOGONEQUIPO;
+ FieldData := fld_USUARIOS_LOGONDATA;
+ end;
+
+ with TableHistory do
+ begin
+ TableName := nme_USUARIOS_EVENTOS;
+ FieldApplicationID := fld_USUARIOS_EVENTOSAPLICACION;
+ FieldUserID := fld_USUARIOS_EVENTOSID_USUARIO;
+ FieldEventDate := fld_USUARIOS_EVENTOSFECHA;
+ FieldEventTime := fld_USUARIOS_EVENTOSHORA;
+ FieldForm := fld_USUARIOS_EVENTOSFORM;
+ FieldCaptionForm := fld_USUARIOS_EVENTOSTITULO_FORM;
+ FieldEvent := fld_USUARIOS_EVENTOSEVENTO;
+ FieldObs := fld_USUARIOS_EVENTOSNOTAS;
+ FieldTableName := fld_USUARIOS_EVENTOSTNAME;
+ end;
+
+ with TableEmpresa do
+ begin
+ Active := False;
+ end;
+ end;
+end;
+
+procedure TDataModuleUsuarios.CambiarPassword;
+begin
+ with TfCambiarPassword.Create(NIL) do
+ try
+ if ShowModal = mrOk then
+ if CambiarPassword(edtPassword.Text) then
+ Application.MessageBox('La contraseña ha sido cambiada correctamente.', 'Información', MB_OK);
+ finally
+ Free;
+ end;
+end;
+
+function TDataModuleUsuarios.CambiarPassword(const APassword: String): boolean;
+begin
+{ if not (ROLoginService as IsrvLogin).SetUserPassword(LoginInfo.UserID, APassword) then
+ raise Exception.Create('Error en el servidor. No se ha podido cambiar la contraseña');}
+ Result := True;
+end;
+
+end.
diff --git a/Source/Modulos/Usuarios/Data/uLoginForm.dcu b/Source/Modulos/Usuarios/Data/uLoginForm.dcu
new file mode 100644
index 00000000..15a1d77b
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uLoginForm.dcu differ
diff --git a/Source/Base/Usuarios/uLoginForm.dfm b/Source/Modulos/Usuarios/Data/uLoginForm.dfm
similarity index 100%
rename from Source/Base/Usuarios/uLoginForm.dfm
rename to Source/Modulos/Usuarios/Data/uLoginForm.dfm
diff --git a/Source/Base/Usuarios/uLoginForm.pas b/Source/Modulos/Usuarios/Data/uLoginForm.pas
similarity index 94%
rename from Source/Base/Usuarios/uLoginForm.pas
rename to Source/Modulos/Usuarios/Data/uLoginForm.pas
index a3814747..2e183b43 100644
--- a/Source/Base/Usuarios/uLoginForm.pas
+++ b/Source/Modulos/Usuarios/Data/uLoginForm.pas
@@ -52,13 +52,13 @@ procedure TfLoginForm.bAceptarClick(Sender: TObject);
var
bOk : Boolean;
begin
- ShowHourglassCursor;
+{ ShowHourglassCursor;
try
bOK := dmUsuarios.Login(edtUser.Text, edtPassword.Text);
finally
HideHourglassCursor;
end;
-
+
if bOk then
ModalResult := mrOK
else begin
@@ -67,7 +67,7 @@ begin
Dec(FIntentos);
if (FIntentos <= 0) then
ModalResult := mrCancel;
- end;
+ end;}
end;
procedure TfLoginForm.FormCreate(Sender: TObject);
diff --git a/Source/Modulos/Usuarios/Data/uUCROConn.dcu b/Source/Modulos/Usuarios/Data/uUCROConn.dcu
new file mode 100644
index 00000000..f021b756
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uUCROConn.dcu differ
diff --git a/Source/Modulos/Usuarios/Data/uUCROConn.pas b/Source/Modulos/Usuarios/Data/uUCROConn.pas
new file mode 100644
index 00000000..bd27a10d
--- /dev/null
+++ b/Source/Modulos/Usuarios/Data/uUCROConn.pas
@@ -0,0 +1,196 @@
+{-----------------------------------------------------------------------------
+ Unit Name: UCMidasConn
+ Author : Luiz Benevenuto
+ Date : 31/07/2005
+ Purpose : Midas Suporte ( DataSnap )
+ E-mail : luiz@siffra.com
+ URL : www.siffra.com
+ UC : www.usercontrol.com.br
+ Forum : http://www.usercontrol.com.br/modules.php?name=Forums
+
+ registered in UCMidasConnReg.pas
+-----------------------------------------------------------------------------}
+
+unit uUCROConn;
+
+interface
+
+//{$I 'UserControl.inc'}
+
+uses
+ Classes,
+ DB,
+ DBClient,
+ SysUtils,
+ UCDataConnector,
+ uRORemoteService,
+ uDADataStreamer,
+ uDABin2DataStreamer,
+ uDARemoteDataAdapter;
+
+type
+ TUCROConn = class(TUCDataConnector)
+ private
+ FRemoteService: TRORemoteService;
+ FDataAdapter : TDARemoteDataAdapter;
+ FDataStreamer : TDABin2DataStreamer;
+ procedure SetRemoteService(const Value: TRORemoteService);
+ protected
+ procedure Notification(AComponent: TComponent; Operation: TOperation); override;
+ public
+ function GetDBObjectName: String; override;
+ function GetTransObjectName: String; override;
+ function UCFindDataConnection: Boolean; override;
+ function UCFindTable(const Tablename: String): Boolean; override;
+ function UCGetSQLDataset(FSQL: String): TDataset; override;
+ procedure UCExecSQL(FSQL: String); override;
+ constructor Create(AOwner: TComponent); override;
+ destructor Destroy; override;
+ published
+ property RemoteService : TRORemoteService read FRemoteService write SetRemoteService;
+ end;
+
+const
+ // Select para as tabelas de sistema !!! Para outro tipo de banco implemente aqui !!!!!
+
+ // Para banco novo !!!
+ // Não esquecer de colocar em TBancoDados, o tipo de banco !!!!!!
+ // Não esquecer de colocar no 'case' de UCFindTable
+
+ SQL_Firebird =
+ 'SELECT ' +
+ ' UPPER(RDB$RELATIONS.RDB$RELATION_NAME) RDB$RELATION_NAME ' +
+ 'FROM ' +
+ ' RDB$RELATIONS ' +
+ 'WHERE ' +
+ ' RDB$RELATIONS.RDB$FLAGS = 1 AND UPPER(RDB$RELATIONS.RDB$RELATION_NAME) = ' +
+ ' UPPER(''%s'')';
+
+ SQL_MSSQL = '';
+
+ SQL_Oracle = '';
+
+ SQL_PostgreSQL =
+ 'SELECT ' +
+ ' UPPER(PG_CLASS.RELNAME) ' +
+ 'FROM ' +
+ ' PG_CLASS ' +
+ 'WHERE ' +
+ ' PG_CLASS.RELKIND = ''r'' AND ' +
+ ' UPPER(PG_CLASS.RELNAME) LIKE UPPER(''%s'')';
+
+ SQL_MySQL = '';
+
+ SQL_Paradox = '';
+
+implementation
+
+uses
+ FactuGES_Intf, uROTypes, uDAClasses, uDADataTable;
+
+{ TUCROConn }
+
+constructor TUCROConn.Create(AOwner: TComponent);
+begin
+ inherited;
+ FDataStreamer := TDABin2DataStreamer.Create(nil);
+ FDataAdapter := TDARemoteDataAdapter.Create(nil);
+ FDataAdapter.DataStreamer := FDataStreamer;
+ FDataAdapter.SetupDefaultRequest;
+end;
+
+destructor TUCROConn.Destroy;
+begin
+ FreeAndNil(FDataAdapter);
+ FreeAndNil(FDataStreamer);
+ inherited;
+end;
+
+function TUCROConn.GetDBObjectName: String;
+begin
+ if Assigned(FRemoteService) then
+ begin
+ if Owner = FRemoteService.Owner then
+ Result := FRemoteService.Name
+ else
+ Result := FRemoteService.Owner.Name + '.' + FRemoteService.Name;
+ end
+ else
+ Result := '';
+end;
+
+function TUCROConn.GetTransObjectName: String;
+begin
+ Result := '';
+end;
+
+procedure TUCROConn.Notification(AComponent: TComponent; Operation: TOperation);
+begin
+ if (Operation = opRemove) and (AComponent = FRemoteService) then
+ begin
+ FreeAndNil(FDataAdapter);
+ FRemoteService := nil;
+ end;
+ inherited Notification(AComponent, Operation);
+end;
+
+procedure TUCROConn.SetRemoteService(const Value: TRORemoteService);
+begin
+ FRemoteService := Value;
+ if Assigned(FRemoteService) then
+ begin
+ with FDataAdapter do
+ begin
+ RemoteService := FRemoteService;
+ GetSchemaCall.RemoteService := FRemoteService;
+ GetDataCall.RemoteService := FRemoteService;
+ UpdateDataCall.RemoteService := FRemoteService;
+ GetScriptsCall.RemoteService := FRemoteService;
+ end;
+ end;
+end;
+
+procedure TUCROConn.UCExecSQL(FSQL: String);
+begin
+ (FRemoteService as IsrvUsuarios).SQLExecuteCommand(FSQL);
+end;
+
+function TUCROConn.UCFindDataConnection: Boolean;
+begin
+ Result := False;
+ if Assigned(FRemoteService) then
+ begin
+ FRemoteService.CheckCanConnect;
+ Result := True;
+ end;
+end;
+
+function TUCROConn.UCFindTable(const Tablename: String): Boolean;
+var
+ ASchema : TDASchema;
+begin
+ ASchema := FDataAdapter.ReadSchema;
+ try
+ Result := Assigned(ASchema.FindDataset(TableName));
+ finally
+ FreeAndNil(ASchema);
+ end;
+end;
+
+function TUCROConn.UCGetSQLDataset(FSQL: String): TDataset;
+var
+ AStream : Binary;
+ ADataTable : TDADataTable;
+begin
+ Result := NIL;
+ AStream := (FRemoteService as IsrvUsuarios).SQLGetData(FSQL, True, -1);
+ if Assigned(AStream) then
+ begin
+ ADataTable := TDADataTable.Create(NIL);
+ ADataTable.LoadFromStream(AStream);
+ Result := ADataTable.Dataset;
+ end;
+end;
+
+end.
+
diff --git a/Source/Modulos/Usuarios/Data/uUsuario.dcu b/Source/Modulos/Usuarios/Data/uUsuario.dcu
new file mode 100644
index 00000000..3c857138
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uUsuario.dcu differ
diff --git a/Source/Base/Usuarios/uUsuario.dfm b/Source/Modulos/Usuarios/Data/uUsuario.dfm
similarity index 100%
rename from Source/Base/Usuarios/uUsuario.dfm
rename to Source/Modulos/Usuarios/Data/uUsuario.dfm
diff --git a/Source/Base/Usuarios/uUsuario.pas b/Source/Modulos/Usuarios/Data/uUsuario.pas
similarity index 100%
rename from Source/Base/Usuarios/uUsuario.pas
rename to Source/Modulos/Usuarios/Data/uUsuario.pas
diff --git a/Source/Modulos/Usuarios/Data/uUsuarios.dcu b/Source/Modulos/Usuarios/Data/uUsuarios.dcu
new file mode 100644
index 00000000..2c94a8f6
Binary files /dev/null and b/Source/Modulos/Usuarios/Data/uUsuarios.dcu differ
diff --git a/Source/Base/Usuarios/uUsuarios.dfm b/Source/Modulos/Usuarios/Data/uUsuarios.dfm
similarity index 94%
rename from Source/Base/Usuarios/uUsuarios.dfm
rename to Source/Modulos/Usuarios/Data/uUsuarios.dfm
index eb18801a..0c3eb30f 100644
--- a/Source/Base/Usuarios/uUsuarios.dfm
+++ b/Source/Modulos/Usuarios/Data/uUsuarios.dfm
@@ -36,7 +36,7 @@ object fUsuarios: TfUsuarios
Align = alTop
Caption = 'Panel de control'
Font.Charset = DEFAULT_CHARSET
- Font.Color = clWhite
+ Font.Color = clWindow
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
diff --git a/Source/Base/Usuarios/uUsuarios.pas b/Source/Modulos/Usuarios/Data/uUsuarios.pas
similarity index 94%
rename from Source/Base/Usuarios/uUsuarios.pas
rename to Source/Modulos/Usuarios/Data/uUsuarios.pas
index 3e6d9d5e..6fb22fd6 100644
--- a/Source/Base/Usuarios/uUsuarios.pas
+++ b/Source/Modulos/Usuarios/Data/uUsuarios.pas
@@ -6,7 +6,7 @@ uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, uDADataTable, dbcgrids, uDataModuleUsuarios, StdCtrls,
DBCtrls, uDataModuleBase, JvExControls, JvComponent, JvNavigationPane,
- Grids, DBGrids, ActnList;
+ Grids, DBGrids, ActnList, uDAInterfaces;
type
TfUsuarios = class(TForm)
diff --git a/Source/Modulos/Usuarios/Model/CadPerfil_U.dcu b/Source/Modulos/Usuarios/Model/CadPerfil_U.dcu
new file mode 100644
index 00000000..5ffe32e9
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/CadPerfil_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/CadUser_U.dcu b/Source/Modulos/Usuarios/Model/CadUser_U.dcu
new file mode 100644
index 00000000..82d054c6
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/CadUser_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/Data/uIDataModuleUsuarios.pas b/Source/Modulos/Usuarios/Model/Data/uIDataModuleUsuarios.pas
new file mode 100644
index 00000000..18615995
--- /dev/null
+++ b/Source/Modulos/Usuarios/Model/Data/uIDataModuleUsuarios.pas
@@ -0,0 +1,18 @@
+unit uIDataModuleUsuarios;
+
+interface
+
+uses
+ UCBase, UCDataConnector;
+
+type
+ IDataModuleUsuarios = interface
+ ['{F2D2E969-5E87-42DE-A550-E839C4607C72}']
+ procedure InicializarCamposUserControl (AUserControl : TUserControl);
+ function GetDataConnector : TUCDataConnector;
+ property DataConnector : TUCDataConnector read GetDataConnector;
+ end;
+
+implementation
+
+end.
diff --git a/Source/Modulos/Usuarios/Model/EnvMsgForm_U.dcu b/Source/Modulos/Usuarios/Model/EnvMsgForm_U.dcu
new file mode 100644
index 00000000..f70c1dd3
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/EnvMsgForm_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/IncPerfil_U.dcu b/Source/Modulos/Usuarios/Model/IncPerfil_U.dcu
new file mode 100644
index 00000000..1ec4739d
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/IncPerfil_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/IncUser_U.dcu b/Source/Modulos/Usuarios/Model/IncUser_U.dcu
new file mode 100644
index 00000000..828ec7e5
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/IncUser_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/LoginWindow_U.dcu b/Source/Modulos/Usuarios/Model/LoginWindow_U.dcu
new file mode 100644
index 00000000..89b9ab5e
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/LoginWindow_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/MsgRecForm_U.dcu b/Source/Modulos/Usuarios/Model/MsgRecForm_U.dcu
new file mode 100644
index 00000000..86babad6
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/MsgRecForm_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/MsgsForm_U.dcu b/Source/Modulos/Usuarios/Model/MsgsForm_U.dcu
new file mode 100644
index 00000000..4055138a
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/MsgsForm_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/SenhaForm_U.dcu b/Source/Modulos/Usuarios/Model/SenhaForm_U.dcu
new file mode 100644
index 00000000..a99f5a1a
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/SenhaForm_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/TrocaSenha_U.dcu b/Source/Modulos/Usuarios/Model/TrocaSenha_U.dcu
new file mode 100644
index 00000000..e1474abc
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/TrocaSenha_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCBase.dcu b/Source/Modulos/Usuarios/Model/UCBase.dcu
new file mode 100644
index 00000000..a2b7be04
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCBase.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCConsts.dcu b/Source/Modulos/Usuarios/Model/UCConsts.dcu
new file mode 100644
index 00000000..fb205b30
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCConsts.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCDataConnector.dcu b/Source/Modulos/Usuarios/Model/UCDataConnector.dcu
new file mode 100644
index 00000000..33cc0ce7
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCDataConnector.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCDataInfo.dcu b/Source/Modulos/Usuarios/Model/UCDataInfo.dcu
new file mode 100644
index 00000000..108622e2
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCDataInfo.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCEMailForm_U.dcu b/Source/Modulos/Usuarios/Model/UCEMailForm_U.dcu
new file mode 100644
index 00000000..1cc809e3
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCEMailForm_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCHist_Form.dcu b/Source/Modulos/Usuarios/Model/UCHist_Form.dcu
new file mode 100644
index 00000000..8993bb4e
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCHist_Form.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCMail.dcu b/Source/Modulos/Usuarios/Model/UCMail.dcu
new file mode 100644
index 00000000..8bdff188
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCMail.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCMessages.dcu b/Source/Modulos/Usuarios/Model/UCMessages.dcu
new file mode 100644
index 00000000..3ff914f6
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCMessages.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UCSettings.dcu b/Source/Modulos/Usuarios/Model/UCSettings.dcu
new file mode 100644
index 00000000..d7afbd71
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UCSettings.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UserPermis_U.dcu b/Source/Modulos/Usuarios/Model/UserPermis_U.dcu
new file mode 100644
index 00000000..ce8d461f
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UserPermis_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/UsersLogged_U.dcu b/Source/Modulos/Usuarios/Model/UsersLogged_U.dcu
new file mode 100644
index 00000000..7d7c2bdb
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/UsersLogged_U.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/Usuarios_model.dcu b/Source/Modulos/Usuarios/Model/Usuarios_model.dcu
new file mode 100644
index 00000000..b2fa009c
Binary files /dev/null and b/Source/Modulos/Usuarios/Model/Usuarios_model.dcu differ
diff --git a/Source/Modulos/Usuarios/Model/Usuarios_model.dpk b/Source/Modulos/Usuarios/Model/Usuarios_model.dpk
new file mode 100644
index 00000000..25ab94d7
--- /dev/null
+++ b/Source/Modulos/Usuarios/Model/Usuarios_model.dpk
@@ -0,0 +1,46 @@
+package Usuarios_model;
+
+{$R *.res}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$IMPLICITBUILD ON}
+
+requires
+ rtl,
+ dsnap,
+ dbrtl,
+ vcldb,
+ vcl,
+ adortl,
+ Base,
+ pckUCDataConnector,
+ dclIndyCore,
+ VclSmp,
+ pckMD5,
+ pckUserControl_RT;
+
+contains
+ uIDataModuleUsuarios in 'Data\uIDataModuleUsuarios.pas',
+ schUsuariosClient_Intf in 'schUsuariosClient_Intf.pas',
+ schUsuariosServer_Intf in 'schUsuariosServer_Intf.pas';
+
+end.
diff --git a/Source/Base/Usuarios/Usuarios.dproj b/Source/Modulos/Usuarios/Model/Usuarios_model.dproj
similarity index 78%
rename from Source/Base/Usuarios/Usuarios.dproj
rename to Source/Modulos/Usuarios/Model/Usuarios_model.dproj
index a43424cc..a6e505ef 100644
--- a/Source/Base/Usuarios/Usuarios.dproj
+++ b/Source/Modulos/Usuarios/Model/Usuarios_model.dproj
@@ -1,93 +1,86 @@

- {0e3d28a9-51af-483b-b478-472a086ee120}
- Usuarios.dpk
+ {73acd39c-b2f0-49b7-9acf-10945bbac8c1}
+ Usuarios_model.dpk
Debug
AnyCPU
DCC32
- ..\..\..\Output\Debug\Cliente\Usuarios.bpl
+ ..\..\..\..\Output\Debug\Cliente\Usuarios_model.bpl
7.0
False
False
0
- 3
.\
.\
.\
- ..\..\..\Output\Debug\Cliente
+ ..\..\..\..\Output\Release\Cliente
..\..\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
RELEASE
7.0
- 3
.\
.\
.\
- ..\..\..\Output\Debug\Cliente
+ ..\..\..\..\Output\Debug\Cliente
..\..\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
- ..\..\Lib;..\..\Modulos\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
+ ..\..\..\Lib;..\..\Lib
Delphi.Personality
Package
-FalseTrueFalseGestión de usuariosFalseFalseFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse1030FalseFalseFalseFalseFalse308212521.0.3.01.0.0.0Usuarios.dpk
+FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Usuarios_model.dpk
-
+
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+