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=
-
@@ -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 60fd9c8a..00000000
Binary files a/Resources/Iconos/Inventario/24x24/Thumbs.db and /dev/null differ
diff --git a/Resources/Iconos/Obras/16x16/enejecucion.png b/Resources/Iconos/Obras/16x16/enejecucion.png
new file mode 100644
index 00000000..8c50d063
Binary files /dev/null and b/Resources/Iconos/Obras/16x16/enejecucion.png differ
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 6fc88ef0..885c5563 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj
index 2075b16d..943c1950 100644
--- a/Source/GUIBase/GUIBase.dproj
+++ b/Source/GUIBase/GUIBase.dproj
@@ -58,30 +58,30 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
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 1641339f..8b251f31 100644
Binary files a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res and b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.res differ
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
-
+
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 60b6ad95..a0a1bdd9 100644
Binary files a/Source/Modulos/Obras/Model/Obras_model.dpk and b/Source/Modulos/Obras/Model/Obras_model.dpk differ
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 36f26e23..8b251f31 100644
Binary files a/Source/Modulos/Obras/Plugin/Obras_plugin.res and b/Source/Modulos/Obras/Plugin/Obras_plugin.res differ
diff --git a/Source/Modulos/Obras/Servidor/srvObras_Impl.dfm b/Source/Modulos/Obras/Servidor/srvObras_Impl.dfm
index 82a3e52c..233a294c 100644
--- a/Source/Modulos/Obras/Servidor/srvObras_Impl.dfm
+++ b/Source/Modulos/Obras/Servidor/srvObras_Impl.dfm
@@ -1,19 +1,50 @@
object srvObras: TsrvObras
OldCreateOrder = True
OnCreate = DARemoteServiceCreate
+ OnDestroy = DataAbstractServiceDestroy
RequiresSession = True
SessionManager = dmServer.SessionManager
+ OnActivate = DataAbstractServiceActivate
+ OnDeactivate = DataAbstractServiceDeactivate
ConnectionName = 'IBX'
ServiceSchema = schObras
ServiceDataStreamer = Bin2DataStreamer
+ AllowWhereSQL = True
ExportedDataTables = <>
- 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 c22ed4f7..5f9c3219 100644
Binary files a/Source/Modulos/Obras/Views/Obras_view.dpk and b/Source/Modulos/Obras/Views/Obras_view.dpk differ
diff --git a/Source/Modulos/Obras/Views/Obras_view.dproj b/Source/Modulos/Obras/Views/Obras_view.dproj
index c579ccb9..f6acbbee 100644
--- a/Source/Modulos/Obras/Views/Obras_view.dproj
+++ b/Source/Modulos/Obras/Views/Obras_view.dproj
@@ -47,43 +47,18 @@
MainSource
-
-
-
-
-
-
-
-
-
-
- TfListaObras
-
-
-
- TfEditorObra
-
-
-
- TfEditorObras
-
-
-
-
- T
-
-
-
- TFrame
-
-
-
- TFrame
-
-
-
- TFrame
-
+
+
+
+
+
+
+
+
+
+
+
+