From 0a4b9e21ab359a2c39b0e9c995ace6269124091b Mon Sep 17 00:00:00 2001 From: david Date: Mon, 27 Oct 2008 19:03:34 +0000 Subject: [PATCH] =?UTF-8?q?M=C3=B3dulo=20de=20obras=20(por=20revisar)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@715 0c75b7a4-871f-7646-8a2f-f78d34cc349f --- Build/Build.fbp5 | 1338 ++++++------- Database/scripts/factuges.sql | 107 +- Resources/Iconos/Inventario/24x24/Thumbs.db | Bin 11264 -> 0 bytes Resources/Iconos/Obras/16x16/enejecucion.png | Bin 0 -> 201 bytes Source/ApplicationBase/ApplicationBase.dproj | 42 +- Source/Base/uDMBase.pas | 4 +- Source/Cliente/FactuGES.dproj | 4 + Source/Cliente/FactuGES.res | Bin 171984 -> 172184 bytes Source/GUIBase/GUIBase.dproj | 48 +- Source/GUIBase/uEditorDBBase.pas | 4 +- Source/GUIBase/uEditorDBItem.dfm | 4 + Source/GUIBase/uViewDetallesGenerico.dfm | 1 + Source/GUIBase/uViewDetallesGenerico.pas | 2 +- Source/GUIBase/uViewPreview.dfm | 4 +- Source/GUIBase/uViewTotales.dfm | 29 +- .../Contactos/Views/Contactos_view.dproj | 92 +- .../Contactos/Views/uEditorContacto.dfm | 27 +- .../Views/FacturasProveedor_view.res | Bin 4748 -> 384 bytes .../Obras/Controller/Obras_controller.dproj | 10 +- .../Obras/Controller/uObrasController.pas | 101 +- Source/Modulos/Obras/Data/Obras_data.dproj | 2 +- .../Modulos/Obras/Data/uDataModuleObras.dfm | 349 +++- .../Modulos/Obras/Data/uDataModuleObras.pas | 110 +- .../Obras/Model/Data/uIDataModuleObras.pas | 1 + Source/Modulos/Obras/Model/Obras_model.dpk | Bin 723 -> 742 bytes Source/Modulos/Obras/Model/Obras_model.dproj | 2 +- .../Obras/Model/schObrasClient_Intf.pas | 1473 +++++++++++++- .../Obras/Model/schObrasServer_Intf.pas | 1755 ++++++++++++++++- Source/Modulos/Obras/Model/uBizObras.pas | 524 ++++- .../Modulos/Obras/Model/uBizObrasServer.pas | 6 +- Source/Modulos/Obras/Obras_Group.groupproj | 48 +- .../Modulos/Obras/Plugin/Obras_plugin.dproj | 532 ++++- Source/Modulos/Obras/Plugin/Obras_plugin.rc | 22 + Source/Modulos/Obras/Plugin/Obras_plugin.res | Bin 32 -> 384 bytes .../Modulos/Obras/Servidor/srvObras_Impl.dfm | 1208 +++++++++++- .../Modulos/Obras/Servidor/srvObras_Impl.pas | 389 +++- Source/Modulos/Obras/Views/Obras_view.dpk | Bin 1202 -> 1720 bytes Source/Modulos/Obras/Views/Obras_view.dproj | 49 +- Source/Modulos/Obras/Views/uEditorObra.dfm | 142 +- Source/Modulos/Obras/Views/uEditorObra.pas | 160 +- Source/Modulos/Obras/Views/uEditorObras.dfm | 23 +- .../Obras/Views/uViewEjecucionObra.dfm | 468 +++++ .../Obras/Views/uViewEjecucionObra.pas | 183 ++ .../Obras/Views/uViewListaEjecucionesObra.dfm | 110 ++ .../Obras/Views/uViewListaEjecucionesObra.pas | 59 + .../Obras/Views/uViewListaPedidosProvObra.dfm | 111 ++ .../Obras/Views/uViewListaPedidosProvObra.pas | 241 +++ .../Views/uViewListaPresupuestosObra.dfm | 88 + .../Views/uViewListaPresupuestosObra.pas | 202 ++ Source/Modulos/Obras/Views/uViewObra.dfm | 178 +- Source/Modulos/Obras/Views/uViewObra.pas | 20 - Source/Modulos/Obras/Views/uViewObras.dfm | 139 +- Source/Modulos/Obras/Views/uViewObras.pas | 15 +- .../Obras/Views/uViewSubcontrataObra.dfm | 38 +- Source/Modulos/Obras/schObrasServer_Intf.pas | 1401 +++++++++++++ .../uPedidosProveedorController.pas | 5 +- .../Views/PedidosProveedor_view.res | Bin 4748 -> 384 bytes .../Views/uEditorPedidoProveedor.dfm | 9 +- .../Views/uEditorPedidoProveedor.pas | 2 +- .../Views/uViewDireccionEntregaPedidoProv.dfm | 131 +- .../Views/uViewDireccionEntregaPedidoProv.pas | 50 +- .../Views/uViewObraReserva.dfm | 15 +- .../Views/uViewObraReserva.pas | 20 + .../Views/uViewPedidoProveedor.dfm | 102 +- .../PresupuestosCliente_controller.dproj | 12 +- .../uPresupuestosClienteController.pas | 18 +- .../Data/uDataModulePresupuestosCliente.pas | 41 +- .../Data/uIDataModulePresupuestosCliente.pas | 6 +- .../Model/PresupuestosCliente_model.dpk | Bin 1075 -> 1074 bytes .../Model/PresupuestosCliente_model.dproj | 18 +- .../PresupuestosCliente_Group.groupproj | 42 +- .../Views/PresupuestosCliente_view.res | Bin 4748 -> 384 bytes .../Views/RecibosProveedor_view.res | Bin 4748 -> 384 bytes Source/Servidor/FactuGES_Server.RES | Bin 23212 -> 23512 bytes Source/Servidor/FactuGES_Server.dpr | 4 +- Source/Servidor/FactuGES_Server.dproj | 602 +++--- Source/Servidor/FactuGES_Server.rc | 2 +- Source/Servidor/uDataModuleServer.pas | 4 +- 78 files changed, 11112 insertions(+), 1836 deletions(-) delete mode 100644 Resources/Iconos/Inventario/24x24/Thumbs.db create mode 100644 Resources/Iconos/Obras/16x16/enejecucion.png create mode 100644 Source/Modulos/Obras/Views/uViewEjecucionObra.dfm create mode 100644 Source/Modulos/Obras/Views/uViewEjecucionObra.pas create mode 100644 Source/Modulos/Obras/Views/uViewListaEjecucionesObra.dfm create mode 100644 Source/Modulos/Obras/Views/uViewListaEjecucionesObra.pas create mode 100644 Source/Modulos/Obras/Views/uViewListaPedidosProvObra.dfm create mode 100644 Source/Modulos/Obras/Views/uViewListaPedidosProvObra.pas create mode 100644 Source/Modulos/Obras/Views/uViewListaPresupuestosObra.dfm create mode 100644 Source/Modulos/Obras/Views/uViewListaPresupuestosObra.pas create mode 100644 Source/Modulos/Obras/schObrasServer_Intf.pas diff --git a/Build/Build.fbp5 b/Build/Build.fbp5 index 8a3645d2..9822fc21 100644 --- a/Build/Build.fbp5 +++ b/Build/Build.fbp5 @@ -683,12 +683,12 @@ source_path 1 0 - 2 + 3 False 0 %source_path%\Servidor\FactuGES_Server.dpr True - 8 + 7 rcBorland @@ -703,15 +703,15 @@ source_path True @@ -7812,651 +7812,6 @@ Comments= - - - - 0 - - - - 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 - False - True - True - False - False - False - False - False - False - False - False - 3082 - - 1 - - 0 - 0 - False - 0 - %source_path%\Modulos\Obras\Model\Obras_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [usPackages,usCompiler,usLinker,usVersionInfo] - False - False - - - - False - False - False - False - True - 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 - True - False - False - False - False - False - False - False - False - 3082 - - 1 - - 0 - 0 - False - 0 - %source_path%\Modulos\Obras\Data\Obras_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [usPackages,usCompiler,usLinker,usVersionInfo] - False - False - - - - False - False - False - False - True - 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 - True - False - False - False - False - False - False - False - False - 3082 - - 1 - - 0 - 0 - False - 0 - %source_path%\Modulos\Obras\Controller\Obras_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [usPackages,usCompiler,usLinker,usVersionInfo] - False - False - - - - False - False - False - False - True - 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 - True - False - False - False - False - False - False - False - False - 3082 - - 1 - - 0 - 0 - False - 0 - %source_path%\Modulos\Obras\Views\Obras_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [usPackages,usCompiler,usLinker,usVersionInfo] - False - False - - - - False - False - False - False - True - 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 - False - True - False - False - False - False - False - False - False - False - 3081 - - 1 - - 0 - 0 - False - 0 - %source_path%\Modulos\Obras\Plugin\Obras_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [usPackages,usCompiler,usLinker,usVersionInfo] - False - False - - - - False - False - False - False - True - 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 - - - @@ -9536,7 +8891,7 @@ Comments= False False False - False + True True False False @@ -9546,7 +8901,7 @@ Comments= False False False - 3081 + 3082 1 @@ -9570,7 +8925,16 @@ Comments= [usPackages,usCompiler,usLinker,usVersionInfo] False False - @@ -10616,7 +9980,7 @@ Comments= False 0 - False + True 0 1000 False @@ -11019,7 +10383,7 @@ Comments= False 0 - False + True 0 1000 False @@ -11422,7 +10786,7 @@ Comments= False 0 - False + True 0 1000 False @@ -11825,7 +11189,7 @@ Comments= False 0 - False + True 0 1000 False @@ -14330,7 +13694,7 @@ Comments= False False False - False + True True False False @@ -14340,7 +13704,7 @@ Comments= False False False - 3081 + 3082 1 @@ -14364,7 +13728,16 @@ Comments= [usPackages,usCompiler,usLinker,usVersionInfo] False False - @@ -14973,6 +14346,651 @@ Comments= 0 1000 False + + + + 0 + + + + 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 + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + + 0 + 0 + False + 0 + %source_path%\Modulos\Obras\Model\Obras_model.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + True + 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 + True + False + False + False + False + False + False + False + False + 3082 + + 1 + + 0 + 0 + False + 0 + %source_path%\Modulos\Obras\Data\Obras_data.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + True + 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 + True + False + False + False + False + False + False + False + False + 3082 + + 1 + + 0 + 0 + False + 0 + %source_path%\Modulos\Obras\Controller\Obras_controller.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + True + 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 + True + False + False + False + False + False + False + False + False + 3082 + + 1 + + 0 + 0 + False + 0 + %source_path%\Modulos\Obras\Views\Obras_view.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + True + 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 + False + True + False + False + False + False + False + False + False + False + 3081 + + 1 + + 0 + 0 + False + 0 + %source_path%\Modulos\Obras\Plugin\Obras_plugin.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + True + 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/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index 95bac5c3..ea2f2dbd 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -174,6 +174,15 @@ SET GENERATOR GEN_INFORMES_ID TO 1; CREATE GENERATOR GEN_MOVIMIENTOS_ID; SET GENERATOR GEN_MOVIMIENTOS_ID TO 1; +CREATE GENERATOR GEN_OBRAS_EJECUCIONES_ID; +SET GENERATOR GEN_OBRAS_EJECUCIONES_ID TO 1; + +CREATE GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID; +SET GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID TO 1; + +CREATE GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID; +SET GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID TO 1; + CREATE GENERATOR GEN_PAGOS_CLIENTE_ID; SET GENERATOR GEN_PAGOS_CLIENTE_ID TO 1; @@ -865,10 +874,34 @@ CREATE TABLE MOVIMIENTOS ( CREATE TABLE OBRAS_DATOS ( ID_ALMACEN TIPO_ID NOT NULL, - ID_CLIENTE TIPO_ID, - ID_SUBCONTRATA TIPO_ID + ID_CLIENTE TIPO_ID ); +CREATE TABLE OBRAS_EJECUCIONES ( + ID TIPO_ID NOT NULL, + ID_OBRA TIPO_ID, + FECHA_INICIO DATE, + FECHA_FIN DATE, + ID_SUBCONTRATA TIPO_ID, + OBSERVACIONES TIPO_NOTAS, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP +); + +CREATE TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ( + ID TIPO_ID NOT NULL, + ID_EJECUCION TIPO_ID, + ID_PRESUPUESTO TIPO_ID +); + +CREATE TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ( + ID TIPO_ID NOT NULL, + ID_EJECUCION TIPO_ID, + ID_PEDIDO TIPO_ID, + ID_PRESUPUESTO TIPO_ID +); + + CREATE TABLE PAGOS_CLIENTE ( ID TIPO_ID NOT NULL, ID_RECIBO TIPO_ID, @@ -2799,7 +2832,6 @@ GROUP BY ID_ALMACEN, ; - /* View: V_OBRAS */ CREATE VIEW V_OBRAS( ID, @@ -2816,26 +2848,73 @@ CREATE VIEW V_OBRAS( OBSERVACIONES, ID_CLIENTE, NOMBRE_CLIENTE, - ID_SUBCONTRATA, - NOMBRE_SUBCONTRATA, FECHA_ALTA, FECHA_MODIFICACION, - USUARIO) + USUARIO, + ID_EJECUCION) AS SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE, ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL, ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO, - ALMACENES.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE, - OBRAS_DATOS.ID_SUBCONTRATA, SUBCONTRATAS.NOMBRE AS NOMBRE_SUBCONTRATA, - ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO + ALMACENES.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE, + ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO, + CASE + WHEN (OBRAS_EJECUCIONES.FECHA_INICIO IS NULL) THEN NULL + WHEN ((OBRAS_EJECUCIONES.FECHA_INICIO IS NOT NULL) AND ((OBRAS_EJECUCIONES.FECHA_FIN IS NULL))) THEN OBRAS_EJECUCIONES.ID + END AS ID_EJECUCION FROM ALMACENES INNER JOIN OBRAS_DATOS ON (OBRAS_DATOS.ID_ALMACEN = ALMACENES.ID) LEFT OUTER JOIN CONTACTOS AS CLIENTES ON (CLIENTES.ID = OBRAS_DATOS.ID_CLIENTE) -LEFT OUTER JOIN CONTACTOS AS SUBCONTRATAS ON (SUBCONTRATAS.ID = OBRAS_DATOS.ID_SUBCONTRATA) +LEFT OUTER JOIN OBRAS_EJECUCIONES ON (OBRAS_EJECUCIONES.ID_OBRA = ALMACENES.ID) WHERE ALMACENES.TIPO_ALMACEN = 'OBRA' ; +/* View: V_OBRAS_EJECUCIONES */ +CREATE VIEW V_OBRAS_EJECUCIONES( + ID, + ID_OBRA, + FECHA_INICIO, + FECHA_FIN, + ID_SUBCONTRATA, + NOMBRE, + IMPORTE_GASTOS, + IMPORTE_INGRESOS, + IMPORTE_TOTAL, + OBSERVACIONES, + FECHA_ALTA, + FECHA_MODIFICACION) +AS +SELECT + OBRAS_EJECUCIONES.ID, + OBRAS_EJECUCIONES.ID_OBRA, + OBRAS_EJECUCIONES.FECHA_INICIO, + OBRAS_EJECUCIONES.FECHA_FIN, + OBRAS_EJECUCIONES.ID_SUBCONTRATA, + CONTACTOS.NOMBRE, + COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_GASTOS, + COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) IMPORTE_INGRESOS, + COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) - COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_TOTAL, + OBRAS_EJECUCIONES.OBSERVACIONES, + OBRAS_EJECUCIONES.FECHA_ALTA, + OBRAS_EJECUCIONES.FECHA_MODIFICACION +FROM OBRAS_EJECUCIONES + LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = OBRAS_EJECUCIONES.ID_SUBCONTRATA) + LEFT OUTER JOIN OBRAS_EJECUCIONES_PRESUPUESTOS ON (OBRAS_EJECUCIONES_PRESUPUESTOS.ID_EJECUCION = OBRAS_EJECUCIONES.ID) + LEFT OUTER JOIN PRESUPUESTOS_CLIENTE ON (PRESUPUESTOS_CLIENTE.ID = OBRAS_EJECUCIONES_PRESUPUESTOS.ID_PRESUPUESTO) + LEFT OUTER JOIN OBRAS_EJECUCIONES_PEDIDOS_PROV ON (OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_EJECUCION = OBRAS_EJECUCIONES.ID) + LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_PEDIDO) +GROUP BY + OBRAS_EJECUCIONES.ID, + OBRAS_EJECUCIONES.ID_OBRA, + OBRAS_EJECUCIONES.FECHA_INICIO, + OBRAS_EJECUCIONES.FECHA_FIN, + OBRAS_EJECUCIONES.ID_SUBCONTRATA, + CONTACTOS.NOMBRE, + OBRAS_EJECUCIONES.OBSERVACIONES, + OBRAS_EJECUCIONES.FECHA_ALTA, + OBRAS_EJECUCIONES.FECHA_MODIFICACION; + /* View: V_PED_PROV_SITUACION */ CREATE VIEW V_PED_PROV_SITUACION( @@ -3335,6 +3414,9 @@ ALTER TABLE FORMAS_PAGO ADD PRIMARY KEY (ID); ALTER TABLE FORMAS_PAGO_PLAZOS ADD PRIMARY KEY (ID); ALTER TABLE INFORMES ADD CONSTRAINT PK_INFORMES PRIMARY KEY (ID); ALTER TABLE MOVIMIENTOS ADD CONSTRAINT PK_MOVIMIENTOS PRIMARY KEY (ID); +ALTER TABLE OBRAS_EJECUCIONES ADD CONSTRAINT PK_OBRAS_EJE PRIMARY KEY (ID); +ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT PK_OBRAS_EJE_PRE PRIMARY KEY (ID); +ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT PK_OBRAS_EJE_PED_PROV PRIMARY KEY (ID); ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT PK_PAGOS_CLIENTE PRIMARY KEY (ID); ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT PK_PAGOS_PROVEEDOR PRIMARY KEY (ID); ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT PK_PEDIDOS_CLIENTE PRIMARY KEY (ID); @@ -3382,6 +3464,11 @@ ALTER TABLE FACTURAS_CLIENTE ADD CONSTRAINT FK_FACTURAS_CLIENTE_EMPRESAS FOREIGN ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT FK_FACTURAS_PROVEEDOR_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION; ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS FOREIGN KEY (ID_ARTICULO) REFERENCES ARTICULOS (ID); ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS2 FOREIGN KEY (ID_ALMACEN) REFERENCES ALMACENES (ID); +ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID); +ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_2 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID); +ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID); +ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_2 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID); +ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_3 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID); ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT FK_PAGOS_CLIENTE FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_CLIENTE (ID); ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT FK_PAGOS_PROVEEDOR FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_PROVEEDOR (ID); ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID); diff --git a/Resources/Iconos/Inventario/24x24/Thumbs.db b/Resources/Iconos/Inventario/24x24/Thumbs.db deleted file mode 100644 index 60fd9c8ad89a7562b9b115464d381be3c4fceab9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11264 zcmeHMcT|(vw*P=2U3xD;ihvZAjzof>AfVEuHxcPgKzhkoDT+vuUZhEfp-TbvocLWo30NoM2QdHuDOe%4@dN_lmreixtAEp9Xa$ZzSt)HA2?Kqgh0gR} z`;$07(FYQT`?K>C&x+r#^Q!~4;HujKZlDz${|zY^Krj5S>Msn=)BEdOMA?aUBiiJT z=bz{os6hOg^G`hYM1R2wf(-;a2o4aOAh>6a+trQy>ID2!ap-K^*5a zSc-rU{k8pj{r;~1XIFse(}{Z^7BoI#ny>&cXlrO`03_h1z6HJj!VI7ekdcxS-ylK2 zH#sFaIRrvZO+j&jl9rm5mWG;!hVCR21Kml+lQc98Yz&OdEUc`owDjy8Y%Cm1EUYZV zK}g8J??A|@$jPZ#=xFFz{$(Px0gRO3p5h=Q5dcUTNyr#U2%W@zL_!WqOBDE5A|VB3 zJV8N8MNI=T)Pg63gp7<7LPnGtuHonY3tr4aC9k-i_BO)02W`IgmS zbX!Q~w)X=nYBqKbPA=ioBBEkvWaZ=)6qPQhU%sNDc~wi>@TQTmiK&^n-5q-eM<-_& zpL@Q3{sDnO4<9{#5*`s56&IiIGBGJRB{e5EFaLExVNr2abxmzu{hNly_Kwc3?w;Ph z{;~0i$@f#!A5e?vrR9~?wNIbFV7~3_?qR><_78}9kpN`BsPzxc{-75ls23>&LI$BA z>P1584}y#lLVoJ}38qW>6t-T>0@C*>S=3^)E8kKH${1|3-u51)W)qTK6vhx$`=QyN zQ|!UNrP)6e`)|Ea04*5_Xgo4T01g~BZhjk6=AP9tY@HNpjMqm#lL+csrYz!J9u+9Q za;A_(P`_;rlIfbhE!D)9zm4v&dcQ|!?s}NA#ZFZ=*I67pJILa~>Ocna#U~0eb;fDQ zA;|)i4WbBu*;Hw{)Yj@mE&0B$&KpLfvjtaZcnpd~+m{!-yONjVbi;8ohTHH*t+Y;D z<<*Vvj3+ncOzq+%Z==QB%QiBxYVNOODCg9dHJOrVX{SWL1?ER-?XOZ$*vNOm__zwT zgqE2MAR23!yUXb;LtbLLS{ z5gS`=s(iyVz!+;6g>uexzDfFolO{Ar4Du?H;pIV?;MtNSZ~YR-oNAMLbo}_B<-XJH zQ<2{3o=x*UpJNz~$hI}3e9iWFHLo?reQ}VOyHOGdxfN#?)x%RCT|NU|hFld~6-wqZdBKQ+zXMA4>S}+ll@s zxBvRz9P|H^{~`d^4G*jwJEtyWZ00Zx9ZR~S>n1kc^#$1y$Clir`9(s? zb$BvWhXB^@0CwxAR^u>zM6nB3$tAlo9b0>rpviSxev9BhK-hu2&)G83yXOT7H4B|5 zcYs1WUJ%0`B?o0h4d25yKA35%bYYh-WM4Nf*D}4MI-rx@L^@3^^H@)jo)iadZxtGs zyDxQLc>O6lu%<@|HG!aOa+>Pusf~yucn=ex&m{pn8LyY1rMaLd)6VbjqsJ0vmRd zrB6_%eo!#I8rpLICxG1Xllg4c+jmxHuf}v7IHVQ0nCG#*shZsMl(G(vWE1w2QO(DE zyHk@w`G&K-NPNTlV4`?bJE5U0fA3hAhLuWeM-G{ah@HeWEg&C-_!ecTn~iTeH1gk> z`C?++-$UZh5_QF3+K4-%k2+UT|5=9J;<`22_FQr%)%M{WFI+Eif1PQav)o$8?A1s6 z4E$}{*yX0}$ouJM;-Ws4JkB>hNoRgsKSuyk(#0npwrq{t=6O*tY6}MDUkC= z#`G&E@%cTF+Ya#kkq!9#4{qZ4#Cdi@cqy#D^^ybwmjGEXdr=220}6l|AP-1_8JrSW zQvz$UVDCBbsU+A|06B?Ir2$3oMQoo3doKTIs{u0LnEx00E&n3QMvP4V%vi*nf{vIh z{DcMeMmR@{RYF zNJG^&lKN{uN*9wc@EP+w9%2a@oMgLkEktJ=fMV`493EG75P)Y>ny<`M=aev^qtVy< zCUPEWYnbVMFlVB8eHF4)ejuim~sA7)%4fK=-Fq3kPUkXH|td4K-?+V z@?B-98y=xUp5?_RUG>gktU!cYtk2)1XF#>5?kbnxiF&|i(` zZWZW6S`5MoK=jS|?aWWeT?1PJ(DtLlgq#4-r7a*2*pCbeK$rvp*cXVwxy^&!BS>`C zA;ysa^s#v1gwP*9mzo zr(}+i=P4#VJWu-9o#BhwFmP&>F~q|7H3G2QxU!CLkt8#yW1a~x>5{&D+quKN5-Lz> z5ZJJHqS5mSf*YoQF~%PB=sYy6oRC;JyqtLONWbVq`W+TW>#y^;@YeI0`dyqimBim$ zS>^Yy*t^cmHEADU8)wv8pVfp zwFuf18&3dEq=I%7p3+*>jSSL#DjcOqW}$W7{*e}pskAg#qIkPcV3TYWbyesDKSNnG zFPUBy=5(ZOiRr+&naw5M0VemEMg_gzyBZpoc(_*g4iyc1TIt>}7QVrcqzdvwW%#Qb z`JsALin|}ZCZ-I#9XZbIs?-`tKU(4Va77YjQ84yhdZlB+;F+yMeDJ)zcTe~X-#LsE z0Vr&SAE-N9)6lOQEg+u;WkrOTmAI-1)J(|H1smHF<~3JXHguon>H7gvIYx z_>ZLV$zpE(^4%-W#$n6^ptmfP0N8H05`Y^?Mtd;HXPvh)RbKOXNc);MZUln+bjcyv zoTD)zJK{myN=s^MUF6R5vO}g2rR^Kp1#K3lQ%nS4pl_mrg`*A#(-ju{+LSTVNNbnA z|2-P%IQ+yflVWVkZKZL%_M(R3={e8)&xP+vnW=B?YjIyv`ucS+G#q0BC zo9gPCMoJc;50H?(<5N-|9#WF4bN!mwoHOZsl<%Mfz*KJj=mhRkc8Dl$D!9z)AP+j7 z`XtiJmc`JjB=&sbNRAjv+BC0#J5q7suGh}@9^`{L?ro!jXSFo+^cK3#Im}$W2QS;T zJI#dOlBn3mWEHus)rpVpW>L=ukYRrstBF1-zM*rqv7!Erg}AZ||2R5&qqFMjzJsWF zXjd9ZP>=}<_MJI-v`eob^5qqB(LsgNi8096pLUQ{caycoO4bEWtfR-Y@DyWN3{+6| zFxJGr{x1P2<rzvM@zH7I>g&y35a&CC|f;S7?+GCq1UZQEHH}M_i zZp@+Kcf4w{-gqWjeWDKObRW_bXnwtfHJ@@nHGpL0kl#WQ0Lop#?Vb#qlqLS+_Yb3Q zScuLKUkQ@L&IY_eH?jE`vHXsb=lSbM!|6sC2}I6$0S2#YpGc7WA@7 z`T``j{h0>=&|9kfURn{JMX?tXslqZLxmy91k1Uw}a@jiYK-Qpk7fm@c%-?rddPTy^ z%|LV0f6tqA`iN@OzOf!ZiCfA3(r9rt=gaVV-N@6z>Ybid$!-(x6>lZZVVAFFzS=LB ztR`wqZma~GUXgp}zYo<4VSI7+Es|6eVt46hPWawtLcsm%B^wIFv;pE+ps|FH9&`3# z>AelXjz&IY{*Ai2&yLQno(P_bDj_fjTS=pCU3>2Gx^br2X8}(DFtS+$;A*+6+p4}N zBzLS7zFU|sdwc)&hP&|od0E34o`6Ecgf;!KKurmPdd0L^EX?$Nbg(%A7|);78{_7K zVN{6+4tk*JYAsCwYLk8nkIm3H zJT?gQk@AC{`-UkzEDVaZG|K9sqhHu8Ds?^>-#791kGH;@{9^U=t?a6Zj#BrxO4y3Z zf)}IFX2t6BK>LyPT65PKFng{fb8S7Y?poiIUlCa7U zYFu=YxpEiJxV4V6FC)LA1*J)d$A!hwCzlozp1+zZc2ObO4oe?^FLI1B$*qu#XDcZV zTh*4JhbhfJgTF>{v-BM(tJ-It1s}US?d-WMx>}aP01o{`k7jRg*EIw;ekzltWpa~$ zyc|DzTYlf&L8F!lhMqdSve241_Yd4*3XMOH!fY3&?_E^Z z9Yb094JkSNToc9VSGx?9@9DL%IvN8;~ueUVd+ITmcF z5NFh`6@F-Ba?~7-f64sXD=J~%>Ue7Zyo8Y0(mczp$8glht=JdvkquYlCG_i)$)_YgY)5SL))@#?9_ag`$`h;alqoeDqU7`*r4sJ@+PrtpIjX09>gVnORqmfF zfg8YDIZ%-acZIWAxwO*8b#pg7yAlycA_z%hzO1njpxCXMA1aK7GZKJ1fe)0lNa_|m ztkN^#+Ft{kbHk(k4J=~@!7B=;cEyRC6H)}ALU8CveY>ZP0C2X7sE39kd{0!fHXF|3 z!gORjPi8|r*azO!r(PV_Xe+(e^Prd+E*TuXW0}UC{*Fwmr@xl^~g!iZ*p5-v1hA2p+!8um7CvS%+mJH}wtxm?OfBvqEdry(FrL`J7wOXRo z(Fa@KgR$bg!46Eh+PQ9gZX9B>rcGPbpGna*ZZ;Pz6-P5+| z_k^;{GQs^Rdu|mRxn?wEl*57-_PIGjHT)F!!sizeLb{YBXBUt8w`MGpq;Py8q1LQSkxp(vyMF|Kh3!} zZys>k7)|z5GXnnYCX>Lta+K*KQaDA!Y`KTr6u66ue@VL*8MO+pJG*XGRTU zD9pw@Y63YTPmNfwY*86sqZ}BG=;nQq(HYXveM3ACm%X?Z#YaCX7sC=z($&g1E?a2N zWC>3z(teR5O!-RS@?i831+b)&{@!Fm60MJ>r?gDSR0^p&XUAVoJG#K*IMxJxZo?~S zhl^j#P*&ewi-5VnluL(03w0M=84)bBlAi8dvnkM(3~Q$kxo)|0gdhpMcljB_~97z25$kwZ@_3zf#UTjSdb05W>`MD$ar0VA$ z*8RuZU)u|AVk}&dtYIu6SKrI+%dVa+a%vQ+Z1yh^W&6&UEygKE{R-84v+Ah#WBl&$ z`UkWPfMf1bk$O%ij;4Q9ab)4?k>!euadx%!^o51Yk@#>g!uLb^v}H0=Duy`%B%m z3vl-P(i56c7TBfF$7SxIqe%oE4I6$CeiG)34sP+W*xs6{Rc+v`dQ{ z1mGe9Z4agzJ+8ZMb$NGvF|N$oVS8F~hYfwQGn0y4xgDKiMvp}_T(9OGe=2ips`1H$ z9w&ye2iTZ~8;!%xVl6(=1bSzveXeZK&g3$nrw#V6NK)bWFpbk~hqA0oCDz%cx>DF$Qa~Lz|H(lS8@GrtY1X#&>hNvod9uiz;{cd63w<5gp zbZ)>wU2eXGmb;%+tr+J(y@qkKu~mO>tLZ*PA|)p*EHZAb!Go(QAY$T~6>??Jq&|;6 zrDwtGWll@lQ^ZpESHX@DouxrP_|vl7)48`(6{eRO4q;U}3tQCl3W*j2utk{%luE4q z0a^O&NbWE?Nc5;3Mz~)8?cg9%9cPkzod7^qanZg3XQg0f<+{ObhdL-!%DD@4^C-^p znMKX@vuJv99BQglMKatBvoJn!{q>CHb@GboEw-z3%0ImenWnh)Or< zm^h~xq2_z$hF6@=Tb-wKa}Z0?uyJK7OcQf z5}Nym=9hr^0}3$Ve6WUB!`8spmJ!>+_&YPvGS}U31mNxb-XRNP=Ff~X-12VTwzgAM zM}EJpl3=*7Y9p&A(?g*NuRH_|B+u=BrTYAACfmskS2y@=FklKcUcfWSK)BfF%R2dQ zdndH+eH-mpT=kA6Lu)!?LtoZTiT88uL;iT$iD$chvshmdKI;Vst0QQ$o AsQ>@~ literal 0 HcmV?d00001 diff --git a/Source/ApplicationBase/ApplicationBase.dproj b/Source/ApplicationBase/ApplicationBase.dproj index 3545777f..86b2f37f 100644 --- a/Source/ApplicationBase/ApplicationBase.dproj +++ b/Source/ApplicationBase/ApplicationBase.dproj @@ -60,27 +60,27 @@ MainSource - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Base/uDMBase.pas b/Source/Base/uDMBase.pas index b57c84f3..2e2e2344 100644 --- a/Source/Base/uDMBase.pas +++ b/Source/Base/uDMBase.pas @@ -4,7 +4,7 @@ interface uses Controls, SyncObjs, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher, - TBXOffice2003Theme, Classes, ImgList, + TBXOffice2003Theme, Classes, ImgList, SysUtils, DataAbstract4_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl, JvComponentBase, cxIntlPrintSys3, JvLogFile, dxPSGlbl, dxPSUtl, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPgsDlg, dxPSCore; @@ -45,7 +45,7 @@ implementation uses uDataModuleConexion, Dialogs, TBX, TBXThemes, Forms, Windows, - JclFileUtils, cxControls, SysUtils, uDataModuleConfiguracion, + JclFileUtils, cxControls, uDataModuleConfiguracion, SHFolder, uSistemaFunc, uAppInfoUtils; { diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index aefff5ea..a21291ec 100644 --- a/Source/Cliente/FactuGES.dproj +++ b/Source/Cliente/FactuGES.dproj @@ -59,6 +59,10 @@ + + + + ExpressPrinting System by Developer Express Inc. PluginSDK for Delphi 10 (Runtime) Microsoft Office 2000 Sample Automation Server Wrapper Components diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index 6fc88ef0699317021415be1bb3385db4c81edc9a..885c5563a39b95e46967a3bf84929d5b3c194e67 100644 GIT binary patch delta 297 zcmYLDJq`g;5dL<`jY1(3Dj|_jIe~_tkZAO>LDq&v(5NUhPVh9=B^28TZr}`#-~#L0 z_iRiu^JdDI?SXX(Ri=hAo08x}?TI_%t?38X;LQ(ItbTWY1CI3KHR6UTQ z^-)eBgG!YE3oUqkojUiT?m)Ni_FgILv3&h=(HM~oh3x|{j0ZVK(!Nr6W6Grxr y>l5K%M4r!gg(+>4FxcKt!=quWoSYO-K6yG+=^|b(uaAhWeZ88~R?Dg5McQBDRyGX) delta 101 zcmbPnkn6&Ju7(!IEldaIDt%yNU{GLSVEF%E0EmGcATVIy;sG;�SRdkLEIYh_Em~ o MainSource - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + +
fDialogBase
diff --git a/Source/GUIBase/uEditorDBBase.pas b/Source/GUIBase/uEditorDBBase.pas index 2d9ca0cb..9f18482a 100644 --- a/Source/GUIBase/uEditorDBBase.pas +++ b/Source/GUIBase/uEditorDBBase.pas @@ -144,7 +144,9 @@ end; procedure TfEditorDBBase.dsDataTableDataChange(Sender: TObject; Field: TField); begin inherited; - if not (Sender as TDADataSource).Opening then + if not (Sender as TDADataSource).DataTable.Opening and + not (Sender as TDADataSource).DataTable.Closing and + not (Sender as TDADataSource).DataTable.Fetching then ActualizarEstadoEditor; end; diff --git a/Source/GUIBase/uEditorDBItem.dfm b/Source/GUIBase/uEditorDBItem.dfm index 8a9bfb76..c808f569 100644 --- a/Source/GUIBase/uEditorDBItem.dfm +++ b/Source/GUIBase/uEditorDBItem.dfm @@ -75,6 +75,10 @@ inherited fEditorDBItem: TfEditorDBItem TabOrder = 2 object pagGeneral: TTabSheet Caption = 'General' + ExplicitLeft = 0 + ExplicitTop = 0 + ExplicitWidth = 0 + ExplicitHeight = 0 end end inherited StatusBar: TJvStatusBar diff --git a/Source/GUIBase/uViewDetallesGenerico.dfm b/Source/GUIBase/uViewDetallesGenerico.dfm index c672004e..ec237dcf 100644 --- a/Source/GUIBase/uViewDetallesGenerico.dfm +++ b/Source/GUIBase/uViewDetallesGenerico.dfm @@ -39,6 +39,7 @@ inherited frViewDetallesGenerico: TfrViewDetallesGenerico OptionsSelection.MultiSelect = True OptionsSelection.UnselectFocusedRecordOnExit = False OptionsView.CellEndEllipsis = True + OptionsView.NoDataToDisplayInfoText = '' OptionsView.CellAutoHeight = True OptionsView.ColumnAutoWidth = True OptionsView.GridLineColor = cl3DLight diff --git a/Source/GUIBase/uViewDetallesGenerico.pas b/Source/GUIBase/uViewDetallesGenerico.pas index d2513866..59be2fde 100644 --- a/Source/GUIBase/uViewDetallesGenerico.pas +++ b/Source/GUIBase/uViewDetallesGenerico.pas @@ -94,7 +94,7 @@ end; procedure TfrViewDetallesGenerico.actAnchoAutomaticoExecute(Sender: TObject); begin inherited; - cxGridView.ApplyBestFit; + cxGridView.ApplyBestFit(nil, True, False); end; procedure TfrViewDetallesGenerico.actEliminarExecute(Sender: TObject); diff --git a/Source/GUIBase/uViewPreview.dfm b/Source/GUIBase/uViewPreview.dfm index 2bc9d8f7..41a7185e 100644 --- a/Source/GUIBase/uViewPreview.dfm +++ b/Source/GUIBase/uViewPreview.dfm @@ -2,8 +2,8 @@ inherited frViewPreview: TfrViewPreview object frxPreview: TfrxPreview Left = 0 Top = 0 - Width = 294 - Height = 214 + Width = 445 + Height = 291 Align = alClient OutlineVisible = False OutlineWidth = 121 diff --git a/Source/GUIBase/uViewTotales.dfm b/Source/GUIBase/uViewTotales.dfm index 04ae4ef6..06987e90 100644 --- a/Source/GUIBase/uViewTotales.dfm +++ b/Source/GUIBase/uViewTotales.dfm @@ -1,14 +1,14 @@ inherited frViewTotales: TfrViewTotales - Width = 451 - Height = 284 + Width = 790 + Height = 303 Align = alBottom - ExplicitWidth = 451 - ExplicitHeight = 284 + ExplicitWidth = 799 + ExplicitHeight = 303 object dxLayoutControl1: TdxLayoutControl AlignWithMargins = True Left = 0 Top = 0 - Width = 451 + Width = 790 Height = 217 Margins.Left = 0 Margins.Top = 0 @@ -19,6 +19,7 @@ inherited frViewTotales: TfrViewTotales TabOrder = 0 TabStop = False AutoContentSizes = [acsWidth, acsHeight] + ExplicitWidth = 451 object Bevel1: TBevel Left = 104 Top = 109 @@ -27,14 +28,14 @@ inherited frViewTotales: TfrViewTotales Shape = bsBottomLine end object Bevel3: TBevel - Left = 278 + Left = 401 Top = 28 Width = 3 Height = 122 Shape = bsRightLine end object Bevel4: TBevel - Left = 390 + Left = 513 Top = 109 Width = 192 Height = 9 @@ -77,7 +78,7 @@ inherited frViewTotales: TfrViewTotales Width = 87 end object ImporteIVA: TcxDBCurrencyEdit - Left = 461 + Left = 584 Top = 55 AutoSize = False DataBinding.DataField = 'IMPORTE_IVA' @@ -112,7 +113,7 @@ inherited frViewTotales: TfrViewTotales Width = 20 end object ImporteTotal: TcxDBCurrencyEdit - Left = 391 + Left = 514 Top = 129 AutoSize = False DataBinding.DataField = 'IMPORTE_TOTAL' @@ -182,7 +183,7 @@ inherited frViewTotales: TfrViewTotales Width = 65 end object edtIVA: TcxDBSpinEdit - Left = 390 + Left = 513 Top = 55 AutoSize = False DataBinding.DataField = 'IVA' @@ -223,7 +224,7 @@ inherited frViewTotales: TfrViewTotales Width = 65 end object ImporteBase: TcxDBCurrencyEdit - Left = 390 + Left = 513 Top = 28 AutoSize = False DataBinding.DataField = 'BASE_IMPONIBLE' @@ -258,7 +259,7 @@ inherited frViewTotales: TfrViewTotales Width = 91 end object edtRE: TcxDBSpinEdit - Left = 390 + Left = 513 Top = 82 AutoSize = False DataBinding.DataField = 'RE' @@ -299,7 +300,7 @@ inherited frViewTotales: TfrViewTotales Width = 65 end object ImporteRE: TcxDBCurrencyEdit - Left = 461 + Left = 584 Top = 82 AutoSize = False DataBinding.DataField = 'IMPORTE_RE' @@ -438,7 +439,7 @@ inherited frViewTotales: TfrViewTotales Width = 20 end object bTiposIVA: TButton - Left = 130 + Left = 253 Top = 55 Width = 132 Height = 21 diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dproj b/Source/Modulos/Contactos/Views/Contactos_view.dproj index 47c4f912..df8232bc 100644 --- a/Source/Modulos/Contactos/Views/Contactos_view.dproj +++ b/Source/Modulos/Contactos/Views/Contactos_view.dproj @@ -49,52 +49,52 @@ MainSource - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fEditorCliente
diff --git a/Source/Modulos/Contactos/Views/uEditorContacto.dfm b/Source/Modulos/Contactos/Views/uEditorContacto.dfm index 23961d93..c825c2ce 100644 --- a/Source/Modulos/Contactos/Views/uEditorContacto.dfm +++ b/Source/Modulos/Contactos/Views/uEditorContacto.dfm @@ -7,7 +7,6 @@ inherited fEditorContacto: TfEditorContacto ClientWidth = 632 Scaled = False ExplicitWidth = 640 - ExplicitHeight = 240 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader @@ -73,7 +72,7 @@ inherited fEditorContacto: TfEditorContacto end inherited pgPaginas: TPageControl Width = 626 - ActivePage = pagPersonal + ActivePage = pagDatosBancarios ExplicitWidth = 626 inherited pagGeneral: TTabSheet ExplicitLeft = 4 @@ -109,18 +108,6 @@ inherited fEditorContacto: TfEditorContacto inherited ToolBar1: TToolBar Width = 618 ExplicitWidth = 618 - inherited ToolButton1: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton4: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton2: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton7: TToolButton - ExplicitWidth = 113 - end end end end @@ -152,18 +139,6 @@ inherited fEditorContacto: TfEditorContacto inherited ToolBar1: TToolBar Width = 618 ExplicitWidth = 618 - inherited ToolButton1: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton4: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton2: TToolButton - ExplicitWidth = 113 - end - inherited ToolButton7: TToolButton - ExplicitWidth = 113 - end end end end diff --git a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res index 1641339fcc482e7e3492d1b45813a86619622c33..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch delta 11 ScmeBCZD5|Duvteife`=|>;pCc literal 4748 zcmbW5&ub)A5XUPdpe&2#;C*uNAUVhgd+&(4um@dnom`vXF9g}ZuHJ;se=<3UNdFJg zbCw+UD9j$byGIXV`~6hC>h4S?F|k9X-j90q{Z_qtZ<;nUJCO8!h?p${kR>3GhM`oH*q zk=UsjOCIgA_4!`B+Gb&`I84R)bT4dy-BQV<-SyFz?R8ILEQ(+JB$u{sEXE@j@B*7W zT;iZH#|OJ<&DO$RCkM6VbK3(B(k{nbdv1lpc;E$xz9as|v3uE1V{hw2w~g3eD0an7 z{BT%G%irdMe*|oDJmgvJaA2`9B<6Xi*?M~Q;)@Sbfwf3uf zVaWkbUjU=;sL{BlYemIZXv%qZ{SZw{-TCU+;!nH6KDDIJumU+9{E0zXW4>7T)y|>$DQlv zRJe?TjSp{c!DqeayAnSMTtZZT;>LN7J0Rls+5m@q)MbyB*eL%Eu@(+$Cw}Pd@q7N| z%Q0*AHpCP^b9v`@jx-l_FD>khpW2W8(OU2&V5TrnoAY-m_hlcV?zq3;7{2gF{J#Hc z6R+o~mVenX?>@W0@_DVzyOFs(5464CY{!q9ChoF#_*eXi@4gFuV8?vhl=_w5$iKL0 zEV0nMBcN08xtRmsgJrqjh@s#|{?*ssnsG)mH*wa6{efF0JFWHok@kA5%b661{B38= zCcgJ|*ZFTpV$8<-&+AWpa)Q8*`wL&hMeNQ^v6I7$HSdLZhZ^&+6<@Uw_Zsml9^v3W zVvPDBKHh;i=RU4J_ta3E;)Mn>Y+L zKLZ0UQ+*km9FO-b?U4gmn-62iwzH6&*duKGo~aUV)bYDla8wWZ9+^7p-F<8lP@i!m z@vhbD_${F}h>^T;C(?(b*OJDk?{dEXB?nuehoON3HAb!7Mr7-ls!84-5V-jJugbu<_$}mU=Yd9!?TOX;|B-#B)+0x#9q*yqJiqS!`49d=7ztk$O+9=1i;?K_|J<8T z?0b7=-`Z3A#vV$4XJ5(lQ~TOZHUFdA%oWvK5zg&_IKXIbughQBA8XAsd#=@|TFLXC zy(^m((;DnQmDQKatmw!@c`| G?EMQ&4NnpP diff --git a/Source/Modulos/Obras/Controller/Obras_controller.dproj b/Source/Modulos/Obras/Controller/Obras_controller.dproj index 9f80d81d..10932e92 100644 --- a/Source/Modulos/Obras/Controller/Obras_controller.dproj +++ b/Source/Modulos/Obras/Controller/Obras_controller.dproj @@ -46,11 +46,11 @@ MainSource - - - - - + + + + + diff --git a/Source/Modulos/Obras/Controller/uObrasController.pas b/Source/Modulos/Obras/Controller/uObrasController.pas index f818b713..cff3477c 100644 --- a/Source/Modulos/Obras/Controller/uObrasController.pas +++ b/Source/Modulos/Obras/Controller/uObrasController.pas @@ -29,6 +29,10 @@ type procedure QuitarDireccion(AObra: IBizObra); procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload; procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload; + +// procedure NuevaEjecucion(AObra: IBizObra; const AFecha : TDateTime); + procedure CerrarEjecucionActiva(AObra: IBizObra; const AFecha : TDateTime); + function LocalizarEjecucionActiva(AEjecuciones: IBizEjecucionesObra): boolean; end; TObrasController = class(TControllerBase, IObrasController) @@ -58,7 +62,7 @@ type function Eliminar(const ID : Integer): Boolean; overload; function Eliminar(AObra : IBizObra): Boolean; overload; function Guardar(AObra : IBizObra): Boolean; - procedure DescartarCambios(AObra : IBizObra); virtual; + procedure DescartarCambios(AObra : IBizObra); function Existe(const ID: Integer) : Boolean; virtual; procedure Anadir(AObra : IBizObra); function Buscar(const ID: Integer): IBizObra; @@ -70,17 +74,19 @@ type function Duplicar(AObra: IBizObra): IBizObra; procedure Preview(AObra : IBizObra); procedure Print(AObra : IBizObra); - +// procedure NuevaEjecucion(AObra: IBizObra; const AFecha : TDateTime); + procedure CerrarEjecucionActiva(AObra: IBizObra; const AFecha : TDateTime); procedure QuitarDireccion(AObra: IBizObra); procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload; procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload; + function LocalizarEjecucionActiva(AEjecuciones: IBizEjecucionesObra): boolean; end; implementation uses cxControls, DB, uEditorRegistryUtils, schObrasClient_Intf, - uIEditorObras, uIEditorObra, uDataModuleObras, + uIEditorObras, uIEditorObra, uDataModuleObras, Variants, uDataModuleUsuarios, uDAInterfaces, uDataTableUtils, uFactuGES_App, uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorListaObras; @@ -166,6 +172,35 @@ begin end; end; +procedure TObrasController.CerrarEjecucionActiva(AObra: IBizObra; + const AFecha: TDateTime); +begin + if not Assigned(AObra) then + raise Exception.Create ('Obra no asignada (CerrarEjecucion)'); + + if AObra.DataTable.Active then + AObra.DataTable.Active := True; + +{ with AObra.Ejecuciones do + begin + Insert; + FECHA_INICIO := AObra.EjecucionEnCurso.FECHA_INICIO; + FECHA_FIN := AFecha; + ID_SUBCONTRATA := AObra.EjecucionEnCurso.ID_SUBCONTRATA; + NOMBRE := AObra.EjecucionEnCurso.NOMBRE; + IMPORTE_GASTOS := AObra.EjecucionEnCurso.IMPORTE_GASTOS; + IMPORTE_INGRESOS := AObra.EjecucionEnCurso.IMPORTE_INGRESOS; + IMPORTE_TOTAL := AObra.EjecucionEnCurso.IMPORTE_TOTAL; + OBSERVACIONES.AddStrings(AObra.EjecucionEnCurso.OBSERVACIONES.Strings); + Post; + end; + + with AObra.EjecucionEnCurso do + begin + Delete; + end;} +end; + procedure TObrasController.CopiarDireccion(const ACliente: IBizCliente; AObra: IBizObra); var @@ -217,7 +252,7 @@ begin Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf); end; -procedure TObrasController.DescartarCambios(AObra: IBizObra); +procedure TObrasController.DescartarCambios(AObra : IBizObra); begin if not Assigned(AObra) then raise Exception.Create ('Obra no asignado'); @@ -454,9 +489,9 @@ begin begin ShowHourglassCursor; try -// AsignarCodigo(AObra); + if (AObra.DataTable.State in dsEditModes) then + AObra.DataTable.Post; AObra.DataTable.ApplyUpdates; - Result := True; finally HideHourglassCursor; @@ -464,6 +499,60 @@ begin end; end; +function TObrasController.LocalizarEjecucionActiva( + AEjecuciones: IBizEjecucionesObra): boolean; +begin + Result := False; + + if not Assigned(AEjecuciones) then + raise Exception.Create ('Ejecuciones no asignada (LocalizarEjecucionActiva)'); + + if AEjecuciones.IsEmpty then + Exit; + + ShowHourglassCursor; + try + with AEjecuciones.DataTable do + begin + DisableControls; + try + First; + while not EOF do + begin + if AEjecuciones.FECHA_FINIsNull then + begin + Result := True; + Break; + end + else + Next; + end; + finally + EnableControls; + end; + end; + finally + HideHourglassCursor; + end; +end; + +{procedure TObrasController.NuevaEjecucion(AObra: IBizObra; + const AFecha: TDateTime); +begin + if not Assigned(AObra) then + raise Exception.Create ('Obra no asignada (NuevaEjecucion)'); + + if AObra.DataTable.Active then + AObra.DataTable.Active := True; + + with AObra.EjecucionEnCurso do + begin + Insert; + FECHA_INICIO := AFecha; + Post; + end; +end;} + function TObrasController.Nuevo: IBizObra; var AObra : IBizObra; diff --git a/Source/Modulos/Obras/Data/Obras_data.dproj b/Source/Modulos/Obras/Data/Obras_data.dproj index 9e7e07cc..53e38832 100644 --- a/Source/Modulos/Obras/Data/Obras_data.dproj +++ b/Source/Modulos/Obras/Data/Obras_data.dproj @@ -47,7 +47,7 @@ MainSource - +
DataModuleObras
diff --git a/Source/Modulos/Obras/Data/uDataModuleObras.dfm b/Source/Modulos/Obras/Data/uDataModuleObras.dfm index 0a5d75a8..b1cbe028 100644 --- a/Source/Modulos/Obras/Data/uDataModuleObras.dfm +++ b/Source/Modulos/Obras/Data/uDataModuleObras.dfm @@ -1,7 +1,7 @@ inherited DataModuleObras: TDataModuleObras OnCreate = DAClientDataModuleCreate - Height = 234 - Width = 300 + Height = 330 + Width = 640 object RORemoteService: TRORemoteService Message = dmConexion.ROMessage Channel = dmConexion.ROChannel @@ -123,19 +123,6 @@ inherited DataModuleObras: TDataModuleObras ServerAutoRefresh = True DictionaryEntry = 'Obras_NOMBRE_CLIENTE' end - item - Name = 'ID_SUBCONTRATA' - DataType = datInteger - DisplayLabel = 'Obras_ID_SUBCONTRATA' - DictionaryEntry = 'Obras_ID_SUBCONTRATA' - end - item - Name = 'NOMBRE_SUBCONTRATA' - DataType = datString - Size = 255 - DisplayLabel = 'Subcontrata' - DictionaryEntry = 'Obras_NOMBRE_SUBCONTRATA' - end item Name = 'FECHA_ALTA' DataType = datDateTime @@ -151,6 +138,11 @@ inherited DataModuleObras: TDataModuleObras DataType = datString Size = 20 DictionaryEntry = 'Obras_USUARIO' + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + ServerAutoRefresh = True end> Params = <> StreamingOptions = [soDisableEventsWhileStreaming] @@ -160,7 +152,7 @@ inherited DataModuleObras: TDataModuleObras LogicalName = 'Obras' IndexDefs = <> Left = 192 - Top = 96 + Top = 104 end object ds_Obras: TDADataSource DataSet = tbl_Obras.Dataset @@ -168,4 +160,329 @@ inherited DataModuleObras: TDataModuleObras Left = 192 Top = 32 end + object tbl_ObrasEjecucionesPedidosProveedor: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PEDIDOS_PROV_ID' + Required = True + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID' + InPrimaryKey = True + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_EJECUCION' + end + item + Name = 'ID_PEDIDO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PEDIDO' + end + item + Name = 'ID_PRESUPUESTO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PRESUPUESTO' + end + item + Name = 'SITUACION' + DataType = datString + Size = 9 + LogChanges = False + DisplayLabel = 'Situaci'#243'n' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_SITUACION' + end + item + Name = 'ID_PROVEEDOR' + DataType = datInteger + LogChanges = False + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PROVEEDOR' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Proveedor' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE' + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Referencia' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_REFERENCIA' + end + item + Name = 'FECHA_PEDIDO' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha pedido' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_PEDIDO' + end + item + Name = 'FECHA_ENTREGA' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha de entrega' + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_ENTREGA' + end + item + Name = 'ID_ALMACEN' + DataType = datInteger + LogChanges = False + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_ALMACEN' + end + item + Name = 'NOMBRE_ALMACEN' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Almac'#233'n' + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_ALMACEN' + end + item + Name = 'ID_OBRA' + DataType = datInteger + LogChanges = False + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_OBRA' + end + item + Name = 'NOMBRE_OBRA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Obra para reserva' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_OBRA' + end + item + Name = 'BASE_IMPONIBLE' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Base imponible' + Alignment = taRightJustify + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_BASE_IMPONIBLE' + end> + Params = <> + MasterMappingMode = mmWhere + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Obras + MasterSource = ds_ObrasEjecuciones + MasterFields = 'ID' + DetailFields = 'ID_EJECUCION' + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'ObrasEjecucionesPedidosProveedor' + IndexDefs = <> + Left = 456 + Top = 256 + end + object ds_ObrasEjecucionesPedidosProveedor: TDADataSource + DataSet = tbl_ObrasEjecucionesPedidosProveedor.Dataset + DataTable = tbl_ObrasEjecucionesPedidosProveedor + Left = 456 + Top = 192 + end + object tbl_ObrasEjecucionesPresupuestos: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PRESUPUESTOS_ID' + Required = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID' + InPrimaryKey = True + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_EJECUCION' + end + item + Name = 'ID_PRESUPUESTO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_PRESUPUESTO' + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Referencia' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_REFERENCIA' + end + item + Name = 'FECHA_PRESUPUESTO' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha presupuesto' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_FECHA_PRESUPUESTO' + end + item + Name = 'SITUACION' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Situaci'#243'n' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_SITUACION' + end + item + Name = 'BASE_IMPONIBLE' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Base imponible' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_BASE_IMPONIBLE' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Nombre' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_NOMBRE' + end> + Params = <> + MasterMappingMode = mmWhere + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Obras + MasterSource = ds_ObrasEjecuciones + MasterFields = 'ID' + DetailFields = 'ID_EJECUCION' + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'ObrasEjecucionesPresupuestos' + IndexDefs = <> + Left = 192 + Top = 256 + end + object ds_ObrasEjecucionesPresupuestos: TDADataSource + DataSet = tbl_ObrasEjecucionesPresupuestos.Dataset + DataTable = tbl_ObrasEjecucionesPresupuestos + Left = 192 + Top = 192 + end + object tbl_ObrasEjecuciones: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID' + Required = True + DisplayLabel = 'ObrasEjecuciones_ID' + DictionaryEntry = 'ObrasEjecuciones_ID' + InPrimaryKey = True + end + item + Name = 'ID_OBRA' + DataType = datInteger + DictionaryEntry = 'ObrasEjecuciones_ID_OBRA' + end + item + Name = 'FECHA_INICIO' + DataType = datDateTime + DisplayLabel = 'Inicio' + DictionaryEntry = 'ObrasEjecuciones_FECHA_INICIO' + end + item + Name = 'FECHA_FIN' + DataType = datDateTime + DisplayLabel = 'Finalizaci'#243'n' + DictionaryEntry = 'ObrasEjecuciones_FECHA_FIN' + end + item + Name = 'ID_SUBCONTRATA' + DataType = datInteger + DictionaryEntry = 'ObrasEjecuciones_ID_SUBCONTRATA' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Subcontrata' + DictionaryEntry = 'ObrasEjecuciones_NOMBRE' + end + item + Name = 'IMPORTE_GASTOS' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Gastos' + Alignment = taRightJustify + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_GASTOS' + end + item + Name = 'IMPORTE_INGRESOS' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Ingresos' + Alignment = taRightJustify + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_INGRESOS' + end + item + Name = 'IMPORTE_TOTAL' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Total' + Alignment = taRightJustify + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_TOTAL' + end + item + Name = 'OBSERVACIONES' + DataType = datMemo + DisplayLabel = 'Observaciones' + DictionaryEntry = 'ObrasEjecuciones_OBSERVACIONES' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DisplayLabel = 'ObrasEjecuciones_FECHA_ALTA' + DictionaryEntry = 'ObrasEjecuciones_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DisplayLabel = 'ObrasEjecuciones_FECHA_MODIFICACION' + DictionaryEntry = 'ObrasEjecuciones_FECHA_MODIFICACION' + end> + Params = <> + MasterMappingMode = mmWhere + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Obras + MasterSource = ds_Obras + MasterFields = 'ID' + DetailFields = 'ID_OBRA' + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'ObrasEjecuciones' + IndexDefs = <> + Left = 320 + Top = 104 + end + object ds_ObrasEjecuciones: TDADataSource + DataSet = tbl_ObrasEjecuciones.Dataset + DataTable = tbl_ObrasEjecuciones + Left = 320 + Top = 32 + end end diff --git a/Source/Modulos/Obras/Data/uDataModuleObras.pas b/Source/Modulos/Obras/Data/uDataModuleObras.pas index 900a5344..c32f91d2 100644 --- a/Source/Modulos/Obras/Data/uDataModuleObras.pas +++ b/Source/Modulos/Obras/Data/uDataModuleObras.pas @@ -19,11 +19,19 @@ type rda_Obras: TDARemoteDataAdapter; tbl_Obras: TDAMemDataTable; ds_Obras: TDADataSource; + tbl_ObrasEjecucionesPedidosProveedor: TDAMemDataTable; + ds_ObrasEjecucionesPedidosProveedor: TDADataSource; + tbl_ObrasEjecucionesPresupuestos: TDAMemDataTable; + ds_ObrasEjecucionesPresupuestos: TDADataSource; + tbl_ObrasEjecuciones: TDAMemDataTable; + ds_ObrasEjecuciones: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); - protected - procedure AsignarClaseNegocio(AAlmacen: TDADataTable); virtual; + function _GetPresupuestos : IBizEjecucionPresupuestos; + function _GetPedidos : IBizEjecucionPedidosProveedor; + function _GetEjecuciones : IBizEjecucionesObra; public + function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos; function GetItems : IBizObra; function GetItem(const ID : Integer) : IBizObra; function NewItem : IBizObra; @@ -37,12 +45,7 @@ uses FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, schObrasClient_Intf; -{ TdmAlmacens } - -procedure TDataModuleObras.AsignarClaseNegocio(AAlmacen: TDADataTable); -begin - AAlmacen.BusinessRulesID := BIZ_CLIENT_OBRA; -end; +{ TDataModuleObras } procedure TDataModuleObras.DAClientDataModuleCreate(Sender: TObject); begin @@ -55,6 +58,92 @@ begin Result := GetItem(ID_NULO) end; +function TDataModuleObras._GetEjecuciones: IBizEjecucionesObra; +var + AEjecuciones : TDAMemDataTable; +begin + ShowHourglassCursor; + try + AEjecuciones := CloneDataTable(tbl_ObrasEjecuciones); + with AEjecuciones do + begin + BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION; + DetailOptions := DetailOptions - [dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates]; + end; + + with TBizEjecucionesObra(AEjecuciones.BusinessEventsObj) do + begin + Presupuestos := _GetPresupuestos; + Pedidos := _GetPedidos; + end; + + + Result := (AEjecuciones as IBizEjecucionesObra); + finally + HideHourglassCursor; + end; +end; + +function TDataModuleObras._GetPedidos: IBizEjecucionPedidosProveedor; +var + ATable : TDAMemDataTable; +begin + ShowHourglassCursor; + try + ATable := CloneDataTable(tbl_ObrasEjecucionesPedidosProveedor); + ATable.BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR; + Result := ATable as IBizEjecucionPedidosProveedor; + finally + HideHourglassCursor; + end; +end; + +function TDataModuleObras._GetPresupuestos: IBizEjecucionPresupuestos; +var + ATable : TDAMemDataTable; +begin + ShowHourglassCursor; + try + ATable := CloneDataTable(tbl_ObrasEjecucionesPresupuestos); + ATable.BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO; + Result := ATable as IBizEjecucionPresupuestos; + finally + HideHourglassCursor; + end; +end; + +function TDataModuleObras.GetEjecucionPresupuestos( + const IDEjecucion: Integer): IBizEjecucionPresupuestos; +var + APresupuestos : TDAMemDataTable; + Condicion: TDAWhereExpression; +begin + ShowHourglassCursor; + try + APresupuestos := CloneDataTable(tbl_ObrasEjecucionesPresupuestos); + with APresupuestos do + begin + BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO; + + with DynamicWhere do + begin + // (ID_EJECUCION = :ID) + Condicion := NewBinaryExpression(NewField('', fld_ObrasEjecucionesPresupuestosID_EJECUCION), + NewConstant(IDEjecucion, datInteger), dboEqual); + + if IsEmpty then + Expression := Condicion + else + Expression := NewBinaryExpression(Expression, Condicion, dboAnd); + end; + end; + Result := (APresupuestos as IBizEjecucionPresupuestos); + finally + HideHourglassCursor; + end; +end; + + function TDataModuleObras.GetItem(const ID: Integer): IBizObra; var Condicion: TDAWhereExpression; @@ -86,11 +175,12 @@ begin ShowHourglassCursor; try AObra := CloneDataTable(tbl_Obras); + AObra.BusinessRulesID := BIZ_CLIENT_OBRA; - AsignarClaseNegocio(AObra); + with TBizObra(AObra.BusinessEventsObj) do + Ejecuciones := _GetEjecuciones; Result := (AObra as IBizObra); - finally HideHourglassCursor; end; diff --git a/Source/Modulos/Obras/Model/Data/uIDataModuleObras.pas b/Source/Modulos/Obras/Model/Data/uIDataModuleObras.pas index 2c8b07b1..9fce49b5 100644 --- a/Source/Modulos/Obras/Model/Data/uIDataModuleObras.pas +++ b/Source/Modulos/Obras/Model/Data/uIDataModuleObras.pas @@ -8,6 +8,7 @@ uses type IDataModuleObras = interface ['{0FE2B5E6-DE76-4834-B27F-3C754C96B76A}'] +// function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos; function GetItems: IBizObra; function GetItem(const ID : Integer) : IBizObra; function NewItem : IBizObra; diff --git a/Source/Modulos/Obras/Model/Obras_model.dpk b/Source/Modulos/Obras/Model/Obras_model.dpk index 60b6ad955de06be847755e1f9b50b3b1354532f8..a0a1bdd979ce246bbbef25016d08e5a45e56cd3c 100644 GIT binary patch delta 32 ocmcc2`iynMFGdj^UM>X%=lr~q#N?9v;`rSBl+>KbzZh=-0KiuaiU0rr delta 13 UcmaFHdYN^@FUHAyOg9)A04a+E>i_@% diff --git a/Source/Modulos/Obras/Model/Obras_model.dproj b/Source/Modulos/Obras/Model/Obras_model.dproj index dbe4f2e7..d41576d9 100644 --- a/Source/Modulos/Obras/Model/Obras_model.dproj +++ b/Source/Modulos/Obras/Model/Obras_model.dproj @@ -44,7 +44,6 @@ FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Obras_model.dpk - CodeGear Control Panel Applet Package @@ -55,6 +54,7 @@ + diff --git a/Source/Modulos/Obras/Model/schObrasClient_Intf.pas b/Source/Modulos/Obras/Model/schObrasClient_Intf.pas index 5b38bf44..29bc5904 100644 --- a/Source/Modulos/Obras/Model/schObrasClient_Intf.pas +++ b/Source/Modulos/Obras/Model/schObrasClient_Intf.pas @@ -9,10 +9,16 @@ const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_Obras = '{0EF52B9A-E0CA-496B-B4E5-0F1CCE22F8B2}'; + RID_Obras = '{7118A0A9-F2B1-4187-B7F7-CA2E8F81221D}'; + RID_ObrasEjecucionesPresupuestos = '{6FE092E2-89E9-4D38-A6DB-8CECEC3B5563}'; + RID_ObrasEjecucionesPedidosProveedor = '{4E7A0323-7B92-45E5-9CD8-35C8D09F09DD}'; + RID_ObrasEjecuciones = '{2FAE1229-5737-4C12-B79A-15BBB0B6A5CB}'; { Data table names } nme_Obras = 'Obras'; + nme_ObrasEjecucionesPresupuestos = 'ObrasEjecucionesPresupuestos'; + nme_ObrasEjecucionesPedidosProveedor = 'ObrasEjecucionesPedidosProveedor'; + nme_ObrasEjecuciones = 'ObrasEjecuciones'; { Obras fields } fld_ObrasID = 'ID'; @@ -29,11 +35,10 @@ const fld_ObrasOBSERVACIONES = 'OBSERVACIONES'; fld_ObrasID_CLIENTE = 'ID_CLIENTE'; fld_ObrasNOMBRE_CLIENTE = 'NOMBRE_CLIENTE'; - fld_ObrasID_SUBCONTRATA = 'ID_SUBCONTRATA'; - fld_ObrasNOMBRE_SUBCONTRATA = 'NOMBRE_SUBCONTRATA'; fld_ObrasFECHA_ALTA = 'FECHA_ALTA'; fld_ObrasFECHA_MODIFICACION = 'FECHA_MODIFICACION'; fld_ObrasUSUARIO = 'USUARIO'; + fld_ObrasID_EJECUCION = 'ID_EJECUCION'; { Obras field indexes } idx_ObrasID = 0; @@ -50,16 +55,97 @@ const idx_ObrasOBSERVACIONES = 11; idx_ObrasID_CLIENTE = 12; idx_ObrasNOMBRE_CLIENTE = 13; - idx_ObrasID_SUBCONTRATA = 14; - idx_ObrasNOMBRE_SUBCONTRATA = 15; - idx_ObrasFECHA_ALTA = 16; - idx_ObrasFECHA_MODIFICACION = 17; - idx_ObrasUSUARIO = 18; + idx_ObrasFECHA_ALTA = 14; + idx_ObrasFECHA_MODIFICACION = 15; + idx_ObrasUSUARIO = 16; + idx_ObrasID_EJECUCION = 17; + + { ObrasEjecucionesPresupuestos fields } + fld_ObrasEjecucionesPresupuestosID = 'ID'; + fld_ObrasEjecucionesPresupuestosID_EJECUCION = 'ID_EJECUCION'; + fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO = 'ID_PRESUPUESTO'; + fld_ObrasEjecucionesPresupuestosREFERENCIA = 'REFERENCIA'; + fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO = 'FECHA_PRESUPUESTO'; + fld_ObrasEjecucionesPresupuestosSITUACION = 'SITUACION'; + fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE = 'BASE_IMPONIBLE'; + fld_ObrasEjecucionesPresupuestosNOMBRE = 'NOMBRE'; + + { ObrasEjecucionesPresupuestos field indexes } + idx_ObrasEjecucionesPresupuestosID = 0; + idx_ObrasEjecucionesPresupuestosID_EJECUCION = 1; + idx_ObrasEjecucionesPresupuestosID_PRESUPUESTO = 2; + idx_ObrasEjecucionesPresupuestosREFERENCIA = 3; + idx_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO = 4; + idx_ObrasEjecucionesPresupuestosSITUACION = 5; + idx_ObrasEjecucionesPresupuestosBASE_IMPONIBLE = 6; + idx_ObrasEjecucionesPresupuestosNOMBRE = 7; + + { ObrasEjecucionesPedidosProveedor fields } + fld_ObrasEjecucionesPedidosProveedorID = 'ID'; + fld_ObrasEjecucionesPedidosProveedorID_EJECUCION = 'ID_EJECUCION'; + fld_ObrasEjecucionesPedidosProveedorID_PEDIDO = 'ID_PEDIDO'; + fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO = 'ID_PRESUPUESTO'; + fld_ObrasEjecucionesPedidosProveedorSITUACION = 'SITUACION'; + fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR = 'ID_PROVEEDOR'; + fld_ObrasEjecucionesPedidosProveedorNOMBRE = 'NOMBRE'; + fld_ObrasEjecucionesPedidosProveedorREFERENCIA = 'REFERENCIA'; + fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO = 'FECHA_PEDIDO'; + fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA = 'FECHA_ENTREGA'; + fld_ObrasEjecucionesPedidosProveedorID_ALMACEN = 'ID_ALMACEN'; + fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN = 'NOMBRE_ALMACEN'; + fld_ObrasEjecucionesPedidosProveedorID_OBRA = 'ID_OBRA'; + fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA = 'NOMBRE_OBRA'; + fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE = 'BASE_IMPONIBLE'; + + { ObrasEjecucionesPedidosProveedor field indexes } + idx_ObrasEjecucionesPedidosProveedorID = 0; + idx_ObrasEjecucionesPedidosProveedorID_EJECUCION = 1; + idx_ObrasEjecucionesPedidosProveedorID_PEDIDO = 2; + idx_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO = 3; + idx_ObrasEjecucionesPedidosProveedorSITUACION = 4; + idx_ObrasEjecucionesPedidosProveedorID_PROVEEDOR = 5; + idx_ObrasEjecucionesPedidosProveedorNOMBRE = 6; + idx_ObrasEjecucionesPedidosProveedorREFERENCIA = 7; + idx_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO = 8; + idx_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA = 9; + idx_ObrasEjecucionesPedidosProveedorID_ALMACEN = 10; + idx_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN = 11; + idx_ObrasEjecucionesPedidosProveedorID_OBRA = 12; + idx_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA = 13; + idx_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE = 14; + + { ObrasEjecuciones fields } + fld_ObrasEjecucionesID = 'ID'; + fld_ObrasEjecucionesID_OBRA = 'ID_OBRA'; + fld_ObrasEjecucionesFECHA_INICIO = 'FECHA_INICIO'; + fld_ObrasEjecucionesFECHA_FIN = 'FECHA_FIN'; + fld_ObrasEjecucionesID_SUBCONTRATA = 'ID_SUBCONTRATA'; + fld_ObrasEjecucionesNOMBRE = 'NOMBRE'; + fld_ObrasEjecucionesIMPORTE_GASTOS = 'IMPORTE_GASTOS'; + fld_ObrasEjecucionesIMPORTE_INGRESOS = 'IMPORTE_INGRESOS'; + fld_ObrasEjecucionesIMPORTE_TOTAL = 'IMPORTE_TOTAL'; + fld_ObrasEjecucionesOBSERVACIONES = 'OBSERVACIONES'; + fld_ObrasEjecucionesFECHA_ALTA = 'FECHA_ALTA'; + fld_ObrasEjecucionesFECHA_MODIFICACION = 'FECHA_MODIFICACION'; + + { ObrasEjecuciones field indexes } + idx_ObrasEjecucionesID = 0; + idx_ObrasEjecucionesID_OBRA = 1; + idx_ObrasEjecucionesFECHA_INICIO = 2; + idx_ObrasEjecucionesFECHA_FIN = 3; + idx_ObrasEjecucionesID_SUBCONTRATA = 4; + idx_ObrasEjecucionesNOMBRE = 5; + idx_ObrasEjecucionesIMPORTE_GASTOS = 6; + idx_ObrasEjecucionesIMPORTE_INGRESOS = 7; + idx_ObrasEjecucionesIMPORTE_TOTAL = 8; + idx_ObrasEjecucionesOBSERVACIONES = 9; + idx_ObrasEjecucionesFECHA_ALTA = 10; + idx_ObrasEjecucionesFECHA_MODIFICACION = 11; type { IObras } IObras = interface(IDAStronglyTypedDataTable) - ['{97F3636B-5BD8-40D9-8BF9-BF90DA4AC15B}'] + ['{B1CC897D-B52E-4FBA-9CB9-E8C221F8EB19}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); @@ -116,14 +202,6 @@ type procedure SetNOMBRE_CLIENTEValue(const aValue: String); function GetNOMBRE_CLIENTEIsNull: Boolean; procedure SetNOMBRE_CLIENTEIsNull(const aValue: Boolean); - function GetID_SUBCONTRATAValue: Integer; - procedure SetID_SUBCONTRATAValue(const aValue: Integer); - function GetID_SUBCONTRATAIsNull: Boolean; - procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); - function GetNOMBRE_SUBCONTRATAValue: String; - procedure SetNOMBRE_SUBCONTRATAValue(const aValue: String); - function GetNOMBRE_SUBCONTRATAIsNull: Boolean; - procedure SetNOMBRE_SUBCONTRATAIsNull(const aValue: Boolean); function GetFECHA_ALTAValue: DateTime; procedure SetFECHA_ALTAValue(const aValue: DateTime); function GetFECHA_ALTAIsNull: Boolean; @@ -136,6 +214,10 @@ type procedure SetUSUARIOValue(const aValue: String); function GetUSUARIOIsNull: Boolean; procedure SetUSUARIOIsNull(const aValue: Boolean); + function GetID_EJECUCIONValue: Integer; + procedure SetID_EJECUCIONValue(const aValue: Integer); + function GetID_EJECUCIONIsNull: Boolean; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); { Properties } @@ -167,16 +249,14 @@ type property ID_CLIENTEIsNull: Boolean read GetID_CLIENTEIsNull write SetID_CLIENTEIsNull; property NOMBRE_CLIENTE: String read GetNOMBRE_CLIENTEValue write SetNOMBRE_CLIENTEValue; property NOMBRE_CLIENTEIsNull: Boolean read GetNOMBRE_CLIENTEIsNull write SetNOMBRE_CLIENTEIsNull; - property ID_SUBCONTRATA: Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; - property ID_SUBCONTRATAIsNull: Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; - property NOMBRE_SUBCONTRATA: String read GetNOMBRE_SUBCONTRATAValue write SetNOMBRE_SUBCONTRATAValue; - property NOMBRE_SUBCONTRATAIsNull: Boolean read GetNOMBRE_SUBCONTRATAIsNull write SetNOMBRE_SUBCONTRATAIsNull; property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; end; { TObrasDataTableRules } @@ -241,14 +321,6 @@ type procedure SetNOMBRE_CLIENTEValue(const aValue: String); virtual; function GetNOMBRE_CLIENTEIsNull: Boolean; virtual; procedure SetNOMBRE_CLIENTEIsNull(const aValue: Boolean); virtual; - function GetID_SUBCONTRATAValue: Integer; virtual; - procedure SetID_SUBCONTRATAValue(const aValue: Integer); virtual; - function GetID_SUBCONTRATAIsNull: Boolean; virtual; - procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); virtual; - function GetNOMBRE_SUBCONTRATAValue: String; virtual; - procedure SetNOMBRE_SUBCONTRATAValue(const aValue: String); virtual; - function GetNOMBRE_SUBCONTRATAIsNull: Boolean; virtual; - procedure SetNOMBRE_SUBCONTRATAIsNull(const aValue: Boolean); virtual; function GetFECHA_ALTAValue: DateTime; virtual; procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; function GetFECHA_ALTAIsNull: Boolean; virtual; @@ -261,6 +333,10 @@ type procedure SetUSUARIOValue(const aValue: String); virtual; function GetUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; @@ -291,16 +367,503 @@ type property ID_CLIENTEIsNull: Boolean read GetID_CLIENTEIsNull write SetID_CLIENTEIsNull; property NOMBRE_CLIENTE: String read GetNOMBRE_CLIENTEValue write SetNOMBRE_CLIENTEValue; property NOMBRE_CLIENTEIsNull: Boolean read GetNOMBRE_CLIENTEIsNull write SetNOMBRE_CLIENTEIsNull; - property ID_SUBCONTRATA: Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; - property ID_SUBCONTRATAIsNull: Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; - property NOMBRE_SUBCONTRATA: String read GetNOMBRE_SUBCONTRATAValue write SetNOMBRE_SUBCONTRATAValue; - property NOMBRE_SUBCONTRATAIsNull: Boolean read GetNOMBRE_SUBCONTRATAIsNull write SetNOMBRE_SUBCONTRATAIsNull; property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IObrasEjecucionesPresupuestos } + IObrasEjecucionesPresupuestos = interface(IDAStronglyTypedDataTable) + ['{83FE8907-FB93-4956-A325-5FCB67B22F87}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetID_EJECUCIONValue: Integer; + procedure SetID_EJECUCIONValue(const aValue: Integer); + function GetID_EJECUCIONIsNull: Boolean; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); + function GetID_PRESUPUESTOValue: Integer; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); + function GetID_PRESUPUESTOIsNull: Boolean; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); + function GetREFERENCIAValue: String; + procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); + function GetFECHA_PRESUPUESTOValue: DateTime; + procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime); + function GetFECHA_PRESUPUESTOIsNull: Boolean; + procedure SetFECHA_PRESUPUESTOIsNull(const aValue: Boolean); + function GetSITUACIONValue: String; + procedure SetSITUACIONValue(const aValue: String); + function GetSITUACIONIsNull: Boolean; + procedure SetSITUACIONIsNull(const aValue: Boolean); + function GetBASE_IMPONIBLEValue: Currency; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); + function GetBASE_IMPONIBLEIsNull: Boolean; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull: Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue; + property FECHA_PRESUPUESTOIsNull: Boolean read GetFECHA_PRESUPUESTOIsNull write SetFECHA_PRESUPUESTOIsNull; + property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull: Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property BASE_IMPONIBLE: Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull: Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + end; + + { TObrasEjecucionesPresupuestosDataTableRules } + TObrasEjecucionesPresupuestosDataTableRules = class(TIntfObjectDADataTableRules, IObrasEjecucionesPresupuestos) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; + function GetID_PRESUPUESTOValue: Integer; virtual; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); virtual; + function GetID_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetFECHA_PRESUPUESTOValue: DateTime; virtual; + procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime); virtual; + function GetFECHA_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetFECHA_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetSITUACIONValue: String; virtual; + procedure SetSITUACIONValue(const aValue: String); virtual; + function GetSITUACIONIsNull: Boolean; virtual; + procedure SetSITUACIONIsNull(const aValue: Boolean); virtual; + function GetBASE_IMPONIBLEValue: Currency; virtual; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); virtual; + function GetBASE_IMPONIBLEIsNull: Boolean; virtual; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull: Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue; + property FECHA_PRESUPUESTOIsNull: Boolean read GetFECHA_PRESUPUESTOIsNull write SetFECHA_PRESUPUESTOIsNull; + property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull: Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property BASE_IMPONIBLE: Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull: Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IObrasEjecucionesPedidosProveedor } + IObrasEjecucionesPedidosProveedor = interface(IDAStronglyTypedDataTable) + ['{8DA89E39-2A6C-4F96-9D65-894A6F2BA2A4}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetID_EJECUCIONValue: Integer; + procedure SetID_EJECUCIONValue(const aValue: Integer); + function GetID_EJECUCIONIsNull: Boolean; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); + function GetID_PEDIDOValue: Integer; + procedure SetID_PEDIDOValue(const aValue: Integer); + function GetID_PEDIDOIsNull: Boolean; + procedure SetID_PEDIDOIsNull(const aValue: Boolean); + function GetID_PRESUPUESTOValue: Integer; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); + function GetID_PRESUPUESTOIsNull: Boolean; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); + function GetSITUACIONValue: String; + procedure SetSITUACIONValue(const aValue: String); + function GetSITUACIONIsNull: Boolean; + procedure SetSITUACIONIsNull(const aValue: Boolean); + function GetID_PROVEEDORValue: Integer; + procedure SetID_PROVEEDORValue(const aValue: Integer); + function GetID_PROVEEDORIsNull: Boolean; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + function GetREFERENCIAValue: String; + procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); + function GetFECHA_PEDIDOValue: DateTime; + procedure SetFECHA_PEDIDOValue(const aValue: DateTime); + function GetFECHA_PEDIDOIsNull: Boolean; + procedure SetFECHA_PEDIDOIsNull(const aValue: Boolean); + function GetFECHA_ENTREGAValue: DateTime; + procedure SetFECHA_ENTREGAValue(const aValue: DateTime); + function GetFECHA_ENTREGAIsNull: Boolean; + procedure SetFECHA_ENTREGAIsNull(const aValue: Boolean); + function GetID_ALMACENValue: Integer; + procedure SetID_ALMACENValue(const aValue: Integer); + function GetID_ALMACENIsNull: Boolean; + procedure SetID_ALMACENIsNull(const aValue: Boolean); + function GetNOMBRE_ALMACENValue: String; + procedure SetNOMBRE_ALMACENValue(const aValue: String); + function GetNOMBRE_ALMACENIsNull: Boolean; + procedure SetNOMBRE_ALMACENIsNull(const aValue: Boolean); + function GetID_OBRAValue: Integer; + procedure SetID_OBRAValue(const aValue: Integer); + function GetID_OBRAIsNull: Boolean; + procedure SetID_OBRAIsNull(const aValue: Boolean); + function GetNOMBRE_OBRAValue: String; + procedure SetNOMBRE_OBRAValue(const aValue: String); + function GetNOMBRE_OBRAIsNull: Boolean; + procedure SetNOMBRE_OBRAIsNull(const aValue: Boolean); + function GetBASE_IMPONIBLEValue: Currency; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); + function GetBASE_IMPONIBLEIsNull: Boolean; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue; + property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; + property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull: Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull: Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property FECHA_PEDIDO: DateTime read GetFECHA_PEDIDOValue write SetFECHA_PEDIDOValue; + property FECHA_PEDIDOIsNull: Boolean read GetFECHA_PEDIDOIsNull write SetFECHA_PEDIDOIsNull; + property FECHA_ENTREGA: DateTime read GetFECHA_ENTREGAValue write SetFECHA_ENTREGAValue; + property FECHA_ENTREGAIsNull: Boolean read GetFECHA_ENTREGAIsNull write SetFECHA_ENTREGAIsNull; + property ID_ALMACEN: Integer read GetID_ALMACENValue write SetID_ALMACENValue; + property ID_ALMACENIsNull: Boolean read GetID_ALMACENIsNull write SetID_ALMACENIsNull; + property NOMBRE_ALMACEN: String read GetNOMBRE_ALMACENValue write SetNOMBRE_ALMACENValue; + property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull; + property ID_OBRA: Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull: Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property NOMBRE_OBRA: String read GetNOMBRE_OBRAValue write SetNOMBRE_OBRAValue; + property NOMBRE_OBRAIsNull: Boolean read GetNOMBRE_OBRAIsNull write SetNOMBRE_OBRAIsNull; + property BASE_IMPONIBLE: Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull: Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + end; + + { TObrasEjecucionesPedidosProveedorDataTableRules } + TObrasEjecucionesPedidosProveedorDataTableRules = class(TIntfObjectDADataTableRules, IObrasEjecucionesPedidosProveedor) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; + function GetID_PEDIDOValue: Integer; virtual; + procedure SetID_PEDIDOValue(const aValue: Integer); virtual; + function GetID_PEDIDOIsNull: Boolean; virtual; + procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual; + function GetID_PRESUPUESTOValue: Integer; virtual; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); virtual; + function GetID_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetSITUACIONValue: String; virtual; + procedure SetSITUACIONValue(const aValue: String); virtual; + function GetSITUACIONIsNull: Boolean; virtual; + procedure SetSITUACIONIsNull(const aValue: Boolean); virtual; + function GetID_PROVEEDORValue: Integer; virtual; + procedure SetID_PROVEEDORValue(const aValue: Integer); virtual; + function GetID_PROVEEDORIsNull: Boolean; virtual; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetFECHA_PEDIDOValue: DateTime; virtual; + procedure SetFECHA_PEDIDOValue(const aValue: DateTime); virtual; + function GetFECHA_PEDIDOIsNull: Boolean; virtual; + procedure SetFECHA_PEDIDOIsNull(const aValue: Boolean); virtual; + function GetFECHA_ENTREGAValue: DateTime; virtual; + procedure SetFECHA_ENTREGAValue(const aValue: DateTime); virtual; + function GetFECHA_ENTREGAIsNull: Boolean; virtual; + procedure SetFECHA_ENTREGAIsNull(const aValue: Boolean); virtual; + function GetID_ALMACENValue: Integer; virtual; + procedure SetID_ALMACENValue(const aValue: Integer); virtual; + function GetID_ALMACENIsNull: Boolean; virtual; + procedure SetID_ALMACENIsNull(const aValue: Boolean); virtual; + function GetNOMBRE_ALMACENValue: String; virtual; + procedure SetNOMBRE_ALMACENValue(const aValue: String); virtual; + function GetNOMBRE_ALMACENIsNull: Boolean; virtual; + procedure SetNOMBRE_ALMACENIsNull(const aValue: Boolean); virtual; + function GetID_OBRAValue: Integer; virtual; + procedure SetID_OBRAValue(const aValue: Integer); virtual; + function GetID_OBRAIsNull: Boolean; virtual; + procedure SetID_OBRAIsNull(const aValue: Boolean); virtual; + function GetNOMBRE_OBRAValue: String; virtual; + procedure SetNOMBRE_OBRAValue(const aValue: String); virtual; + function GetNOMBRE_OBRAIsNull: Boolean; virtual; + procedure SetNOMBRE_OBRAIsNull(const aValue: Boolean); virtual; + function GetBASE_IMPONIBLEValue: Currency; virtual; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); virtual; + function GetBASE_IMPONIBLEIsNull: Boolean; virtual; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EJECUCION: Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull: Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue; + property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; + property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull: Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull: Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property FECHA_PEDIDO: DateTime read GetFECHA_PEDIDOValue write SetFECHA_PEDIDOValue; + property FECHA_PEDIDOIsNull: Boolean read GetFECHA_PEDIDOIsNull write SetFECHA_PEDIDOIsNull; + property FECHA_ENTREGA: DateTime read GetFECHA_ENTREGAValue write SetFECHA_ENTREGAValue; + property FECHA_ENTREGAIsNull: Boolean read GetFECHA_ENTREGAIsNull write SetFECHA_ENTREGAIsNull; + property ID_ALMACEN: Integer read GetID_ALMACENValue write SetID_ALMACENValue; + property ID_ALMACENIsNull: Boolean read GetID_ALMACENIsNull write SetID_ALMACENIsNull; + property NOMBRE_ALMACEN: String read GetNOMBRE_ALMACENValue write SetNOMBRE_ALMACENValue; + property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull; + property ID_OBRA: Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull: Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property NOMBRE_OBRA: String read GetNOMBRE_OBRAValue write SetNOMBRE_OBRAValue; + property NOMBRE_OBRAIsNull: Boolean read GetNOMBRE_OBRAIsNull write SetNOMBRE_OBRAIsNull; + property BASE_IMPONIBLE: Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull: Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IObrasEjecuciones } + IObrasEjecuciones = interface(IDAStronglyTypedDataTable) + ['{B9C7F494-93F0-46C9-B23E-9E65F615F4A4}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetID_OBRAValue: Integer; + procedure SetID_OBRAValue(const aValue: Integer); + function GetID_OBRAIsNull: Boolean; + procedure SetID_OBRAIsNull(const aValue: Boolean); + function GetFECHA_INICIOValue: DateTime; + procedure SetFECHA_INICIOValue(const aValue: DateTime); + function GetFECHA_INICIOIsNull: Boolean; + procedure SetFECHA_INICIOIsNull(const aValue: Boolean); + function GetFECHA_FINValue: DateTime; + procedure SetFECHA_FINValue(const aValue: DateTime); + function GetFECHA_FINIsNull: Boolean; + procedure SetFECHA_FINIsNull(const aValue: Boolean); + function GetID_SUBCONTRATAValue: Integer; + procedure SetID_SUBCONTRATAValue(const aValue: Integer); + function GetID_SUBCONTRATAIsNull: Boolean; + procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + function GetIMPORTE_GASTOSValue: Currency; + procedure SetIMPORTE_GASTOSValue(const aValue: Currency); + function GetIMPORTE_GASTOSIsNull: Boolean; + procedure SetIMPORTE_GASTOSIsNull(const aValue: Boolean); + function GetIMPORTE_INGRESOSValue: Currency; + procedure SetIMPORTE_INGRESOSValue(const aValue: Currency); + function GetIMPORTE_INGRESOSIsNull: Boolean; + procedure SetIMPORTE_INGRESOSIsNull(const aValue: Boolean); + function GetIMPORTE_TOTALValue: Currency; + procedure SetIMPORTE_TOTALValue(const aValue: Currency); + function GetIMPORTE_TOTALIsNull: Boolean; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); + function GetOBSERVACIONESValue: IROStrings; + function GetOBSERVACIONESIsNull: Boolean; + procedure SetOBSERVACIONESIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_OBRA: Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull: Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property FECHA_INICIO: DateTime read GetFECHA_INICIOValue write SetFECHA_INICIOValue; + property FECHA_INICIOIsNull: Boolean read GetFECHA_INICIOIsNull write SetFECHA_INICIOIsNull; + property FECHA_FIN: DateTime read GetFECHA_FINValue write SetFECHA_FINValue; + property FECHA_FINIsNull: Boolean read GetFECHA_FINIsNull write SetFECHA_FINIsNull; + property ID_SUBCONTRATA: Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; + property ID_SUBCONTRATAIsNull: Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property IMPORTE_GASTOS: Currency read GetIMPORTE_GASTOSValue write SetIMPORTE_GASTOSValue; + property IMPORTE_GASTOSIsNull: Boolean read GetIMPORTE_GASTOSIsNull write SetIMPORTE_GASTOSIsNull; + property IMPORTE_INGRESOS: Currency read GetIMPORTE_INGRESOSValue write SetIMPORTE_INGRESOSValue; + property IMPORTE_INGRESOSIsNull: Boolean read GetIMPORTE_INGRESOSIsNull write SetIMPORTE_INGRESOSIsNull; + property IMPORTE_TOTAL: Currency read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue; + property OBSERVACIONESIsNull: Boolean read GetOBSERVACIONESIsNull write SetOBSERVACIONESIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + end; + + { TObrasEjecucionesDataTableRules } + TObrasEjecucionesDataTableRules = class(TIntfObjectDADataTableRules, IObrasEjecuciones) + private + f_OBSERVACIONES: IROStrings; + procedure OBSERVACIONES_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_OBRAValue: Integer; virtual; + procedure SetID_OBRAValue(const aValue: Integer); virtual; + function GetID_OBRAIsNull: Boolean; virtual; + procedure SetID_OBRAIsNull(const aValue: Boolean); virtual; + function GetFECHA_INICIOValue: DateTime; virtual; + procedure SetFECHA_INICIOValue(const aValue: DateTime); virtual; + function GetFECHA_INICIOIsNull: Boolean; virtual; + procedure SetFECHA_INICIOIsNull(const aValue: Boolean); virtual; + function GetFECHA_FINValue: DateTime; virtual; + procedure SetFECHA_FINValue(const aValue: DateTime); virtual; + function GetFECHA_FINIsNull: Boolean; virtual; + procedure SetFECHA_FINIsNull(const aValue: Boolean); virtual; + function GetID_SUBCONTRATAValue: Integer; virtual; + procedure SetID_SUBCONTRATAValue(const aValue: Integer); virtual; + function GetID_SUBCONTRATAIsNull: Boolean; virtual; + procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_GASTOSValue: Currency; virtual; + procedure SetIMPORTE_GASTOSValue(const aValue: Currency); virtual; + function GetIMPORTE_GASTOSIsNull: Boolean; virtual; + procedure SetIMPORTE_GASTOSIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_INGRESOSValue: Currency; virtual; + procedure SetIMPORTE_INGRESOSValue(const aValue: Currency); virtual; + function GetIMPORTE_INGRESOSIsNull: Boolean; virtual; + procedure SetIMPORTE_INGRESOSIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_TOTALValue: Currency; virtual; + procedure SetIMPORTE_TOTALValue(const aValue: Currency); virtual; + function GetIMPORTE_TOTALIsNull: Boolean; virtual; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); virtual; + function GetOBSERVACIONESValue: IROStrings; virtual; + function GetOBSERVACIONESIsNull: Boolean; virtual; + procedure SetOBSERVACIONESIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_OBRA: Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull: Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property FECHA_INICIO: DateTime read GetFECHA_INICIOValue write SetFECHA_INICIOValue; + property FECHA_INICIOIsNull: Boolean read GetFECHA_INICIOIsNull write SetFECHA_INICIOIsNull; + property FECHA_FIN: DateTime read GetFECHA_FINValue write SetFECHA_FINValue; + property FECHA_FINIsNull: Boolean read GetFECHA_FINIsNull write SetFECHA_FINIsNull; + property ID_SUBCONTRATA: Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; + property ID_SUBCONTRATAIsNull: Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property IMPORTE_GASTOS: Currency read GetIMPORTE_GASTOSValue write SetIMPORTE_GASTOSValue; + property IMPORTE_GASTOSIsNull: Boolean read GetIMPORTE_GASTOSIsNull write SetIMPORTE_GASTOSIsNull; + property IMPORTE_INGRESOS: Currency read GetIMPORTE_INGRESOSValue write SetIMPORTE_INGRESOSValue; + property IMPORTE_INGRESOSIsNull: Boolean read GetIMPORTE_INGRESOSIsNull write SetIMPORTE_INGRESOSIsNull; + property IMPORTE_TOTAL: Currency read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull: Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue; + property OBSERVACIONESIsNull: Boolean read GetOBSERVACIONESIsNull write SetOBSERVACIONESIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -624,48 +1187,6 @@ begin DataTable.Fields[idx_ObrasNOMBRE_CLIENTE].AsVariant := Null; end; -function TObrasDataTableRules.GetID_SUBCONTRATAValue: Integer; -begin - result := DataTable.Fields[idx_ObrasID_SUBCONTRATA].AsInteger; -end; - -procedure TObrasDataTableRules.SetID_SUBCONTRATAValue(const aValue: Integer); -begin - DataTable.Fields[idx_ObrasID_SUBCONTRATA].AsInteger := aValue; -end; - -function TObrasDataTableRules.GetID_SUBCONTRATAIsNull: boolean; -begin - result := DataTable.Fields[idx_ObrasID_SUBCONTRATA].IsNull; -end; - -procedure TObrasDataTableRules.SetID_SUBCONTRATAIsNull(const aValue: Boolean); -begin - if aValue then - DataTable.Fields[idx_ObrasID_SUBCONTRATA].AsVariant := Null; -end; - -function TObrasDataTableRules.GetNOMBRE_SUBCONTRATAValue: String; -begin - result := DataTable.Fields[idx_ObrasNOMBRE_SUBCONTRATA].AsString; -end; - -procedure TObrasDataTableRules.SetNOMBRE_SUBCONTRATAValue(const aValue: String); -begin - DataTable.Fields[idx_ObrasNOMBRE_SUBCONTRATA].AsString := aValue; -end; - -function TObrasDataTableRules.GetNOMBRE_SUBCONTRATAIsNull: boolean; -begin - result := DataTable.Fields[idx_ObrasNOMBRE_SUBCONTRATA].IsNull; -end; - -procedure TObrasDataTableRules.SetNOMBRE_SUBCONTRATAIsNull(const aValue: Boolean); -begin - if aValue then - DataTable.Fields[idx_ObrasNOMBRE_SUBCONTRATA].AsVariant := Null; -end; - function TObrasDataTableRules.GetFECHA_ALTAValue: DateTime; begin result := DataTable.Fields[idx_ObrasFECHA_ALTA].AsDateTime; @@ -729,8 +1250,810 @@ begin DataTable.Fields[idx_ObrasUSUARIO].AsVariant := Null; end; +function TObrasDataTableRules.GetID_EJECUCIONValue: Integer; +begin + result := DataTable.Fields[idx_ObrasID_EJECUCION].AsInteger; +end; + +procedure TObrasDataTableRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasID_EJECUCION].AsInteger := aValue; +end; + +function TObrasDataTableRules.GetID_EJECUCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasID_EJECUCION].IsNull; +end; + +procedure TObrasDataTableRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasID_EJECUCION].AsVariant := Null; +end; + + +{ TObrasEjecucionesPresupuestosDataTableRules } +constructor TObrasEjecucionesPresupuestosDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TObrasEjecucionesPresupuestosDataTableRules.Destroy; +begin + inherited; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID].AsInteger; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID].AsInteger := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetID_EJECUCIONValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_EJECUCION].AsInteger; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_EJECUCION].AsInteger := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetID_EJECUCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_EJECUCION].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_EJECUCION].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetID_PRESUPUESTOValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_PRESUPUESTO].AsInteger; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetID_PRESUPUESTOValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_PRESUPUESTO].AsInteger := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetID_PRESUPUESTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_PRESUPUESTO].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetID_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosID_PRESUPUESTO].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetREFERENCIAValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosREFERENCIA].AsString; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetREFERENCIAValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosREFERENCIA].AsString := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosREFERENCIA].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosREFERENCIA].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetFECHA_PRESUPUESTOValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO].AsDateTime; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetFECHA_PRESUPUESTOValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO].AsDateTime := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetFECHA_PRESUPUESTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetFECHA_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetSITUACIONValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosSITUACION].AsString; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetSITUACIONValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosSITUACION].AsString := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetSITUACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosSITUACION].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetSITUACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosSITUACION].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetBASE_IMPONIBLEValue: Currency; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosBASE_IMPONIBLE].AsCurrency; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetBASE_IMPONIBLEValue(const aValue: Currency); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosBASE_IMPONIBLE].AsCurrency := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetBASE_IMPONIBLEIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosBASE_IMPONIBLE].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetBASE_IMPONIBLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosBASE_IMPONIBLE].AsVariant := Null; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosNOMBRE].AsString; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPresupuestosNOMBRE].AsString := aValue; +end; + +function TObrasEjecucionesPresupuestosDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPresupuestosNOMBRE].IsNull; +end; + +procedure TObrasEjecucionesPresupuestosDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPresupuestosNOMBRE].AsVariant := Null; +end; + + +{ TObrasEjecucionesPedidosProveedorDataTableRules } +constructor TObrasEjecucionesPedidosProveedorDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TObrasEjecucionesPedidosProveedorDataTableRules.Destroy; +begin + inherited; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_EJECUCIONValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_EJECUCION].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_EJECUCION].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_EJECUCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_EJECUCION].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_EJECUCION].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PEDIDOValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PEDIDO].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PEDIDOValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PEDIDO].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PEDIDOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PEDIDO].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PEDIDOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PEDIDO].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PRESUPUESTOValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PRESUPUESTOValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PRESUPUESTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetSITUACIONValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorSITUACION].AsString; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetSITUACIONValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorSITUACION].AsString := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetSITUACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorSITUACION].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetSITUACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorSITUACION].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PROVEEDORValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PROVEEDOR].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PROVEEDORValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PROVEEDOR].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_PROVEEDORIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PROVEEDOR].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_PROVEEDOR].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE].AsString; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE].AsString := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetREFERENCIAValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorREFERENCIA].AsString; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetREFERENCIAValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorREFERENCIA].AsString := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorREFERENCIA].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorREFERENCIA].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetFECHA_PEDIDOValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO].AsDateTime; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetFECHA_PEDIDOValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO].AsDateTime := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetFECHA_PEDIDOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetFECHA_PEDIDOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetFECHA_ENTREGAValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA].AsDateTime; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetFECHA_ENTREGAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA].AsDateTime := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetFECHA_ENTREGAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetFECHA_ENTREGAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_ALMACENValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_ALMACEN].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_ALMACENValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_ALMACEN].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_ALMACENIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_ALMACEN].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_ALMACENIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_ALMACEN].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBRE_ALMACENValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN].AsString; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBRE_ALMACENValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN].AsString := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBRE_ALMACENIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBRE_ALMACENIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_OBRAValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_OBRA].AsInteger; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_OBRAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_OBRA].AsInteger := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetID_OBRAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_OBRA].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetID_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorID_OBRA].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBRE_OBRAValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA].AsString; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBRE_OBRAValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA].AsString := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetNOMBRE_OBRAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetNOMBRE_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA].AsVariant := Null; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetBASE_IMPONIBLEValue: Currency; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE].AsCurrency; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetBASE_IMPONIBLEValue(const aValue: Currency); +begin + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE].AsCurrency := aValue; +end; + +function TObrasEjecucionesPedidosProveedorDataTableRules.GetBASE_IMPONIBLEIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE].IsNull; +end; + +procedure TObrasEjecucionesPedidosProveedorDataTableRules.SetBASE_IMPONIBLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE].AsVariant := Null; +end; + + +{ TObrasEjecucionesDataTableRules } +constructor TObrasEjecucionesDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := OBSERVACIONES_OnChange; + f_OBSERVACIONES := NewROStrings(StrList,True); +end; + +destructor TObrasEjecucionesDataTableRules.Destroy; +begin + inherited; +end; + +procedure TObrasEjecucionesDataTableRules.OBSERVACIONES_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_ObrasEjecucionesOBSERVACIONES].AsVariant := TStringList(Sender).Text; +end; + +function TObrasEjecucionesDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID].AsInteger; +end; + +procedure TObrasEjecucionesDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesID].AsInteger := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesID].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetID_OBRAValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID_OBRA].AsInteger; +end; + +procedure TObrasEjecucionesDataTableRules.SetID_OBRAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesID_OBRA].AsInteger := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetID_OBRAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID_OBRA].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetID_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesID_OBRA].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_INICIOValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_INICIO].AsDateTime; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_INICIOValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesFECHA_INICIO].AsDateTime := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_INICIOIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_INICIO].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_INICIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesFECHA_INICIO].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_FINValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_FIN].AsDateTime; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_FINValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesFECHA_FIN].AsDateTime := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_FINIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_FIN].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_FINIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesFECHA_FIN].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetID_SUBCONTRATAValue: Integer; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID_SUBCONTRATA].AsInteger; +end; + +procedure TObrasEjecucionesDataTableRules.SetID_SUBCONTRATAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ObrasEjecucionesID_SUBCONTRATA].AsInteger := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetID_SUBCONTRATAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesID_SUBCONTRATA].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetID_SUBCONTRATAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesID_SUBCONTRATA].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_ObrasEjecucionesNOMBRE].AsString; +end; + +procedure TObrasEjecucionesDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_ObrasEjecucionesNOMBRE].AsString := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesNOMBRE].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesNOMBRE].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_GASTOSValue: Currency; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_GASTOS].AsCurrency; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_GASTOSValue(const aValue: Currency); +begin + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_GASTOS].AsCurrency := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_GASTOSIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_GASTOS].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_GASTOSIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_GASTOS].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_INGRESOSValue: Currency; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_INGRESOS].AsCurrency; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_INGRESOSValue(const aValue: Currency); +begin + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_INGRESOS].AsCurrency := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_INGRESOSIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_INGRESOS].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_INGRESOSIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_INGRESOS].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_TOTALValue: Currency; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_TOTAL].AsCurrency; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_TOTALValue(const aValue: Currency); +begin + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_TOTAL].AsCurrency := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetIMPORTE_TOTALIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesIMPORTE_TOTAL].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetIMPORTE_TOTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesIMPORTE_TOTAL].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetOBSERVACIONESValue: IROStrings; +begin + result := f_OBSERVACIONES; + result.Text := DataTable.Fields[idx_ObrasEjecucionesOBSERVACIONES].AsString; +end; + +function TObrasEjecucionesDataTableRules.GetOBSERVACIONESIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesOBSERVACIONES].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetOBSERVACIONESIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesOBSERVACIONES].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_ALTA].AsDateTime; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesFECHA_ALTA].AsDateTime := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_ALTA].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesFECHA_ALTA].AsVariant := Null; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_MODIFICACION].AsDateTime; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ObrasEjecucionesFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TObrasEjecucionesDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ObrasEjecucionesFECHA_MODIFICACION].IsNull; +end; + +procedure TObrasEjecucionesDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ObrasEjecucionesFECHA_MODIFICACION].AsVariant := Null; +end; + initialization RegisterDataTableRules(RID_Obras, TObrasDataTableRules); + RegisterDataTableRules(RID_ObrasEjecucionesPresupuestos, TObrasEjecucionesPresupuestosDataTableRules); + RegisterDataTableRules(RID_ObrasEjecucionesPedidosProveedor, TObrasEjecucionesPedidosProveedorDataTableRules); + RegisterDataTableRules(RID_ObrasEjecuciones, TObrasEjecucionesDataTableRules); end. diff --git a/Source/Modulos/Obras/Model/schObrasServer_Intf.pas b/Source/Modulos/Obras/Model/schObrasServer_Intf.pas index c90f84e2..b46599f0 100644 --- a/Source/Modulos/Obras/Model/schObrasServer_Intf.pas +++ b/Source/Modulos/Obras/Model/schObrasServer_Intf.pas @@ -9,12 +9,15 @@ const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_ObrasDelta = '{4F9A8678-7DAE-41FE-8D6A-E057807C57FA}'; + RID_ObrasDelta = '{A3B063D1-7BB8-4708-8E29-580EBB10FDDC}'; + RID_ObrasEjecucionesPresupuestosDelta = '{38860BE0-DDDB-4728-AB9F-5F03FBB00E4D}'; + RID_ObrasEjecucionesPedidosProveedorDelta = '{0111495A-B594-4EB0-BF9E-F779359F9DCA}'; + RID_ObrasEjecucionesDelta = '{90ABBA08-A245-47D0-8AE1-94570D4046AB}'; type { IObrasDelta } IObrasDelta = interface(IObras) - ['{4F9A8678-7DAE-41FE-8D6A-E057807C57FA}'] + ['{A3B063D1-7BB8-4708-8E29-580EBB10FDDC}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_EMPRESAValue : Integer; @@ -30,11 +33,10 @@ type function GetOldOBSERVACIONESValue : IROStrings; function GetOldID_CLIENTEValue : Integer; function GetOldNOMBRE_CLIENTEValue : String; - function GetOldID_SUBCONTRATAValue : Integer; - function GetOldNOMBRE_SUBCONTRATAValue : String; function GetOldFECHA_ALTAValue : DateTime; function GetOldFECHA_MODIFICACIONValue : DateTime; function GetOldUSUARIOValue : String; + function GetOldID_EJECUCIONValue : Integer; { Properties } property OldID : Integer read GetOldIDValue; @@ -51,11 +53,10 @@ type property OldOBSERVACIONES : IROStrings read GetOldOBSERVACIONESValue; property OldID_CLIENTE : Integer read GetOldID_CLIENTEValue; property OldNOMBRE_CLIENTE : String read GetOldNOMBRE_CLIENTEValue; - property OldID_SUBCONTRATA : Integer read GetOldID_SUBCONTRATAValue; - property OldNOMBRE_SUBCONTRATA : String read GetOldNOMBRE_SUBCONTRATAValue; property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; property OldUSUARIO : String read GetOldUSUARIOValue; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; end; { TObrasBusinessProcessorRules } @@ -148,18 +149,6 @@ type function GetOldNOMBRE_CLIENTEIsNull: Boolean; virtual; procedure SetNOMBRE_CLIENTEValue(const aValue: String); virtual; procedure SetNOMBRE_CLIENTEIsNull(const aValue: Boolean); virtual; - function GetID_SUBCONTRATAValue: Integer; virtual; - function GetID_SUBCONTRATAIsNull: Boolean; virtual; - function GetOldID_SUBCONTRATAValue: Integer; virtual; - function GetOldID_SUBCONTRATAIsNull: Boolean; virtual; - procedure SetID_SUBCONTRATAValue(const aValue: Integer); virtual; - procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); virtual; - function GetNOMBRE_SUBCONTRATAValue: String; virtual; - function GetNOMBRE_SUBCONTRATAIsNull: Boolean; virtual; - function GetOldNOMBRE_SUBCONTRATAValue: String; virtual; - function GetOldNOMBRE_SUBCONTRATAIsNull: Boolean; virtual; - procedure SetNOMBRE_SUBCONTRATAValue(const aValue: String); virtual; - procedure SetNOMBRE_SUBCONTRATAIsNull(const aValue: Boolean); virtual; function GetFECHA_ALTAValue: DateTime; virtual; function GetFECHA_ALTAIsNull: Boolean; virtual; function GetOldFECHA_ALTAValue: DateTime; virtual; @@ -178,6 +167,12 @@ type function GetOldUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + function GetOldID_EJECUCIONValue: Integer; virtual; + function GetOldID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; @@ -236,14 +231,6 @@ type property NOMBRE_CLIENTEIsNull : Boolean read GetNOMBRE_CLIENTEIsNull write SetNOMBRE_CLIENTEIsNull; property OldNOMBRE_CLIENTE : String read GetOldNOMBRE_CLIENTEValue; property OldNOMBRE_CLIENTEIsNull : Boolean read GetOldNOMBRE_CLIENTEIsNull; - property ID_SUBCONTRATA : Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; - property ID_SUBCONTRATAIsNull : Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; - property OldID_SUBCONTRATA : Integer read GetOldID_SUBCONTRATAValue; - property OldID_SUBCONTRATAIsNull : Boolean read GetOldID_SUBCONTRATAIsNull; - property NOMBRE_SUBCONTRATA : String read GetNOMBRE_SUBCONTRATAValue write SetNOMBRE_SUBCONTRATAValue; - property NOMBRE_SUBCONTRATAIsNull : Boolean read GetNOMBRE_SUBCONTRATAIsNull write SetNOMBRE_SUBCONTRATAIsNull; - property OldNOMBRE_SUBCONTRATA : String read GetOldNOMBRE_SUBCONTRATAValue; - property OldNOMBRE_SUBCONTRATAIsNull : Boolean read GetOldNOMBRE_SUBCONTRATAIsNull; property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; @@ -256,6 +243,497 @@ type property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property OldUSUARIO : String read GetOldUSUARIOValue; property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; + property ID_EJECUCION : Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull : Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; + property OldID_EJECUCIONIsNull : Boolean read GetOldID_EJECUCIONIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IObrasEjecucionesPresupuestosDelta } + IObrasEjecucionesPresupuestosDelta = interface(IObrasEjecucionesPresupuestos) + ['{38860BE0-DDDB-4728-AB9F-5F03FBB00E4D}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldID_EJECUCIONValue : Integer; + function GetOldID_PRESUPUESTOValue : Integer; + function GetOldREFERENCIAValue : String; + function GetOldFECHA_PRESUPUESTOValue : DateTime; + function GetOldSITUACIONValue : String; + function GetOldBASE_IMPONIBLEValue : Currency; + function GetOldNOMBREValue : String; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; + property OldID_PRESUPUESTO : Integer read GetOldID_PRESUPUESTOValue; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldFECHA_PRESUPUESTO : DateTime read GetOldFECHA_PRESUPUESTOValue; + property OldSITUACION : String read GetOldSITUACIONValue; + property OldBASE_IMPONIBLE : Currency read GetOldBASE_IMPONIBLEValue; + property OldNOMBRE : String read GetOldNOMBREValue; + end; + + { TObrasEjecucionesPresupuestosBusinessProcessorRules } + TObrasEjecucionesPresupuestosBusinessProcessorRules = class(TDABusinessProcessorRules, IObrasEjecucionesPresupuestos, IObrasEjecucionesPresupuestosDelta) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + function GetOldID_EJECUCIONValue: Integer; virtual; + function GetOldID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; + function GetID_PRESUPUESTOValue: Integer; virtual; + function GetID_PRESUPUESTOIsNull: Boolean; virtual; + function GetOldID_PRESUPUESTOValue: Integer; virtual; + function GetOldID_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); virtual; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetFECHA_PRESUPUESTOValue: DateTime; virtual; + function GetFECHA_PRESUPUESTOIsNull: Boolean; virtual; + function GetOldFECHA_PRESUPUESTOValue: DateTime; virtual; + function GetOldFECHA_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime); virtual; + procedure SetFECHA_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetSITUACIONValue: String; virtual; + function GetSITUACIONIsNull: Boolean; virtual; + function GetOldSITUACIONValue: String; virtual; + function GetOldSITUACIONIsNull: Boolean; virtual; + procedure SetSITUACIONValue(const aValue: String); virtual; + procedure SetSITUACIONIsNull(const aValue: Boolean); virtual; + function GetBASE_IMPONIBLEValue: Currency; virtual; + function GetBASE_IMPONIBLEIsNull: Boolean; virtual; + function GetOldBASE_IMPONIBLEValue: Currency; virtual; + function GetOldBASE_IMPONIBLEIsNull: Boolean; virtual; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); virtual; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property ID_EJECUCION : Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull : Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; + property OldID_EJECUCIONIsNull : Boolean read GetOldID_EJECUCIONIsNull; + property ID_PRESUPUESTO : Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull : Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property OldID_PRESUPUESTO : Integer read GetOldID_PRESUPUESTOValue; + property OldID_PRESUPUESTOIsNull : Boolean read GetOldID_PRESUPUESTOIsNull; + property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; + property FECHA_PRESUPUESTO : DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue; + property FECHA_PRESUPUESTOIsNull : Boolean read GetFECHA_PRESUPUESTOIsNull write SetFECHA_PRESUPUESTOIsNull; + property OldFECHA_PRESUPUESTO : DateTime read GetOldFECHA_PRESUPUESTOValue; + property OldFECHA_PRESUPUESTOIsNull : Boolean read GetOldFECHA_PRESUPUESTOIsNull; + property SITUACION : String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull : Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property OldSITUACION : String read GetOldSITUACIONValue; + property OldSITUACIONIsNull : Boolean read GetOldSITUACIONIsNull; + property BASE_IMPONIBLE : Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull : Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + property OldBASE_IMPONIBLE : Currency read GetOldBASE_IMPONIBLEValue; + property OldBASE_IMPONIBLEIsNull : Boolean read GetOldBASE_IMPONIBLEIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IObrasEjecucionesPedidosProveedorDelta } + IObrasEjecucionesPedidosProveedorDelta = interface(IObrasEjecucionesPedidosProveedor) + ['{0111495A-B594-4EB0-BF9E-F779359F9DCA}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldID_EJECUCIONValue : Integer; + function GetOldID_PEDIDOValue : Integer; + function GetOldID_PRESUPUESTOValue : Integer; + function GetOldSITUACIONValue : String; + function GetOldID_PROVEEDORValue : Integer; + function GetOldNOMBREValue : String; + function GetOldREFERENCIAValue : String; + function GetOldFECHA_PEDIDOValue : DateTime; + function GetOldFECHA_ENTREGAValue : DateTime; + function GetOldID_ALMACENValue : Integer; + function GetOldNOMBRE_ALMACENValue : String; + function GetOldID_OBRAValue : Integer; + function GetOldNOMBRE_OBRAValue : String; + function GetOldBASE_IMPONIBLEValue : Currency; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; + property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue; + property OldID_PRESUPUESTO : Integer read GetOldID_PRESUPUESTOValue; + property OldSITUACION : String read GetOldSITUACIONValue; + property OldID_PROVEEDOR : Integer read GetOldID_PROVEEDORValue; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldFECHA_PEDIDO : DateTime read GetOldFECHA_PEDIDOValue; + property OldFECHA_ENTREGA : DateTime read GetOldFECHA_ENTREGAValue; + property OldID_ALMACEN : Integer read GetOldID_ALMACENValue; + property OldNOMBRE_ALMACEN : String read GetOldNOMBRE_ALMACENValue; + property OldID_OBRA : Integer read GetOldID_OBRAValue; + property OldNOMBRE_OBRA : String read GetOldNOMBRE_OBRAValue; + property OldBASE_IMPONIBLE : Currency read GetOldBASE_IMPONIBLEValue; + end; + + { TObrasEjecucionesPedidosProveedorBusinessProcessorRules } + TObrasEjecucionesPedidosProveedorBusinessProcessorRules = class(TDABusinessProcessorRules, IObrasEjecucionesPedidosProveedor, IObrasEjecucionesPedidosProveedorDelta) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EJECUCIONValue: Integer; virtual; + function GetID_EJECUCIONIsNull: Boolean; virtual; + function GetOldID_EJECUCIONValue: Integer; virtual; + function GetOldID_EJECUCIONIsNull: Boolean; virtual; + procedure SetID_EJECUCIONValue(const aValue: Integer); virtual; + procedure SetID_EJECUCIONIsNull(const aValue: Boolean); virtual; + function GetID_PEDIDOValue: Integer; virtual; + function GetID_PEDIDOIsNull: Boolean; virtual; + function GetOldID_PEDIDOValue: Integer; virtual; + function GetOldID_PEDIDOIsNull: Boolean; virtual; + procedure SetID_PEDIDOValue(const aValue: Integer); virtual; + procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual; + function GetID_PRESUPUESTOValue: Integer; virtual; + function GetID_PRESUPUESTOIsNull: Boolean; virtual; + function GetOldID_PRESUPUESTOValue: Integer; virtual; + function GetOldID_PRESUPUESTOIsNull: Boolean; virtual; + procedure SetID_PRESUPUESTOValue(const aValue: Integer); virtual; + procedure SetID_PRESUPUESTOIsNull(const aValue: Boolean); virtual; + function GetSITUACIONValue: String; virtual; + function GetSITUACIONIsNull: Boolean; virtual; + function GetOldSITUACIONValue: String; virtual; + function GetOldSITUACIONIsNull: Boolean; virtual; + procedure SetSITUACIONValue(const aValue: String); virtual; + procedure SetSITUACIONIsNull(const aValue: Boolean); virtual; + function GetID_PROVEEDORValue: Integer; virtual; + function GetID_PROVEEDORIsNull: Boolean; virtual; + function GetOldID_PROVEEDORValue: Integer; virtual; + function GetOldID_PROVEEDORIsNull: Boolean; virtual; + procedure SetID_PROVEEDORValue(const aValue: Integer); virtual; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetFECHA_PEDIDOValue: DateTime; virtual; + function GetFECHA_PEDIDOIsNull: Boolean; virtual; + function GetOldFECHA_PEDIDOValue: DateTime; virtual; + function GetOldFECHA_PEDIDOIsNull: Boolean; virtual; + procedure SetFECHA_PEDIDOValue(const aValue: DateTime); virtual; + procedure SetFECHA_PEDIDOIsNull(const aValue: Boolean); virtual; + function GetFECHA_ENTREGAValue: DateTime; virtual; + function GetFECHA_ENTREGAIsNull: Boolean; virtual; + function GetOldFECHA_ENTREGAValue: DateTime; virtual; + function GetOldFECHA_ENTREGAIsNull: Boolean; virtual; + procedure SetFECHA_ENTREGAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ENTREGAIsNull(const aValue: Boolean); virtual; + function GetID_ALMACENValue: Integer; virtual; + function GetID_ALMACENIsNull: Boolean; virtual; + function GetOldID_ALMACENValue: Integer; virtual; + function GetOldID_ALMACENIsNull: Boolean; virtual; + procedure SetID_ALMACENValue(const aValue: Integer); virtual; + procedure SetID_ALMACENIsNull(const aValue: Boolean); virtual; + function GetNOMBRE_ALMACENValue: String; virtual; + function GetNOMBRE_ALMACENIsNull: Boolean; virtual; + function GetOldNOMBRE_ALMACENValue: String; virtual; + function GetOldNOMBRE_ALMACENIsNull: Boolean; virtual; + procedure SetNOMBRE_ALMACENValue(const aValue: String); virtual; + procedure SetNOMBRE_ALMACENIsNull(const aValue: Boolean); virtual; + function GetID_OBRAValue: Integer; virtual; + function GetID_OBRAIsNull: Boolean; virtual; + function GetOldID_OBRAValue: Integer; virtual; + function GetOldID_OBRAIsNull: Boolean; virtual; + procedure SetID_OBRAValue(const aValue: Integer); virtual; + procedure SetID_OBRAIsNull(const aValue: Boolean); virtual; + function GetNOMBRE_OBRAValue: String; virtual; + function GetNOMBRE_OBRAIsNull: Boolean; virtual; + function GetOldNOMBRE_OBRAValue: String; virtual; + function GetOldNOMBRE_OBRAIsNull: Boolean; virtual; + procedure SetNOMBRE_OBRAValue(const aValue: String); virtual; + procedure SetNOMBRE_OBRAIsNull(const aValue: Boolean); virtual; + function GetBASE_IMPONIBLEValue: Currency; virtual; + function GetBASE_IMPONIBLEIsNull: Boolean; virtual; + function GetOldBASE_IMPONIBLEValue: Currency; virtual; + function GetOldBASE_IMPONIBLEIsNull: Boolean; virtual; + procedure SetBASE_IMPONIBLEValue(const aValue: Currency); virtual; + procedure SetBASE_IMPONIBLEIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property ID_EJECUCION : Integer read GetID_EJECUCIONValue write SetID_EJECUCIONValue; + property ID_EJECUCIONIsNull : Boolean read GetID_EJECUCIONIsNull write SetID_EJECUCIONIsNull; + property OldID_EJECUCION : Integer read GetOldID_EJECUCIONValue; + property OldID_EJECUCIONIsNull : Boolean read GetOldID_EJECUCIONIsNull; + property ID_PEDIDO : Integer read GetID_PEDIDOValue write SetID_PEDIDOValue; + property ID_PEDIDOIsNull : Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; + property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue; + property OldID_PEDIDOIsNull : Boolean read GetOldID_PEDIDOIsNull; + property ID_PRESUPUESTO : Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue; + property ID_PRESUPUESTOIsNull : Boolean read GetID_PRESUPUESTOIsNull write SetID_PRESUPUESTOIsNull; + property OldID_PRESUPUESTO : Integer read GetOldID_PRESUPUESTOValue; + property OldID_PRESUPUESTOIsNull : Boolean read GetOldID_PRESUPUESTOIsNull; + property SITUACION : String read GetSITUACIONValue write SetSITUACIONValue; + property SITUACIONIsNull : Boolean read GetSITUACIONIsNull write SetSITUACIONIsNull; + property OldSITUACION : String read GetOldSITUACIONValue; + property OldSITUACIONIsNull : Boolean read GetOldSITUACIONIsNull; + property ID_PROVEEDOR : Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull : Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; + property OldID_PROVEEDOR : Integer read GetOldID_PROVEEDORValue; + property OldID_PROVEEDORIsNull : Boolean read GetOldID_PROVEEDORIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; + property FECHA_PEDIDO : DateTime read GetFECHA_PEDIDOValue write SetFECHA_PEDIDOValue; + property FECHA_PEDIDOIsNull : Boolean read GetFECHA_PEDIDOIsNull write SetFECHA_PEDIDOIsNull; + property OldFECHA_PEDIDO : DateTime read GetOldFECHA_PEDIDOValue; + property OldFECHA_PEDIDOIsNull : Boolean read GetOldFECHA_PEDIDOIsNull; + property FECHA_ENTREGA : DateTime read GetFECHA_ENTREGAValue write SetFECHA_ENTREGAValue; + property FECHA_ENTREGAIsNull : Boolean read GetFECHA_ENTREGAIsNull write SetFECHA_ENTREGAIsNull; + property OldFECHA_ENTREGA : DateTime read GetOldFECHA_ENTREGAValue; + property OldFECHA_ENTREGAIsNull : Boolean read GetOldFECHA_ENTREGAIsNull; + property ID_ALMACEN : Integer read GetID_ALMACENValue write SetID_ALMACENValue; + property ID_ALMACENIsNull : Boolean read GetID_ALMACENIsNull write SetID_ALMACENIsNull; + property OldID_ALMACEN : Integer read GetOldID_ALMACENValue; + property OldID_ALMACENIsNull : Boolean read GetOldID_ALMACENIsNull; + property NOMBRE_ALMACEN : String read GetNOMBRE_ALMACENValue write SetNOMBRE_ALMACENValue; + property NOMBRE_ALMACENIsNull : Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull; + property OldNOMBRE_ALMACEN : String read GetOldNOMBRE_ALMACENValue; + property OldNOMBRE_ALMACENIsNull : Boolean read GetOldNOMBRE_ALMACENIsNull; + property ID_OBRA : Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull : Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property OldID_OBRA : Integer read GetOldID_OBRAValue; + property OldID_OBRAIsNull : Boolean read GetOldID_OBRAIsNull; + property NOMBRE_OBRA : String read GetNOMBRE_OBRAValue write SetNOMBRE_OBRAValue; + property NOMBRE_OBRAIsNull : Boolean read GetNOMBRE_OBRAIsNull write SetNOMBRE_OBRAIsNull; + property OldNOMBRE_OBRA : String read GetOldNOMBRE_OBRAValue; + property OldNOMBRE_OBRAIsNull : Boolean read GetOldNOMBRE_OBRAIsNull; + property BASE_IMPONIBLE : Currency read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue; + property BASE_IMPONIBLEIsNull : Boolean read GetBASE_IMPONIBLEIsNull write SetBASE_IMPONIBLEIsNull; + property OldBASE_IMPONIBLE : Currency read GetOldBASE_IMPONIBLEValue; + property OldBASE_IMPONIBLEIsNull : Boolean read GetOldBASE_IMPONIBLEIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IObrasEjecucionesDelta } + IObrasEjecucionesDelta = interface(IObrasEjecuciones) + ['{90ABBA08-A245-47D0-8AE1-94570D4046AB}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldID_OBRAValue : Integer; + function GetOldFECHA_INICIOValue : DateTime; + function GetOldFECHA_FINValue : DateTime; + function GetOldID_SUBCONTRATAValue : Integer; + function GetOldNOMBREValue : String; + function GetOldIMPORTE_GASTOSValue : Currency; + function GetOldIMPORTE_INGRESOSValue : Currency; + function GetOldIMPORTE_TOTALValue : Currency; + function GetOldOBSERVACIONESValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldID_OBRA : Integer read GetOldID_OBRAValue; + property OldFECHA_INICIO : DateTime read GetOldFECHA_INICIOValue; + property OldFECHA_FIN : DateTime read GetOldFECHA_FINValue; + property OldID_SUBCONTRATA : Integer read GetOldID_SUBCONTRATAValue; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldIMPORTE_GASTOS : Currency read GetOldIMPORTE_GASTOSValue; + property OldIMPORTE_INGRESOS : Currency read GetOldIMPORTE_INGRESOSValue; + property OldIMPORTE_TOTAL : Currency read GetOldIMPORTE_TOTALValue; + property OldOBSERVACIONES : IROStrings read GetOldOBSERVACIONESValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + end; + + { TObrasEjecucionesBusinessProcessorRules } + TObrasEjecucionesBusinessProcessorRules = class(TDABusinessProcessorRules, IObrasEjecuciones, IObrasEjecucionesDelta) + private + f_OBSERVACIONES: IROStrings; + procedure OBSERVACIONES_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_OBRAValue: Integer; virtual; + function GetID_OBRAIsNull: Boolean; virtual; + function GetOldID_OBRAValue: Integer; virtual; + function GetOldID_OBRAIsNull: Boolean; virtual; + procedure SetID_OBRAValue(const aValue: Integer); virtual; + procedure SetID_OBRAIsNull(const aValue: Boolean); virtual; + function GetFECHA_INICIOValue: DateTime; virtual; + function GetFECHA_INICIOIsNull: Boolean; virtual; + function GetOldFECHA_INICIOValue: DateTime; virtual; + function GetOldFECHA_INICIOIsNull: Boolean; virtual; + procedure SetFECHA_INICIOValue(const aValue: DateTime); virtual; + procedure SetFECHA_INICIOIsNull(const aValue: Boolean); virtual; + function GetFECHA_FINValue: DateTime; virtual; + function GetFECHA_FINIsNull: Boolean; virtual; + function GetOldFECHA_FINValue: DateTime; virtual; + function GetOldFECHA_FINIsNull: Boolean; virtual; + procedure SetFECHA_FINValue(const aValue: DateTime); virtual; + procedure SetFECHA_FINIsNull(const aValue: Boolean); virtual; + function GetID_SUBCONTRATAValue: Integer; virtual; + function GetID_SUBCONTRATAIsNull: Boolean; virtual; + function GetOldID_SUBCONTRATAValue: Integer; virtual; + function GetOldID_SUBCONTRATAIsNull: Boolean; virtual; + procedure SetID_SUBCONTRATAValue(const aValue: Integer); virtual; + procedure SetID_SUBCONTRATAIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_GASTOSValue: Currency; virtual; + function GetIMPORTE_GASTOSIsNull: Boolean; virtual; + function GetOldIMPORTE_GASTOSValue: Currency; virtual; + function GetOldIMPORTE_GASTOSIsNull: Boolean; virtual; + procedure SetIMPORTE_GASTOSValue(const aValue: Currency); virtual; + procedure SetIMPORTE_GASTOSIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_INGRESOSValue: Currency; virtual; + function GetIMPORTE_INGRESOSIsNull: Boolean; virtual; + function GetOldIMPORTE_INGRESOSValue: Currency; virtual; + function GetOldIMPORTE_INGRESOSIsNull: Boolean; virtual; + procedure SetIMPORTE_INGRESOSValue(const aValue: Currency); virtual; + procedure SetIMPORTE_INGRESOSIsNull(const aValue: Boolean); virtual; + function GetIMPORTE_TOTALValue: Currency; virtual; + function GetIMPORTE_TOTALIsNull: Boolean; virtual; + function GetOldIMPORTE_TOTALValue: Currency; virtual; + function GetOldIMPORTE_TOTALIsNull: Boolean; virtual; + procedure SetIMPORTE_TOTALValue(const aValue: Currency); virtual; + procedure SetIMPORTE_TOTALIsNull(const aValue: Boolean); virtual; + function GetOBSERVACIONESValue: IROStrings; virtual; + function GetOBSERVACIONESIsNull: Boolean; virtual; + function GetOldOBSERVACIONESValue: IROStrings; virtual; + function GetOldOBSERVACIONESIsNull: Boolean; virtual; + procedure SetOBSERVACIONESIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property ID_OBRA : Integer read GetID_OBRAValue write SetID_OBRAValue; + property ID_OBRAIsNull : Boolean read GetID_OBRAIsNull write SetID_OBRAIsNull; + property OldID_OBRA : Integer read GetOldID_OBRAValue; + property OldID_OBRAIsNull : Boolean read GetOldID_OBRAIsNull; + property FECHA_INICIO : DateTime read GetFECHA_INICIOValue write SetFECHA_INICIOValue; + property FECHA_INICIOIsNull : Boolean read GetFECHA_INICIOIsNull write SetFECHA_INICIOIsNull; + property OldFECHA_INICIO : DateTime read GetOldFECHA_INICIOValue; + property OldFECHA_INICIOIsNull : Boolean read GetOldFECHA_INICIOIsNull; + property FECHA_FIN : DateTime read GetFECHA_FINValue write SetFECHA_FINValue; + property FECHA_FINIsNull : Boolean read GetFECHA_FINIsNull write SetFECHA_FINIsNull; + property OldFECHA_FIN : DateTime read GetOldFECHA_FINValue; + property OldFECHA_FINIsNull : Boolean read GetOldFECHA_FINIsNull; + property ID_SUBCONTRATA : Integer read GetID_SUBCONTRATAValue write SetID_SUBCONTRATAValue; + property ID_SUBCONTRATAIsNull : Boolean read GetID_SUBCONTRATAIsNull write SetID_SUBCONTRATAIsNull; + property OldID_SUBCONTRATA : Integer read GetOldID_SUBCONTRATAValue; + property OldID_SUBCONTRATAIsNull : Boolean read GetOldID_SUBCONTRATAIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + property IMPORTE_GASTOS : Currency read GetIMPORTE_GASTOSValue write SetIMPORTE_GASTOSValue; + property IMPORTE_GASTOSIsNull : Boolean read GetIMPORTE_GASTOSIsNull write SetIMPORTE_GASTOSIsNull; + property OldIMPORTE_GASTOS : Currency read GetOldIMPORTE_GASTOSValue; + property OldIMPORTE_GASTOSIsNull : Boolean read GetOldIMPORTE_GASTOSIsNull; + property IMPORTE_INGRESOS : Currency read GetIMPORTE_INGRESOSValue write SetIMPORTE_INGRESOSValue; + property IMPORTE_INGRESOSIsNull : Boolean read GetIMPORTE_INGRESOSIsNull write SetIMPORTE_INGRESOSIsNull; + property OldIMPORTE_INGRESOS : Currency read GetOldIMPORTE_INGRESOSValue; + property OldIMPORTE_INGRESOSIsNull : Boolean read GetOldIMPORTE_INGRESOSIsNull; + property IMPORTE_TOTAL : Currency read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue; + property IMPORTE_TOTALIsNull : Boolean read GetIMPORTE_TOTALIsNull write SetIMPORTE_TOTALIsNull; + property OldIMPORTE_TOTAL : Currency read GetOldIMPORTE_TOTALValue; + property OldIMPORTE_TOTALIsNull : Boolean read GetOldIMPORTE_TOTALIsNull; + property OBSERVACIONES : IROStrings read GetOBSERVACIONESValue; + property OBSERVACIONESIsNull : Boolean read GetOBSERVACIONESIsNull write SetOBSERVACIONESIsNull; + property OldOBSERVACIONES : IROStrings read GetOldOBSERVACIONESValue; + property OldOBSERVACIONESIsNull : Boolean read GetOldOBSERVACIONESIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -721,68 +1199,6 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasNOMBRE_CLIENTE] := Null; end; -function TObrasBusinessProcessorRules.GetID_SUBCONTRATAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_SUBCONTRATA]; -end; - -function TObrasBusinessProcessorRules.GetID_SUBCONTRATAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_SUBCONTRATA]); -end; - -function TObrasBusinessProcessorRules.GetOldID_SUBCONTRATAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasID_SUBCONTRATA]; -end; - -function TObrasBusinessProcessorRules.GetOldID_SUBCONTRATAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasID_SUBCONTRATA]); -end; - -procedure TObrasBusinessProcessorRules.SetID_SUBCONTRATAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_SUBCONTRATA] := aValue; -end; - -procedure TObrasBusinessProcessorRules.SetID_SUBCONTRATAIsNull(const aValue: Boolean); -begin - if aValue then - BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_SUBCONTRATA] := Null; -end; - -function TObrasBusinessProcessorRules.GetNOMBRE_SUBCONTRATAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasNOMBRE_SUBCONTRATA]; -end; - -function TObrasBusinessProcessorRules.GetNOMBRE_SUBCONTRATAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasNOMBRE_SUBCONTRATA]); -end; - -function TObrasBusinessProcessorRules.GetOldNOMBRE_SUBCONTRATAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasNOMBRE_SUBCONTRATA]; -end; - -function TObrasBusinessProcessorRules.GetOldNOMBRE_SUBCONTRATAIsNull: Boolean; -begin - result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasNOMBRE_SUBCONTRATA]); -end; - -procedure TObrasBusinessProcessorRules.SetNOMBRE_SUBCONTRATAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasNOMBRE_SUBCONTRATA] := aValue; -end; - -procedure TObrasBusinessProcessorRules.SetNOMBRE_SUBCONTRATAIsNull(const aValue: Boolean); -begin - if aValue then - BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasNOMBRE_SUBCONTRATA] := Null; -end; - function TObrasBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasFECHA_ALTA]; @@ -876,8 +1292,1171 @@ begin BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasUSUARIO] := Null; end; +function TObrasBusinessProcessorRules.GetID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_EJECUCION]; +end; + +function TObrasBusinessProcessorRules.GetID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_EJECUCION]); +end; + +function TObrasBusinessProcessorRules.GetOldID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasID_EJECUCION]; +end; + +function TObrasBusinessProcessorRules.GetOldID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasID_EJECUCION]); +end; + +procedure TObrasBusinessProcessorRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_EJECUCION] := aValue; +end; + +procedure TObrasBusinessProcessorRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasID_EJECUCION] := Null; +end; + + +{ TObrasEjecucionesPresupuestosBusinessProcessorRules } +constructor TObrasEjecucionesPresupuestosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TObrasEjecucionesPresupuestosBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_EJECUCION] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetID_PRESUPUESTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetID_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldID_PRESUPUESTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldID_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetID_PRESUPUESTOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetID_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosID_PRESUPUESTO] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosREFERENCIA] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetFECHA_PRESUPUESTOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetFECHA_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldFECHA_PRESUPUESTOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldFECHA_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetFECHA_PRESUPUESTOValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetFECHA_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosFECHA_PRESUPUESTO] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetSITUACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosSITUACION]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetSITUACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosSITUACION]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldSITUACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosSITUACION]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldSITUACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosSITUACION]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetSITUACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosSITUACION] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetSITUACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosSITUACION] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetBASE_IMPONIBLEValue: Currency; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetBASE_IMPONIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldBASE_IMPONIBLEValue: Currency; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldBASE_IMPONIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetBASE_IMPONIBLEValue(const aValue: Currency); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetBASE_IMPONIBLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosBASE_IMPONIBLE] := Null; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE]); +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE]; +end; + +function TObrasEjecucionesPresupuestosBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE]); +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE] := aValue; +end; + +procedure TObrasEjecucionesPresupuestosBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPresupuestosNOMBRE] := Null; +end; + + +{ TObrasEjecucionesPedidosProveedorBusinessProcessorRules } +constructor TObrasEjecucionesPedidosProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TObrasEjecucionesPedidosProveedorBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_EJECUCIONValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_EJECUCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_EJECUCIONValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_EJECUCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_EJECUCION] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PEDIDOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PEDIDOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PEDIDOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PEDIDOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PEDIDOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PEDIDOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PEDIDO] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PRESUPUESTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PRESUPUESTOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PRESUPUESTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PRESUPUESTOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PRESUPUESTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PRESUPUESTO] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetSITUACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetSITUACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldSITUACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldSITUACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetSITUACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetSITUACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorSITUACION] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PROVEEDORValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PROVEEDORValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PROVEEDORValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_PROVEEDOR] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorREFERENCIA] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetFECHA_PEDIDOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetFECHA_PEDIDOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldFECHA_PEDIDOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldFECHA_PEDIDOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetFECHA_PEDIDOValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetFECHA_PEDIDOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_PEDIDO] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetFECHA_ENTREGAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetFECHA_ENTREGAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldFECHA_ENTREGAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldFECHA_ENTREGAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetFECHA_ENTREGAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetFECHA_ENTREGAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorFECHA_ENTREGA] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_ALMACENValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_ALMACENIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_ALMACENValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_ALMACENIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_ALMACENValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_ALMACENIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_ALMACEN] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBRE_ALMACENValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBRE_ALMACENIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBRE_ALMACENValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBRE_ALMACENIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBRE_ALMACENValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBRE_ALMACENIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_ALMACEN] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_OBRAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetID_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_OBRAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldID_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_OBRAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetID_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorID_OBRA] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBRE_OBRAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetNOMBRE_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBRE_OBRAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldNOMBRE_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBRE_OBRAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetNOMBRE_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorNOMBRE_OBRA] := Null; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetBASE_IMPONIBLEValue: Currency; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetBASE_IMPONIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE]); +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldBASE_IMPONIBLEValue: Currency; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE]; +end; + +function TObrasEjecucionesPedidosProveedorBusinessProcessorRules.GetOldBASE_IMPONIBLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE]); +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetBASE_IMPONIBLEValue(const aValue: Currency); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE] := aValue; +end; + +procedure TObrasEjecucionesPedidosProveedorBusinessProcessorRules.SetBASE_IMPONIBLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesPedidosProveedorBASE_IMPONIBLE] := Null; +end; + + +{ TObrasEjecucionesBusinessProcessorRules } +constructor TObrasEjecucionesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := OBSERVACIONES_OnChange; + f_OBSERVACIONES := NewROStrings(StrList,True); +end; + +destructor TObrasEjecucionesBusinessProcessorRules.Destroy; +begin + inherited; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.OBSERVACIONES_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesOBSERVACIONES] := TStringList(Sender).Text; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetID_OBRAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_OBRA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetID_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_OBRA]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldID_OBRAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID_OBRA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldID_OBRAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID_OBRA]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetID_OBRAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_OBRA] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetID_OBRAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_OBRA] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_INICIOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_INICIO]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_INICIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_INICIO]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_INICIOValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_INICIO]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_INICIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_INICIO]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_INICIOValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_INICIO] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_INICIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_INICIO] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_FINValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_FIN]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_FINIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_FIN]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_FINValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_FIN]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_FINIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_FIN]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_FINValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_FIN] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_FINIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_FIN] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetID_SUBCONTRATAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_SUBCONTRATA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetID_SUBCONTRATAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_SUBCONTRATA]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldID_SUBCONTRATAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID_SUBCONTRATA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldID_SUBCONTRATAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesID_SUBCONTRATA]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetID_SUBCONTRATAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_SUBCONTRATA] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetID_SUBCONTRATAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesID_SUBCONTRATA] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesNOMBRE]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesNOMBRE]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesNOMBRE]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesNOMBRE]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesNOMBRE] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesNOMBRE] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_GASTOSValue: Currency; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_GASTOSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_GASTOSValue: Currency; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_GASTOSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_GASTOSValue(const aValue: Currency); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_GASTOSIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_GASTOS] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_INGRESOSValue: Currency; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_INGRESOSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_INGRESOSValue: Currency; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_INGRESOSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_INGRESOSValue(const aValue: Currency); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_INGRESOSIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_INGRESOS] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_TOTALValue: Currency; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetIMPORTE_TOTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_TOTALValue: Currency; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldIMPORTE_TOTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_TOTALValue(const aValue: Currency); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetIMPORTE_TOTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesIMPORTE_TOTAL] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOBSERVACIONESValue: IROStrings; +begin + result := f_OBSERVACIONES; + result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesOBSERVACIONES]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOBSERVACIONESIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesOBSERVACIONES]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldOBSERVACIONESValue: IROStrings; +begin + result := NewROStrings(); + result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesOBSERVACIONES]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldOBSERVACIONESIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesOBSERVACIONES]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetOBSERVACIONESIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesOBSERVACIONES] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_ALTA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_ALTA]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_ALTA]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_ALTA]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_ALTA] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_ALTA] := Null; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION]); +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION]; +end; + +function TObrasEjecucionesBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION]); +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION] := aValue; +end; + +procedure TObrasEjecucionesBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ObrasEjecucionesFECHA_MODIFICACION] := Null; +end; + initialization RegisterBusinessProcessorRules(RID_ObrasDelta, TObrasBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_ObrasEjecucionesPresupuestosDelta, TObrasEjecucionesPresupuestosBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_ObrasEjecucionesPedidosProveedorDelta, TObrasEjecucionesPedidosProveedorBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_ObrasEjecucionesDelta, TObrasEjecucionesBusinessProcessorRules); end. diff --git a/Source/Modulos/Obras/Model/uBizObras.pas b/Source/Modulos/Obras/Model/uBizObras.pas index bbbdc6bc..856fcd30 100644 --- a/Source/Modulos/Obras/Model/uBizObras.pas +++ b/Source/Modulos/Obras/Model/uBizObras.pas @@ -3,47 +3,559 @@ unit uBizObras; interface uses - uDAInterfaces, uDADataTable, schObrasClient_Intf; + uDAInterfaces, uDADataTable, schObrasClient_Intf, uBizContactos, + uDBSelectionListUtils; const BIZ_CLIENT_OBRA = 'Client.Obra'; + BIZ_CLIENT_OBRA_EJECUCION = 'Client.Obra.Ejecucion'; +// BIZ_CLIENT_OBRA_EJECUCIONES_CERRADAS = 'Client.Obra.EjecucionesCerradas'; +// BIZ_CLIENT_OBRA_EJECUCION_ENCURSO = 'Client.Obra.EjecucionEnCurso'; + BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO = 'Client.Obra.Ejecucion.Presupuesto'; + BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR = 'Client.Obra.Ejecucion.PedidoProveedor'; type + IBizEjecucionPresupuestos = interface(IObrasEjecucionesPresupuestos) + ['{F335B047-7559-4C40-8DA7-E06719D1F683}'] + function EsNuevo : Boolean; + end; + + IBizEjecucionPedidosProveedor = interface(IObrasEjecucionesPedidosProveedor) + ['{404DB8A7-7D36-459B-8C6A-33139B40F2C5}'] + function EsNuevo : Boolean; + end; + + IBizEjecucionesObra = interface(IObrasEjecuciones) + ['{6BAFA32B-39A5-4BC3-9F16-97A36745C3D9}'] + function EsNuevo : Boolean; + function EnCurso : Boolean; + + function GetPresupuestos: IBizEjecucionPresupuestos; + procedure SetPresupuestos(Value: IBizEjecucionPresupuestos); + property Presupuestos: IBizEjecucionPresupuestos read GetPresupuestos write SetPresupuestos; + + function GetPedidos: IBizEjecucionPedidosProveedor; + procedure SetPedidos(Value: IBizEjecucionPedidosProveedor); + property Pedidos: IBizEjecucionPedidosProveedor read GetPedidos write SetPedidos; + end; + +// IBizEjecucionesCerradasObra = interface(IObrasEjecucionesTerminadas) +// ['{08CB6A7C-058C-4A07-AFED-64D861296BFE}'] +// {procedure SetSubcontrata(AValue : IBizProveedor); +// function GetSubcontrata : IBizProveedor; +// property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;} +// +// // Esta propidad es para que el controlador pueda acceder directamente +// // a la propiedad Cliente +// {procedure _SetSubcontrata(AValue : IBizProveedor); +// function _GetSubcontrata : IBizProveedor; +// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;} +// end; +// +// +// IBizEjecucionEnCursoObra = interface(IObrasEjecucionesEnCurso) +// ['{DDEE3280-32B0-4C5C-AC14-9AADD641407D}'] +// function EsNuevo : Boolean; +// {procedure SetSubcontrata(AValue : IBizProveedor); +// function GetSubcontrata : IBizProveedor; +// property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;} +// +// // Esta propidad es para que el controlador pueda acceder directamente +// // a la propiedad Cliente +// {procedure _SetSubcontrata(AValue : IBizProveedor); +// function _GetSubcontrata : IBizProveedor; +// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;} +// end; + + IBizObra = interface(IObras) - ['{B447622D-3BFA-4432-BDC8-FD93FA73D65F}'] + ['{96A7EC59-23CB-44FF-B3CF-8679C6F001C8}'] + + procedure SetCliente(AValue : IBizCliente); + function GetCliente : IBizCliente; + property Cliente : IBizCliente read GetCliente write SetCliente; + + // Esta propidad es para que el controlador pueda acceder directamente + // a la propiedad Cliente + procedure _SetCliente(AValue : IBizCliente); + function _GetCliente : IBizCliente; + property _Cliente : IBizCliente read _GetCliente write _SetCliente; + + function GetEjecuciones: IBizEjecucionesObra; + procedure SetEjecuciones(Value: IBizEjecucionesObra); + property Ejecuciones: IBizEjecucionesObra read GetEjecuciones write SetEjecuciones; + function EsNuevo : Boolean; end; - TBizObra = class(TObrasDataTableRules, IBizObra) + + TBizEjecucionPresupuestos = class(TObrasEjecucionesPresupuestosDataTableRules, IBizEjecucionPresupuestos) protected + procedure BeforeInsert(Sender: TDADataTable); override; + public + function EsNuevo : Boolean; + end; + + + TBizEjecucionPedidosProveedor = class(TObrasEjecucionesPedidosProveedorDataTableRules, IBizEjecucionPedidosProveedor) + protected + procedure BeforeInsert(Sender: TDADataTable); override; + public + function EsNuevo : Boolean; + end; + + + TBizEjecucionesObra = class(TObrasEjecucionesDataTableRules, IBizEjecucionesObra) + protected + FPresupuestos : IBizEjecucionPresupuestos; + FPresupuestosLink : TDADataSource; + + FPedidos : IBizEjecucionPedidosProveedor; + FPedidosLink : TDADataSource; + + procedure BeforeInsert(Sender: TDADataTable); override; procedure OnNewRecord(Sender: TDADataTable); override; + function GetPresupuestos: IBizEjecucionPresupuestos; + procedure SetPresupuestos(Value: IBizEjecucionPresupuestos); + + function GetPedidos: IBizEjecucionPedidosProveedor; + procedure SetPedidos(Value: IBizEjecucionPedidosProveedor); public - function EsNuevo : Boolean; + function EsNuevo : Boolean; + function EnCurso : Boolean; + + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + property Presupuestos: IBizEjecucionPresupuestos read GetPresupuestos write SetPresupuestos; + property Pedidos: IBizEjecucionPedidosProveedor read GetPedidos write SetPedidos; + end; + + +// TBizEjecucionesCerradasObra = class(TObrasEjecucionesTerminadasDataTableRules, IBizEjecucionesCerradasObra) +// protected +//// FSubcontrata : IBizProveedor; +// +// procedure BeforeInsert(Sender: TDADataTable); override; +// procedure OnNewRecord(Sender: TDADataTable); override; +// +// +//{ procedure _SetSubcontrata(AValue : IBizProveedor); +// function _GetSubcontrata : IBizProveedor; +// +// procedure SetSubcontrata(AValue : IBizProveedor); +// function GetSubcontrata : IBizProveedor;} +// public +// constructor Create(aDataTable: TDADataTable); override; +// destructor Destroy; override; +// +//{ property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata; +// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;} +// end; +// +// TBizEjecucionEnCursoObra = class(TObrasEjecucionesEnCursoDataTableRules, IBizEjecucionEnCursoObra) +// protected +//// FSubcontrata : IBizProveedor; +// +// procedure BeforeInsert(Sender: TDADataTable); override; +// procedure OnNewRecord(Sender: TDADataTable); override; +// +//{ procedure _SetSubcontrata(AValue : IBizProveedor); +// function _GetSubcontrata : IBizProveedor; +// +// procedure SetSubcontrata(AValue : IBizProveedor); +// function GetSubcontrata : IBizProveedor;} +// public +// function EsNuevo : Boolean; +// constructor Create(aDataTable: TDADataTable); override; +// destructor Destroy; override; +// +//{ property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata; +// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;} +// end; + + + TBizObra = class(TObrasDataTableRules, IBizObra, ISeleccionable) + protected + FSeleccionableInterface : ISeleccionable; + FCliente : IBizCliente; + +// FEjecucionEnCurso : IBizEjecucionEnCursoObra; +// FEjecucionEnCursoLink : TDADataSource; + + FEjecuciones : IBizEjecucionesObra; + FEjecucionesLink : TDADataSource; + + procedure SetCliente(AValue : IBizCliente); + function GetCliente : IBizCliente; + + procedure _SetCliente(AValue : IBizCliente); + function _GetCliente : IBizCliente; + + function GetEjecuciones: IBizEjecucionesObra; + procedure SetEjecuciones(Value: IBizEjecucionesObra); + +// function GetEjecucionEnCurso: IBizEjecucionEnCursoObra; +// procedure SetEjecucionEnCurso(Value: IBizEjecucionEnCursoObra); + + procedure OnNewRecord(Sender: TDADataTable); override; + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + function EsNuevo : Boolean; + property Cliente : IBizCliente read GetCliente write SetCliente; + property _Cliente : IBizCliente read _GetCliente write _SetCliente; + property Ejecuciones: IBizEjecucionesObra read GetEjecuciones write SetEjecuciones; +// property EjecucionEnCurso: IBizEjecucionEnCursoObra read GetEjecucionEnCurso write SetEjecucionEnCurso; + + property SeleccionableInterface : ISeleccionable read FSeleccionableInterface + write FSeleccionableInterface implements ISeleccionable; end; implementation uses - uFactuGES_App; + uFactuGES_App, DB, DateUtils, SysUtils, uDataTableUtils; + +{ TBizEjecucionesCerradasObra } + +procedure TBizEjecucionesObra.BeforeInsert(Sender: TDADataTable); +var + AMasterTable : TDADataTable; +begin + inherited; + AMasterTable := DataTable.GetMasterDataTable; + if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then + AMasterTable.Post; +end; + +constructor TBizEjecucionesObra.Create(aDataTable: TDADataTable); +begin + inherited; + FPresupuestos := NIL; + FPresupuestosLink := TDADataSource.Create(NIL); + FPresupuestosLink.DataTable := aDataTable; + + FPedidos := NIL; + FPedidosLink := TDADataSource.Create(NIL); + FPedidosLink.DataTable := aDataTable; +end; + +destructor TBizEjecucionesObra.Destroy; +begin + FPresupuestos := NIL; + FreeANDNIL(FPresupuestosLink); + + FPedidos := NIL; + FreeANDNIL(FPedidosLink); + + inherited; +end; + +function TBizEjecucionesObra.EnCurso: Boolean; +begin + Result := FECHA_FINIsNull; +end; + +function TBizEjecucionesObra.EsNuevo: Boolean; +begin + Result := (ID < 0); +end; + +function TBizEjecucionesObra.GetPedidos: IBizEjecucionPedidosProveedor; +begin + Result := FPedidos; +end; + +function TBizEjecucionesObra.GetPresupuestos: IBizEjecucionPresupuestos; +begin + Result := FPresupuestos; +end; + +procedure TBizEjecucionesObra.OnNewRecord(Sender: TDADataTable); +begin + inherited; + FECHA_INICIO := DateOf(Now); +end; + +procedure TBizEjecucionesObra.SetPedidos( + Value: IBizEjecucionPedidosProveedor); +begin + FPedidos := Value; + EnlazarMaestroDetalle(FPedidosLink, FPedidos); +end; + +procedure TBizEjecucionesObra.SetPresupuestos(Value: IBizEjecucionPresupuestos); +begin + FPresupuestos := Value; + EnlazarMaestroDetalle(FPresupuestosLink, FPresupuestos); +end; + +{procedure TBizEjecucionesCerradasObra.SetSubcontrata(AValue: IBizProveedor); +var + bEnEdicion : Boolean; +begin + FSubcontrata := AValue; + + if Assigned(FSubcontrata) then + begin + if not FSubcontrata.DataTable.Active then + FSubcontrata.DataTable.Active := True; + + if ID_SUBCONTRATA <> FSubcontrata.ID then + begin + bEnEdicion := (DataTable.State in dsEditModes); + if not bEnEdicion then + DataTable.Edit; + + ID_SUBCONTRATA := FSubcontrata.ID; + + DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles + //si se quita el id de la cabecera y los detalles se desincroniza + if bEnEdicion then + DataTable.Edit; + end; + end; +end;} + +{function TBizEjecucionesCerradasObra._GetSubcontrata: IBizProveedor; +begin + Result := FSubcontrata; +end; + +procedure TBizEjecucionesCerradasObra._SetSubcontrata(AValue: IBizProveedor); +begin + FSubcontrata := AValue; +end;} + +{ TBizEjecucionEnCursoObra } + +//procedure TBizEjecucionEnCursoObra.BeforeInsert(Sender: TDADataTable); +//var +// AMasterTable : TDADataTable; +//begin +// inherited; +// AMasterTable := DataTable.GetMasterDataTable; +// if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then +// AMasterTable.Post; +//end; +// +//constructor TBizEjecucionEnCursoObra.Create(aDataTable: TDADataTable); +//begin +// inherited; +//// FSubcontrata := NIL; +//end; +// +//destructor TBizEjecucionEnCursoObra.Destroy; +//begin +//// FSubcontrata := NIL; +// inherited; +//end; +// +//function TBizEjecucionEnCursoObra.EsNuevo: Boolean; +//begin +// Result := (ID < 0); +//end; +//{ +//function TBizEjecucionEnCursoObra.GetSubcontrata: IBizProveedor; +//begin +// Result := FSubcontrata; +//end;} +// +//procedure TBizEjecucionEnCursoObra.OnNewRecord(Sender: TDADataTable); +//begin +// inherited; +// FECHA_INICIO := DateOf(Now); +//end; + +{procedure TBizEjecucionEnCursoObra.SetSubcontrata(AValue: IBizProveedor); +var + bEnEdicion : Boolean; +begin + FSubcontrata := AValue; + + if Assigned(FSubcontrata) then + begin + if not FSubcontrata.DataTable.Active then + FSubcontrata.DataTable.Active := True; + + if ID_SUBCONTRATA <> FSubcontrata.ID then + begin + bEnEdicion := (DataTable.State in dsEditModes); + if not bEnEdicion then + DataTable.Edit; + + ID_SUBCONTRATA := FSubcontrata.ID; + + DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles + //si se quita el id de la cabecera y los detalles se desincroniza + if bEnEdicion then + DataTable.Edit; + end; + end; +end;} + +{function TBizEjecucionEnCursoObra._GetSubcontrata: IBizProveedor; +begin + Result := FSubcontrata; +end;} + +{procedure TBizEjecucionEnCursoObra._SetSubcontrata(AValue: IBizProveedor); +begin + FSubcontrata := AValue; +end;} { TBizObra } +constructor TBizObra.Create(aDataTable: TDADataTable); +begin + inherited; + FCliente := NIL; + +// FEjecucionEnCurso := NIL; +// FEjecucionEnCursoLink := TDADataSource.Create(NIL); +// FEjecucionEnCursoLink.DataTable := aDataTable; + + FEjecuciones := NIL; + FEjecucionesLink := TDADataSource.Create(NIL); + FEjecucionesLink.DataTable := aDataTable; + + FSeleccionableInterface := TSeleccionable.Create(aDataTable); +end; + +destructor TBizObra.Destroy; +begin + FCliente := NIL; + +// FEjecucionEnCurso := NIL; +// FreeANDNIL(FEjecucionEnCursoLink); + + FEjecuciones := NIL; + FreeANDNIL(FEjecucionesLink); + + FSeleccionableInterface := NIL; + inherited; +end; + function TBizObra.EsNuevo: Boolean; begin Result := (ID < 0); end; +function TBizObra.GetCliente: IBizCliente; +begin + Result := FCliente; +end; + +//function TBizObra.GetEjecucionEnCurso: IBizEjecucionEnCursoObra; +//begin +// Result := FEjecucionEnCurso; +//end; + +function TBizObra.GetEjecuciones: IBizEjecucionesObra; +begin + Result := FEjecuciones; +end; + procedure TBizObra.OnNewRecord(Sender: TDADataTable); begin inherited; -// ID := GetRecNo; // -1, -2, -3... ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; USUARIO := AppFactuGES.UsuarioActivo.UserName; end; +procedure TBizObra.SetCliente(AValue: IBizCliente); +var + bEnEdicion : Boolean; +begin + FCliente := AValue; + + if Assigned(FCliente) then + begin + if not FCliente.DataTable.Active then + FCliente.DataTable.Active := True; + + if ID_Cliente <> FCliente.ID then + begin + bEnEdicion := (DataTable.State in dsEditModes); + if not bEnEdicion then + DataTable.Edit; + + ID_CLIENTE := FCliente.ID; + + DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles + //si se quita el id de la cabecera y los detalles se desincroniza + if bEnEdicion then + DataTable.Edit; + end; + end; +end; + +//procedure TBizObra.SetEjecucionEnCurso(Value: IBizEjecucionEnCursoObra); +//begin +// FEjecucionEnCurso := Value; +// EnlazarMaestroDetalle(FEjecucionEnCursoLink, FEjecucionEnCurso); +//end; + +procedure TBizObra.SetEjecuciones(Value: IBizEjecucionesObra); +begin + FEjecuciones := Value; + EnlazarMaestroDetalle(FEjecucionesLink, FEjecuciones); +end; + +function TBizObra._GetCliente: IBizCliente; +begin + Result := FCliente; +end; + +procedure TBizObra._SetCliente(AValue: IBizCliente); +begin + FCliente := AValue; +end; + +{ TBizEjecucionPresupuestos } + +procedure TBizEjecucionPresupuestos.BeforeInsert(Sender: TDADataTable); +var + AMasterTable : TDADataTable; +begin + inherited; + AMasterTable := DataTable.GetMasterDataTable; + if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then + AMasterTable.Post; +end; + +function TBizEjecucionPresupuestos.EsNuevo: Boolean; +begin + Result := (ID < 0); +end; + +{ TBizEjecucionPedidosProveedor } + +procedure TBizEjecucionPedidosProveedor.BeforeInsert(Sender: TDADataTable); +var + AMasterTable : TDADataTable; +begin + inherited; + AMasterTable := DataTable.GetMasterDataTable; + if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then + AMasterTable.Post; +end; + +function TBizEjecucionPedidosProveedor.EsNuevo: Boolean; +begin + Result := (ID < 0); +end; + initialization RegisterDataTableRules(BIZ_CLIENT_OBRA, TBizObra); + RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCION, TBizEjecucionesObra); +// RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCIONES_CERRADAS, TBizEjecucionesCerradasObra); +// RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCION_ENCURSO, TBizEjecucionEnCursoObra); + RegisterDataTableRules(BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO, TBizEjecucionPresupuestos); + RegisterDataTableRules(BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR, TBizEjecucionPedidosProveedor); finalization diff --git a/Source/Modulos/Obras/Model/uBizObrasServer.pas b/Source/Modulos/Obras/Model/uBizObrasServer.pas index 716b1f7f..b35db3b4 100644 --- a/Source/Modulos/Obras/Model/uBizObrasServer.pas +++ b/Source/Modulos/Obras/Model/uBizObrasServer.pas @@ -92,7 +92,6 @@ begin begin ParamByName('ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID]; ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE]; - ParamByName('ID_SUBCONTRATA').Value := aChange.NewValueByName[fld_ObrasID_SUBCONTRATA]; Execute; end; finally @@ -108,8 +107,8 @@ begin inherited; //IMPORTANTE ESTO HACE QUE EL CLIENTE SE ENTERE DEL ERROR Y LOS BP ASOCIADOS EN EL //SCHEMA HAGAN ROLLBACK TAMBIEN - CanRemoveFromDelta := True; - raise Exception.Create(Error.Message); +// CanRemoveFromDelta := True; +// raise Exception.Create(Error.Message); end; procedure TBizObrasServer.Update_Datos_Obra(aChange: TDADeltaChange); @@ -127,7 +126,6 @@ begin begin ParamByName('OLD_ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID]; ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE]; - ParamByName('ID_SUBCONTRATA').Value := aChange.NewValueByName[fld_ObrasID_SUBCONTRATA]; Execute; end; finally diff --git a/Source/Modulos/Obras/Obras_Group.groupproj b/Source/Modulos/Obras/Obras_Group.groupproj index 470febc4..1747a41b 100644 --- a/Source/Modulos/Obras/Obras_Group.groupproj +++ b/Source/Modulos/Obras/Obras_Group.groupproj @@ -10,6 +10,9 @@ + + + @@ -59,6 +62,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -122,23 +152,23 @@ - - + + - - + + - - + + - + - + - + \ No newline at end of file diff --git a/Source/Modulos/Obras/Plugin/Obras_plugin.dproj b/Source/Modulos/Obras/Plugin/Obras_plugin.dproj index a437f8be..7fa7790b 100644 --- a/Source/Modulos/Obras/Plugin/Obras_plugin.dproj +++ b/Source/Modulos/Obras/Plugin/Obras_plugin.dproj @@ -39,56 +39,500 @@ Delphi.Personality Package - - False - True - False - - - True - False - False - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - - Obras_plugin.dpk - - +FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Obras_plugin.dpk MainSource - - - + + + + + diff --git a/Source/Modulos/Obras/Plugin/Obras_plugin.rc b/Source/Modulos/Obras/Plugin/Obras_plugin.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Obras/Plugin/Obras_plugin.rc +++ b/Source/Modulos/Obras/Plugin/Obras_plugin.rc @@ -0,0 +1,22 @@ +1 VERSIONINFO +FILEVERSION 1,0,0,0 +PRODUCTVERSION 1,0,0,0 +FILEFLAGSMASK 0x3FL +FILEFLAGS 0x00L +FILEOS 0x40004L +FILETYPE 0x1L +FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "0C0A04E4" + BEGIN + VALUE "FileVersion", "1.0.0.0\0" + VALUE "ProductVersion", "1.0.0.0\0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x0C0A, 1252 + END +END diff --git a/Source/Modulos/Obras/Plugin/Obras_plugin.res b/Source/Modulos/Obras/Plugin/Obras_plugin.res index 36f26e234a8ac66a47e95cec6d496cf2f1442471..8b251f312bcccec5485024f6fe8d80e1cdf25746 100644 GIT binary patch literal 384 zcmZ9HOA3Ne6ox;+L5PEv(4cV`IIrjdPAV##hV&wc1g%+%X(R2Xc{`~7t6e0Ioa?#% zkMj%AQhz>WYy7LeWAUaqx~Kv?-;(-Hs4-^ATIZOBrid9+-6Ne7&88mi>kUR4lo#jxZ;#*s4zxg9yNlk=H9sqkCD2^cEXKpiTBNfgkKpXJBWWaLt(Qkv@0 w5yv*t82((Wlr2{_+FDoDHKW2QCXvc+s**ul{{$ - BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection - Height = 249 - Width = 343 + AfterAcquireConnection = DataAbstractServiceAfterAcquireConnection + BeforeReleaseConnection = DataAbstractServiceBeforeReleaseConnection + AfterReleaseConnection = DataAbstractServiceAfterReleaseConnection + OnAcquireConnectionFailure = DataAbstractServiceAcquireConnectionFailure + BeforeProcessDeltas = DataAbstractServiceBeforeProcessDeltas + AfterProcessDeltas = DataAbstractServiceAfterProcessDeltas + OnProcessDeltasError = DataAbstractServiceProcessDeltasError + BeforeGetDatasetSchema = DataAbstractServiceBeforeGetDatasetSchema + BeforeGetDatasetData = DataAbstractServiceBeforeGetDatasetData + AfterGetDatasetSchema = DataAbstractServiceAfterGetDatasetSchema + AfterGetDatasetData = DataAbstractServiceAfterGetDatasetData + OnBusinessProcessorAutoCreated = DataAbstractServiceBusinessProcessorAutoCreated + BeforeExecuteCommand = DataAbstractServiceBeforeExecuteCommand + AfterExecuteCommand = DataAbstractServiceAfterExecuteCommand + OnGetSchemaAsXMLEvent = DataAbstractServiceGetSchemaAsXMLEvent + ValidateDatasetAccess = DataAbstractServiceValidateDatasetAccess + ValidateCommandExecution = DataAbstractServiceValidateCommandExecution + ValidateDirectSQLAccess = DataAbstractServiceValidateDirectSQLAccess + OnUpdateDataBeginTransaction = DataAbstractServiceUpdateDataBeginTransaction + OnUpdateDataCommitTransaction = DataAbstractServiceUpdateDataCommitTransaction + OnUpdateDataRollBackTransaction = DataAbstractServiceUpdateDataRollBackTransaction + Height = 220 + Width = 370 object Diagrams: TDADiagrams Left = 150 Top = 82 - DiagramData = ''#13#10''#13#10 + DiagramData = + ''#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10 + + ''#13#10 end object DataDictionary: TDADataDictionary Fields = < @@ -124,6 +155,236 @@ object srvObras: TsrvObras DataType = datString Size = 255 DisplayLabel = 'Subcontrata' + end + item + Name = 'Obras_ID_EJECUCION' + DataType = datInteger + DisplayLabel = 'ID_EJECUCION' + end + item + Name = 'ObrasEjecuciones_ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID' + Required = True + end + item + Name = 'ObrasEjecuciones_ID_OBRA' + DataType = datInteger + DisplayLabel = 'ID_OBRA' + end + item + Name = 'ObrasEjecuciones_FECHA_INICIO' + DataType = datDateTime + DisplayLabel = 'Inicio' + end + item + Name = 'ObrasEjecuciones_FECHA_FIN' + DataType = datDateTime + DisplayLabel = 'Finalizaci'#243'n' + end + item + Name = 'ObrasEjecuciones_ID_SUBCONTRATA' + DataType = datInteger + DisplayLabel = 'ID_SUBCONTRATA' + end + item + Name = 'ObrasEjecuciones_NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Subcontrata' + end + item + Name = 'ObrasEjecuciones_OBSERVACIONES' + DataType = datMemo + DisplayLabel = 'Observaciones' + end + item + Name = 'ObrasEjecuciones_IMPORTE_GASTOS' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Gastos' + Alignment = taRightJustify + end + item + Name = 'ObrasEjecuciones_IMPORTE_INGRESOS' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Ingresos' + Alignment = taRightJustify + end + item + Name = 'ObrasEjecuciones_IMPORTE_TOTAL' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Total' + Alignment = taRightJustify + end + item + Name = 'ObrasEjecuciones_FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'ObrasEjecuciones_FECHA_MODIFICACION' + DataType = datDateTime + end + item + Name = 'ObrasEjecucionesPresupuestos_ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PRESUPUESTOS_ID' + Required = True + DisplayLabel = 'ID' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPresupuestos_ID_EJECUCION' + DataType = datInteger + DisplayLabel = 'ID_EJECUCION' + end + item + Name = 'ObrasEjecucionesPresupuestos_ID_PRESUPUESTO' + DataType = datInteger + DisplayLabel = 'ID_PRESUPUESTO' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PEDIDOS_PROV_ID' + Required = True + DisplayLabel = 'ID' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_EJECUCION' + DataType = datInteger + DisplayLabel = 'ID_EJECUCION' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_PEDIDO' + DataType = datInteger + DisplayLabel = 'ID_PEDIDO' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_PRESUPUESTO' + DataType = datInteger + DisplayLabel = 'ID_PRESUPUESTO' + end + item + Name = 'ObrasEjecucionesPresupuestos_REFERENCIA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Referencia' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPresupuestos_FECHA_PRESUPUESTO' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha presupuesto' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPresupuestos_SITUACION' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Situaci'#243'n' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPresupuestos_BASE_IMPONIBLE' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Base imponible' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPresupuestos_NOMBRE' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Nombre' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_SITUACION' + DataType = datString + Size = 9 + LogChanges = False + DisplayLabel = 'Situaci'#243'n' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_PROVEEDOR' + DataType = datInteger + LogChanges = False + DisplayLabel = 'ID_PROVEEDOR' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_NOMBRE' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Proveedor' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_REFERENCIA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Referencia' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_FECHA_PEDIDO' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha pedido' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_FECHA_ENTREGA' + DataType = datDateTime + LogChanges = False + DisplayLabel = 'Fecha de entrega' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_ALMACEN' + DataType = datInteger + LogChanges = False + DisplayLabel = 'ID_ALMACEN' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_NOMBRE_ALMACEN' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Almac'#233'n' + end + item + Name = 'ObrasEjecucionesPedidosProveedor_ID_OBRA' + DataType = datInteger + LogChanges = False + DisplayLabel = 'ID_OBRA' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_NOMBRE_OBRA' + DataType = datString + Size = 255 + LogChanges = False + DisplayLabel = 'Obra para reserva' + ServerAutoRefresh = True + end + item + Name = 'ObrasEjecucionesPedidosProveedor_BASE_IMPONIBLE' + DataType = datCurrency + LogChanges = False + DisplayLabel = 'Base imponible' + Alignment = taRightJustify + ServerAutoRefresh = True end> Left = 150 Top = 22 @@ -210,12 +471,8 @@ object srvObras: TsrvObras TableField = 'USUARIO' end item - DatasetField = 'ID_SUBCONTRATA' - TableField = 'ID_SUBCONTRATA' - end - item - DatasetField = 'NOMBRE_SUBCONTRATA' - TableField = 'NOMBRE_SUBCONTRATA' + DatasetField = 'ID_EJECUCION' + TableField = 'ID_EJECUCION' end> end> Name = 'Obras' @@ -304,17 +561,6 @@ object srvObras: TsrvObras ServerAutoRefresh = True DictionaryEntry = 'Obras_NOMBRE_CLIENTE' end - item - Name = 'ID_SUBCONTRATA' - DataType = datInteger - DictionaryEntry = 'Obras_ID_SUBCONTRATA' - end - item - Name = 'NOMBRE_SUBCONTRATA' - DataType = datString - Size = 255 - DictionaryEntry = 'Obras_NOMBRE_SUBCONTRATA' - end item Name = 'FECHA_ALTA' DataType = datDateTime @@ -330,6 +576,445 @@ object srvObras: TsrvObras DataType = datString Size = 20 DictionaryEntry = 'Obras_USUARIO' + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + ServerAutoRefresh = True + end> + end + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PRESUPUESTOS' + SQL = + 'select obras_ejecuciones_presupuestos.id,'#10' obras_ejecucion' + + 'es_presupuestos.id_ejecucion, obras_ejecuciones_presupuestos.id_' + + 'presupuesto,'#10' presupuestos_cliente.referencia, presupuesto' + + 's_cliente.fecha_presupuesto,'#10' presupuestos_cliente.situaci' + + 'on, presupuestos_cliente.base_imponible,'#10' contactos.nombre' + + #10'from obras_ejecuciones_presupuestos'#10'inner join presupuestos_cli' + + 'ente on (presupuestos_cliente.id = obras_ejecuciones_presupuesto' + + 's.id_presupuesto)'#10'inner join contactos on (contactos.id = presup' + + 'uestos_cliente.id_cliente)'#10'where {where}'#10 + StatementType = stSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'ID_EJECUCION' + TableField = 'ID_EJECUCION' + end + item + DatasetField = 'ID_PRESUPUESTO' + TableField = 'ID_PRESUPUESTO' + end + item + DatasetField = 'REFERENCIA' + TableField = '' + SQLOrigin = 'REFERENCIA' + end + item + DatasetField = 'FECHA_PRESUPUESTO' + TableField = '' + SQLOrigin = 'FECHA_PRESUPUESTO' + end + item + DatasetField = 'SITUACION' + TableField = '' + SQLOrigin = 'SITUACION' + end + item + DatasetField = 'BASE_IMPONIBLE' + TableField = '' + SQLOrigin = 'BASE_IMPONIBLE' + end + item + DatasetField = 'NOMBRE' + TableField = '' + SQLOrigin = 'NOMBRE' + end> + end> + Name = 'ObrasEjecucionesPresupuestos' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PRESUPUESTOS_ID' + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID' + InPrimaryKey = True + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_EJECUCION' + end + item + Name = 'ID_PRESUPUESTO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_PRESUPUESTO' + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_REFERENCIA' + end + item + Name = 'FECHA_PRESUPUESTO' + DataType = datDateTime + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_FECHA_PRESUPUESTO' + end + item + Name = 'SITUACION' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_SITUACION' + end + item + Name = 'BASE_IMPONIBLE' + DataType = datCurrency + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_BASE_IMPONIBLE' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPresupuestos_NOMBRE' + end> + end + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PEDIDOS_PROV' + SQL = + 'select obras_ejecuciones_pedidos_prov.id,'#10' obras_ejecucion' + + 'es_pedidos_prov.id_ejecucion,'#10' obras_ejecuciones_pedidos_p' + + 'rov.id_pedido,'#10' obras_ejecuciones_pedidos_prov.id_presupue' + + 'sto,'#10' v_ped_prov_situacion.situacion,'#10' pedidos_prove' + + 'edor.id_proveedor,'#10' contactos.nombre,'#10' pedidos_prove' + + 'edor.referencia,'#10' pedidos_proveedor.fecha_pedido,'#10' p' + + 'edidos_proveedor.fecha_entrega,'#10' pedidos_proveedor.id_alma' + + 'cen,'#10' almacenes.nombre as nombre_almacen,'#10' pedidos_p' + + 'roveedor.id_obra,'#10' obras.nombre as nombre_obra,'#10' ped' + + 'idos_proveedor.base_imponible'#10'from obras_ejecuciones_pedidos_pro' + + 'v'#10' inner join v_ped_prov_situacion on (v_ped_prov_situacion.id' + + '_pedido = obras_ejecuciones_pedidos_prov.id_pedido)'#10' inner joi' + + 'n pedidos_proveedor on (pedidos_proveedor.id = obras_ejecuciones' + + '_pedidos_prov.id_pedido)'#10' inner join contactos on (contactos.i' + + 'd = pedidos_proveedor.id_proveedor)'#10' left outer join almacenes' + + ' on (almacenes.id = pedidos_proveedor.id_almacen)'#10' left outer ' + + 'join almacenes as obras on (obras.id = pedidos_proveedor.id_obra' + + ')'#10'where {where}'#10 + StatementType = stSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'ID_EJECUCION' + TableField = 'ID_EJECUCION' + end + item + DatasetField = 'ID_PEDIDO' + TableField = 'ID_PEDIDO' + end + item + DatasetField = 'ID_PRESUPUESTO' + TableField = 'ID_PRESUPUESTO' + end + item + DatasetField = 'ID_PROVEEDOR' + TableField = '' + SQLOrigin = 'ID_PROVEEDOR' + end + item + DatasetField = 'NOMBRE' + TableField = '' + SQLOrigin = 'NOMBRE' + end + item + DatasetField = 'REFERENCIA' + TableField = '' + SQLOrigin = 'REFERENCIA' + end + item + DatasetField = 'FECHA_PEDIDO' + TableField = '' + SQLOrigin = 'FECHA_PEDIDO' + end + item + DatasetField = 'FECHA_ENTREGA' + TableField = '' + SQLOrigin = 'FECHA_ENTREGA' + end + item + DatasetField = 'ID_ALMACEN' + TableField = '' + SQLOrigin = 'ID_ALMACEN' + end + item + DatasetField = 'ID_OBRA' + TableField = '' + SQLOrigin = 'ID_OBRA' + end + item + DatasetField = 'BASE_IMPONIBLE' + TableField = '' + SQLOrigin = 'BASE_IMPONIBLE' + end + item + DatasetField = 'NOMBRE_ALMACEN' + TableField = '' + SQLOrigin = 'NOMBRE_ALMACEN' + end + item + DatasetField = 'NOMBRE_OBRA' + TableField = '' + SQLOrigin = 'NOMBRE_OBRA' + end + item + DatasetField = 'SITUACION' + TableField = '' + SQLOrigin = 'SITUACION' + end> + end> + Name = 'ObrasEjecucionesPedidosProveedor' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PEDIDOS_PROV_ID' + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID' + InPrimaryKey = True + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_EJECUCION' + end + item + Name = 'ID_PEDIDO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PEDIDO' + end + item + Name = 'ID_PRESUPUESTO' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PRESUPUESTO' + end + item + Name = 'SITUACION' + DataType = datString + Size = 9 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_SITUACION' + end + item + Name = 'ID_PROVEEDOR' + DataType = datInteger + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PROVEEDOR' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE' + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_REFERENCIA' + end + item + Name = 'FECHA_PEDIDO' + DataType = datDateTime + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_PEDIDO' + end + item + Name = 'FECHA_ENTREGA' + DataType = datDateTime + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_ENTREGA' + end + item + Name = 'ID_ALMACEN' + DataType = datInteger + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_ALMACEN' + end + item + Name = 'NOMBRE_ALMACEN' + DataType = datString + Size = 255 + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_ALMACEN' + end + item + Name = 'ID_OBRA' + DataType = datInteger + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_OBRA' + end + item + Name = 'NOMBRE_OBRA' + DataType = datString + Size = 255 + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_OBRA' + end + item + Name = 'BASE_IMPONIBLE' + DataType = datCurrency + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_BASE_IMPONIBLE' + end> + end + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'V_OBRAS_EJECUCIONES' + StatementType = stAutoSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'ID_OBRA' + TableField = 'ID_OBRA' + end + item + DatasetField = 'FECHA_INICIO' + TableField = 'FECHA_INICIO' + end + item + DatasetField = 'FECHA_FIN' + TableField = 'FECHA_FIN' + end + item + DatasetField = 'ID_SUBCONTRATA' + TableField = 'ID_SUBCONTRATA' + end + item + DatasetField = 'NOMBRE' + TableField = 'NOMBRE' + end + item + DatasetField = 'IMPORTE_GASTOS' + TableField = 'IMPORTE_GASTOS' + end + item + DatasetField = 'IMPORTE_INGRESOS' + TableField = 'IMPORTE_INGRESOS' + end + item + DatasetField = 'IMPORTE_TOTAL' + TableField = 'IMPORTE_TOTAL' + end + item + DatasetField = 'OBSERVACIONES' + TableField = 'OBSERVACIONES' + end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end> + end> + Name = 'ObrasEjecuciones' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID' + DictionaryEntry = 'ObrasEjecuciones_ID' + InPrimaryKey = True + end + item + Name = 'ID_OBRA' + DataType = datInteger + DictionaryEntry = 'ObrasEjecuciones_ID_OBRA' + end + item + Name = 'FECHA_INICIO' + DataType = datDateTime + DictionaryEntry = 'ObrasEjecuciones_FECHA_INICIO' + end + item + Name = 'FECHA_FIN' + DataType = datDateTime + DictionaryEntry = 'ObrasEjecuciones_FECHA_FIN' + end + item + Name = 'ID_SUBCONTRATA' + DataType = datInteger + DictionaryEntry = 'ObrasEjecuciones_ID_SUBCONTRATA' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DictionaryEntry = 'ObrasEjecuciones_NOMBRE' + end + item + Name = 'IMPORTE_GASTOS' + DataType = datCurrency + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_GASTOS' + end + item + Name = 'IMPORTE_INGRESOS' + DataType = datCurrency + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_INGRESOS' + end + item + Name = 'IMPORTE_TOTAL' + DataType = datCurrency + ServerAutoRefresh = True + DictionaryEntry = 'ObrasEjecuciones_IMPORTE_TOTAL' + end + item + Name = 'OBSERVACIONES' + DataType = datMemo + DictionaryEntry = 'ObrasEjecuciones_OBSERVACIONES' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DictionaryEntry = 'ObrasEjecuciones_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DictionaryEntry = 'ObrasEjecuciones_FECHA_MODIFICACION' end> end> JoinDataTables = <> @@ -402,8 +1087,8 @@ object srvObras: TsrvObras 'VIL, FAX, PERSONA_CONTACTO, OBSERVACIONES, '#10' FECHA_ALTA, USU' + 'ARIO)'#10' VALUES'#10' (:ID, :ID_EMPRESA, '#39'OBRA'#39', :NOMBRE, :CALLE, :' + 'PROVINCIA, :POBLACION,'#10' :CODIGO_POSTAL, :TELEFONO, :MOVIL, :' + - 'FAX, :PERSONA_CONTACTO, '#10' :OBSERVACIONES, CURRENT_DATE, :USU' + - 'ARIO)'#10 + 'FAX, :PERSONA_CONTACTO, '#10' :OBSERVACIONES, CURRENT_TIMESTAMP,' + + ' :USUARIO)'#10 StatementType = stSQL ColumnMappings = <> end> @@ -428,6 +1113,12 @@ object srvObras: TsrvObras end item Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_ALMACENES_ID' + Value = '' + end item Name = 'ID_EMPRESA' Value = '' @@ -472,10 +1163,6 @@ object srvObras: TsrvObras Name = 'OBSERVACIONES' Value = '' end - item - Name = 'FECHA_MODIFICACION' - Value = '' - end item Name = 'USUARIO' Value = '' @@ -490,13 +1177,13 @@ object srvObras: TsrvObras Default = True TargetTable = 'ALMACENES' SQL = - 'UPDATE ALMACENES'#10' SET '#10' ID_EMPRESA = :ID_EMPRESA, '#10' NOMBR' + - 'E = :NOMBRE, '#10' CALLE = :CALLE, '#10' PROVINCIA = :PROVINCIA, '#10 + - ' POBLACION = :POBLACION, '#10' CODIGO_POSTAL = :CODIGO_POSTAL,' + - ' '#10' TELEFONO = :TELEFONO, '#10' MOVIL = :MOVIL, '#10' FAX = :FAX' + - ', '#10' PERSONA_CONTACTO = :PERSONA_CONTACTO, '#10' OBSERVACIONES ' + - '= :OBSERVACIONES, '#10' FECHA_MODIFICACION = :FECHA_MODIFICACION,' + - #10' USUARIO = :USUARIO'#10' WHERE'#10' (ID = :OLD_ID)'#10 + 'UPDATE ALMACENES'#10' SET'#10' ID = :ID,'#10' ID_EMPRESA = :ID_EMPRES' + + 'A, '#10' NOMBRE = :NOMBRE, '#10' CALLE = :CALLE, '#10' PROVINCIA = ' + + ':PROVINCIA, '#10' POBLACION = :POBLACION, '#10' CODIGO_POSTAL = :C' + + 'ODIGO_POSTAL, '#10' TELEFONO = :TELEFONO, '#10' MOVIL = :MOVIL, '#10' ' + + ' FAX = :FAX, '#10' PERSONA_CONTACTO = :PERSONA_CONTACTO, '#10' O' + + 'BSERVACIONES = :OBSERVACIONES, '#10' FECHA_MODIFICACION = CURRENT' + + '_TIMESTAMP,'#10' USUARIO = :USUARIO'#10' WHERE'#10' (ID = :OLD_ID)'#10 StatementType = stSQL ColumnMappings = <> end> @@ -513,11 +1200,6 @@ object srvObras: TsrvObras Name = 'ID_CLIENTE' DataType = datInteger Value = '0' - end - item - Name = 'ID_SUBCONTRATA' - DataType = datInteger - Value = '0' end> Statements = < item @@ -525,8 +1207,8 @@ object srvObras: TsrvObras Default = True TargetTable = 'OBRAS_DATOS' SQL = - 'INSERT'#10' INTO OBRAS_DATOS'#10' (ID_ALMACEN, ID_CLIENTE, ID_SUBCON' + - 'TRATA)'#10' VALUES'#10' (:ID_ALMACEN, :ID_CLIENTE, :ID_SUBCONTRATA)'#10 + 'INSERT'#10' INTO OBRAS_DATOS'#10' (ID_ALMACEN, ID_CLIENTE)'#10' VALUES'#10 + + ' (:ID_ALMACEN, :ID_CLIENTE)'#10 StatementType = stSQL ColumnMappings = <> end> @@ -542,7 +1224,6 @@ object srvObras: TsrvObras Statements = < item ConnectionType = 'Interbase' - Default = True TargetTable = 'OBRAS_DATOS' SQL = 'DELETE '#10' FROM'#10' OBRAS_DATOS'#10' WHERE'#10' (ID_ALMACEN = :OLD_ID' + @@ -558,10 +1239,6 @@ object srvObras: TsrvObras Name = 'ID_CLIENTE' Value = '' end - item - Name = 'ID_SUBCONTRATA' - Value = '' - end item Name = 'OLD_ID_ALMACEN' Value = '' @@ -572,16 +1249,410 @@ object srvObras: TsrvObras Default = True TargetTable = 'OBRAS_DATOS' SQL = - 'UPDATE OBRAS_DATOS'#10' SET '#10' ID_CLIENTE = :ID_CLIENTE,'#10' ID_S' + - 'UBCONTRATA = :ID_SUBCONTRATA'#10' WHERE'#10' (ID_ALMACEN = :OLD_ID_A' + - 'LMACEN)'#10 + 'UPDATE OBRAS_DATOS'#10' SET '#10' ID_CLIENTE = :ID_CLIENTE'#10' WHERE'#10' ' + + ' (ID_ALMACEN = :OLD_ID_ALMACEN)'#10 StatementType = stSQL ColumnMappings = <> end> Name = 'Update_OBRAS_DATOS' + end + item + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID' + Value = '' + end + item + Name = 'ID_OBRA' + DataType = datInteger + Value = '0' + end + item + Name = 'FECHA_INICIO' + DataType = datDateTime + Value = '0:00:00' + end + item + Name = 'FECHA_FIN' + DataType = datDateTime + Value = '0:00:00' + end + item + Name = 'ID_SUBCONTRATA' + DataType = datInteger + Value = '0' + end + item + Name = 'OBSERVACIONES' + DataType = datMemo + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES' + SQL = + 'INSERT'#10' INTO OBRAS_EJECUCIONES'#10' (ID, ID_OBRA, FECHA_INICIO, ' + + 'FECHA_FIN, ID_SUBCONTRATA, '#10' OBSERVACIONES, FECHA_ALTA)'#10' VA' + + 'LUES'#10' (:ID, :ID_OBRA, :FECHA_INICIO, :FECHA_FIN, :ID_SUBCONTR' + + 'ATA, '#10' :OBSERVACIONES, CURRENT_TIMESTAMP)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Insert_OBRAS_EJECUCIONES' + end + item + Params = < + item + Name = 'OLD_ID' + DataType = datInteger + Value = '0' + end> + Statements = < + item + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES' + SQL = 'DELETE '#10' FROM'#10' OBRAS_EJECUCIONES'#10' WHERE'#10' (ID = :OLD_ID)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Delete_OBRAS_EJECUCIONES' + end + item + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID' + Value = '' + end + item + Name = 'ID_OBRA' + Value = '' + end + item + Name = 'FECHA_INICIO' + Value = '' + end + item + Name = 'FECHA_FIN' + Value = '' + end + item + Name = 'ID_SUBCONTRATA' + Value = '' + end + item + Name = 'OBSERVACIONES' + Value = '' + end + item + Name = 'OLD_ID' + Value = '' + end> + Statements = < + item + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES' + SQL = + 'UPDATE OBRAS_EJECUCIONES'#10' SET'#10' ID = :ID,'#10' ID_OBRA = :ID_O' + + 'BRA,'#10' FECHA_INICIO = :FECHA_INICIO, '#10' FECHA_FIN = :FECHA_F' + + 'IN, '#10' ID_SUBCONTRATA = :ID_SUBCONTRATA, '#10' OBSERVACIONES = ' + + ':OBSERVACIONES,'#10' FECHA_MODIFICACION = CURRENT_TIMESTAMP'#10' WHE' + + 'RE'#10' (ID = :OLD_ID)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Update_OBRAS_EJECUCIONES' + end + item + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PRESUPUESTOS_ID' + Value = '0' + end + item + Name = 'ID_EJECUCION' + DataType = datInteger + Value = '0' + end + item + Name = 'ID_PRESUPUESTO' + DataType = datInteger + Value = '0' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PRESUPUESTOS' + SQL = + 'INSERT'#10' INTO OBRAS_EJECUCIONES_PRESUPUESTOS'#10' (ID, ID_EJECUCI' + + 'ON, ID_PRESUPUESTO)'#10' VALUES'#10' (:ID, :ID_EJECUCION, :ID_PRESUP' + + 'UESTO)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Insert_OBRAS_EJECUCIONES_PRESUPUESTOS' + end + item + Params = < + item + Name = 'OLD_ID' + DataType = datInteger + Value = '0' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PRESUPUESTOS' + SQL = + 'DELETE '#10' FROM'#10' OBRAS_EJECUCIONES_PRESUPUESTOS'#10' WHERE'#10' (I' + + 'D = :OLD_ID)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Delete_OBRAS_EJECUCIONES_PRESUPUESTOS' + end + item + Params = < + item + Name = 'ID_EJECUCION' + Value = '' + end + item + Name = 'ID_PRESUPUESTO' + Value = '' + end + item + Name = 'OLD_ID' + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PRESUPUESTOS' + SQL = + 'UPDATE OBRAS_EJECUCIONES_PRESUPUESTOS'#10' SET '#10' ID_EJECUCION = ' + + ':ID_EJECUCION,'#10' ID_PRESUPUESTO = :ID_PRESUPUESTO'#10' WHERE'#10' ' + + '(ID = :OLD_ID)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Update_OBRAS_EJECUCIONES_PRESUPUESTOS' + end + item + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_OBRAS_EJEC_PEDIDOS_PROV_ID' + Value = '' + end + item + Name = 'ID_EJECUCION' + Value = '' + end + item + Name = 'ID_PEDIDO' + Value = '' + end + item + Name = 'ID_PRESUPUESTO' + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PEDIDOS_PROV' + SQL = + 'INSERT'#10' INTO OBRAS_EJECUCIONES_PEDIDOS_PROV'#10' (ID, ID_EJECUCI' + + 'ON, ID_PEDIDO, ID_PRESUPUESTO)'#10' VALUES'#10' (:ID, :ID_EJECUCION,' + + ' :ID_PEDIDO, :ID_PRESUPUESTO)'#10 + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Insert_OBRAS_EJECUCIONES_PEDIDOS_PROV' + end + item + Params = < + item + Name = 'OLD_ID' + DataType = datAutoInc + Value = '0' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PEDIDOS_PROV' + SQL = + 'DELETE '#10' FROM'#10' OBRAS_EJECUCIONES_PEDIDOS_PROV'#10' WHERE'#10' (I' + + 'D = :OLD_ID)' + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Delete_OBRAS_EJECUCIONES_PEDIDOS_PROV' + end + item + Params = < + item + Name = 'ID_EJECUCION' + Value = '' + end + item + Name = 'ID_PEDIDO' + Value = '' + end + item + Name = 'ID_PRESUPUESTO' + Value = '' + end + item + Name = 'OLD_ID' + Value = '' + end> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'OBRAS_EJECUCIONES_PEDIDOS_PROV' + SQL = + 'UPDATE OBRAS_EJECUCIONES_PEDIDOS_PROV'#10' SET '#10' ID_EJECUCION = ' + + ':ID_EJECUCION, '#10' ID_PEDIDO = :ID_PEDIDO, '#10' ID_PRESUPUESTO ' + + '= :ID_PRESUPUESTO'#10' WHERE'#10' (ID = :OLD_ID)' + StatementType = stSQL + ColumnMappings = <> + end> + Name = 'Update_OBRAS_EJECUCIONES_PEDIDOS_PROV' + end> + RelationShips = < + item + Name = 'FK_ObrasEjecuciones_Obras' + MasterDatasetName = 'Obras' + MasterFields = 'ID' + DetailDatasetName = 'ObrasEjecuciones' + DetailFields = 'ID_OBRA' + RelationshipType = rtForeignKey + end + item + Name = 'FK_ObrasEjecucionesPresupuestos_ObrasEjecuciones' + MasterDatasetName = 'ObrasEjecuciones' + MasterFields = 'ID' + DetailDatasetName = 'ObrasEjecucionesPresupuestos' + DetailFields = 'ID_EJECUCION' + RelationshipType = rtForeignKey + end + item + Name = 'FK_ObrasEjecucionesPedidosProveedor_ObrasEjecuciones' + MasterDatasetName = 'ObrasEjecuciones' + MasterFields = 'ID' + DetailDatasetName = 'ObrasEjecucionesPedidosProveedor' + DetailFields = 'ID_EJECUCION' + RelationshipType = rtForeignKey + end> + UpdateRules = < + item + Name = 'Insert Obras' + DoUpdate = False + DoDelete = False + DatasetName = 'Obras' + FailureBehavior = fbRaiseException + end + item + Name = 'Insert ObrasEjecuciones' + DoUpdate = False + DoDelete = False + DatasetName = 'ObrasEjecuciones' + FailureBehavior = fbRaiseException + end + item + Name = 'Insert ObrasEjecucionesPresupuestos' + DoUpdate = False + DoDelete = False + DatasetName = 'ObrasEjecucionesPresupuestos' + FailureBehavior = fbRaiseException + end + item + Name = 'Insert ObrasEjecucionesPedidosProveedor' + DoUpdate = False + DoDelete = False + DatasetName = 'ObrasEjecucionesPedidosProveedor' + FailureBehavior = fbRaiseException + end + item + Name = 'Update Obras' + DoInsert = False + DoDelete = False + DatasetName = 'Obras' + FailureBehavior = fbRaiseException + end + item + Name = 'Update ObrasEjecuciones' + DoInsert = False + DoDelete = False + DatasetName = 'ObrasEjecuciones' + FailureBehavior = fbRaiseException + end + item + Name = 'Update ObrasEjecucionesPresupuestos' + DoInsert = False + DoDelete = False + DatasetName = 'ObrasEjecucionesPresupuestos' + FailureBehavior = fbRaiseException + end + item + Name = 'Update ObrasEjecucionesPedidosProveedor' + DoInsert = False + DoDelete = False + DatasetName = 'ObrasEjecucionesPedidosProveedor' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete ObrasEjecucionesPedidosProveedor' + DoUpdate = False + DoInsert = False + DatasetName = 'ObrasEjecucionesPedidosProveedor' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete ObrasEjecucionesPresupuestos' + DoUpdate = False + DoInsert = False + DatasetName = 'ObrasEjecucionesPresupuestos' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete ObrasEjecuciones' + DoUpdate = False + DoInsert = False + DatasetName = 'ObrasEjecuciones' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete Obras' + DoUpdate = False + DoInsert = False + DatasetName = 'Obras' + FailureBehavior = fbRaiseException end> - RelationShips = <> - UpdateRules = <> Version = 0 Left = 48 Top = 24 @@ -598,7 +1669,40 @@ object srvObras: TsrvObras ReferencedDataset = 'Obras' ProcessorOptions = [poPrepareCommands] UpdateMode = updWhereKeyOnly - Left = 248 + Left = 256 Top = 24 end + object bpObrasEjecuciones: TDABusinessProcessor + Schema = schObras + InsertCommandName = 'Insert_OBRAS_EJECUCIONES' + DeleteCommandName = 'Delete_OBRAS_EJECUCIONES' + UpdateCommandName = 'Update_OBRAS_EJECUCIONES' + ReferencedDataset = 'ObrasEjecuciones' + ProcessorOptions = [poPrepareCommands] + UpdateMode = updWhereKeyOnly + Left = 256 + Top = 80 + end + object bpObrasEjecucionesPresupuestos: TDABusinessProcessor + Schema = schObras + InsertCommandName = 'Insert_OBRAS_EJECUCIONES_PRESUPUESTOS' + DeleteCommandName = 'Delete_OBRAS_EJECUCIONES_PRESUPUESTOS' + UpdateCommandName = 'Update_OBRAS_EJECUCIONES_PRESUPUESTOS' + ReferencedDataset = 'ObrasEjecucionesPresupuestos' + ProcessorOptions = [poPrepareCommands] + UpdateMode = updWhereKeyOnly + Left = 256 + Top = 144 + end + object bpObrasEjecucionesPedidosProv: TDABusinessProcessor + Schema = schObras + InsertCommandName = 'Insert_OBRAS_EJECUCIONES_PEDIDOS_PROV' + DeleteCommandName = 'Delete_OBRAS_EJECUCIONES_PEDIDOS_PROV' + UpdateCommandName = 'Update_OBRAS_EJECUCIONES_PEDIDOS_PROV' + ReferencedDataset = 'ObrasEjecucionesPedidosProveedor' + ProcessorOptions = [poPrepareCommands] + UpdateMode = updWhereKeyOnly + Left = 88 + Top = 144 + end end diff --git a/Source/Modulos/Obras/Servidor/srvObras_Impl.pas b/Source/Modulos/Obras/Servidor/srvObras_Impl.pas index f914f964..bf07f351 100644 --- a/Source/Modulos/Obras/Servidor/srvObras_Impl.pas +++ b/Source/Modulos/Obras/Servidor/srvObras_Impl.pas @@ -16,7 +16,7 @@ uses {Used RODLs:} DataAbstract4_Intf, {Generated:} uDABusinessProcessor, uDABin2DataStreamer, uDADataStreamer, uDAScriptingProvider, uDAClasses, - FactuGES_Intf, uDAInterfaces; + FactuGES_Intf, uDAInterfaces, uRORemoteDataModule; type { TsrvObras } @@ -24,13 +24,80 @@ type Diagrams: TDADiagrams; Bin2DataStreamer: TDABin2DataStreamer; bpObras: TDABusinessProcessor; + bpObrasEjecuciones: TDABusinessProcessor; + bpObrasEjecucionesPresupuestos: TDABusinessProcessor; + bpObrasEjecucionesPedidosProv: TDABusinessProcessor; schObras: TDASchema; DataDictionary: TDADataDictionary; + procedure DataAbstractServiceAfterAcquireConnection(aSender: TObject; + const aConnectionName: string; + const aAcquiredConnection: IDAConnection); + procedure DataAbstractServiceAfterExecuteCommand(aSender: TObject; + const aCommand: IDASQLCommand; aRowsAffacted: Integer); + procedure DataAbstractServiceAfterGetDatasetSchema(aSender: TObject; + const aDataset: IDADataset); + procedure DataAbstractServiceAfterProcessDeltas(aSender: TObject; + aDeltaStructs: TDADeltaStructList); + procedure DataAbstractServiceAfterReleaseConnection(aSender: TObject; + const aConnectionName: string); + procedure DataAbstractServiceBeforeExecuteCommand(aSender: TObject; + const aCommand: IDASQLCommand); + procedure DataAbstractServiceBeforeGetDatasetData(aSender: TObject; + const aDataset: IDADataset; const aIncludeSchema: Boolean; + const aMaxRecords: Integer); + procedure DataAbstractServiceBeforeGetDatasetSchema(aSender: TObject; + const aDataset: IDADataset); + procedure DataAbstractServiceBeforeProcessDeltas(aSender: TObject; + aDeltaStructs: TDADeltaStructList); + procedure DataAbstractServiceBeforeReleaseConnection(aSender: TObject; + const aConnectionName: string; + const aAcquiredConnection: IDAConnection); + procedure DataAbstractServiceGetSchemaAsXMLEvent(aSender: TObject; + var aSchemaXML: string); + procedure DataAbstractServiceProcessDeltasError(aSender: TObject; + aDeltaStructs: TDADeltaStructList; aError: Exception; + var aDoRaise: Boolean); + procedure DataAbstractServiceUpdateDataBeginTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); + procedure DataAbstractServiceUpdateDataCommitTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); + procedure DataAbstractServiceUpdateDataRollBackTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); + procedure DataAbstractServiceValidateCommandExecution(Sender: TObject; + const aConnection: IDAConnection; const aDatasetName: string; + const aParamNames: array of string; + const aParamValues: array of Variant; aSchema: TDASchema; + var Allowed: Boolean); + procedure DataAbstractServiceValidateDatasetAccess(Sender: TObject; + const aConnection: IDAConnection; const aDatasetName: string; + const aParamNames: array of string; + const aParamValues: array of Variant; aSchema: TDASchema; + var Allowed: Boolean); + procedure DataAbstractServiceValidateDirectSQLAccess(Sender: TObject; + const aConnection: IDAConnection; const aSQLText: string; + const aParamNames: array of string; + const aParamValues: array of Variant; var Allowed: Boolean); + procedure DataAbstractServiceAcquireConnectionFailure(aSender: TObject; + const aConnectionName: string; aError: Exception); + procedure DataAbstractServiceDestroy(Sender: TObject); + procedure DataAbstractServiceActivate(const aClientID: TGUID; + aSession: TROSession; const aMessage: IROMessage); + procedure DataAbstractServiceDeactivate(const aClientID: TGUID; + aSession: TROSession); + procedure DataAbstractServiceBusinessProcessorAutoCreated( + aSender: TRORemoteDataModule; + BusinessProcessor: TDABusinessProcessor); + + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); procedure DARemoteServiceAfterGetDatasetData(const Dataset: IDADataset; const IncludeSchema: Boolean; const MaxRecords: Integer); procedure DARemoteServiceCreate(Sender: TObject); - procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; - var aConnectionName: string); + procedure DataAbstractServiceAfterGetDatasetData(aSender: TObject; + const aDataset: IDADataset; const aIncludeSchema: Boolean; + const aMaxRecords: Integer); + private + procedure Log(Astr: string); end; implementation @@ -39,7 +106,7 @@ implementation uses {Generated:} FactuGES_Invk, uDataModuleServer, uDatabaseUtils, schObrasClient_Intf, uRestriccionesUsuarioUtils, - uBizObrasServer; + uBizObrasServer, Variants; procedure Create_srvObras(out anInstance : IUnknown); begin @@ -62,6 +129,10 @@ end; procedure TsrvObras.DARemoteServiceCreate(Sender: TObject); begin +// Log('***Create***'); +// Log('************'); +// Log(''); + SessionManager := dmServer.SessionManager; bpObras.BusinessRulesID := BIZ_SERVER_OBRA; end; @@ -69,9 +140,319 @@ end; procedure TsrvObras.DataAbstractServiceBeforeAcquireConnection( aSender: TObject; var aConnectionName: string); begin + inherited; ConnectionName := dmServer.ConnectionName; + +// Log('***BeforeAcquireConnection***'); +// Log('aConnectionName:'#9 + aConnectionName); +// Log('************************'); +// Log(''); end; + +procedure TsrvObras.DataAbstractServiceAfterAcquireConnection( + aSender: TObject; const aConnectionName: string; + const aAcquiredConnection: IDAConnection); +begin + inherited; +// Log('***AfterAcquireConnection***'); +// Log('ConnectionName:'#9 + aConnectionName); +// Log('aAcquiredConnection.Name:'#9 + aAcquiredConnection.Name); +// Log('aAcquiredConnection.ConnectionString:'#9 + aAcquiredConnection.ConnectionString); +// Log('****************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceAfterExecuteCommand( + aSender: TObject; const aCommand: IDASQLCommand; aRowsAffacted: Integer); +begin + inherited; +// Log('***AfterExecuteCommand***'); +// Log('aCommand.Name:'#9 + aCommand.Name); +// Log('aCommand.SQL:'#9 + aCommand.SQL); +// Log('aRowsAffacted:'#9 + IntToStr(aRowsAffacted)); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceAfterGetDatasetData( + aSender: TObject; const aDataset: IDADataset; + const aIncludeSchema: Boolean; const aMaxRecords: Integer); +begin + inherited; +// Log('***AfterGetDatasetData***'); +// Log('aDataset.Name:'#9 + aDataset.Name); +// Log('aDataset.SQL:'#9 + aDataset.SQL); +// Log('aIncludeSchema:'#9 + BoolStr[aIncludeSchema]); +// Log('aMaxRecords:'#9 + IntToStr(aMaxRecords)); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceAfterGetDatasetSchema( + aSender: TObject; const aDataset: IDADataset); +begin + inherited; +// Log('***AfterGetDatasetSchema***'); +// Log('aDataset.Name:'#9 + aDataset.Name); +// Log('aDataset.SQL:'#9 + aDataset.SQL); +// Log('***************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceAfterProcessDeltas( + aSender: TObject; aDeltaStructs: TDADeltaStructList); +begin + inherited; +// Log('***AfterProcessDeltas***'); +// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count)); +// Log('************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceAfterReleaseConnection( + aSender: TObject; const aConnectionName: string); +begin + inherited; +// Log('***AfterReleaseConnection***'); +// Log('aConnectionName:'#9 + aConnectionName); +// Log('****************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBeforeExecuteCommand( + aSender: TObject; const aCommand: IDASQLCommand); +begin + inherited; +// Log('***BeforeExecuteCommand***'); +// Log('aCommand.Name:'#9 + aCommand.Name); +// Log('aCommand.SQL:'#9 + aCommand.SQL); +// Log('************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBeforeGetDatasetData( + aSender: TObject; const aDataset: IDADataset; + const aIncludeSchema: Boolean; const aMaxRecords: Integer); +begin + inherited; +// Log('***BeforeGetDatasetData***'); +// Log('aDataset.Name:'#9 + aDataset.Name); +// Log('aDataset.SQL:'#9 + aDataset.SQL); +// Log('aIncludeSchema:'#9 + BoolStr[aIncludeSchema]); +// Log('aMaxRecords:'#9 + IntToStr(aMaxRecords)); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBeforeGetDatasetSchema( + aSender: TObject; const aDataset: IDADataset); +begin + inherited; +// Log('***BeforeGetDatasetSchema***'); +// Log('aDataset.Name:'#9 + aDataset.Name); +// Log('aDataset.SQL:'#9 + aDataset.SQL); +// Log('****************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBeforeProcessDeltas( + aSender: TObject; aDeltaStructs: TDADeltaStructList); +begin + inherited; +// Log('***BeforeProcessDeltas***'); +// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count)); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBeforeReleaseConnection( + aSender: TObject; const aConnectionName: string; + const aAcquiredConnection: IDAConnection); +begin + inherited; +// Log('***BeforeReleaseConnection***'); +// Log('aConnectionName:'#9 + aConnectionName); +// Log('aAcquiredConnection.Name:'#9 + aAcquiredConnection.Name); +// Log('aAcquiredConnection.ConnectionString:'#9 + aAcquiredConnection.ConnectionString); +// Log('*****************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceGetSchemaAsXMLEvent( + aSender: TObject; var aSchemaXML: string); +begin + inherited; +// Log('***GetSchemaAsXMLEvent***'); +// Log('Length(aSchemaXML):'#9 + intTostr(Length(aSchemaXML))); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceProcessDeltasError( + aSender: TObject; aDeltaStructs: TDADeltaStructList; aError: Exception; + var aDoRaise: Boolean); +begin + inherited; +// Log('***ProcessDeltasError***'); +// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count)); +// Log('aError.ClassName:'#9 + aError.ClassName); +// Log('aError.Message:'#9 + aError.Message); +// Log('aDoRaise:'#9 + BoolStr[aDoRaise]); +// Log('*************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceUpdateDataBeginTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); +begin + inherited; +// Log('***UpdateDataBeginTransaction***'); +// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]); +// Log('********************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceUpdateDataCommitTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); +begin + inherited; +// Log('***UpdateDataCommitTransaction***'); +// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]); +// Log('*********************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceUpdateDataRollBackTransaction( + Sender: TObject; var aUseDefaultTransactionLogic: Boolean); +begin + inherited; +// Log('***UpdateDataRollBackTransaction***'); +// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]); +// Log('***********************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceValidateCommandExecution( + Sender: TObject; const aConnection: IDAConnection; + const aDatasetName: string; const aParamNames: array of string; + const aParamValues: array of Variant; aSchema: TDASchema; + var Allowed: Boolean); +var + i: integer; + SQLCommand: TDASQLCommand; +begin + inherited; +// Log('***ValidateCommandExecution***'); +// Log('aConnection.Name:'#9 + aConnection.Name); +// Log('aDatasetName:'#9 + aDatasetName); +// SQLCommand := aSchema.Commands.SQLCommandByName(aDatasetName); +// if (SQLCommand <> nil) and (SQLCommand.Statements.Count > 0) then +// Log('Command SQL:'#9 + SQLCommand.Statements[0].SQL); +// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames)))); +// for i := Low(aParamNames) to High(aParamNames) do +// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i])); +// Log('aSchema.Name:'#9 + aSchema.Name); +// Log('Allowed:'#9 + BoolStr[Allowed]); +// Log('******************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceValidateDatasetAccess( + Sender: TObject; const aConnection: IDAConnection; + const aDatasetName: string; const aParamNames: array of string; + const aParamValues: array of Variant; aSchema: TDASchema; + var Allowed: Boolean); +var + i: integer; +begin + inherited; +// Log('***ValidateDatasetAccess***'); +// Log('aConnection.Name:'#9 + aConnection.Name); +// Log('aDatasetName:'#9 + aDatasetName); +// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames)))); +// for i := Low(aParamNames) to High(aParamNames) do +// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i])); +// Log('aSchema.Name:'#9 + aSchema.Name); +// Log('Allowed:'#9 + BoolStr[Allowed]); +// Log('***************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceValidateDirectSQLAccess( + Sender: TObject; const aConnection: IDAConnection; + const aSQLText: string; const aParamNames: array of string; + const aParamValues: array of Variant; var Allowed: Boolean); +var + i: integer; +begin + inherited; +// Log('***ValidateDirectSQLAccess***'); +// Log('aConnection.Name:'#9 + aConnection.Name); +// Log('aSQLText:'#9 + aSQLText); +// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames)))); +// for i := Low(aParamNames) to High(aParamNames) do +// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i])); +// Log('Allowed:'#9 + BoolStr[Allowed]); +// Log('***************************'); +// Log(''); +end; + +procedure TsrvObras.Log(Astr: string); +begin + dmServer.EscribirLog(Astr) +end; + +procedure TsrvObras.DataAbstractServiceAcquireConnectionFailure( + aSender: TObject; const aConnectionName: string; aError: Exception); +begin + inherited; +// Log('***AcquireConnectionFailure***'); +// Log('aConnectionName:'#9 + aConnectionName); +// Log('aError.ClassName:'#9 + aError.ClassName); +// Log('aError.Message:'#9 + aError.Message); +// Log('******************************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceDestroy( + Sender: TObject); +begin +// Log('***Destroy***'); +// Log('*************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceActivate( + const aClientID: TGUID; aSession: TROSession; + const aMessage: IROMessage); +begin +// Log('***Activate***'); +// Log('aClientID:'#9 + GUIDToString(aClientID)); +// // Log('aSession:'#9 + aSession.ClassName); +// // Log('aError.Message:'#9 + aError.Message); +// Log('**************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceDeactivate( + const aClientID: TGUID; aSession: TROSession); +begin +// Log('***Deactivate***'); +// Log('aClientID:'#9 + GUIDToString(aClientID)); +// Log('****************'); +// Log(''); +end; + +procedure TsrvObras.DataAbstractServiceBusinessProcessorAutoCreated( + aSender: TRORemoteDataModule; BusinessProcessor: TDABusinessProcessor); +begin +// Log('***BusinessProcessorAutoCreated***'); +// Log('****************'); +// Log(''); +end; + + initialization TROClassFactory.Create('srvObras', Create_srvObras, TsrvObras_Invoker); diff --git a/Source/Modulos/Obras/Views/Obras_view.dpk b/Source/Modulos/Obras/Views/Obras_view.dpk index c22ed4f74762332f964eaa891513e9c48bd76e03..5f9c321951ab4593bb749539207aa7c416457151 100644 GIT binary patch delta 482 zcmZ{gu?oU46h$GMg@BuDwl30H>L@x1?I5lanTzoM~bdf>=6YRU{dwl zF6ydt?7ea{L)9IPqczthU8azjgi8TB+AB)9AimjhI1SODpxP(rgBl7{H#7-boh`G@ xmZc?iy_pnu`)$i_l0z+-8>pRWbL{ MainSource - - - - - - - - - -
fEditorListaObras
- TfListaObras -
- -
fEditorObra
- TfEditorObra -
- -
fEditorObras
- TfEditorObras -
- - -
frViewClienteAsociadoObra
- T -
- -
frViewObra
- TFrame -
- -
frViewObras
- TFrame -
- -
frViewSubcontrataObra
- TFrame -
+ + + + + + + + + + + +