diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos-20200212.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos-20200212.jpg
new file mode 100644
index 00000000..6cee1dc7
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos-20200212.jpg differ
diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos.jpg
new file mode 100644
index 00000000..c8cb6335
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-carlos.jpg differ
diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-jose-luis.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-jose-luis.jpg
new file mode 100644
index 00000000..32aa5f93
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-jose-luis.jpg differ
diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-joseluis-20200212.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-joseluis-20200212.jpg
new file mode 100644
index 00000000..b542e633
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-joseluis-20200212.jpg differ
diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar-20200212.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar-20200212.jpg
new file mode 100644
index 00000000..4b0d815a
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar-20200212.jpg differ
diff --git a/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar.jpg b/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar.jpg
new file mode 100644
index 00000000..a620059a
Binary files /dev/null and b/Resources/Firmas Tecsitel/sello-tecsitel-firma-oscar.jpg differ
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index c88bd574..92f2a92e 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -54,58 +54,58 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
TForm
diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj
index a791d05b..e549283c 100644
--- a/Source/Cliente/FactuGES.dproj
+++ b/Source/Cliente/FactuGES.dproj
@@ -53,7 +53,7 @@
Delphi.Personality
VCLApplication
-FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2200FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.2.0.0FactuGESFactuGES2.2.0.0FactuGES.dprFalse
+FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2320FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.2.0FactuGESFactuGES2.3.2.0FactuGES.dprFalse
diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc
index 1ad64e7a..8f451864 100644
--- a/Source/Cliente/FactuGES.rc
+++ b/Source/Cliente/FactuGES.rc
@@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo tecsitel\Resources\Iconos\Factuges.ico"
1 VERSIONINFO
-FILEVERSION 2,2,0,0
-PRODUCTVERSION 2,2,0,0
+FILEVERSION 2,3,2,0
+PRODUCTVERSION 2,3,2,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
- VALUE "FileVersion", "2.2.0.0\0"
+ VALUE "FileVersion", "2.3.2.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductName", "FactuGES\0"
- VALUE "ProductVersion", "2.2.0.0\0"
+ VALUE "ProductVersion", "2.3.2.0\0"
END
END
BLOCK "VarFileInfo"
diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res
index 874ce33d..9365e34d 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/Informes/1/AlbaranCliente.rdx b/Source/Informes/1/AlbaranCliente.rdx
index d5049f02..fccb0fea 100644
Binary files a/Source/Informes/1/AlbaranCliente.rdx and b/Source/Informes/1/AlbaranCliente.rdx differ
diff --git a/Source/Informes/1/AlbaranProveedor.rdx b/Source/Informes/1/AlbaranProveedor.rdx
index d307e279..e6cfafe6 100644
Binary files a/Source/Informes/1/AlbaranProveedor.rdx and b/Source/Informes/1/AlbaranProveedor.rdx differ
diff --git a/Source/Informes/1/FacturaCliente.rdx b/Source/Informes/1/FacturaCliente.rdx
index 63dc3b56..571c5640 100644
Binary files a/Source/Informes/1/FacturaCliente.rdx and b/Source/Informes/1/FacturaCliente.rdx differ
diff --git a/Source/Informes/1/InfAlbaranCliente.fr3 b/Source/Informes/1/InfAlbaranCliente.fr3
index fcbd774b..bbe91dc7 100644
--- a/Source/Informes/1/InfAlbaranCliente.fr3
+++ b/Source/Informes/1/InfAlbaranCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -13,7 +13,7 @@
-
+
diff --git a/Source/Informes/1/InfAlbaranProveedor.fr3 b/Source/Informes/1/InfAlbaranProveedor.fr3
index 8579aa91..b88699b5 100644
--- a/Source/Informes/1/InfAlbaranProveedor.fr3
+++ b/Source/Informes/1/InfAlbaranProveedor.fr3
@@ -1,18 +1,18 @@
-
+
-
-
+
+
-
+
-
-
+
+
diff --git a/Source/Informes/1/InfFacturaCliente.fr3 b/Source/Informes/1/InfFacturaCliente.fr3
index a1490c81..649760e3 100644
--- a/Source/Informes/1/InfFacturaCliente.fr3
+++ b/Source/Informes/1/InfFacturaCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -13,7 +13,7 @@
-
+
@@ -33,7 +33,7 @@
-
+
@@ -69,7 +69,7 @@
-
+
diff --git a/Source/Informes/1/InfPedidoProveedor.fr3 b/Source/Informes/1/InfPedidoProveedor.fr3
index 7be3a90f..6c053896 100644
--- a/Source/Informes/1/InfPedidoProveedor.fr3
+++ b/Source/Informes/1/InfPedidoProveedor.fr3
@@ -1,18 +1,18 @@
-
+
-
-
+
+
-
+
-
+
@@ -36,15 +36,14 @@
-
+
-
-
+
+
-
diff --git a/Source/Informes/1/InfPresupuestoCliente.fr3 b/Source/Informes/1/InfPresupuestoCliente.fr3
index 134cd107..07c19ff2 100644
--- a/Source/Informes/1/InfPresupuestoCliente.fr3
+++ b/Source/Informes/1/InfPresupuestoCliente.fr3
@@ -1,5 +1,5 @@
-
+
@@ -16,7 +16,7 @@
-
+
@@ -30,7 +30,7 @@
-
+
@@ -50,7 +50,7 @@
-
+
@@ -87,15 +87,16 @@
-
-
-
+
+
+
+
-
-
+
+
-
+
diff --git a/Source/Informes/1/InfReciboCliente.fr3 b/Source/Informes/1/InfReciboCliente.fr3
index e057e08c..98747903 100644
--- a/Source/Informes/1/InfReciboCliente.fr3
+++ b/Source/Informes/1/InfReciboCliente.fr3
@@ -1,10 +1,10 @@
-
+
-
-
+
+
@@ -30,7 +30,7 @@
-
+
@@ -53,7 +53,7 @@
-
+
diff --git a/Source/Informes/1/InformeIVAClientes.fr3 b/Source/Informes/1/InformeIVAClientes.fr3
index ed6e1d4b..69c5069d 100644
--- a/Source/Informes/1/InformeIVAClientes.fr3
+++ b/Source/Informes/1/InformeIVAClientes.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeIVAClientesDesglosado.fr3 b/Source/Informes/1/InformeIVAClientesDesglosado.fr3
index d9ce5d52..4703822c 100644
--- a/Source/Informes/1/InformeIVAClientesDesglosado.fr3
+++ b/Source/Informes/1/InformeIVAClientesDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeIVAComparativo.fr3 b/Source/Informes/1/InformeIVAComparativo.fr3
index daf96956..e0bf0e2c 100644
--- a/Source/Informes/1/InformeIVAComparativo.fr3
+++ b/Source/Informes/1/InformeIVAComparativo.fr3
@@ -1,5 +1,5 @@
-
+
@@ -7,7 +7,7 @@
-
+
diff --git a/Source/Informes/1/InformeIVAProveedores.fr3 b/Source/Informes/1/InformeIVAProveedores.fr3
index 9e674c9a..ef41a47a 100644
--- a/Source/Informes/1/InformeIVAProveedores.fr3
+++ b/Source/Informes/1/InformeIVAProveedores.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeIVAProveedoresDesglosado.fr3 b/Source/Informes/1/InformeIVAProveedoresDesglosado.fr3
index 4543a8b3..1625831f 100644
--- a/Source/Informes/1/InformeIVAProveedoresDesglosado.fr3
+++ b/Source/Informes/1/InformeIVAProveedoresDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoBeneficiosGrafComp.fr3 b/Source/Informes/1/InformeListadoBeneficiosGrafComp.fr3
index 1a373987..9fcf0702 100644
--- a/Source/Informes/1/InformeListadoBeneficiosGrafComp.fr3
+++ b/Source/Informes/1/InformeListadoBeneficiosGrafComp.fr3
@@ -1,8 +1,8 @@
-
+
-
+
@@ -19,15 +19,15 @@
-
-
+
+
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasCliente.fr3 b/Source/Informes/1/InformeListadoFacturasCliente.fr3
index bce51664..0448060f 100644
--- a/Source/Informes/1/InformeListadoFacturasCliente.fr3
+++ b/Source/Informes/1/InformeListadoFacturasCliente.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasClienteDesglosado.fr3 b/Source/Informes/1/InformeListadoFacturasClienteDesglosado.fr3
index f44a54d7..ff3caeda 100644
--- a/Source/Informes/1/InformeListadoFacturasClienteDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoFacturasClienteDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasClienteGrafComp.fr3 b/Source/Informes/1/InformeListadoFacturasClienteGrafComp.fr3
index 1114e00b..0f788aff 100644
--- a/Source/Informes/1/InformeListadoFacturasClienteGrafComp.fr3
+++ b/Source/Informes/1/InformeListadoFacturasClienteGrafComp.fr3
@@ -1,5 +1,5 @@
-
+
@@ -15,7 +15,7 @@
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasClientePendientes.fr3 b/Source/Informes/1/InformeListadoFacturasClientePendientes.fr3
index dc6adc2f..1dfc5074 100644
--- a/Source/Informes/1/InformeListadoFacturasClientePendientes.fr3
+++ b/Source/Informes/1/InformeListadoFacturasClientePendientes.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasClientePendientesDesglosado.fr3 b/Source/Informes/1/InformeListadoFacturasClientePendientesDesglosado.fr3
index 452bcb0c..94ddda19 100644
--- a/Source/Informes/1/InformeListadoFacturasClientePendientesDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoFacturasClientePendientesDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasProveedor.fr3 b/Source/Informes/1/InformeListadoFacturasProveedor.fr3
index c6705d6d..48a0fca7 100644
--- a/Source/Informes/1/InformeListadoFacturasProveedor.fr3
+++ b/Source/Informes/1/InformeListadoFacturasProveedor.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasProveedorDesglosado.fr3 b/Source/Informes/1/InformeListadoFacturasProveedorDesglosado.fr3
index 324082b0..9047ea51 100644
--- a/Source/Informes/1/InformeListadoFacturasProveedorDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoFacturasProveedorDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasProveedorGrafComp.fr3 b/Source/Informes/1/InformeListadoFacturasProveedorGrafComp.fr3
index afd65875..0707eb2d 100644
--- a/Source/Informes/1/InformeListadoFacturasProveedorGrafComp.fr3
+++ b/Source/Informes/1/InformeListadoFacturasProveedorGrafComp.fr3
@@ -1,64 +1,65 @@
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
-
+
-
+
+
-
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasProveedorPendientes.fr3 b/Source/Informes/1/InformeListadoFacturasProveedorPendientes.fr3
index c5044d06..b57ff3f8 100644
--- a/Source/Informes/1/InformeListadoFacturasProveedorPendientes.fr3
+++ b/Source/Informes/1/InformeListadoFacturasProveedorPendientes.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoFacturasProveedorPendientesDesglosado.fr3 b/Source/Informes/1/InformeListadoFacturasProveedorPendientesDesglosado.fr3
index fe699ba9..fea42b1c 100644
--- a/Source/Informes/1/InformeListadoFacturasProveedorPendientesDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoFacturasProveedorPendientesDesglosado.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoPedidos.fr3 b/Source/Informes/1/InformeListadoPedidos.fr3
index 08fbbbe4..bfde0ac2 100644
--- a/Source/Informes/1/InformeListadoPedidos.fr3
+++ b/Source/Informes/1/InformeListadoPedidos.fr3
@@ -1,10 +1,10 @@
-
+
-
+
@@ -22,7 +22,7 @@
-
+
@@ -44,7 +44,7 @@
-
+
diff --git a/Source/Informes/1/InformeListadoPedidosDesglosado.fr3 b/Source/Informes/1/InformeListadoPedidosDesglosado.fr3
index ec10bf89..d59c6701 100644
--- a/Source/Informes/1/InformeListadoPedidosDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoPedidosDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
@@ -22,7 +22,7 @@
-
+
@@ -44,7 +44,7 @@
-
+
diff --git a/Source/Informes/1/InformeListadoPresupuestos.fr3 b/Source/Informes/1/InformeListadoPresupuestos.fr3
index 66b39cff..eca4b7f2 100644
--- a/Source/Informes/1/InformeListadoPresupuestos.fr3
+++ b/Source/Informes/1/InformeListadoPresupuestos.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoPresupuestosClienteGrafComp.fr3 b/Source/Informes/1/InformeListadoPresupuestosClienteGrafComp.fr3
index ccbef800..90e0c2b2 100644
--- a/Source/Informes/1/InformeListadoPresupuestosClienteGrafComp.fr3
+++ b/Source/Informes/1/InformeListadoPresupuestosClienteGrafComp.fr3
@@ -1,5 +1,5 @@
-
+
@@ -20,7 +20,7 @@
-
+
diff --git a/Source/Informes/1/InformeListadoPresupuestosDesglosado.fr3 b/Source/Informes/1/InformeListadoPresupuestosDesglosado.fr3
index b9bdd420..6ffeea7a 100644
--- a/Source/Informes/1/InformeListadoPresupuestosDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoPresupuestosDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosCliPendientes.fr3 b/Source/Informes/1/InformeListadoRecibosCliPendientes.fr3
index 7a891484..e9c67f58 100644
--- a/Source/Informes/1/InformeListadoRecibosCliPendientes.fr3
+++ b/Source/Informes/1/InformeListadoRecibosCliPendientes.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosCliPendientesDesglosado.fr3 b/Source/Informes/1/InformeListadoRecibosCliPendientesDesglosado.fr3
index 1e2d7a72..e8d1c187 100644
--- a/Source/Informes/1/InformeListadoRecibosCliPendientesDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoRecibosCliPendientesDesglosado.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosCliente.fr3 b/Source/Informes/1/InformeListadoRecibosCliente.fr3
index 6f22be7f..745f0c16 100644
--- a/Source/Informes/1/InformeListadoRecibosCliente.fr3
+++ b/Source/Informes/1/InformeListadoRecibosCliente.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosClienteDesglosado.fr3 b/Source/Informes/1/InformeListadoRecibosClienteDesglosado.fr3
index 58ded061..dab7ccc8 100644
--- a/Source/Informes/1/InformeListadoRecibosClienteDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoRecibosClienteDesglosado.fr3
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosProvPendientes.fr3 b/Source/Informes/1/InformeListadoRecibosProvPendientes.fr3
index 208d40b2..39d6e5de 100644
--- a/Source/Informes/1/InformeListadoRecibosProvPendientes.fr3
+++ b/Source/Informes/1/InformeListadoRecibosProvPendientes.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosProvPendientesDesglosado.fr3 b/Source/Informes/1/InformeListadoRecibosProvPendientesDesglosado.fr3
index 8a65498b..1ce98eb9 100644
--- a/Source/Informes/1/InformeListadoRecibosProvPendientesDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoRecibosProvPendientesDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosProveedor.fr3 b/Source/Informes/1/InformeListadoRecibosProveedor.fr3
index c32d5783..11b6bc8f 100644
--- a/Source/Informes/1/InformeListadoRecibosProveedor.fr3
+++ b/Source/Informes/1/InformeListadoRecibosProveedor.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/InformeListadoRecibosProveedorDesglosado.fr3 b/Source/Informes/1/InformeListadoRecibosProveedorDesglosado.fr3
index 39b7c1b4..8afbb681 100644
--- a/Source/Informes/1/InformeListadoRecibosProveedorDesglosado.fr3
+++ b/Source/Informes/1/InformeListadoRecibosProveedorDesglosado.fr3
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/Source/Informes/1/PedidoProveedor.rdx b/Source/Informes/1/PedidoProveedor.rdx
index bc9ee595..a8de517e 100644
Binary files a/Source/Informes/1/PedidoProveedor.rdx and b/Source/Informes/1/PedidoProveedor.rdx differ
diff --git a/Source/Informes/1/Presupuesto.rdx b/Source/Informes/1/Presupuesto.rdx
index 8342f399..a2f8c4bb 100644
Binary files a/Source/Informes/1/Presupuesto.rdx and b/Source/Informes/1/Presupuesto.rdx differ
diff --git a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
index 722629a3..01a1c649 100644
--- a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
+++ b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
@@ -2367,6 +2367,790 @@ object RptFacturasCliente: TRptFacturasCliente
Name = 'CUOTA_DEDUCIBLE'
DataType = datCurrency
end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ ConnectionType = 'Interbase'
+ Default = True
+ SQL =
+ 'select VALOR, DESCRIPCION,'#10'periodo_ingresos1.ANO as Ano1, period' +
+ 'o_ingresos1.IMPORTE_TOTAL as INGRESOS_ANO1,'#10'periodo_gastos1.ANO ' +
+ 'as Ano1, periodo_gastos1.IMPORTE_TOTAL as GASTOS_ANO1,'#10'(coalesce' +
+ '(periodo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.' +
+ 'IMPORTE_TOTAL, 0)) as BENEFICIO_ANO1,'#10'case'#10'when (periodo_ingreso' +
+ 's1.IMPORTE_TOTAL = 0) then (100 - ((coalesce(periodo_ingresos1.I' +
+ 'MPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0))*1' +
+ '00))'#10'else ((((coalesce(periodo_ingresos1.IMPORTE_TOTAL, 0) - coa' +
+ 'lesce(periodo_gastos1.IMPORTE_TOTAL, 0))*100)/periodo_ingresos1.' +
+ 'IMPORTE_TOTAL))'#10'end as Porcentaje_Beneficios_Ano1,'#10#10'periodo_ingr' +
+ 'esos2.ANO as Ano2, periodo_ingresos2.IMPORTE_TOTAL as INGRESOS_A' +
+ 'NO2,'#10'periodo_gastos2.ANO as Ano2, periodo_gastos2.IMPORTE_TOTAL ' +
+ 'as GASTOS_ANO2,'#10'(coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)) as BENEFICIO_ANO2,'#10'c' +
+ 'ase'#10'when (periodo_ingresos2.IMPORTE_TOTAL = 0) then (100 - ((coa' +
+ 'lesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gas' +
+ 'tos2.IMPORTE_TOTAL, 0))*100))'#10'else ((((coalesce(periodo_ingresos' +
+ '2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)' +
+ ')*100)/periodo_ingresos2.IMPORTE_TOTAL))'#10'end as Porcentaje_Benef' +
+ 'icios_Ano2,'#10#10'(periodo_ingresos1.IMPORTE_TOTAL - periodo_ingresos' +
+ '2.IMPORTE_TOTAL) as Diferencia_Ingresos,'#10'case'#10'when (periodo_ingr' +
+ 'esos2.IMPORTE_TOTAL = 0) then (100 - ((periodo_ingresos1.IMPORTE' +
+ '_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_' +
+ 'ingresos1.IMPORTE_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100)/' +
+ 'periodo_ingresos2.IMPORTE_TOTAL)'#10'end as Porcentaje_Aumento_Ingre' +
+ 'sos,'#10#10'(periodo_gastos1.IMPORTE_TOTAL - periodo_gastos2.IMPORTE_T' +
+ 'OTAL) as Diferencia_Gastos,'#10'case'#10'when (periodo_gastos2.IMPORTE_T' +
+ 'OTAL = 0) then (100 - ((periodo_gastos1.IMPORTE_TOTAL - periodo_' +
+ 'gastos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_gastos1.IMPORTE_TOT' +
+ 'AL - periodo_gastos2.IMPORTE_TOTAL)*100)/periodo_gastos2.IMPORTE' +
+ '_TOTAL)'#10'end as Porcentaje_Aumento_Gastos,'#10#10'case when periodo_ing' +
+ 'resos2.ANO is null then 0'#10'else'#10'((coalesce(periodo_ingresos1.IMPO' +
+ 'RTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0)) - (c' +
+ 'oalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_g' +
+ 'astos2.IMPORTE_TOTAL, 0)))'#10'end as Diferencia_Beneficios,'#10#10'case w' +
+ 'hen periodo_ingresos2.ANO is null then 0'#10'else'#10'case'#10'when ((coales' +
+ 'ce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos' +
+ '2.IMPORTE_TOTAL, 0)) = 0) then (100 - (((coalesce(periodo_ingres' +
+ 'os1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, ' +
+ '0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(p' +
+ 'eriodo_gastos2.IMPORTE_TOTAL, 0)))*100))'#10'else (((((coalesce(peri' +
+ 'odo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPOR' +
+ 'TE_TOTAL, 0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)))*100) / (coalesce(pe' +
+ 'riodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMP' +
+ 'ORTE_TOTAL, 0))))'#10'end'#10'end as Porcentaje_Aumento_Beneficios'#10#10'FROM' +
+ #10'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, MES' +
+ ' as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF' +
+ '_FAC_CLIENTE comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (ANO = :A' +
+ 'NO1)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) periodo_ingresos1 on ' +
+ '(VALOR = periodo_ingresos1.NFILA)'#10#10'left join'#10'(select comp2.ID_EM' +
+ 'PRESA, comp2.ANO, MES as NFILA, SUM(comp2.BASE_IMPONIBLE) as IMP' +
+ 'ORTE_TOTAL'#10'from V_INF_FAC_PROVEEDOR comp2'#10'where ID_EMPRESA = :ID' +
+ '_EMPRESA1'#10'and (ANO = :ANO1)'#10'and (comp2.ID_TIPO_FACTURA = :ID_TIP' +
+ 'O_GASTO)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) periodo_gastos1 o' +
+ 'n (VALOR = periodo_gastos1.NFILA)'#10#10'left join'#10'(select comp3.ID_EM' +
+ 'PRESA, comp3.ANO, MES as NFILA, SUM(comp3.BASE_IMPONIBLE) as IMP' +
+ 'ORTE_TOTAL'#10'from V_INF_FAC_CLIENTE comp3'#10'where ID_EMPRESA = :ID_E' +
+ 'MPRESA2'#10'and (ANO = :ANO2)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) ' +
+ 'periodo_ingresos2 on (VALOR = periodo_ingresos2.NFILA)'#10#10'left joi' +
+ 'n'#10'(select comp4.ID_EMPRESA, comp4.ANO, MES as NFILA, SUM(comp4.B' +
+ 'ASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROVEEDOR comp4'#10'w' +
+ 'here ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'and (comp4.ID_T' +
+ 'IPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 desc,2 a' +
+ 'sc) periodo_gastos2 on (VALOR = periodo_gastos2.NFILA)'#10#10#10'where p' +
+ 'eriodo= '#39'MENSUAL'#39#10'order by valor asc'#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO1'
+ TableField = 'INGRESOS_ANO1'
+ end
+ item
+ DatasetField = 'ANO11'
+ TableField = 'ANO11'
+ end
+ item
+ DatasetField = 'GASTOS_ANO1'
+ TableField = 'GASTOS_ANO1'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO1'
+ TableField = 'BENEFICIO_ANO1'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO2'
+ TableField = 'INGRESOS_ANO2'
+ end
+ item
+ DatasetField = 'ANO21'
+ TableField = 'ANO21'
+ end
+ item
+ DatasetField = 'GASTOS_ANO2'
+ TableField = 'GASTOS_ANO2'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO2'
+ TableField = 'BENEFICIO_ANO2'
+ end
+ item
+ DatasetField = 'DIFERENCIA_INGRESOS'
+ TableField = 'DIFERENCIA_INGRESOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ TableField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_GASTOS'
+ TableField = 'DIFERENCIA_GASTOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_GASTOS'
+ TableField = 'PORCENTAJE_AUMENTO_GASTOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_BENEFICIOS'
+ TableField = 'DIFERENCIA_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ TableField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ end>
+ end>
+ Name = 'InformeListadoBeneficiosGrafCompMensualTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ ConnectionType = 'Interbase'
+ Default = True
+ SQL =
+ 'select VALOR, DESCRIPCION,'#10'periodo_ingresos1.ANO as Ano1, period' +
+ 'o_ingresos1.IMPORTE_TOTAL as INGRESOS_ANO1,'#10'periodo_gastos1.ANO ' +
+ 'as Ano1, periodo_gastos1.IMPORTE_TOTAL as GASTOS_ANO1,'#10'(coalesce' +
+ '(periodo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.' +
+ 'IMPORTE_TOTAL, 0)) as BENEFICIO_ANO1,'#10'case'#10'when (periodo_ingreso' +
+ 's1.IMPORTE_TOTAL = 0) then (100 - ((coalesce(periodo_ingresos1.I' +
+ 'MPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0))*1' +
+ '00))'#10'else ((((coalesce(periodo_ingresos1.IMPORTE_TOTAL, 0) - coa' +
+ 'lesce(periodo_gastos1.IMPORTE_TOTAL, 0))*100)/periodo_ingresos1.' +
+ 'IMPORTE_TOTAL))'#10'end as Porcentaje_Beneficios_Ano1,'#10#10'periodo_ingr' +
+ 'esos2.ANO as Ano2, periodo_ingresos2.IMPORTE_TOTAL as INGRESOS_A' +
+ 'NO2,'#10'periodo_gastos2.ANO as Ano2, periodo_gastos2.IMPORTE_TOTAL ' +
+ 'as GASTOS_ANO2,'#10'(coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)) as BENEFICIO_ANO2,'#10'c' +
+ 'ase'#10'when (periodo_ingresos2.IMPORTE_TOTAL = 0) then (100 - ((coa' +
+ 'lesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gas' +
+ 'tos2.IMPORTE_TOTAL, 0))*100))'#10'else ((((coalesce(periodo_ingresos' +
+ '2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)' +
+ ')*100)/periodo_ingresos2.IMPORTE_TOTAL))'#10'end as Porcentaje_Benef' +
+ 'icios_Ano2,'#10#10'(periodo_ingresos1.IMPORTE_TOTAL - periodo_ingresos' +
+ '2.IMPORTE_TOTAL) as Diferencia_Ingresos,'#10'case'#10'when (periodo_ingr' +
+ 'esos2.IMPORTE_TOTAL = 0) then (100 - ((periodo_ingresos1.IMPORTE' +
+ '_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_' +
+ 'ingresos1.IMPORTE_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100)/' +
+ 'periodo_ingresos2.IMPORTE_TOTAL)'#10'end as Porcentaje_Aumento_Ingre' +
+ 'sos,'#10#10'(periodo_gastos1.IMPORTE_TOTAL - periodo_gastos2.IMPORTE_T' +
+ 'OTAL) as Diferencia_Gastos,'#10'case'#10'when (periodo_gastos2.IMPORTE_T' +
+ 'OTAL = 0) then (100 - ((periodo_gastos1.IMPORTE_TOTAL - periodo_' +
+ 'gastos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_gastos1.IMPORTE_TOT' +
+ 'AL - periodo_gastos2.IMPORTE_TOTAL)*100)/periodo_gastos2.IMPORTE' +
+ '_TOTAL)'#10'end as Porcentaje_Aumento_Gastos,'#10#10'case when periodo_ing' +
+ 'resos2.ANO is null then 0'#10'else'#10'((coalesce(periodo_ingresos1.IMPO' +
+ 'RTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0)) - (c' +
+ 'oalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_g' +
+ 'astos2.IMPORTE_TOTAL, 0)))'#10'end as Diferencia_Beneficios,'#10#10'case w' +
+ 'hen periodo_ingresos2.ANO is null then 0'#10'else'#10'case'#10'when ((coales' +
+ 'ce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos' +
+ '2.IMPORTE_TOTAL, 0)) = 0) then (100 - (((coalesce(periodo_ingres' +
+ 'os1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, ' +
+ '0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(p' +
+ 'eriodo_gastos2.IMPORTE_TOTAL, 0)))*100))'#10'else (((((coalesce(peri' +
+ 'odo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPOR' +
+ 'TE_TOTAL, 0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)))*100) / (coalesce(pe' +
+ 'riodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMP' +
+ 'ORTE_TOTAL, 0))))'#10'end'#10'end as Porcentaje_Aumento_Beneficios'#10#10#10'FRO' +
+ 'M'#10'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, SE' +
+ 'MESTRE as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from' +
+ ' V_INF_FAC_CLIENTE comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (AN' +
+ 'O = :ANO1)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) periodo_ingreso' +
+ 's1 on (VALOR = periodo_ingresos1.NFILA)'#10#10'left join'#10'(select comp2' +
+ '.ID_EMPRESA, comp2.ANO, SEMESTRE as NFILA, SUM(comp2.BASE_IMPONI' +
+ 'BLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROVEEDOR comp2'#10'where ID_EM' +
+ 'PRESA = :ID_EMPRESA1'#10'and (ANO = :ANO1)'#10'and (comp2.ID_TIPO_FACTUR' +
+ 'A = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) period' +
+ 'o_gastos1 on (VALOR = periodo_gastos1.NFILA)'#10#10'left join'#10'(select ' +
+ 'comp3.ID_EMPRESA, comp3.ANO, SEMESTRE as NFILA, SUM(comp3.BASE_I' +
+ 'MPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_CLIENTE comp3'#10'where ID' +
+ '_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'group by 1,2,3'#10'order b' +
+ 'y 1 desc,2 asc) periodo_ingresos2 on (VALOR = periodo_ingresos2.' +
+ 'NFILA)'#10#10'left join'#10'(select comp4.ID_EMPRESA, comp4.ANO, SEMESTRE ' +
+ 'as NFILA, SUM(comp4.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_' +
+ 'FAC_PROVEEDOR comp4'#10'where ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :' +
+ 'ANO2)'#10'and (comp4.ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,' +
+ '3'#10'order by 1 desc,2 asc) periodo_gastos2 on (VALOR = periodo_gas' +
+ 'tos2.NFILA)'#10#10#10'where periodo= '#39'SEMESTRAL'#39#10'order by valor asc'#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO1'
+ TableField = 'INGRESOS_ANO1'
+ end
+ item
+ DatasetField = 'ANO11'
+ TableField = 'ANO11'
+ end
+ item
+ DatasetField = 'GASTOS_ANO1'
+ TableField = 'GASTOS_ANO1'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO1'
+ TableField = 'BENEFICIO_ANO1'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO2'
+ TableField = 'INGRESOS_ANO2'
+ end
+ item
+ DatasetField = 'ANO21'
+ TableField = 'ANO21'
+ end
+ item
+ DatasetField = 'GASTOS_ANO2'
+ TableField = 'GASTOS_ANO2'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO2'
+ TableField = 'BENEFICIO_ANO2'
+ end
+ item
+ DatasetField = 'DIFERENCIA_INGRESOS'
+ TableField = 'DIFERENCIA_INGRESOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ TableField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_GASTOS'
+ TableField = 'DIFERENCIA_GASTOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_GASTOS'
+ TableField = 'PORCENTAJE_AUMENTO_GASTOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_BENEFICIOS'
+ TableField = 'DIFERENCIA_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ TableField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ end>
+ end>
+ Name = 'InformeListadoBeneficiosGrafCompSemestralTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ ConnectionType = 'Interbase'
+ Default = True
+ SQL =
+ 'select VALOR, DESCRIPCION,'#10'periodo_ingresos1.ANO as Ano1, period' +
+ 'o_ingresos1.IMPORTE_TOTAL as INGRESOS_ANO1,'#10'periodo_gastos1.ANO ' +
+ 'as Ano1, periodo_gastos1.IMPORTE_TOTAL as GASTOS_ANO1,'#10'(coalesce' +
+ '(periodo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.' +
+ 'IMPORTE_TOTAL, 0)) as BENEFICIO_ANO1,'#10'case'#10'when (periodo_ingreso' +
+ 's1.IMPORTE_TOTAL = 0) then (100 - ((coalesce(periodo_ingresos1.I' +
+ 'MPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0))*1' +
+ '00))'#10'else ((((coalesce(periodo_ingresos1.IMPORTE_TOTAL, 0) - coa' +
+ 'lesce(periodo_gastos1.IMPORTE_TOTAL, 0))*100)/periodo_ingresos1.' +
+ 'IMPORTE_TOTAL))'#10'end as Porcentaje_Beneficios_Ano1,'#10#10'periodo_ingr' +
+ 'esos2.ANO as Ano2, periodo_ingresos2.IMPORTE_TOTAL as INGRESOS_A' +
+ 'NO2,'#10'periodo_gastos2.ANO as Ano2, periodo_gastos2.IMPORTE_TOTAL ' +
+ 'as GASTOS_ANO2,'#10'(coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)) as BENEFICIO_ANO2,'#10'c' +
+ 'ase'#10'when (periodo_ingresos2.IMPORTE_TOTAL = 0) then (100 - ((coa' +
+ 'lesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gas' +
+ 'tos2.IMPORTE_TOTAL, 0))*100))'#10'else ((((coalesce(periodo_ingresos' +
+ '2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)' +
+ ')*100)/periodo_ingresos2.IMPORTE_TOTAL))'#10'end as Porcentaje_Benef' +
+ 'icios_Ano2,'#10#10'(periodo_ingresos1.IMPORTE_TOTAL - periodo_ingresos' +
+ '2.IMPORTE_TOTAL) as Diferencia_Ingresos,'#10'case'#10'when (periodo_ingr' +
+ 'esos2.IMPORTE_TOTAL = 0) then (100 - ((periodo_ingresos1.IMPORTE' +
+ '_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_' +
+ 'ingresos1.IMPORTE_TOTAL - periodo_ingresos2.IMPORTE_TOTAL)*100)/' +
+ 'periodo_ingresos2.IMPORTE_TOTAL)'#10'end as Porcentaje_Aumento_Ingre' +
+ 'sos,'#10#10'(periodo_gastos1.IMPORTE_TOTAL - periodo_gastos2.IMPORTE_T' +
+ 'OTAL) as Diferencia_Gastos,'#10'case'#10'when (periodo_gastos2.IMPORTE_T' +
+ 'OTAL = 0) then (100 - ((periodo_gastos1.IMPORTE_TOTAL - periodo_' +
+ 'gastos2.IMPORTE_TOTAL)*100))'#10'else (((periodo_gastos1.IMPORTE_TOT' +
+ 'AL - periodo_gastos2.IMPORTE_TOTAL)*100)/periodo_gastos2.IMPORTE' +
+ '_TOTAL)'#10'end as Porcentaje_Aumento_Gastos,'#10#10'case when periodo_ing' +
+ 'resos2.ANO is null then 0'#10'else'#10'((coalesce(periodo_ingresos1.IMPO' +
+ 'RTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, 0)) - (c' +
+ 'oalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_g' +
+ 'astos2.IMPORTE_TOTAL, 0)))'#10'end as Diferencia_Beneficios,'#10#10'case w' +
+ 'hen periodo_ingresos2.ANO is null then 0'#10'else'#10'case'#10'when ((coales' +
+ 'ce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos' +
+ '2.IMPORTE_TOTAL, 0)) = 0) then (100 - (((coalesce(periodo_ingres' +
+ 'os1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPORTE_TOTAL, ' +
+ '0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(p' +
+ 'eriodo_gastos2.IMPORTE_TOTAL, 0)))*100))'#10'else (((((coalesce(peri' +
+ 'odo_ingresos1.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos1.IMPOR' +
+ 'TE_TOTAL, 0)) - (coalesce(periodo_ingresos2.IMPORTE_TOTAL, 0) - ' +
+ 'coalesce(periodo_gastos2.IMPORTE_TOTAL, 0)))*100) / (coalesce(pe' +
+ 'riodo_ingresos2.IMPORTE_TOTAL, 0) - coalesce(periodo_gastos2.IMP' +
+ 'ORTE_TOTAL, 0))))'#10'end'#10'end as Porcentaje_Aumento_Beneficios'#10#10#10'FRO' +
+ 'M'#10'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, TR' +
+ 'IMESTRE as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'fro' +
+ 'm V_INF_FAC_CLIENTE comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (A' +
+ 'NO = :ANO1)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) periodo_ingres' +
+ 'os1 on (VALOR = periodo_ingresos1.NFILA)'#10#10'left join'#10'(select comp' +
+ '2.ID_EMPRESA, comp2.ANO, TRIMESTRE as NFILA, SUM(comp2.BASE_IMPO' +
+ 'NIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROVEEDOR comp2'#10'where ID_' +
+ 'EMPRESA = :ID_EMPRESA1'#10'and (ANO = :ANO1)'#10'and (comp2.ID_TIPO_FACT' +
+ 'URA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) peri' +
+ 'odo_gastos1 on (VALOR = periodo_gastos1.NFILA)'#10#10'left join'#10'(selec' +
+ 't comp3.ID_EMPRESA, comp3.ANO, TRIMESTRE as NFILA, SUM(comp3.BAS' +
+ 'E_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_CLIENTE comp3'#10'where' +
+ ' ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'group by 1,2,3'#10'orde' +
+ 'r by 1 desc,2 asc) periodo_ingresos2 on (VALOR = periodo_ingreso' +
+ 's2.NFILA)'#10#10'left join'#10'(select comp4.ID_EMPRESA, comp4.ANO, TRIMES' +
+ 'TRE as NFILA, SUM(comp4.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_' +
+ 'INF_FAC_PROVEEDOR comp4'#10'where ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO' +
+ ' = :ANO2)'#10'and (comp4.ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by ' +
+ '1,2,3'#10'order by 1 desc,2 asc) periodo_gastos2 on (VALOR = periodo' +
+ '_gastos2.NFILA)'#10#10#10'where periodo= '#39'TRIMESTRAL'#39#10'order by valor asc' +
+ #10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO1'
+ TableField = 'INGRESOS_ANO1'
+ end
+ item
+ DatasetField = 'ANO11'
+ TableField = 'ANO11'
+ end
+ item
+ DatasetField = 'GASTOS_ANO1'
+ TableField = 'GASTOS_ANO1'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO1'
+ TableField = 'BENEFICIO_ANO1'
+ end
+ item
+ DatasetField = 'INGRESOS_ANO2'
+ TableField = 'INGRESOS_ANO2'
+ end
+ item
+ DatasetField = 'ANO21'
+ TableField = 'ANO21'
+ end
+ item
+ DatasetField = 'GASTOS_ANO2'
+ TableField = 'GASTOS_ANO2'
+ end
+ item
+ DatasetField = 'BENEFICIO_ANO2'
+ TableField = 'BENEFICIO_ANO2'
+ end
+ item
+ DatasetField = 'DIFERENCIA_INGRESOS'
+ TableField = 'DIFERENCIA_INGRESOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ TableField = 'PORCENTAJE_AUMENTO_INGRESOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_GASTOS'
+ TableField = 'DIFERENCIA_GASTOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_GASTOS'
+ TableField = 'PORCENTAJE_AUMENTO_GASTOS'
+ end
+ item
+ DatasetField = 'DIFERENCIA_BENEFICIOS'
+ TableField = 'DIFERENCIA_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ TableField = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO1'
+ end
+ item
+ DatasetField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ TableField = 'PORCENTAJE_BENEFICIOS_ANO2'
+ end>
+ end>
+ Name = 'InformeListadoBeneficiosGrafCompTrimestralTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
end>
JoinDataTables = <>
UnionDataTables = <>
@@ -4443,4 +5227,349 @@ object RptFacturasCliente: TRptFacturasCliente
Left = 432
Top = 776
end
+ object tbl_InformeListadoBeneficiosGrafCompSemestralTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoBeneficiosGrafCompSemestralTipoGasto'
+ IndexDefs = <>
+ Left = 824
+ Top = 672
+ end
+ object tbl_InformeListadoBeneficiosGrafCompTrimestralTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoBeneficiosGrafCompTrimestralTipoGasto'
+ IndexDefs = <>
+ Left = 824
+ Top = 728
+ end
+ object tbl_InformeListadoBeneficiosGrafCompMensualTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO11'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'INGRESOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO21'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'GASTOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'BENEFICIO_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_BENEFICIOS_ANO2'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_INGRESOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_GASTOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA_BENEFICIOS'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE_AUMENTO_BENEFICIOS'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoBeneficiosGrafCompMensualTipoGasto'
+ IndexDefs = <>
+ Left = 824
+ Top = 784
+ end
end
diff --git a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
index 30648ca6..7f7529f5 100644
--- a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
+++ b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
@@ -8,7 +8,8 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
- uDAMemDataTable, FactuGES_Intf, frxExportPDF, uDABin2DataStreamer;
+ uDAMemDataTable, FactuGES_Intf, frxExportPDF, uDABin2DataStreamer,
+ DataAbstract4_Intf;
type
TRptFacturasCliente = class(TDataModule)
@@ -110,6 +111,9 @@ type
DADSInformeIVAComparativoFacturasPro: TDADataSource;
tbl_InformeIVAComparativoFacturasPro: TDAMemDataTable;
schReport: TDASchema;
+ tbl_InformeListadoBeneficiosGrafCompSemestralTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoBeneficiosGrafCompTrimestralTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoBeneficiosGrafCompMensualTipoGasto: TDAMemDataTable;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
private
@@ -127,7 +131,9 @@ type
FImporteMinimo: Currency;
FDesglosado : Boolean;
FTopN: Integer;
-
+ FListaIDTiposdeGasto: TIntegerArray;
+ FListaNombreTiposGasto: StringArray;
+
//Genera cada una de las facturas a imprimir
procedure _GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
@@ -145,7 +151,7 @@ type
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
- function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant): Binary;
+ function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function GenerarInformeIVAComparativo(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant): Binary;
end;
@@ -155,7 +161,7 @@ implementation
uses
uSistemaFunc, StrUtils, uDataModuleServer, schFacturasClienteClient_Intf,
- uROServer, DataAbstract4_Intf, srvGestorInformes_Impl;
+ uROServer, srvGestorInformes_Impl;
const
rptFacturaCliente = 'InfFacturaCliente.fr3';
@@ -234,10 +240,12 @@ begin
end;
end;
-function TRptFacturasCliente.GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant; const Serie: Variant): Binary;
+function TRptFacturasCliente.GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
+const Serie: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
+ ACadena: TStringList;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
@@ -250,14 +258,39 @@ begin
FAno2 := Ano2;
FIntervalo := Intervalo;
- //Preparamos la tabla correspondiente y la abrimos para el informe
- if (FIntervalo = CTE_MENSUAL) then
- PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompMensual)
- else if (FIntervalo = CTE_TRIMESTRAL) then
- PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompTrimestral)
- else
- PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompSemestral);
+ if Assigned(FListaIDTiposdeGasto) then
+ FListaIDTiposdeGasto.Free;
+ FListaIDTiposdeGasto := ListaIDTiposGasto;
+ if Assigned(FListaNombreTiposGasto) then
+ FreeAndNil(FListaNombreTiposGasto);
+ FListaNombreTiposGasto := ListaNombreTiposGasto;
+
+ //Cargamos las tablas con parametro ID_TIPO_GASTO
+ if (FListaIDTiposdeGasto.Count = 1) then
+ begin
+ //Preparamos la tabla correspondiente y la abrimos para el informe
+ if (FIntervalo = CTE_MENSUAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompMensualTipoGasto)
+ else if (FIntervalo = CTE_TRIMESTRAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompTrimestralTipoGasto)
+ else
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompSemestralTipoGasto);
+
+ DASInformeListadoFacturasGrafComp.DataTable.ParamByName('ID_TIPO_GASTO').AsInteger := FListaIDTiposdeGasto.Items[0];
+ end
+ else
+ begin
+ //Preparamos la tabla correspondiente y la abrimos para el informe
+ if (FIntervalo = CTE_MENSUAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompMensual)
+ else if (FIntervalo = CTE_TRIMESTRAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompTrimestral)
+ else
+ PrepararTablaInformeGrafComp(tbl_InformeListadoBeneficiosGrafCompSemestral);
+ end;
+
+ DASInformeListadoFacturasGrafComp.DataTable.Active := True;
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeListadoBeneficiosGrafComp, IntTostr(FIdEmpresa));
@@ -267,6 +300,15 @@ begin
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
+ ACadena := TStringList.Create;
+ ACadena.Add('Todos los tipos de gasto');
+ if Assigned(FListaIDTiposdeGasto) and (FListaIDTiposdeGasto.Count > 0) then
+ begin
+ ACadena.Clear;
+ ACadena.Add('Solo tipo de gasto ' + FListaNombreTiposGasto.Items[0]);
+ end;
+
+ frxReport.Variables.Variables['TextoParametros']:= ACadena.Text;
frxReport.Variables.Variables['Ano1']:= Ano1;
frxReport.Variables.Variables['Ano2']:= Ano2;
frxReport.Variables.Variables['Serie']:= Serie;
@@ -276,6 +318,7 @@ begin
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
+ FreeAndNil(ACadena);
end;
end;
@@ -694,7 +737,6 @@ begin
ATabla.ParamByName('ID_EMPRESA2').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
- ATabla.Active := True;
end;
procedure TRptFacturasCliente.PrepararTablaResumenInforme(ATabla: IDADataset);
diff --git a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dpk b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dpk
index 610c3f4c..a15337ae 100644
Binary files a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dpk and b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dpk differ
diff --git a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dproj b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dproj
index 1bfaa291..2def5395 100644
--- a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dproj
+++ b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.dproj
@@ -64,6 +64,7 @@
+
diff --git a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.res b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.res
index 1641339f..8b251f31 100644
Binary files a/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.res and b/Source/Modulos/Facturas de proveedor/Controller/FacturasProveedor_controller.res differ
diff --git a/Source/Modulos/Facturas de proveedor/Controller/uFacturasProveedorController.pas b/Source/Modulos/Facturas de proveedor/Controller/uFacturasProveedorController.pas
index 0e8306c7..3fea84da 100644
--- a/Source/Modulos/Facturas de proveedor/Controller/uFacturasProveedorController.pas
+++ b/Source/Modulos/Facturas de proveedor/Controller/uFacturasProveedorController.pas
@@ -54,9 +54,11 @@ type
function DarListaAnosFacturas: TStringList;
procedure FiltrarAno(AFactura: IBizFacturaProveedor; ADynWhereDataTable: WideString; const Ano: String);
+ function darTiposFacturaProveedor: IBizTiposFacturaProveedor;
function AsignarCuentaBancaria(AFacturas: IBizFacturaProveedor): TStringList;
function AsignarVencimiento(AFacturas: IBizFacturaProveedor): TStringList;
+ function AsignarTipoGasto(AFacturas: IBizFacturaProveedor): TStringList;
end;
TFacturasProveedorController = class(TControllerBase, IFacturasProveedorController)
@@ -124,9 +126,11 @@ type
function DarListaAnosFacturas: TStringList;
procedure FiltrarAno(AFactura: IBizFacturaProveedor; ADynWhereDataTable: WideString; const Ano: String);
+ function darTiposFacturaProveedor: IBizTiposFacturaProveedor;
function AsignarCuentaBancaria(AFacturas: IBizFacturaProveedor): TStringList;
function AsignarVencimiento(AFacturas: IBizFacturaProveedor): TStringList;
+ function AsignarTipoGasto(AFacturas: IBizFacturaProveedor): TStringList;
end;
implementation
@@ -142,7 +146,7 @@ uses
uRecibosProveedorController, uBizRecibosProveedor, uNumUtils,
uFacturasProveedorReportController, DateUtils, Forms, Dialogs,
uFormasPagoController, uBizFormasPago, uStringsUtils,
- uIEditorElegirDomiciliacion, uIEditorElegirFechaVencimiento,
+ uIEditorElegirDomiciliacion, uIEditorElegirFechaVencimiento, uIEditorElegirTipoGasto,
cxEdit;
@@ -305,6 +309,45 @@ begin
end;
end;
+function TFacturasProveedorController.AsignarTipoGasto(AFacturas: IBizFacturaProveedor): TStringList;
+//Devolver la lista de facturas que no han podido ser modificadas referencia=nombreproveedor
+var
+ AEditor : IEditorElegirTipoGasto;
+ ATipoGasto: Integer;
+
+begin
+ Result := TStringList.Create;
+
+ if Assigned(AFacturas) then
+ begin
+ CreateEditor('EditorElegirTipoGasto', IEditorElegirTipoGasto, AEditor);
+ if Assigned(AEditor) then
+ try
+ if (AEditor.ShowModal = mrOk) then
+ ATipoGasto := AEditor.TipodeGasto;
+ finally
+ AEditor.Release;
+ AEditor := NIL;
+ end;
+
+ with AFacturas.DataTable do
+ begin
+ First;
+ while not EOF do
+ begin
+ if (AFacturas.ID_TIPO_FACTURA <> ATipoGasto) then
+ begin
+ Edit;
+ AFacturas.ID_TIPO_FACTURA := ATipoGasto;
+ Post;
+ end;
+ Next;
+ end;
+ ApplyUpdates;
+ end;
+ end;
+end;
+
function TFacturasProveedorController.AsignarVencimiento(AFacturas: IBizFacturaProveedor): TStringList;
//Devolver la lista de facturas que no han podido ser modificadas referencia=nombreproveedor
var
@@ -494,6 +537,11 @@ begin
Result := FDataModule.GetAnosItems;
end;
+function TFacturasProveedorController.darTiposFacturaProveedor: IBizTiposFacturaProveedor;
+begin
+ Result := FDataModule.darTiposFacturaProveedor;
+end;
+
procedure TFacturasProveedorController.DescartarCambios(AFactura: IBizFacturaProveedor);
begin
if not Assigned(AFactura) then
diff --git a/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.dfm b/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.dfm
index 4eb1bfc1..926bcc06 100644
--- a/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.dfm
+++ b/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.dfm
@@ -1,6 +1,6 @@
inherited DataModuleFacturasProveedor: TDataModuleFacturasProveedor
OnCreate = DAClientDataModuleCreate
- Height = 318
+ Height = 454
Width = 518
object RORemoteService: TRORemoteService
Message = dmConexion.ROMessage
@@ -273,6 +273,15 @@ inherited DataModuleFacturasProveedor: TDataModuleFacturasProveedor
item
Name = 'FACTURA_WEB'
DataType = datSmallInt
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
@@ -516,4 +525,30 @@ inherited DataModuleFacturasProveedor: TDataModuleFacturasProveedor
Left = 208
Top = 160
end
+ object ds_TiposFacturaProveedor: TDADataSource
+ DataSet = tbl_TiposFacturaProveedor.Dataset
+ DataTable = tbl_TiposFacturaProveedor
+ Left = 72
+ Top = 216
+ end
+ object tbl_TiposFacturaProveedor: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datInteger
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 2000
+ end>
+ Params = <>
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteDataAdapter = rda_FacturasProveedor
+ LogicalName = 'TiposFacturaProveedor'
+ IndexDefs = <>
+ Left = 72
+ Top = 264
+ end
end
diff --git a/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.pas b/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.pas
index 3362ed36..c59d7e0f 100644
--- a/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Data/uDataModuleFacturasProveedor.pas
@@ -25,6 +25,8 @@ type
ds_FacturasProveedor_Pedidos: TDADataSource;
tbl_ListaAnosFacturas: TDAMemDataTable;
ds_ListaAnosFacturas: TDADataSource;
+ ds_TiposFacturaProveedor: TDADataSource;
+ tbl_TiposFacturaProveedor: TDAMemDataTable;
procedure DAClientDataModuleCreate(Sender: TObject);
private
function _GetDetalles : IBizDetallesFacturaProveedor;
@@ -33,6 +35,7 @@ type
function GetItems : IBizFacturaProveedor;
function GetItem(const ID : Integer) : IBizFacturaProveedor;
function NewItem : IBizFacturaProveedor;
+ function darTiposFacturaProveedor : IBizTiposFacturaProveedor;
// Report
function GetReport(const AFacturaID: String): Binary;
@@ -102,6 +105,20 @@ begin
end;
end;
+function TDataModuleFacturasProveedor.darTiposFacturaProveedor: IBizTiposFacturaProveedor;
+var
+ ATipos : TDAMemDataTable;
+begin
+ ShowHourglassCursor;
+ try
+ ATipos := CloneDataTable(tbl_TiposFacturaProveedor);
+ ATipos.BusinessRulesID := BIZ_CLIENT_TIPOS_FACTURA_PROVEEDOR;
+ Result := (ATipos as IBizTiposFacturaProveedor);
+ finally
+ HideHourglassCursor;
+ end;
+end;
+
function TDataModuleFacturasProveedor.GetAnosItems: TStringList;
var
AListaAnos: TStringList;
diff --git a/Source/Modulos/Facturas de proveedor/FacturasProveedor_Group.groupproj b/Source/Modulos/Facturas de proveedor/FacturasProveedor_Group.groupproj
index a350fc48..7cf941db 100644
--- a/Source/Modulos/Facturas de proveedor/FacturasProveedor_Group.groupproj
+++ b/Source/Modulos/Facturas de proveedor/FacturasProveedor_Group.groupproj
@@ -131,15 +131,6 @@
-
-
-
-
-
-
-
-
-
@@ -149,6 +140,15 @@
+
+
+
+
+
+
+
+
+
@@ -312,13 +312,13 @@
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Modulos/Facturas de proveedor/Model/Data/uIDataModuleFacturasProveedor.pas b/Source/Modulos/Facturas de proveedor/Model/Data/uIDataModuleFacturasProveedor.pas
index bf21f571..487abe51 100644
--- a/Source/Modulos/Facturas de proveedor/Model/Data/uIDataModuleFacturasProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Model/Data/uIDataModuleFacturasProveedor.pas
@@ -13,6 +13,7 @@ type
function GetItems: IBizFacturaProveedor;
function GetItem(const ID : Integer) : IBizFacturaProveedor;
function NewItem : IBizFacturaProveedor;
+ function darTiposFacturaProveedor : IBizTiposFacturaProveedor;
end;
implementation
diff --git a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas
index d537a980..36567a1f 100644
--- a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas
+++ b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorClient_Intf.pas
@@ -9,13 +9,15 @@ 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_ListaAnosFacturas = '{B4BDA784-E7CD-4E5D-AD82-CA1AD2FA210E}';
- RID_FacturasProveedor = '{88C6D669-25A9-4965-ADC8-DD1920257A84}';
- RID_FacturasProveedor_Detalles = '{858A5CAE-E03F-4CAB-8AAF-D03986B66CD3}';
- RID_FacturasProveedor_Pedidos = '{3B26DC10-C424-4261-8421-52BDE6ECDF82}';
+ RID_ListaAnosFacturas = '{C658E9F4-FBA4-41A1-BED6-48877E65A655}';
+ RID_TiposFacturaProveedor = '{8CCF560A-60F5-4A99-9550-2E850599ACEE}';
+ RID_FacturasProveedor = '{3359F0D6-D054-434E-B975-8F45A24E1BEE}';
+ RID_FacturasProveedor_Detalles = '{26E6A51E-3426-49D3-83DD-3C815C15441D}';
+ RID_FacturasProveedor_Pedidos = '{96119A69-D5BF-4255-93F2-726A658369D6}';
{ Data table names }
nme_ListaAnosFacturas = 'ListaAnosFacturas';
+ nme_TiposFacturaProveedor = 'TiposFacturaProveedor';
nme_FacturasProveedor = 'FacturasProveedor';
nme_FacturasProveedor_Detalles = 'FacturasProveedor_Detalles';
nme_FacturasProveedor_Pedidos = 'FacturasProveedor_Pedidos';
@@ -26,6 +28,14 @@ const
{ ListaAnosFacturas field indexes }
idx_ListaAnosFacturasANO = 0;
+ { TiposFacturaProveedor fields }
+ fld_TiposFacturaProveedorID = 'ID';
+ fld_TiposFacturaProveedorDESCRIPCION = 'DESCRIPCION';
+
+ { TiposFacturaProveedor field indexes }
+ idx_TiposFacturaProveedorID = 0;
+ idx_TiposFacturaProveedorDESCRIPCION = 1;
+
{ FacturasProveedor fields }
fld_FacturasProveedorID = 'ID';
fld_FacturasProveedorID_EMPRESA = 'ID_EMPRESA';
@@ -66,6 +76,8 @@ const
fld_FacturasProveedorID_PEDIDO = 'ID_PEDIDO';
fld_FacturasProveedorREFERENCIA_PEDIDO = 'REFERENCIA_PEDIDO';
fld_FacturasProveedorFACTURA_WEB = 'FACTURA_WEB';
+ fld_FacturasProveedorID_TIPO_FACTURA = 'ID_TIPO_FACTURA';
+ fld_FacturasProveedorGASTO_FACTURA = 'GASTO_FACTURA';
{ FacturasProveedor field indexes }
idx_FacturasProveedorID = 0;
@@ -107,6 +119,8 @@ const
idx_FacturasProveedorID_PEDIDO = 36;
idx_FacturasProveedorREFERENCIA_PEDIDO = 37;
idx_FacturasProveedorFACTURA_WEB = 38;
+ idx_FacturasProveedorID_TIPO_FACTURA = 39;
+ idx_FacturasProveedorGASTO_FACTURA = 40;
{ FacturasProveedor_Detalles fields }
fld_FacturasProveedor_DetallesID_TIPO_IVA = 'ID_TIPO_IVA';
@@ -171,7 +185,7 @@ const
type
{ IListaAnosFacturas }
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
- ['{05484AA0-6BB3-4627-AACC-ACA197D91A7A}']
+ ['{3A6537F5-9F02-4F34-AF69-4177A3BE5307}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@@ -204,9 +218,56 @@ type
end;
+ { ITiposFacturaProveedor }
+ ITiposFacturaProveedor = interface(IDAStronglyTypedDataTable)
+ ['{563B959F-593F-455A-86CE-8F84B71242A0}']
+ { Property getters and setters }
+ function GetIDValue: Integer;
+ procedure SetIDValue(const aValue: Integer);
+ function GetIDIsNull: Boolean;
+ procedure SetIDIsNull(const aValue: Boolean);
+ function GetDESCRIPCIONValue: String;
+ procedure SetDESCRIPCIONValue(const aValue: String);
+ function GetDESCRIPCIONIsNull: Boolean;
+ procedure SetDESCRIPCIONIsNull(const aValue: Boolean);
+
+
+ { Properties }
+ property ID: Integer read GetIDValue write SetIDValue;
+ property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
+ property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+ end;
+
+ { TTiposFacturaProveedorDataTableRules }
+ TTiposFacturaProveedorDataTableRules = class(TIntfObjectDADataTableRules, ITiposFacturaProveedor)
+ 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 GetDESCRIPCIONValue: String; virtual;
+ procedure SetDESCRIPCIONValue(const aValue: String); virtual;
+ function GetDESCRIPCIONIsNull: Boolean; virtual;
+ procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual;
+
+ { Properties }
+ property ID: Integer read GetIDValue write SetIDValue;
+ property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
+ property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+
+ public
+ constructor Create(aDataTable: TDADataTable); override;
+ destructor Destroy; override;
+
+ end;
+
{ IFacturasProveedor }
IFacturasProveedor = interface(IDAStronglyTypedDataTable)
- ['{AD3265C8-FA1C-4EF5-AE75-30202C4F636C}']
+ ['{F16B7B17-828D-4E04-8227-F7B796C34113}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -363,6 +424,14 @@ type
procedure SetFACTURA_WEBValue(const aValue: SmallInt);
function GetFACTURA_WEBIsNull: Boolean;
procedure SetFACTURA_WEBIsNull(const aValue: Boolean);
+ function GetID_TIPO_FACTURAValue: Integer;
+ procedure SetID_TIPO_FACTURAValue(const aValue: Integer);
+ function GetID_TIPO_FACTURAIsNull: Boolean;
+ procedure SetID_TIPO_FACTURAIsNull(const aValue: Boolean);
+ function GetGASTO_FACTURAValue: String;
+ procedure SetGASTO_FACTURAValue(const aValue: String);
+ function GetGASTO_FACTURAIsNull: Boolean;
+ procedure SetGASTO_FACTURAIsNull(const aValue: Boolean);
{ Properties }
@@ -444,6 +513,10 @@ type
property REFERENCIA_PEDIDOIsNull: Boolean read GetREFERENCIA_PEDIDOIsNull write SetREFERENCIA_PEDIDOIsNull;
property FACTURA_WEB: SmallInt read GetFACTURA_WEBValue write SetFACTURA_WEBValue;
property FACTURA_WEBIsNull: Boolean read GetFACTURA_WEBIsNull write SetFACTURA_WEBIsNull;
+ property ID_TIPO_FACTURA: Integer read GetID_TIPO_FACTURAValue write SetID_TIPO_FACTURAValue;
+ property ID_TIPO_FACTURAIsNull: Boolean read GetID_TIPO_FACTURAIsNull write SetID_TIPO_FACTURAIsNull;
+ property GASTO_FACTURA: String read GetGASTO_FACTURAValue write SetGASTO_FACTURAValue;
+ property GASTO_FACTURAIsNull: Boolean read GetGASTO_FACTURAIsNull write SetGASTO_FACTURAIsNull;
end;
{ TFacturasProveedorDataTableRules }
@@ -608,6 +681,14 @@ type
procedure SetFACTURA_WEBValue(const aValue: SmallInt); virtual;
function GetFACTURA_WEBIsNull: Boolean; virtual;
procedure SetFACTURA_WEBIsNull(const aValue: Boolean); virtual;
+ function GetID_TIPO_FACTURAValue: Integer; virtual;
+ procedure SetID_TIPO_FACTURAValue(const aValue: Integer); virtual;
+ function GetID_TIPO_FACTURAIsNull: Boolean; virtual;
+ procedure SetID_TIPO_FACTURAIsNull(const aValue: Boolean); virtual;
+ function GetGASTO_FACTURAValue: String; virtual;
+ procedure SetGASTO_FACTURAValue(const aValue: String); virtual;
+ function GetGASTO_FACTURAIsNull: Boolean; virtual;
+ procedure SetGASTO_FACTURAIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@@ -688,6 +769,10 @@ type
property REFERENCIA_PEDIDOIsNull: Boolean read GetREFERENCIA_PEDIDOIsNull write SetREFERENCIA_PEDIDOIsNull;
property FACTURA_WEB: SmallInt read GetFACTURA_WEBValue write SetFACTURA_WEBValue;
property FACTURA_WEBIsNull: Boolean read GetFACTURA_WEBIsNull write SetFACTURA_WEBIsNull;
+ property ID_TIPO_FACTURA: Integer read GetID_TIPO_FACTURAValue write SetID_TIPO_FACTURAValue;
+ property ID_TIPO_FACTURAIsNull: Boolean read GetID_TIPO_FACTURAIsNull write SetID_TIPO_FACTURAIsNull;
+ property GASTO_FACTURA: String read GetGASTO_FACTURAValue write SetGASTO_FACTURAValue;
+ property GASTO_FACTURAIsNull: Boolean read GetGASTO_FACTURAIsNull write SetGASTO_FACTURAIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@@ -697,7 +782,7 @@ type
{ IFacturasProveedor_Detalles }
IFacturasProveedor_Detalles = interface(IDAStronglyTypedDataTable)
- ['{F659E93B-D0FA-48CD-86DF-07903E7F8687}']
+ ['{BE622FAF-3843-477A-8F04-F9FDD937F179}']
{ Property getters and setters }
function GetID_TIPO_IVAValue: Integer;
procedure SetID_TIPO_IVAValue(const aValue: Integer);
@@ -948,7 +1033,7 @@ type
{ IFacturasProveedor_Pedidos }
IFacturasProveedor_Pedidos = interface(IDAStronglyTypedDataTable)
- ['{EED4D71C-4868-4437-B0F5-CE738331D865}']
+ ['{4A33A986-4CE2-4064-AE22-C0823A36AA54}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@@ -1090,6 +1175,60 @@ begin
end;
+{ TTiposFacturaProveedorDataTableRules }
+constructor TTiposFacturaProveedorDataTableRules.Create(aDataTable: TDADataTable);
+begin
+ inherited;
+end;
+
+destructor TTiposFacturaProveedorDataTableRules.Destroy;
+begin
+ inherited;
+end;
+
+function TTiposFacturaProveedorDataTableRules.GetIDValue: Integer;
+begin
+ result := DataTable.Fields[idx_TiposFacturaProveedorID].AsInteger;
+end;
+
+procedure TTiposFacturaProveedorDataTableRules.SetIDValue(const aValue: Integer);
+begin
+ DataTable.Fields[idx_TiposFacturaProveedorID].AsInteger := aValue;
+end;
+
+function TTiposFacturaProveedorDataTableRules.GetIDIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_TiposFacturaProveedorID].IsNull;
+end;
+
+procedure TTiposFacturaProveedorDataTableRules.SetIDIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_TiposFacturaProveedorID].AsVariant := Null;
+end;
+
+function TTiposFacturaProveedorDataTableRules.GetDESCRIPCIONValue: String;
+begin
+ result := DataTable.Fields[idx_TiposFacturaProveedorDESCRIPCION].AsString;
+end;
+
+procedure TTiposFacturaProveedorDataTableRules.SetDESCRIPCIONValue(const aValue: String);
+begin
+ DataTable.Fields[idx_TiposFacturaProveedorDESCRIPCION].AsString := aValue;
+end;
+
+function TTiposFacturaProveedorDataTableRules.GetDESCRIPCIONIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_TiposFacturaProveedorDESCRIPCION].IsNull;
+end;
+
+procedure TTiposFacturaProveedorDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_TiposFacturaProveedorDESCRIPCION].AsVariant := Null;
+end;
+
+
{ TFacturasProveedorDataTableRules }
constructor TFacturasProveedorDataTableRules.Create(aDataTable: TDADataTable);
var
@@ -1927,6 +2066,48 @@ begin
DataTable.Fields[idx_FacturasProveedorFACTURA_WEB].AsVariant := Null;
end;
+function TFacturasProveedorDataTableRules.GetID_TIPO_FACTURAValue: Integer;
+begin
+ result := DataTable.Fields[idx_FacturasProveedorID_TIPO_FACTURA].AsInteger;
+end;
+
+procedure TFacturasProveedorDataTableRules.SetID_TIPO_FACTURAValue(const aValue: Integer);
+begin
+ DataTable.Fields[idx_FacturasProveedorID_TIPO_FACTURA].AsInteger := aValue;
+end;
+
+function TFacturasProveedorDataTableRules.GetID_TIPO_FACTURAIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_FacturasProveedorID_TIPO_FACTURA].IsNull;
+end;
+
+procedure TFacturasProveedorDataTableRules.SetID_TIPO_FACTURAIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_FacturasProveedorID_TIPO_FACTURA].AsVariant := Null;
+end;
+
+function TFacturasProveedorDataTableRules.GetGASTO_FACTURAValue: String;
+begin
+ result := DataTable.Fields[idx_FacturasProveedorGASTO_FACTURA].AsString;
+end;
+
+procedure TFacturasProveedorDataTableRules.SetGASTO_FACTURAValue(const aValue: String);
+begin
+ DataTable.Fields[idx_FacturasProveedorGASTO_FACTURA].AsString := aValue;
+end;
+
+function TFacturasProveedorDataTableRules.GetGASTO_FACTURAIsNull: boolean;
+begin
+ result := DataTable.Fields[idx_FacturasProveedorGASTO_FACTURA].IsNull;
+end;
+
+procedure TFacturasProveedorDataTableRules.SetGASTO_FACTURAIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ DataTable.Fields[idx_FacturasProveedorGASTO_FACTURA].AsVariant := Null;
+end;
+
{ TFacturasProveedor_DetallesDataTableRules }
constructor TFacturasProveedor_DetallesDataTableRules.Create(aDataTable: TDADataTable);
@@ -2500,6 +2681,7 @@ end;
initialization
RegisterDataTableRules(RID_ListaAnosFacturas, TListaAnosFacturasDataTableRules);
+ RegisterDataTableRules(RID_TiposFacturaProveedor, TTiposFacturaProveedorDataTableRules);
RegisterDataTableRules(RID_FacturasProveedor, TFacturasProveedorDataTableRules);
RegisterDataTableRules(RID_FacturasProveedor_Detalles, TFacturasProveedor_DetallesDataTableRules);
RegisterDataTableRules(RID_FacturasProveedor_Pedidos, TFacturasProveedor_PedidosDataTableRules);
diff --git a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorServer_Intf.pas b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorServer_Intf.pas
index c065b316..a4adf461 100644
--- a/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorServer_Intf.pas
+++ b/Source/Modulos/Facturas de proveedor/Model/schFacturasProveedorServer_Intf.pas
@@ -9,15 +9,16 @@ 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_ListaAnosFacturasDelta = '{597C7E92-4D92-447E-B929-17142EC8D988}';
- RID_FacturasProveedorDelta = '{ACBA8C9D-A8DA-42B8-82C6-443D313A128F}';
- RID_FacturasProveedor_DetallesDelta = '{A8B404BC-49F6-4337-B720-7E89EE78B376}';
- RID_FacturasProveedor_PedidosDelta = '{27E068A8-51CD-4289-AB94-31B7C5120DC4}';
+ RID_ListaAnosFacturasDelta = '{58AB1D93-ECF9-4709-9940-4EABA82A3837}';
+ RID_TiposFacturaProveedorDelta = '{ACA94265-BCFA-4352-AD0A-3047643CDBE1}';
+ RID_FacturasProveedorDelta = '{6C73408A-5093-494D-9629-DA14CCD2809C}';
+ RID_FacturasProveedor_DetallesDelta = '{8C06187D-4437-4059-B72D-81D07D5EA1B2}';
+ RID_FacturasProveedor_PedidosDelta = '{09AF7634-49D5-466B-A428-D969048F0E0E}';
type
{ IListaAnosFacturasDelta }
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
- ['{597C7E92-4D92-447E-B929-17142EC8D988}']
+ ['{58AB1D93-ECF9-4709-9940-4EABA82A3837}']
{ Property getters and setters }
function GetOldANOValue : String;
@@ -49,9 +50,55 @@ type
end;
+ { ITiposFacturaProveedorDelta }
+ ITiposFacturaProveedorDelta = interface(ITiposFacturaProveedor)
+ ['{ACA94265-BCFA-4352-AD0A-3047643CDBE1}']
+ { Property getters and setters }
+ function GetOldIDValue : Integer;
+ function GetOldDESCRIPCIONValue : String;
+
+ { Properties }
+ property OldID : Integer read GetOldIDValue;
+ property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
+ end;
+
+ { TTiposFacturaProveedorBusinessProcessorRules }
+ TTiposFacturaProveedorBusinessProcessorRules = class(TDABusinessProcessorRules, ITiposFacturaProveedor, ITiposFacturaProveedorDelta)
+ 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 GetDESCRIPCIONValue: String; virtual;
+ function GetDESCRIPCIONIsNull: Boolean; virtual;
+ function GetOldDESCRIPCIONValue: String; virtual;
+ function GetOldDESCRIPCIONIsNull: Boolean; virtual;
+ procedure SetDESCRIPCIONValue(const aValue: String); virtual;
+ procedure SetDESCRIPCIONIsNull(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 DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue;
+ property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull;
+ property OldDESCRIPCION : String read GetOldDESCRIPCIONValue;
+ property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull;
+
+ public
+ constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
+ destructor Destroy; override;
+
+ end;
+
{ IFacturasProveedorDelta }
IFacturasProveedorDelta = interface(IFacturasProveedor)
- ['{ACBA8C9D-A8DA-42B8-82C6-443D313A128F}']
+ ['{6C73408A-5093-494D-9629-DA14CCD2809C}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@@ -92,6 +139,8 @@ type
function GetOldID_PEDIDOValue : Integer;
function GetOldREFERENCIA_PEDIDOValue : String;
function GetOldFACTURA_WEBValue : SmallInt;
+ function GetOldID_TIPO_FACTURAValue : Integer;
+ function GetOldGASTO_FACTURAValue : String;
{ Properties }
property OldID : Integer read GetOldIDValue;
@@ -133,6 +182,8 @@ type
property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue;
property OldREFERENCIA_PEDIDO : String read GetOldREFERENCIA_PEDIDOValue;
property OldFACTURA_WEB : SmallInt read GetOldFACTURA_WEBValue;
+ property OldID_TIPO_FACTURA : Integer read GetOldID_TIPO_FACTURAValue;
+ property OldGASTO_FACTURA : String read GetOldGASTO_FACTURAValue;
end;
{ TFacturasProveedorBusinessProcessorRules }
@@ -375,6 +426,18 @@ type
function GetOldFACTURA_WEBIsNull: Boolean; virtual;
procedure SetFACTURA_WEBValue(const aValue: SmallInt); virtual;
procedure SetFACTURA_WEBIsNull(const aValue: Boolean); virtual;
+ function GetID_TIPO_FACTURAValue: Integer; virtual;
+ function GetID_TIPO_FACTURAIsNull: Boolean; virtual;
+ function GetOldID_TIPO_FACTURAValue: Integer; virtual;
+ function GetOldID_TIPO_FACTURAIsNull: Boolean; virtual;
+ procedure SetID_TIPO_FACTURAValue(const aValue: Integer); virtual;
+ procedure SetID_TIPO_FACTURAIsNull(const aValue: Boolean); virtual;
+ function GetGASTO_FACTURAValue: String; virtual;
+ function GetGASTO_FACTURAIsNull: Boolean; virtual;
+ function GetOldGASTO_FACTURAValue: String; virtual;
+ function GetOldGASTO_FACTURAIsNull: Boolean; virtual;
+ procedure SetGASTO_FACTURAValue(const aValue: String); virtual;
+ procedure SetGASTO_FACTURAIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@@ -533,6 +596,14 @@ type
property FACTURA_WEBIsNull : Boolean read GetFACTURA_WEBIsNull write SetFACTURA_WEBIsNull;
property OldFACTURA_WEB : SmallInt read GetOldFACTURA_WEBValue;
property OldFACTURA_WEBIsNull : Boolean read GetOldFACTURA_WEBIsNull;
+ property ID_TIPO_FACTURA : Integer read GetID_TIPO_FACTURAValue write SetID_TIPO_FACTURAValue;
+ property ID_TIPO_FACTURAIsNull : Boolean read GetID_TIPO_FACTURAIsNull write SetID_TIPO_FACTURAIsNull;
+ property OldID_TIPO_FACTURA : Integer read GetOldID_TIPO_FACTURAValue;
+ property OldID_TIPO_FACTURAIsNull : Boolean read GetOldID_TIPO_FACTURAIsNull;
+ property GASTO_FACTURA : String read GetGASTO_FACTURAValue write SetGASTO_FACTURAValue;
+ property GASTO_FACTURAIsNull : Boolean read GetGASTO_FACTURAIsNull write SetGASTO_FACTURAIsNull;
+ property OldGASTO_FACTURA : String read GetOldGASTO_FACTURAValue;
+ property OldGASTO_FACTURAIsNull : Boolean read GetOldGASTO_FACTURAIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@@ -542,7 +613,7 @@ type
{ IFacturasProveedor_DetallesDelta }
IFacturasProveedor_DetallesDelta = interface(IFacturasProveedor_Detalles)
- ['{A8B404BC-49F6-4337-B720-7E89EE78B376}']
+ ['{8C06187D-4437-4059-B72D-81D07D5EA1B2}']
{ Property getters and setters }
function GetOldID_TIPO_IVAValue : Integer;
function GetOldIVAValue : Float;
@@ -792,7 +863,7 @@ type
{ IFacturasProveedor_PedidosDelta }
IFacturasProveedor_PedidosDelta = interface(IFacturasProveedor_Pedidos)
- ['{27E068A8-51CD-4289-AB94-31B7C5120DC4}']
+ ['{09AF7634-49D5-466B-A428-D969048F0E0E}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer;
@@ -944,6 +1015,80 @@ begin
end;
+{ TTiposFacturaProveedorBusinessProcessorRules }
+constructor TTiposFacturaProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
+begin
+ inherited;
+end;
+
+destructor TTiposFacturaProveedorBusinessProcessorRules.Destroy;
+begin
+ inherited;
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetIDValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorID];
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetIDIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorID]);
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetOldIDValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposFacturaProveedorID];
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetOldIDIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposFacturaProveedorID]);
+end;
+
+procedure TTiposFacturaProveedorBusinessProcessorRules.SetIDValue(const aValue: Integer);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorID] := aValue;
+end;
+
+procedure TTiposFacturaProveedorBusinessProcessorRules.SetIDIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorID] := Null;
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetDESCRIPCIONValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorDESCRIPCION];
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorDESCRIPCION]);
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetOldDESCRIPCIONValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposFacturaProveedorDESCRIPCION];
+end;
+
+function TTiposFacturaProveedorBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposFacturaProveedorDESCRIPCION]);
+end;
+
+procedure TTiposFacturaProveedorBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorDESCRIPCION] := aValue;
+end;
+
+procedure TTiposFacturaProveedorBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_TiposFacturaProveedorDESCRIPCION] := Null;
+end;
+
+
{ TFacturasProveedorBusinessProcessorRules }
constructor TFacturasProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
var
@@ -2172,6 +2317,68 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorFACTURA_WEB] := Null;
end;
+function TFacturasProveedorBusinessProcessorRules.GetID_TIPO_FACTURAValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorID_TIPO_FACTURA];
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetID_TIPO_FACTURAIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorID_TIPO_FACTURA]);
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetOldID_TIPO_FACTURAValue: Integer;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedorID_TIPO_FACTURA];
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetOldID_TIPO_FACTURAIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedorID_TIPO_FACTURA]);
+end;
+
+procedure TFacturasProveedorBusinessProcessorRules.SetID_TIPO_FACTURAValue(const aValue: Integer);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorID_TIPO_FACTURA] := aValue;
+end;
+
+procedure TFacturasProveedorBusinessProcessorRules.SetID_TIPO_FACTURAIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorID_TIPO_FACTURA] := Null;
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetGASTO_FACTURAValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorGASTO_FACTURA];
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetGASTO_FACTURAIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorGASTO_FACTURA]);
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetOldGASTO_FACTURAValue: String;
+begin
+ result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedorGASTO_FACTURA];
+end;
+
+function TFacturasProveedorBusinessProcessorRules.GetOldGASTO_FACTURAIsNull: Boolean;
+begin
+ result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedorGASTO_FACTURA]);
+end;
+
+procedure TFacturasProveedorBusinessProcessorRules.SetGASTO_FACTURAValue(const aValue: String);
+begin
+ BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorGASTO_FACTURA] := aValue;
+end;
+
+procedure TFacturasProveedorBusinessProcessorRules.SetGASTO_FACTURAIsNull(const aValue: Boolean);
+begin
+ if aValue then
+ BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorGASTO_FACTURA] := Null;
+end;
+
{ TFacturasProveedor_DetallesBusinessProcessorRules }
constructor TFacturasProveedor_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@@ -3005,6 +3212,7 @@ end;
initialization
RegisterBusinessProcessorRules(RID_ListaAnosFacturasDelta, TListaAnosFacturasBusinessProcessorRules);
+ RegisterBusinessProcessorRules(RID_TiposFacturaProveedorDelta, TTiposFacturaProveedorBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_FacturasProveedorDelta, TFacturasProveedorBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_FacturasProveedor_DetallesDelta, TFacturasProveedor_DetallesBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_FacturasProveedor_PedidosDelta, TFacturasProveedor_PedidosBusinessProcessorRules);
diff --git a/Source/Modulos/Facturas de proveedor/Model/uBizFacturasProveedor.pas b/Source/Modulos/Facturas de proveedor/Model/uBizFacturasProveedor.pas
index ac2bf01a..5ff0b3ff 100644
--- a/Source/Modulos/Facturas de proveedor/Model/uBizFacturasProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Model/uBizFacturasProveedor.pas
@@ -9,6 +9,7 @@ uses
const
BIZ_CLIENT_FACTURA_PROVEEDOR = 'Client.FacturaProveedor';
+ BIZ_CLIENT_TIPOS_FACTURA_PROVEEDOR = 'Client.TiposFacturaProveedor';
CTE_TIPO_ABONO = 'A';
CTE_TIPO_FACTURA = 'F';
@@ -18,6 +19,10 @@ const
CTE_PAGADA = 'PAGADA';
type
+ IBizTiposFacturaProveedor = interface(ITiposFacturaProveedor)
+ ['{40F9AF09-459A-4F89-ABD1-16FB6659FA61}']
+ end;
+
IBizFacturaProveedor = interface(IFacturasProveedor)
['{4BC473E5-3B82-4C1A-8E52-2A227490F94E}']
@@ -43,6 +48,8 @@ type
procedure CalcularImporteTotal;
end;
+ TBizTiposFacturaProveedor = class(TTiposFacturaProveedorDataTableRules, IBizTiposFacturaProveedor)
+ end;
TBizFacturaProveedor = class(TFacturasProveedorDataTableRules, IBizFacturaProveedor, ISeleccionable)
private
@@ -383,6 +390,7 @@ end;
initialization
RegisterDataTableRules(BIZ_CLIENT_FACTURA_PROVEEDOR, TBizFacturaProveedor);
+ RegisterDataTableRules(BIZ_CLIENT_TIPOS_FACTURA_PROVEEDOR, TBizTiposFacturaProveedor);
finalization
diff --git a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.dfm b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.dfm
index 565d0902..cb1bbbf9 100644
--- a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.dfm
+++ b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.dfm
@@ -2,8 +2,8 @@ object RptFacturasProveedor: TRptFacturasProveedor
OldCreateOrder = True
OnCreate = DataModuleCreate
OnDestroy = DataModuleDestroy
- Height = 647
- Width = 933
+ Height = 726
+ Width = 1154
object schReport: TDASchema
ConnectionManager = dmServer.ConnectionManager
Datasets = <
@@ -451,10 +451,11 @@ object RptFacturasProveedor: TRptFacturasProveedor
'E_IMPONIBLE, FAC.IMPORTE_IVA, FAC.IMPORTE_TOTAL AS IMPORTE_TOTAL' +
'_FACTURA, REC.IMPORTE_TOTAL,'#10'FAC.REFERENCIA_PROVEEDOR,'#10'case'#10'when' +
' strlen(FAC.DATOS_BANCARIOS) = 0 then '#39'Sin cuenta bancaria'#39#10'else' +
- ' FAC.DATOS_BANCARIOS'#10'end as DATOS_BANCARIOS'#10#10#10'from V_FACTURAS_PR' +
- 'OVEEDOR FAC LEFT OUTER JOIN V_REC_FAC_PRO_IMPORTES REC ON (REC.I' +
- 'D_FACTURA = FAC.ID)'#10#10'where {where}'#10#10'order by ANO, MES, FAC.FECHA' +
- '_VENCIMIENTO, DATOS_BANCARIOS, FAC.NOMBRE'#10#10
+ ' FAC.DATOS_BANCARIOS'#10'end as DATOS_BANCARIOS,'#10'FAC.ID_TIPO_FACTURA' +
+ ', FAC.GASTO_FACTURA'#10#10#10'from V_FACTURAS_PROVEEDOR FAC LEFT OUTER J' +
+ 'OIN V_REC_FAC_PRO_IMPORTES REC ON (REC.ID_FACTURA = FAC.ID)'#10#10'whe' +
+ 're {where}'#10#10'order by ANO, MES, FAC.FECHA_VENCIMIENTO, DATOS_BANC' +
+ 'ARIOS, FAC.NOMBRE'#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -532,6 +533,14 @@ object RptFacturasProveedor: TRptFacturasProveedor
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
+ end
+ item
+ DatasetField = 'GASTO_FACTURA'
+ TableField = 'GASTO_FACTURA'
+ end
+ item
+ DatasetField = 'ID_TIPO_FACTURA'
+ TableField = 'ID_TIPO_FACTURA'
end>
end>
Name = 'InformeListadoFacturasPendientes'
@@ -614,6 +623,15 @@ object RptFacturasProveedor: TRptFacturasProveedor
Name = 'DATOS_BANCARIOS'
DataType = datString
Size = 255
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
end
item
@@ -645,8 +663,9 @@ object RptFacturasProveedor: TRptFacturasProveedor
'fecha_factura) = 12 then '#39'DICIEMBRE - '#39' || extract (year from fe' +
'cha_factura)'#10'end as TITULO,'#10'REFERENCIA, ID_PROVEEDOR, NOMBRE, S' +
'ITUACION, NIF_CIF, FECHA_FACTURA, fecha_vencimiento, BASE_IMPONI' +
- 'BLE, IMPORTE_IVA, IMPORTE_TOTAL'#10#10'from V_facturas_proveedor'#10'where' +
- ' {where}'#10'order by ANO, MES, fecha_factura, NOMBRE'#10#10
+ 'BLE, IMPORTE_IVA, IMPORTE_TOTAL,'#10'ID_TIPO_FACTURA, GASTO_FACTURA'#10 +
+ #10'from V_facturas_proveedor'#10'where {where}'#10'order by ANO, MES, fech' +
+ 'a_factura, NOMBRE'#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -707,6 +726,14 @@ object RptFacturasProveedor: TRptFacturasProveedor
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'ID_TIPO_FACTURA'
+ TableField = 'ID_TIPO_FACTURA'
+ end
+ item
+ DatasetField = 'GASTO_FACTURA'
+ TableField = 'GASTO_FACTURA'
end>
end>
Name = 'InformeListadoFacturas'
@@ -771,6 +798,15 @@ object RptFacturasProveedor: TRptFacturasProveedor
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
end
item
@@ -805,11 +841,11 @@ object RptFacturasProveedor: TRptFacturasProveedor
'rom FAC.FECHA_VENCIMIENTO) = 12 then '#39'DICIEMBRE - '#39' || extract (' +
'year from FAC.FECHA_VENCIMIENTO)'#10'end as TITULO,'#10'case'#10'when strlen' +
'(FAC.DATOS_BANCARIOS) = 0 then '#39'Sin cuenta bancaria'#39#10'else FAC.DA' +
- 'TOS_BANCARIOS'#10'end as DATOS_BANCARIOS,'#10'sum(FAC.IMPORTE_TOTAL) as ' +
- 'IMPORTE_TOTAL,'#10'sum(REC.IMPORTE_TOTAL) as IMPORTE_RECIBOS'#10#10'from V' +
- '_FACTURAS_PROVEEDOR FAC LEFT OUTER JOIN V_REC_FAC_PRO_IMPORTES R' +
- 'EC ON (REC.ID_FACTURA = FAC.ID)'#10#10'where {where}'#10#10'group by 1,2,3,4' +
- ',5'#10'order by 1,2,3,4,5'#10#10#10
+ 'TOS_BANCARIOS'#10'end as DATOS_BANCARIOS,'#10#10#10'sum(FAC.IMPORTE_TOTAL) a' +
+ 's IMPORTE_TOTAL,'#10'sum(REC.IMPORTE_TOTAL) as IMPORTE_RECIBOS'#10#10'from' +
+ ' V_FACTURAS_PROVEEDOR FAC LEFT OUTER JOIN V_REC_FAC_PRO_IMPORTES' +
+ ' REC ON (REC.ID_FACTURA = FAC.ID)'#10#10'where {where}'#10#10'group by 1,2,3' +
+ ',4,5'#10'order by 1,2,3,4,5'#10#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -1009,7 +1045,7 @@ object RptFacturasProveedor: TRptFacturasProveedor
'_INF_FAC_PROVEEDOR comp2'#10'where ID_EMPRESA = :ID_EMPRESA2'#10'and (AN' +
'O = :ANO2)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) periodo2 on (VA' +
'LOR = periodo2.NFILA)'#10#10'where periodo= '#39'MENSUAL'#39#10'order by valor a' +
- 'sc'#10#10#10
+ 'sc'#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -1322,11 +1358,12 @@ object RptFacturasProveedor: TRptFacturasProveedor
SQL =
'select P.ANO, C.REFERENCIA, COALESCE(C.NOMBRE, P.NOMBRE) as NOMB' +
'RE, p.Importe_TOTAL_ANO,'#10'COUNT(P.FECHA_FACTURA) as NUMFAC, SUM(P' +
- '.IMPORTE_TOTAL) as IMPORTE_TOTAL,'#10'((SUM(P.IMPORTE_TOTAL)*100)/p.' +
- 'Importe_TOTAL_ANO) as PORCENTAJE'#10#10'from V_INF_FAC_PROVEEDOR P'#10'lef' +
- 't join CONTACTOS C on P.ID_PROVEEDOR = C.ID'#10#10'where p.ID_EMPRESA ' +
- '= :ID_EMPRESA'#10'and P.ANO = :ANO'#10'group by 1,2,3,4'#10'order by 1,6 des' +
- 'c'#10'rows 1 to :NTOP'#10#10#10
+ '.IMPORTE_TOTAL) as IMPORTE_TOTAL,'#10'case when p.Importe_TOTAL_ANO ' +
+ '= 0 then 0'#10'else ((SUM(P.IMPORTE_TOTAL)*100)/p.Importe_TOTAL_ANO)' +
+ #10'end as PORCENTAJE'#10#10'from V_INF_FAC_PROVEEDOR P'#10'left join CONTACT' +
+ 'OS C on P.ID_PROVEEDOR = C.ID'#10#10'where p.ID_EMPRESA = :ID_EMPRESA'#10 +
+ 'and P.ANO = :ANO'#10'group by 1,2,3,4'#10'order by 1,6 desc'#10'rows 1 to :N' +
+ 'TOP'#10#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -1399,7 +1436,6 @@ object RptFacturasProveedor: TRptFacturasProveedor
Params = <
item
Name = 'ID_EMPRESA'
- DataType = datInteger
Value = ''
end
item
@@ -1489,6 +1525,547 @@ object RptFacturasProveedor: TRptFacturasProveedor
Name = 'PORCENTAJE'
DataType = datCurrency
end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ SQL =
+ 'select VALOR, DESCRIPCION, periodo1.ANO as Ano1, periodo1.IMPORT' +
+ 'E_TOTAL, periodo2.ANO as Ano2, periodo2.IMPORTE_TOTAL,'#10#10'(periodo' +
+ '1.IMPORTE_TOTAL - periodo2.IMPORTE_TOTAL) as Diferencia,'#10'/*SOLO ' +
+ 'COMPARAREMOS CUANDO EL SEGUNDO A'#209'O SEA DIFERENTE DE 0, comparati' +
+ 'va de A'#241'o1 respecto A'#241'o2*/'#10'case'#10'when (periodo1.IMPORTE_TOTAL = 0' +
+ ') then (NULL)'#10'else (((periodo1.IMPORTE_TOTAL - periodo2.IMPORTE_' +
+ 'TOTAL) * 100) / periodo2.IMPORTE_TOTAL)'#10'end as Porcentaje'#10#10'FROM'#10 +
+ 'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, MES ' +
+ 'as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_' +
+ 'FAC_PROVEEDOR comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (ANO = :' +
+ 'ANO1)'#10'and (ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'orde' +
+ 'r by 1 desc,2 asc) periodo1 on (VALOR = periodo1.NFILA)'#10#10'left jo' +
+ 'in'#10'(select comp2.ID_EMPRESA, comp2.ANO, MES as NFILA, SUM(comp2.' +
+ 'BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROVEEDOR comp2'#10 +
+ 'where ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'and (ID_TIPO_F' +
+ 'ACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 desc,2 asc) p' +
+ 'eriodo2 on (VALOR = periodo2.NFILA)'#10#10'where periodo= '#39'MENSUAL'#39#10'or' +
+ 'der by valor asc'#10#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL1'
+ TableField = 'IMPORTE_TOTAL1'
+ end
+ item
+ DatasetField = 'DIFERENCIA'
+ TableField = 'DIFERENCIA'
+ end
+ item
+ DatasetField = 'PORCENTAJE'
+ TableField = 'PORCENTAJE'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end>
+ end>
+ Name = 'InformeListadoFacturasGrafCompMensualTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ SQL =
+ 'select VALOR, DESCRIPCION, periodo1.ANO as Ano1, periodo1.IMPORT' +
+ 'E_TOTAL, periodo2.ANO as Ano2, periodo2.IMPORTE_TOTAL,'#10#10'(periodo' +
+ '1.IMPORTE_TOTAL - periodo2.IMPORTE_TOTAL) as Diferencia,'#10'/*SOLO ' +
+ 'COMPARAREMOS CUANDO EL SEGUNDO A'#209'O SEA DIFERENTE DE 0, comparati' +
+ 'va de A'#241'o1 respecto A'#241'o2*/'#10'case'#10'when (periodo1.IMPORTE_TOTAL = 0' +
+ ') then (NULL)'#10'else (((periodo1.IMPORTE_TOTAL - periodo2.IMPORTE_' +
+ 'TOTAL) * 100) / periodo2.IMPORTE_TOTAL)'#10'end as Porcentaje'#10#10'FROM'#10 +
+ 'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, SEME' +
+ 'STRE as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V' +
+ '_INF_FAC_PROVEEDOR comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (AN' +
+ 'O = :ANO1)'#10'and (ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3' +
+ #10'order by 1 desc,2 asc) periodo1 on (VALOR = periodo1.NFILA)'#10#10'le' +
+ 'ft join'#10'(select comp2.ID_EMPRESA, comp2.ANO, SEMESTRE as NFILA, ' +
+ 'SUM(comp2.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROVEE' +
+ 'DOR comp2'#10'where ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'and ' +
+ '(ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 des' +
+ 'c,2 asc) periodo2 on (VALOR = periodo2.NFILA)'#10#10'where periodo= '#39'S' +
+ 'EMESTRAL'#39#10'order by valor asc'#10#10#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL1'
+ TableField = 'IMPORTE_TOTAL1'
+ end
+ item
+ DatasetField = 'DIFERENCIA'
+ TableField = 'DIFERENCIA'
+ end
+ item
+ DatasetField = 'PORCENTAJE'
+ TableField = 'PORCENTAJE'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end>
+ end>
+ Name = 'InformeListadoFacturasGrafCompSemestralTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ SQL =
+ 'select VALOR, DESCRIPCION, periodo1.ANO as Ano1, periodo1.IMPORT' +
+ 'E_TOTAL, periodo2.ANO as Ano2, periodo2.IMPORTE_TOTAL,'#10#10'(periodo' +
+ '1.IMPORTE_TOTAL - periodo2.IMPORTE_TOTAL) as Diferencia,'#10'/*SOLO ' +
+ 'COMPARAREMOS CUANDO EL SEGUNDO A'#209'O SEA DIFERENTE DE 0, comparati' +
+ 'va de A'#241'o1 respecto A'#241'o2*/'#10'case'#10'when (periodo1.IMPORTE_TOTAL = 0' +
+ ') then (NULL)'#10'else (((periodo1.IMPORTE_TOTAL - periodo2.IMPORTE_' +
+ 'TOTAL) * 100) / periodo2.IMPORTE_TOTAL)'#10'end as Porcentaje'#10#10'FROM'#10 +
+ 'periodos_aux'#10'left join'#10'(select comp1.ID_EMPRESA, comp1.ANO, TRIM' +
+ 'ESTRE as NFILA, SUM(comp1.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from ' +
+ 'V_INF_FAC_PROVEEDOR comp1'#10'where ID_EMPRESA = :ID_EMPRESA1'#10'and (A' +
+ 'NO = :ANO1)'#10'and (ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,' +
+ '3'#10'order by 1 desc,2 asc) periodo1 on (VALOR = periodo1.NFILA)'#10#10'l' +
+ 'eft join'#10'(select comp2.ID_EMPRESA, comp2.ANO, TRIMESTRE as NFILA' +
+ ', SUM(comp2.BASE_IMPONIBLE) as IMPORTE_TOTAL'#10'from V_INF_FAC_PROV' +
+ 'EEDOR comp2'#10'where ID_EMPRESA = :ID_EMPRESA2'#10'and (ANO = :ANO2)'#10'an' +
+ 'd (ID_TIPO_FACTURA = :ID_TIPO_GASTO)'#10'group by 1,2,3'#10'order by 1 d' +
+ 'esc,2 asc) periodo2 on (VALOR = periodo2.NFILA)'#10#10'where periodo= ' +
+ #39'TRIMESTRAL'#39#10'order by valor asc'#10#10#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'VALOR'
+ TableField = 'VALOR'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL1'
+ TableField = 'IMPORTE_TOTAL1'
+ end
+ item
+ DatasetField = 'DIFERENCIA'
+ TableField = 'DIFERENCIA'
+ end
+ item
+ DatasetField = 'PORCENTAJE'
+ TableField = 'PORCENTAJE'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end
+ item
+ DatasetField = 'ANO1'
+ TableField = 'ANO1'
+ end
+ item
+ DatasetField = 'ANO2'
+ TableField = 'ANO2'
+ end>
+ end>
+ Name = 'InformeListadoFacturasGrafCompTrimestralTipoGasto'
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA'
+ Value = ''
+ end
+ item
+ Name = 'ANO'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'NTOP'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ SQL =
+ 'select P.ANO, C.REFERENCIA, COALESCE(C.NOMBRE, P.NOMBRE) as NOMB' +
+ 'RE,'#10'SUM(P.IMPORTE_DESCUENTO) as IMPORTE_DESCUENTO, SUM(P.IMPORTE' +
+ '_TOTAL) as IMPORTE_TOTAL,'#10'(SUM(P.IMPORTE_TOTAL) - SUM(P.IMPORTE_' +
+ 'DESCUENTO)) as IMPORTE_COBRADO,'#10'case when SUM(P.IMPORTE_TOTAL) =' +
+ ' 0 then 0'#10'else ((SUM(P.IMPORTE_DESCUENTO) * 100) / SUM(P.IMPORTE' +
+ '_TOTAL)) end as PORCENTAJE'#10#10'from V_INF_FAC_PROVEEDOR P'#10'left join' +
+ ' CONTACTOS C on P.ID_PROVEEDOR = C.ID'#10#10'where p.ID_EMPRESA = :ID_' +
+ 'EMPRESA'#10'and P.ANO = :ANO'#10'and ID_TIPO_FACTURA = :ID_TIPO_GASTO'#10'gr' +
+ 'oup by 1,2,3'#10'order by 1,5 desc'#10'rows 1 to :NTOP'#10#10#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'ANO'
+ TableField = ''
+ SQLOrigin = 'ANO'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'REFERENCIA'
+ TableField = 'REFERENCIA'
+ end
+ item
+ DatasetField = 'NOMBRE'
+ TableField = 'NOMBRE'
+ end
+ item
+ DatasetField = 'PORCENTAJE'
+ TableField = ''
+ SQLOrigin = 'PORCENTAJE'
+ end
+ item
+ DatasetField = 'IMPORTE_DESCUENTO'
+ TableField = 'IMPORTE_DESCUENTO'
+ end
+ item
+ DatasetField = 'IMPORTE_COBRADO'
+ TableField = ''
+ SQLOrigin = 'IMPORTE_COBRADO'
+ end>
+ end>
+ Name = 'InformeListadoProveedoresMayorDescuentoResumenTipoGasto'
+ Fields = <
+ item
+ Name = 'ANO'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'IMPORTE_DESCUENTO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'IMPORTE_COBRADO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_EMPRESA'
+ Value = ''
+ end
+ item
+ Name = 'ANO'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'NTOP'
+ Value = ''
+ end>
+ Statements = <
+ item
+ Connection = 'IBX'
+ SQL =
+ 'select P.ANO, C.REFERENCIA, COALESCE(C.NOMBRE, P.NOMBRE) as NOMB' +
+ 'RE, p.Importe_TOTAL_ANO,'#10'COUNT(P.FECHA_FACTURA) as NUMFAC, SUM(P' +
+ '.IMPORTE_TOTAL) as IMPORTE_TOTAL,'#10'case when p.Importe_TOTAL_ANO ' +
+ '= 0 then 0'#10'else ((SUM(P.IMPORTE_TOTAL)*100)/p.Importe_TOTAL_ANO)' +
+ #10'end as PORCENTAJE'#10#10'from V_INF_FAC_PROVEEDOR P'#10'left join CONTACT' +
+ 'OS C on P.ID_PROVEEDOR = C.ID'#10#10'where p.ID_EMPRESA = :ID_EMPRESA'#10 +
+ 'and P.ANO = :ANO'#10'and P.ID_TIPO_FACTURA = :ID_TIPO_GASTO'#10'group by' +
+ ' 1,2,3,4'#10'order by 1,6 desc'#10'rows 1 to :NTOP'#10#10#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'ANO'
+ TableField = ''
+ SQLOrigin = 'ANO'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ TableField = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'REFERENCIA'
+ TableField = 'REFERENCIA'
+ end
+ item
+ DatasetField = 'NOMBRE'
+ TableField = 'NOMBRE'
+ end
+ item
+ DatasetField = 'NUMFAC'
+ TableField = ''
+ SQLOrigin = 'NUMFAC'
+ end
+ item
+ DatasetField = 'PORCENTAJE'
+ TableField = ''
+ SQLOrigin = 'PORCENTAJE'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL_ANO'
+ TableField = ''
+ SQLOrigin = 'IMPORTE_TOTAL_ANO'
+ end>
+ end>
+ Name = 'InformeListadoProveedoresMayorFacturacionResumenTipoGasto'
+ Fields = <
+ item
+ Name = 'ANO'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'IMPORTE_TOTAL_ANO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'NUMFAC'
+ DataType = datInteger
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
end>
JoinDataTables = <>
UnionDataTables = <>
@@ -1731,63 +2308,51 @@ object RptFacturasProveedor: TRptFacturasProveedor
PrintOptions.Printer = 'Por defecto'
PrintOptions.PrintOnSheet = 0
ReportOptions.CreateDate = 37800.807714351900000000
- ReportOptions.LastChange = 42236.476664687500000000
+ ReportOptions.LastChange = 43900.545331180550000000
ScriptLanguage = 'PascalScript'
ScriptText.Strings = (
- 'procedure mContinuaOnBeforePrint(Sender: TfrxComponent);'
+ 'procedure Chart1OnBeforePrint(Sender: TfrxComponent);'
'begin'
- ' if Engine.FinalPass then'
- ' begin'
- ' if ( = ) then'
- ' begin '
- ' mContinua.Visible := False;'
- ' end '
- ' else'
- ' begin '
- ' mContinua.Visible := True;'
- ' end '
- ' end; '
- 'end;'
- ''
- 'procedure Memo11OnBeforePrint(Sender: TfrxComponent);'
- 'var'
+ ' if ( <> 0) then'
+ ' begin '
- ' ACadena : String; ' +
- ' '
- 'begin'
-
- ' ACadena := ; '
- ' if Pos('#39'N'#186' de cuenta: '#39', ACadena) > 0 then'
- ' begin'
- ' Delete(ACadena, 1, 14);'
-
- ' Memo11.Lines.Text := '#39' '#39' + ACadena; ' +
- ' '
+ ' TLineSeries(Chart1.Series[0]).Title := '#39'Total facturado '#39' +' +
+ ' VarToStr();'
' end;'
+ ' '
+ ' if ( > 0) then'
+ ' begin '
+
+ ' TLineSeries(Chart1.Series[1]).Title := '#39'Total facturado '#39' +' +
+ ' VarToStr();'
+ ' end'
+ ' else'
+ ' begin '
+ ' Chart1.Series[1].Active := False;'
+ ' end; '
'end;'
''
- 'procedure Memo10OnBeforePrint(Sender: TfrxComponent);'
+ 'procedure Memo16OnBeforePrint(Sender: TfrxComponent);'
'var'
-
- ' ACadena : String; ' +
- ' '
+ ' Valor:Double; '
'begin'
- ' ACadena := ; '
- ' if Pos('#39'N'#186' de cuenta: '#39', ACadena) > 0 then'
- ' begin'
- ' Delete(ACadena, 1, 14);'
+ ' Valor := SUM() * 100; '
- ' Memo10.Lines.Text := '#39' '#39' + ACadena; ' +
- ' '
- ' end;'
+ ' if (SUM()' +
+ ' = 0) then'
+ ' Valor := 100 - Valor '
+ ' else'
+
+ ' Valor := 100 - (Valor/SUM()); '
+ ''
+ ' memo16.lines.add(FormatFloat('#39'#,##0.00 %'#39',Valor));'
'end;'
''
'begin'
- ''
- 'end.')
+ 'end. ')
ShowProgress = False
StoreInDFM = False
OnStartReport = 'frxReportOnStartReport'
@@ -1879,6 +2444,15 @@ object RptFacturasProveedor: TRptFacturasProveedor
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
Params = <>
LogChanges = False
@@ -1986,6 +2560,15 @@ object RptFacturasProveedor: TRptFacturasProveedor
Name = 'DATOS_BANCARIOS'
DataType = datString
Size = 255
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
Params = <>
LogChanges = False
@@ -2088,10 +2671,18 @@ object RptFacturasProveedor: TRptFacturasProveedor
DataType = datString
Size = 20
end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
item
Name = 'IMPORTE_TOTAL1'
DataType = datCurrency
@@ -2254,14 +2845,12 @@ object RptFacturasProveedor: TRptFacturasProveedor
CloseDataSource = False
DataSource = DADSInformeListadoProveedoresMayorFacturacionResumen
BCDToCurrency = False
- Left = 312
- Top = 432
+ Left = 584
+ Top = 408
end
object DADSInformeListadoProveedoresMayorFacturacionResumen: TDADataSource
- DataSet = tbl_InformeListadoProveedoresMayorFacturacionResumen.Dataset
- DataTable = tbl_InformeListadoProveedoresMayorFacturacionResumen
- Left = 312
- Top = 488
+ Left = 576
+ Top = 464
end
object tbl_InformeListadoProveedoresMayorFacturacionResumen: TDAMemDataTable
RemoteUpdatesOptions = []
@@ -2310,7 +2899,6 @@ object RptFacturasProveedor: TRptFacturasProveedor
Name = 'NTOP'
Value = '5'
end>
- MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
@@ -2318,22 +2906,20 @@ object RptFacturasProveedor: TRptFacturasProveedor
LocalDataStreamer = Bin2DataStreamer
LogicalName = 'InformeListadoProveedoresMayorFacturacionResumen'
IndexDefs = <>
- Left = 312
- Top = 544
+ Left = 584
+ Top = 528
end
object frxDBInformeListadoProveedoresMayorDescuentoResumen: TfrxDBDataset
UserName = 'frxDBInformeListadoProveedoresMayorDescuentoResumen'
CloseDataSource = False
DataSource = DADSInformeListadoProveedoresMayorDescuentoResumen
BCDToCurrency = False
- Left = 616
- Top = 432
+ Left = 800
+ Top = 408
end
object DADSInformeListadoProveedoresMayorDescuentoResumen: TDADataSource
- DataSet = tbl_InformeListadoProveedoresMayorDescuentoResumen.Dataset
- DataTable = tbl_InformeListadoProveedoresMayorDescuentoResumen
- Left = 616
- Top = 488
+ Left = 800
+ Top = 464
end
object tbl_InformeListadoProveedoresMayorDescuentoResumen: TDAMemDataTable
RemoteUpdatesOptions = []
@@ -2371,7 +2957,6 @@ object RptFacturasProveedor: TRptFacturasProveedor
Params = <
item
Name = 'ID_EMPRESA'
- DataType = datInteger
Value = ''
end
item
@@ -2382,7 +2967,6 @@ object RptFacturasProveedor: TRptFacturasProveedor
Name = 'NTOP'
Value = ''
end>
- MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
@@ -2390,7 +2974,328 @@ object RptFacturasProveedor: TRptFacturasProveedor
LocalDataStreamer = Bin2DataStreamer
LogicalName = 'InformeListadoProveedoresMayorDescuentoResumen'
IndexDefs = <>
- Left = 616
- Top = 544
+ Left = 800
+ Top = 528
+ end
+ object InformeListadoFacturasGrafCompMensualTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoFacturasGrafCompMensualTipoGasto'
+ IndexDefs = <>
+ Left = 304
+ Top = 392
+ end
+ object tbl_InformeListadoFacturasGrafCompTrimestralTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoFacturasGrafCompTrimestralTipoGasto'
+ IndexDefs = <>
+ Left = 304
+ Top = 448
+ end
+ object tbl_InformeListadoFacturasGrafCompSemestralTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'VALOR'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 20
+ end
+ item
+ Name = 'ANO1'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'ANO2'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'IMPORTE_TOTAL1'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DIFERENCIA'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA1'
+ Value = ''
+ end
+ item
+ Name = 'ANO1'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'ID_EMPRESA2'
+ Value = ''
+ end
+ item
+ Name = 'ANO2'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoFacturasGrafCompSemestralTipoGasto'
+ IndexDefs = <>
+ Left = 304
+ Top = 504
+ end
+ object tbl_InformeListadoProveedoresMayorFacturacionResumenTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ANO'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'IMPORTE_TOTAL_ANO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'NUMFAC'
+ DataType = datInteger
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA'
+ Value = ''
+ end
+ item
+ Name = 'ANO'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'NTOP'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoProveedoresMayorFacturacionResumenTipoGasto'
+ IndexDefs = <>
+ Left = 584
+ Top = 584
+ end
+ object tbl_InformeListadoProveedoresMayorDescuentoResumenTipoGasto: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ANO'
+ DataType = datSmallInt
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'IMPORTE_DESCUENTO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'IMPORTE_COBRADO'
+ DataType = datCurrency
+ end
+ item
+ Name = 'PORCENTAJE'
+ DataType = datCurrency
+ end>
+ Params = <
+ item
+ Name = 'ID_EMPRESA'
+ Value = ''
+ end
+ item
+ Name = 'ANO'
+ Value = ''
+ end
+ item
+ Name = 'ID_TIPO_GASTO'
+ Value = ''
+ end
+ item
+ Name = 'NTOP'
+ Value = ''
+ end>
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = Bin2DataStreamer
+ LogicalName = 'InformeListadoProveedoresMayorDescuentoResumenTipoGasto'
+ IndexDefs = <>
+ Left = 800
+ Top = 600
end
end
diff --git a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas
index dbe91d4f..3738ed5f 100644
--- a/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas
+++ b/Source/Modulos/Facturas de proveedor/Reports/uRptFacturasProveedor_Server.pas
@@ -9,7 +9,9 @@ uses
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
uDAMemDataTable, FactuGES_Intf, frxExportPDF, uDABin2DataStreamer,
- uDARemoteDataAdapter;
+ uDARemoteDataAdapter,
+ {Used RODLs:} DataAbstract4_Intf
+ ;
type
TRptFacturasProveedor = class(TDataModule)
@@ -48,6 +50,11 @@ type
frxDBInformeListadoProveedoresMayorDescuentoResumen: TfrxDBDataset;
DADSInformeListadoProveedoresMayorDescuentoResumen: TDADataSource;
tbl_InformeListadoProveedoresMayorDescuentoResumen: TDAMemDataTable;
+ InformeListadoFacturasGrafCompMensualTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoFacturasGrafCompTrimestralTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoFacturasGrafCompSemestralTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoProveedoresMayorFacturacionResumenTipoGasto: TDAMemDataTable;
+ tbl_InformeListadoProveedoresMayorDescuentoResumenTipoGasto: TDAMemDataTable;
schReport: TDASchema;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
@@ -66,6 +73,9 @@ type
FImporteMinimo: Currency;
FDesglosado : Boolean;
FTopN: Integer;
+ FListaIDTiposdeGasto: TIntegerArray;
+ FListaNombreTiposGasto: StringArray;
+
procedure RecuperarNombresProveedores;
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
@@ -74,10 +84,16 @@ type
procedure IniciarParametrosInforme;
function _GenerarInforme(const TipoInforme: String): Binary;
public
- function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
+ function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant;
+ const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray;
+ const ListaNombreTiposGasto: StringArray): Binary;
+
+ function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
end;
implementation
@@ -86,7 +102,7 @@ implementation
uses
uSistemaFunc, StrUtils, uDataModuleServer, schFacturasProveedorClient_Intf,
- uROServer, DataAbstract4_Intf, srvGestorInformes_Impl;
+ uROServer, srvGestorInformes_Impl;
const
rptInformeIVA = 'InformeIVAProveedores.fr3';
@@ -120,10 +136,12 @@ end;
function TRptFacturasProveedor.GenerarInformeFacturasGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
- const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
+ const ListaIDProveedores: TIntegerArray; const TopN: Integer;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
+ ACadena: TStringList;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
@@ -141,17 +159,57 @@ begin
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
- //Preparamos la tabla correspondiente y la abrimos para el informe
- if (FIntervalo = CTE_MENSUAL) then
- PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompMensual)
- else if (FIntervalo = CTE_TRIMESTRAL) then
- PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestral)
- else
- PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestral);
+ if Assigned(FListaIDTiposdeGasto) then
+ FListaIDTiposdeGasto.Free;
+ FListaIDTiposdeGasto := ListaIDTiposGasto;
- //Se preparan las tablas del listado resumen del informe
- PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorFacturacionResumen);
- PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorDescuentoResumen);
+ if Assigned(FListaNombreTiposGasto) then
+ FreeAndNil(FListaNombreTiposGasto);
+ FListaNombreTiposGasto := ListaNombreTiposGasto;
+
+ //Cargamos las tablas con parametro ID_TIPO_GASTO
+ if (FListaIDTiposdeGasto.Count = 1) then
+ begin
+ //Preparamos la tabla correspondiente y la abrimos para el informe
+ if (FIntervalo = CTE_MENSUAL) then
+ PrepararTablaInformeGrafComp(InformeListadoFacturasGrafCompMensualTipoGasto)
+ else if (FIntervalo = CTE_TRIMESTRAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestralTipoGasto)
+ else
+ PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestralTipoGasto);
+
+
+ //Se preparan las tablas del listado resumen del informe
+ PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorFacturacionResumenTipoGasto);
+ PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorDescuentoResumenTipoGasto);
+ DADSInformeListadoProveedoresMayorFacturacionResumen.DataTable := tbl_InformeListadoProveedoresMayorFacturacionResumenTipoGasto;
+ DADSInformeListadoProveedoresMayorDescuentoResumen.DataTable := tbl_InformeListadoProveedoresMayorDescuentoResumenTipoGasto;
+
+ DASInformeListadoFacturasGrafComp.DataTable.ParamByName('ID_TIPO_GASTO').AsInteger := FListaIDTiposdeGasto.Items[0];
+ DADSInformeListadoProveedoresMayorFacturacionResumen.DataTable.ParamByName('ID_TIPO_GASTO').AsInteger := FListaIDTiposdeGasto.Items[0];
+ DADSInformeListadoProveedoresMayorDescuentoResumen.DataTable.ParamByName('ID_TIPO_GASTO').AsInteger := FListaIDTiposdeGasto.Items[0];
+ end
+ //El el caso de todas las facturas llamaremos a las tablas sin filtro
+ else
+ begin
+ //Preparamos la tabla correspondiente y la abrimos para el informe
+ if (FIntervalo = CTE_MENSUAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompMensual)
+ else if (FIntervalo = CTE_TRIMESTRAL) then
+ PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestral)
+ else
+ PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestral);
+
+ //Se preparan las tablas del listado resumen del informe
+ PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorFacturacionResumen);
+ PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorDescuentoResumen);
+ DADSInformeListadoProveedoresMayorFacturacionResumen.DataTable := tbl_InformeListadoProveedoresMayorFacturacionResumen;
+ DADSInformeListadoProveedoresMayorDescuentoResumen.DataTable := tbl_InformeListadoProveedoresMayorDescuentoResumen;
+ end;
+
+ DASInformeListadoFacturasGrafComp.DataTable.Active := True;
+ DADSInformeListadoProveedoresMayorFacturacionResumen.DataTable.Active := True;
+ DADSInformeListadoProveedoresMayorDescuentoResumen.DataTable.Active := True;
Result := Binary.Create;
@@ -162,21 +220,33 @@ begin
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
+ ACadena := TStringList.Create;
+ ACadena.Add('Todos los tipos de gasto');
+ if Assigned(FListaIDTiposdeGasto) and (FListaIDTiposdeGasto.Count > 0) then
+ begin
+ ACadena.Clear;
+ ACadena.Add('Solo tipo de gasto ' + FListaNombreTiposGasto.Items[0]);
+ end;
+
+ frxReport.Variables.Variables['TextoParametros']:= ACadena.Text;
frxReport.Variables.Variables['Ano1']:= Ano1;
frxReport.Variables.Variables['Ano2']:= Ano2;
+
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
+ FreeAndNil(ACadena);
end;
end;
function TRptFacturasProveedor.GenerarInformeIVA(const IdEmpresa: Integer;
const FechaInicio, FechaFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
@@ -201,6 +271,14 @@ begin
FListaIDProveedores := ListaIDProveedores;
+ if Assigned(FListaIDTiposdeGasto) then
+ FListaIDTiposdeGasto.Free;
+ FListaIDTiposdeGasto := ListaIDTiposGasto;
+
+ if Assigned(FListaNombreTiposGasto) then
+ FreeAndNil(FListaNombreTiposGasto);
+ FListaNombreTiposGasto := ListaNombreTiposGasto;
+
//Se van a prepara las tablas del informe
if tbl_InformeListadoFacturas.Active then
tbl_InformeListadoFacturas.Active := False;
@@ -243,7 +321,8 @@ function TRptFacturasProveedor.GenerarInformeListadoFacturas(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio, FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
@@ -267,6 +346,14 @@ begin
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
+ if Assigned(FListaIDTiposdeGasto) then
+ FListaIDTiposdeGasto.Free;
+ FListaIDTiposdeGasto := ListaIDTiposGasto;
+
+ if Assigned(FListaNombreTiposGasto) then
+ FreeAndNil(FListaNombreTiposGasto);
+ FListaNombreTiposGasto := ListaNombreTiposGasto;
+
//Se prepara la tabla del listado general del informe
if tbl_InformeListadoFacturas.Active then
tbl_InformeListadoFacturas.Active := False;
@@ -309,7 +396,9 @@ function TRptFacturasProveedor.GenerarInformeListadoFacturasPendientes(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio, FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray;
+ const ListaNombreTiposGasto: StringArray ): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
@@ -333,6 +422,13 @@ begin
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
+ if Assigned(FListaIDTiposdeGasto) then
+ FListaIDTiposdeGasto.Free;
+ FListaIDTiposdeGasto := ListaIDTiposGasto;
+
+ if Assigned(FListaNombreTiposGasto) then
+ FreeAndNil(FListaNombreTiposGasto);
+ FListaNombreTiposGasto := ListaNombreTiposGasto;
//Se prepara la tabla del listado general del informe
if tbl_InformeListadoFacturasPendientes.Active then
@@ -419,6 +515,14 @@ begin
ACadena := ACadena + ' (desglosados)'
end;
+ if Assigned(FListaIDTiposdeGasto) and (FListaIDTiposdeGasto.Count > 0) then
+ begin
+ ACadena := 'Solo tipo de gasto ' + FListaNombreTiposGasto.Items[0];
+ end
+ else begin
+ ACadena := 'Todos los tipos de gasto';
+ end;
+
ATextos.Add(ACadena);
ACadena := '';
@@ -495,6 +599,24 @@ begin
end;
end;
+ // Filtrar el informe por tipo de gasto
+ if Assigned(FListaIDTiposdeGasto) then
+ begin
+ with ATabla.DynamicWhere do
+ begin
+ for i := 0 to FListaIDTiposdeGasto.Count - 1 do
+ begin
+
+ // (ID_PROVEEDOR = ID)
+ Condicion := NewBinaryExpression(NewField('', fld_FacturasProveedorID_TIPO_FACTURA), NewConstant(FListaIDTiposdeGasto.Items[i], datInteger), dboEqual);
+ if IsEmpty then
+ Expression := Condicion
+ else
+ Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
+ end;
+ end;
+ end;
+
// Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then
begin
@@ -511,6 +633,11 @@ begin
end;
procedure TRptFacturasProveedor.PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
+var
+ AWhereStr : String;
+ Condicion: TDAWhereExpression;
+ i: Integer;
+
begin
if ATabla.Active then
ATabla.Active := False;
@@ -520,7 +647,6 @@ begin
ATabla.ParamByName('ID_EMPRESA2').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
- ATabla.Active := True;
end;
procedure TRptFacturasProveedor.PrepararTablaResumenInforme(ATabla: IDADataset);
@@ -561,6 +687,17 @@ begin
end;
end;
+ // Filtrar el informe por tipo gasto
+ if Assigned(FListaIDTiposdeGasto) then
+ begin
+ for i := 0 to FListaIDTiposdeGasto.Count - 1 do
+ begin
+ if Length(AWhereStr) > 0 then
+ AWhereStr := AWhereStr + 'AND';
+ AWhereStr := AWhereStr + ' (' + fld_FacturasProveedorID_TIPO_FACTURA + ' = ' + IntToStr(FListaIDTiposdeGasto.Items[i]) + ') ';
+ end;
+ end;
+
// Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then
begin
@@ -580,7 +717,6 @@ begin
ATabla.ParamByName('ID_EMPRESA').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO').AsVariant := FAno1;
ATabla.ParamByName('NTOP').AsInteger := FTopN;
- ATabla.Active := True;
end;
procedure TRptFacturasProveedor.RecuperarNombresProveedores;
diff --git a/Source/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm b/Source/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm
index aa05046f..19be45a6 100644
--- a/Source/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm
+++ b/Source/Modulos/Facturas de proveedor/Servidor/srvFacturasProveedor_Impl.dfm
@@ -40,6 +40,41 @@ object srvFacturasProveedor: TsrvFacturasProveedor
Size = 254
end>
end
+ item
+ Params = <>
+ Statements = <
+ item
+ Connection = 'IBX'
+ ConnectionType = 'Interbase'
+ Default = True
+ TargetTable = 'TIPOS_FACTURA_PROVEEDOR'
+ Name = 'IBX'
+ SQL =
+ 'SELECT'#10' ID, DESCRIPCION'#10' FROM'#10' TIPOS_FACTURA_PROVEEDOR'#10' ' +
+ 'WHERE {Where}'#10' order by 2'#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'ID'
+ TableField = 'ID'
+ end
+ item
+ DatasetField = 'DESCRIPCION'
+ TableField = 'DESCRIPCION'
+ end>
+ end>
+ Name = 'TiposFacturaProveedor'
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datInteger
+ end
+ item
+ Name = 'DESCRIPCION'
+ DataType = datString
+ Size = 2000
+ end>
+ end
item
Params = <>
Statements = <
@@ -203,6 +238,14 @@ object srvFacturasProveedor: TsrvFacturasProveedor
item
DatasetField = 'FACTURA_WEB'
TableField = 'FACTURA_WEB'
+ end
+ item
+ DatasetField = 'ID_TIPO_FACTURA'
+ TableField = 'ID_TIPO_FACTURA'
+ end
+ item
+ DatasetField = 'GASTO_FACTURA'
+ TableField = 'GASTO_FACTURA'
end>
end>
Name = 'FacturasProveedor'
@@ -414,6 +457,15 @@ object srvFacturasProveedor: TsrvFacturasProveedor
item
Name = 'FACTURA_WEB'
DataType = datSmallInt
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ end
+ item
+ Name = 'GASTO_FACTURA'
+ DataType = datString
+ Size = 2000
end>
end
item
@@ -927,6 +979,11 @@ object srvFacturasProveedor: TsrvFacturasProveedor
Name = 'FACTURA_WEB'
DataType = datSmallInt
Value = ''
+ end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ Value = ''
end>
Statements = <
item
@@ -942,16 +999,16 @@ object srvFacturasProveedor: TsrvFacturasProveedor
'A_ALTA, USUARIO, ID_FORMA_PAGO,'#10' RECARGO_EQUIVALENCIA, ID_TI' +
'PO_IVA, IMPORTE_NETO, IMPORTE_PORTE,'#10' DATOS_BANCARIOS, FECHA' +
'_VENCIMIENTO, FECHA_RECEPCION,'#10' RETENCION, IMPORTE_RETENCION' +
- ', ID_PEDIDO, FACTURA_WEB)'#10' VALUES'#10' (:ID, :ID_EMPRESA, :REFER' +
- 'ENCIA, :REFERENCIA_PROVEEDOR,'#10' :FECHA_FACTURA, :BASE_IMPONIB' +
- 'LE, :DESCUENTO,'#10' :IMPORTE_DESCUENTO, :IVA, :IMPORTE_IVA, :RE' +
- ', :IMPORTE_RE, '#10' :IMPORTE_TOTAL, :OBSERVACIONES, :ID_PROVEED' +
- 'OR, :NIF_CIF, '#10' :NOMBRE, :CALLE, :POBLACION, :PROVINCIA, :CO' +
- 'DIGO_POSTAL, '#10' CURRENT_TIMESTAMP, :USUARIO, :ID_FORMA_PAGO,'#10 +
- ' :RECARGO_EQUIVALENCIA, :ID_TIPO_IVA, :IMPORTE_NETO, '#10' :' +
- 'IMPORTE_PORTE, :DATOS_BANCARIOS, :FECHA_VENCIMIENTO, :FECHA_RECE' +
- 'PCION,'#10' :RETENCION, :IMPORTE_RETENCION, :ID_PEDIDO, :FACTURA' +
- '_WEB)'#10' '#10' '#10#10
+ ', ID_PEDIDO, FACTURA_WEB, ID_TIPO_FACTURA)'#10' VALUES'#10' (:ID, :I' +
+ 'D_EMPRESA, :REFERENCIA, :REFERENCIA_PROVEEDOR,'#10' :FECHA_FACTU' +
+ 'RA, :BASE_IMPONIBLE, :DESCUENTO,'#10' :IMPORTE_DESCUENTO, :IVA, ' +
+ ':IMPORTE_IVA, :RE, :IMPORTE_RE, '#10' :IMPORTE_TOTAL, :OBSERVACI' +
+ 'ONES, :ID_PROVEEDOR, :NIF_CIF, '#10' :NOMBRE, :CALLE, :POBLACION' +
+ ', :PROVINCIA, :CODIGO_POSTAL, '#10' CURRENT_TIMESTAMP, :USUARIO,' +
+ ' :ID_FORMA_PAGO,'#10' :RECARGO_EQUIVALENCIA, :ID_TIPO_IVA, :IMPO' +
+ 'RTE_NETO, '#10' :IMPORTE_PORTE, :DATOS_BANCARIOS, :FECHA_VENCIMI' +
+ 'ENTO, :FECHA_RECEPCION,'#10' :RETENCION, :IMPORTE_RETENCION, :ID' +
+ '_PEDIDO, :FACTURA_WEB, :ID_TIPO_FACTURA)'#10' '#10' '#10#10
StatementType = stSQL
ColumnMappings = <>
end>
@@ -1158,6 +1215,11 @@ object srvFacturasProveedor: TsrvFacturasProveedor
DataType = datSmallInt
Value = ''
end
+ item
+ Name = 'ID_TIPO_FACTURA'
+ DataType = datInteger
+ Value = ''
+ end
item
Name = 'OLD_ID'
Value = ''
@@ -1186,8 +1248,8 @@ object srvFacturasProveedor: TsrvFacturasProveedor
':DATOS_BANCARIOS,'#10' FECHA_VENCIMIENTO = :FECHA_VENCIMIENTO,'#10' ' +
' FECHA_RECEPCION = :FECHA_RECEPCION,'#10' RETENCION = :RETENCION' +
','#10' IMPORTE_RETENCION = :IMPORTE_RETENCION,'#10' ID_PEDIDO = :I' +
- 'D_PEDIDO,'#10' FACTURA_WEB = :FACTURA_WEB'#10' WHERE'#10' (ID = :OLD_' +
- 'ID)'#10
+ 'D_PEDIDO,'#10' FACTURA_WEB = :FACTURA_WEB,'#10' ID_TIPO_FACTURA = ' +
+ ':ID_TIPO_FACTURA'#10' WHERE'#10' (ID = :OLD_ID)'#10
StatementType = stSQL
ColumnMappings = <>
end>
diff --git a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dpk b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dpk
index c37ff34c..636d39bd 100644
--- a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dpk
+++ b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dpk
@@ -71,6 +71,7 @@ contains
uViewPedidosFacturaProveedor in 'uViewPedidosFacturaProveedor.pas' {frViewPedidosFacturaProveedor: TFrame},
uEditorElegirDomiciliacion in 'uEditorElegirDomiciliacion.pas' {fEditorElegirDomiciliacion: TfEditorFacturaProveedor},
uViewTotalesVariosIVA in 'uViewTotalesVariosIVA.pas' {frViewTotalesVariosIVA: TfEditorFacturaProveedor},
- uEditorElegirFechaVencimiento in 'uEditorElegirFechaVencimiento.pas' {fEditorElegirFechaVencimiento: TfEditorElegirFechaVencimiento};
+ uEditorElegirFechaVencimiento in 'uEditorElegirFechaVencimiento.pas' {fEditorElegirFechaVencimiento: TfEditorElegirFechaVencimiento},
+ uEditorElegirTipoGasto in 'uEditorElegirTipoGasto.pas' {fEditorTipoGasto: TfEditorTipoGasto};
end.
diff --git a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dproj b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dproj
index 1906ede3..aca0a8ef 100644
--- a/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dproj
+++ b/Source/Modulos/Facturas de proveedor/Views/FacturasProveedor_view.dproj
@@ -41,6 +41,14 @@
Package
FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
+
+
+
+
+
+
+
+
RemObjects Pascal Script - RemObjects SDK 3.0 Integration
FacturasProveedor_view.dpk
@@ -84,7 +92,14 @@
TfEditorFacturaProveedor
-
+
+
+ TfEditorElegirFechaVencimiento
+
+
+
+ TfEditorElegirFechaVencimiento
+
TfEditorFacturaProveedor
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/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.dfm b/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.dfm
index 7e17cb3e..fe6afa94 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.dfm
+++ b/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.dfm
@@ -55,7 +55,6 @@ object fEditorElegirFechaVencimiento: TfEditorElegirFechaVencimiento
Height = 41
Align = alBottom
TabOrder = 0
- ExplicitWidth = 500
DesignSize = (
565
41)
@@ -68,7 +67,6 @@ object fEditorElegirFechaVencimiento: TfEditorElegirFechaVencimiento
Caption = 'Aceptar'
ModalResult = 1
TabOrder = 0
- ExplicitLeft = 336
end
object bCancelar: TButton
Left = 482
@@ -79,7 +77,6 @@ object fEditorElegirFechaVencimiento: TfEditorElegirFechaVencimiento
Caption = 'Cancelar'
ModalResult = 2
TabOrder = 1
- ExplicitLeft = 417
end
end
object cbFechaVencimiento: TcxDateEdit
diff --git a/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.pas b/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.pas
index d2898859..a7d970ab 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.pas
+++ b/Source/Modulos/Facturas de proveedor/Views/uEditorElegirFechaVencimiento.pas
@@ -31,11 +31,11 @@ type
implementation
{$R *.dfm}
-uses uFactuGES_App;
+uses uFactuGES_App, DateUtils;
procedure TfEditorElegirFechaVencimiento.FormShow(Sender: TObject);
begin
-//
+ cbFechaVencimiento.EditValue := DateOf(Date);
end;
function TfEditorElegirFechaVencimiento.GetFechaVencimiento: datetime;
diff --git a/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.dfm b/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.dfm
index 5a6e420f..15a9fa98 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.dfm
+++ b/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.dfm
@@ -77,12 +77,18 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
Left = 427
Visible = True
ExplicitLeft = 427
- ExplicitWidth = 285
+ ExplicitWidth = 382
object TBXItem41: TTBXItem
Action = actDomiciliacion
+ DisplayMode = nbdmImageAndText
end
object TBXItem42: TTBXItem
Action = actVencimiento
+ DisplayMode = nbdmImageAndText
+ end
+ object TBXItem43: TTBXItem
+ Action = actAsignarTipoGasto
+ DisplayMode = nbdmImageAndText
end
object TBXSeparatorItem17: TTBXSeparatorItem
end
@@ -294,6 +300,11 @@ inherited fEditorFacturasProveedor: TfEditorFacturasProveedor
OnExecute = actVencimientoExecute
OnUpdate = actVencimientoUpdate
end
+ object actAsignarTipoGasto: TAction
+ Caption = 'Asignar tipo gasto'
+ OnExecute = actAsignarTipoGastoExecute
+ OnUpdate = actAsignarTipoGastoUpdate
+ end
end
inherited SmallImages: TPngImageList [5]
PngImages = <
diff --git a/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.pas b/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.pas
index d78fba86..f225fc6c 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Views/uEditorFacturasProveedor.pas
@@ -40,6 +40,8 @@ type
JsListaFacturasNoModificables: TJSDialog;
actVencimiento: TAction;
TBXItem42: TTBXItem;
+ actAsignarTipoGasto: TAction;
+ TBXItem43: TTBXItem;
procedure FormShow(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject);
procedure actNuevaFacturaExecute(Sender: TObject);
@@ -50,6 +52,8 @@ type
procedure actDomiciliacionUpdate(Sender: TObject);
procedure actVencimientoExecute(Sender: TObject);
procedure actVencimientoUpdate(Sender: TObject);
+ procedure actAsignarTipoGastoExecute(Sender: TObject);
+ procedure actAsignarTipoGastoUpdate(Sender: TObject);
private
FFacturas: IBizFacturaProveedor;
@@ -90,6 +94,41 @@ uses
{
*************************** TfEditorFacturasProveedor ***************************
}
+procedure TfEditorFacturasProveedor.actAsignarTipoGastoExecute(Sender: TObject);
+var
+ AFacturas: IBizFacturaProveedor;
+ AListaFacturasNoModificadas: TStringList;
+ i: integer;
+
+begin
+ inherited;
+
+ ViewGrid.SaveGridStatus;
+ try
+ SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
+ AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas) as IBizFacturaProveedor;
+ finally
+ ViewGrid.RestoreGridStatus;
+ end;
+
+ Controller.AsignarTipoGasto(AFacturas);
+
+ if (AFacturas.DataTable.RecordCount > 0) then
+ RefrescarInterno;
+end;
+
+procedure TfEditorFacturasProveedor.actAsignarTipoGastoUpdate(Sender: TObject);
+begin
+ inherited;
+
+ if HayDatos and Assigned(ViewGrid) then
+ (Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
+ and ViewGrid.esSeleccionCeldaDatos
+ and (ViewGrid.NumSeleccionados > 0)
+ else
+ (Sender as TAction).Enabled := False;
+end;
+
procedure TfEditorFacturasProveedor.actDomiciliacionExecute(Sender: TObject);
var
AFacturas: IBizFacturaProveedor;
@@ -234,7 +273,9 @@ begin
JsListaFacturasNoModificables.Execute;
FreeAndNil(AListaFacturasNoModificadas);
- RefrescarInterno;
+
+ if (AFacturas.DataTable.RecordCount > 0) then
+ RefrescarInterno;
end;
procedure TfEditorFacturasProveedor.actVencimientoUpdate(Sender: TObject);
diff --git a/Source/Modulos/Facturas de proveedor/Views/uFacturasProveedorViewRegister.pas b/Source/Modulos/Facturas de proveedor/Views/uFacturasProveedorViewRegister.pas
index 9d87a06f..64534358 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uFacturasProveedorViewRegister.pas
+++ b/Source/Modulos/Facturas de proveedor/Views/uFacturasProveedorViewRegister.pas
@@ -10,10 +10,11 @@ implementation
uses
uEditorRegistryUtils, uEditorFacturasProveedor, uEditorFacturaProveedor,
uEditorElegirDomiciliacion, uEditorElegirFechaVencimiento, uEditorElegirArticulosFacturaProveedor,
- uEditorFacturasProveedorReport;
+ uEditorFacturasProveedorReport, uEditorElegirTipoGasto;
procedure RegisterViews;
begin
+ EditorRegistry.RegisterClass(TfEditorElegirTipoGasto, 'EditorElegirTipoGasto');
EditorRegistry.RegisterClass(TfEditorElegirFechaVencimiento, 'EditorElegirFechaVencimiento');
EditorRegistry.RegisterClass(TfEditorElegirDomiciliacion, 'EditorElegirDomiciliacion');
EditorRegistry.RegisterClass(TfEditorFacturasProveedor, 'EditorFacturasProveedor');
@@ -24,6 +25,8 @@ end;
procedure UnregisterViews;
begin
+ EditorRegistry.UnRegisterClass(TfEditorElegirTipoGasto);
+ EditorRegistry.UnRegisterClass(TfEditorElegirFechaVencimiento);
EditorRegistry.UnRegisterClass(TfEditorElegirDomiciliacion);
EditorRegistry.UnRegisterClass(TfEditorFacturasProveedor);
EditorRegistry.UnRegisterClass(TfEditorFacturaProveedor);
diff --git a/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.dfm b/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.dfm
index 937a5a22..16edbe84 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.dfm
+++ b/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.dfm
@@ -1,6 +1,6 @@
inherited frViewFacturaProveedor: TfrViewFacturaProveedor
- Width = 451
- Height = 304
+ Width = 906
+ Height = 514
Align = alClient
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
@@ -9,17 +9,19 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
- Width = 451
- Height = 304
+ Width = 906
+ Height = 514
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
LookAndFeel = dxLayoutOfficeLookAndFeel1
+ ExplicitWidth = 451
+ ExplicitHeight = 304
DesignSize = (
- 451
- 304)
+ 906
+ 514)
object eReferencia: TcxDBTextEdit
Left = 136
Top = 30
@@ -47,7 +49,7 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
end
object edtFecha: TcxDBDateEdit
Left = 136
- Top = 111
+ Top = 138
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_FACTURA'
DataBinding.DataSource = DADataSource
@@ -67,12 +69,12 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 3
+ TabOrder = 4
Width = 159
end
object memObservaciones: TcxDBMemo
Left = 22
- Top = 296
+ Top = 323
Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'OBSERVACIONES'
DataBinding.DataSource = DADataSource
@@ -88,13 +90,13 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 9
+ TabOrder = 10
Height = 159
Width = 301
end
object cbFormaPago: TcxDBLookupComboBox
Left = 136
- Top = 189
+ Top = 216
DataBinding.DataField = 'ID_FORMA_PAGO'
DataBinding.DataSource = DADataSource
Properties.ImmediatePost = True
@@ -125,16 +127,16 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 5
+ TabOrder = 6
Width = 78
end
object bFormasPago: TButton
- Left = 162
- Top = 189
+ Left = 345
+ Top = 216
Width = 132
Height = 23
Caption = 'Ver las formas de pago...'
- TabOrder = 6
+ TabOrder = 7
OnClick = bFormasPagoClick
end
object eReferenciaProveedor: TcxDBTextEdit
@@ -162,7 +164,7 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
Width = 158
end
inline frViewProveedorFactura: TfrViewDatosYSeleccionProveedor
- Left = 322
+ Left = 505
Top = 30
Width = 350
Height = 202
@@ -172,9 +174,9 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
- TabOrder = 10
+ TabOrder = 11
ReadOnly = False
- ExplicitLeft = 322
+ ExplicitLeft = 505
ExplicitTop = 30
inherited dxLayoutControl1: TdxLayoutControl
inherited edtlNombre: TcxDBTextEdit
@@ -216,22 +218,22 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
Width = 327
end
inherited edtCodigoPostal: TcxDBTextEdit
- Left = 203
+ Left = 287
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
- ExplicitLeft = 203
+ ExplicitLeft = 287
end
inherited Button3: TBitBtn
- Left = 87
- ExplicitLeft = 87
+ Left = 171
+ ExplicitLeft = 171
end
end
end
object cbCuentaBancaria: TcxDBComboBox
Left = 136
- Top = 245
+ Top = 272
DataBinding.DataField = 'DATOS_BANCARIOS'
DataBinding.DataSource = DADataSource
Properties.DropDownListStyle = lsFixedList
@@ -248,12 +250,12 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 8
+ TabOrder = 9
Width = 165
end
object edtFechaVencimiento: TcxDBDateEdit
Left = 136
- Top = 218
+ Top = 245
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_VENCIMIENTO'
DataBinding.DataSource = DADataSource
@@ -273,12 +275,12 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 7
+ TabOrder = 8
Width = 251
end
object edtFechaRecepcion: TcxDBDateEdit
Left = 136
- Top = 138
+ Top = 165
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_RECEPCION'
DataBinding.DataSource = DADataSource
@@ -298,12 +300,12 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
- TabOrder = 4
+ TabOrder = 5
Width = 158
end
object eFacturaWeb: TcxDBCheckBox
Left = 22
- Top = 84
+ Top = 111
Caption = 'Factura WEB'
DataBinding.DataField = 'FACTURA_WEB'
DataBinding.DataSource = DADataSource
@@ -318,10 +320,43 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
- TabOrder = 2
+ TabOrder = 3
Transparent = True
Width = 312
end
+ object cbTipoFactura: TcxDBLookupComboBox
+ Left = 136
+ Top = 84
+ DataBinding.DataField = 'ID_TIPO_FACTURA'
+ DataBinding.DataSource = DADataSource
+ Properties.DropDownListStyle = lsFixedList
+ Properties.ImmediatePost = True
+ Properties.KeyFieldNames = 'ID'
+ Properties.ListColumns = <
+ item
+ FieldName = 'DESCRIPCION'
+ end>
+ Properties.ListOptions.GridLines = glNone
+ Properties.ListOptions.ShowHeader = False
+ Properties.ListOptions.SyncMode = True
+ Properties.ListSource = dsTiposFactura
+ Properties.OnEditValueChanged = cbFormaPagoPropertiesEditValueChanged
+ Style.BorderColor = clWindowFrame
+ Style.BorderStyle = ebs3D
+ Style.HotTrack = False
+ Style.LookAndFeel.Kind = lfStandard
+ Style.LookAndFeel.NativeStyle = True
+ Style.ButtonStyle = bts3D
+ Style.PopupBorderStyle = epbsFrame3D
+ StyleDisabled.LookAndFeel.Kind = lfStandard
+ StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 2
+ Width = 307
+ end
object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False
Hidden = True
@@ -347,6 +382,11 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
Control = eReferenciaProveedor
ControlOptions.ShowBorder = False
end
+ object dxLayoutControl1Item11: TdxLayoutItem
+ Caption = 'Tipo gasto:'
+ Control = cbTipoFactura
+ ControlOptions.ShowBorder = False
+ end
object dxLayoutControl1Item9: TdxLayoutItem
ShowCaption = False
Control = eFacturaWeb
@@ -447,4 +487,8 @@ inherited frViewFacturaProveedor: TfrViewFacturaProveedor
Left = 64
Top = 24
end
+ object dsTiposFactura: TDADataSource
+ Left = 64
+ Top = 56
+ end
end
diff --git a/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.pas b/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.pas
index ef117841..1d34d779 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Views/uViewFacturaProveedor.pas
@@ -59,6 +59,9 @@ type
edtFechaRecepcion: TcxDBDateEdit;
dxLayoutControl1Item9: TdxLayoutItem;
eFacturaWeb: TcxDBCheckBox;
+ dxLayoutControl1Item11: TdxLayoutItem;
+ cbTipoFactura: TcxDBLookupComboBox;
+ dsTiposFactura: TDADataSource;
procedure bFormasPagoClick(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
procedure CustomViewCreate(Sender: TObject);
@@ -71,6 +74,7 @@ type
FController : IFacturasProveedorController;
FFormasPago : IBizFormaPago;
FFormasPagoController : IFormasPagoController;
+ FTiposFacturaProveedor : IBizTiposFacturaProveedor;
function GetFactura: IBizFacturaProveedor;
procedure SetFactura(const Value: IBizFacturaProveedor);
function GetController : IFacturasProveedorController;
@@ -115,6 +119,7 @@ procedure TfrViewFacturaProveedor.CustomViewCreate(Sender: TObject);
begin
inherited;
FFormasPago := Nil;
+ FTiposFacturaProveedor := Nil;
FFormasPagoController := TFormasPagoController.Create;
frViewProveedorFactura.MsgElegirProveedor := 'Elija el proveedor al que se le realizar la factura.';
end;
@@ -123,6 +128,7 @@ procedure TfrViewFacturaProveedor.CustomViewDestroy(Sender: TObject);
begin
inherited;
FFormasPago := Nil;
+ FTiposFacturaProveedor := Nil;
FFormasPagoController := NIL;
end;
@@ -240,6 +246,12 @@ begin
else
ledtFechaVencimiento.Enabled := False;
+
+ FTiposFacturaProveedor := FController.darTiposFacturaProveedor;
+ dsTiposFactura.DataTable := FTiposFacturaProveedor.DataTable;
+ dsTiposFactura.DataTable.Active := True;
+
+
if FFactura.TIPO = CTE_TIPO_ABONO then
begin
dxLayoutControl1Item2.Caption := 'Fecha del abono:';
diff --git a/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.dfm b/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.dfm
index 11ce7629..54ad5d65 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.dfm
+++ b/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.dfm
@@ -170,6 +170,10 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
Caption = 'Ref. Pedido'
DataBinding.FieldName = 'REFERENCIA_PEDIDO'
end
+ object cxGridViewGASTO_FACTURA: TcxGridDBColumn
+ Caption = 'Tipo gasto'
+ DataBinding.FieldName = 'GASTO_FACTURA'
+ end
end
inherited cxGridLevel: TcxGridLevel
Caption = 'Todas'
@@ -209,34 +213,30 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
Width = 229
end
inherited edtFechaFinFiltro: TcxDateEdit
- Left = 179
+ Left = 224
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
- ExplicitLeft = 179
+ ExplicitLeft = 224
ExplicitWidth = 188
Width = 188
end
inherited eLista: TcxComboBox
- Left = 304
+ Left = 378
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
- ExplicitLeft = 304
- ExplicitWidth = 215
- Width = 215
+ ExplicitLeft = 378
end
inherited eLista2: TcxComboBox
- Left = 438
+ Left = 474
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
- ExplicitLeft = 438
- ExplicitWidth = 207
- Width = 207
+ ExplicitLeft = 474
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
@@ -270,6 +270,11 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
object TBXItem2: TTBXItem
Action = actProvincia
end
+ object TBXSeparatorItem3: TTBXSeparatorItem
+ end
+ object TBXItem4: TTBXItem
+ Action = actTipoGasto
+ end
end
end
end
@@ -310,6 +315,11 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
OnExecute = actProvinciaExecute
OnUpdate = actProvinciaUpdate
end
+ object actTipoGasto: TAction
+ Caption = 'Tipo de gasto'
+ OnExecute = actTipoGastoExecute
+ OnUpdate = actTipoGastoUpdate
+ end
end
inherited GridPNGImageList: TPngImageList
PngImages = <
diff --git a/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.pas b/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.pas
index 600e86c6..288a751e 100644
--- a/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.pas
+++ b/Source/Modulos/Facturas de proveedor/Views/uViewFacturasProveedor.pas
@@ -59,6 +59,10 @@ type
cxGridViewFECHA_VENCIMIENTO: TcxGridDBColumn;
cxGridViewFECHA_RECEPCION: TcxGridDBColumn;
cxGridViewFACTURA_WEB: TcxGridDBColumn;
+ cxGridViewGASTO_FACTURA: TcxGridDBColumn;
+ TBXItem4: TTBXItem;
+ TBXSeparatorItem3: TTBXSeparatorItem;
+ actTipoGasto: TAction;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);
@@ -70,6 +74,8 @@ type
procedure cxGridViewDataControllerCompare(
ADataController: TcxCustomDataController; ARecordIndex1, ARecordIndex2,
AItemIndex: Integer; const V1, V2: Variant; var Compare: Integer);
+ procedure actTipoGastoExecute(Sender: TObject);
+ procedure actTipoGastoUpdate(Sender: TObject);
private
//Filtros relativos a la vista
@@ -136,6 +142,28 @@ begin
(Sender as TAction).Checked := not (cxGridViewPROVINCIA.GroupIndex < 0);
end;
+procedure TfrViewFacturasProveedor.actTipoGastoExecute(Sender: TObject);
+begin
+ inherited;
+
+ if (cxGridViewGASTO_FACTURA.GroupIndex < 0) then
+ begin
+ cxGridViewGASTO_FACTURA.GroupIndex := cxGridView.GroupedColumnCount;
+ cxGridViewGASTO_FACTURA.Visible := False;
+ end
+ else
+ begin
+ cxGridViewGASTO_FACTURA.GroupIndex := -1;
+ cxGridViewGASTO_FACTURA.Visible := True;
+ end;
+end;
+
+procedure TfrViewFacturasProveedor.actTipoGastoUpdate(Sender: TObject);
+begin
+ inherited;
+ (Sender as TAction).Checked := not (cxGridViewGASTO_FACTURA.GroupIndex < 0);
+end;
+
procedure TfrViewFacturasProveedor.AnadirFiltroFechas;
var
Columna: TcxGridDBColumn;
diff --git a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeBeneficiosReportGrafComp.pas b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeBeneficiosReportGrafComp.pas
index 017cba4b..00d142b5 100644
--- a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeBeneficiosReportGrafComp.pas
+++ b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeBeneficiosReportGrafComp.pas
@@ -3,7 +3,8 @@ unit uIEditorInformeBeneficiosReportGrafComp;
interface
uses
- FactuGES_Intf, uIEditorInformeBase;
+ FactuGES_Intf, uIEditorInformeBase,
+ DataAbstract4_Intf;
type
IEditorInformeBeneficiosReportGrafComp = interface(IEditorInformeBase)
@@ -13,11 +14,16 @@ type
function GetAno1: Variant;
function GetAno2: Variant;
function GetSerie: Variant;
+ function GetListaIDTiposGasto: TIntegerArray;
+ function GetListaNombreTiposGasto: StringArray;
property Intervalo: Variant read GetIntervalo;
property Ano1: Variant read GetAno1;
property Ano2: Variant read GetAno2;
property Serie: Variant read GetSerie;
+ property ListaIDTiposGasto: TIntegerArray read GetListaIDTiposGasto;
+ property ListaNombreTiposGasto: StringArray read GetListaNombreTiposGasto;
+
end;
diff --git a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorPendientesReport.pas b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorPendientesReport.pas
index e9b2fd65..c7d804de 100644
--- a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorPendientesReport.pas
+++ b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorPendientesReport.pas
@@ -3,7 +3,8 @@ unit uIEditorInformeFacturasProveedorPendientesReport;
interface
uses
- FactuGES_Intf, uIEditorInformeBase;
+ FactuGES_Intf, uIEditorInformeBase,
+ DataAbstract4_Intf;
type
IEditorInformeFacturasProveedorPendientesReport = interface(IEditorInformeBase)
@@ -15,6 +16,9 @@ type
function GetListaIDProveedores: TIntegerArray;
function GetDesglosadoProveedor: Boolean;
function GetImporteMinimo: Currency;
+ function GetListaIDTiposGasto: TIntegerArray;
+ function GetListaNombreTiposGasto: StringArray;
+
property FechaInicio: Variant read GetFechaInicio;
property FechaFin: Variant read GetFechaFin;
property FechaVenInicio: Variant read GetFechaVenInicio;
@@ -22,6 +26,8 @@ type
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
property DesglosadoProveedor: Boolean read GetDesglosadoProveedor;
property ImporteMinimo: Currency read getImporteMinimo;
+ property ListaIDTiposGasto: TIntegerArray read GetListaIDTiposGasto;
+ property ListaNombreTiposGasto: StringArray read GetListaNombreTiposGasto;
end;
diff --git a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReport.pas b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReport.pas
index 5ae334fa..59922a30 100644
--- a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReport.pas
+++ b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReport.pas
@@ -3,9 +3,10 @@ unit uIEditorInformeFacturasProveedorReport;
interface
uses
- FactuGES_Intf, uIEditorInformeBase;
+ FactuGES_Intf, uIEditorInformeBase,
+ DataAbstract4_Intf;
-type
+type
IEditorInformeFacturasProveedorReport = interface(IEditorInformeBase)
['{0E60C309-336C-455D-825B-7E4892A6CBC5}']
function GetFechaFin: Variant;
@@ -15,6 +16,9 @@ type
function GetListaIDProveedores: TIntegerArray;
function GetDesglosadoProveedor: Boolean;
function GetImporteMinimo: Currency;
+ function GetListaIDTiposGasto: TIntegerArray;
+ function GetListaNombreTiposGasto: StringArray;
+
property FechaInicio: Variant read GetFechaInicio;
property FechaFin: Variant read GetFechaFin;
property FechaVenInicio: Variant read GetFechaVenInicio;
@@ -22,6 +26,8 @@ type
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
property DesglosadoProveedor: Boolean read GetDesglosadoProveedor;
property ImporteMinimo: Currency read getImporteMinimo;
+ property ListaIDTiposGasto: TIntegerArray read GetListaIDTiposGasto;
+ property ListaNombreTiposGasto: StringArray read GetListaNombreTiposGasto;
end;
diff --git a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReportGrafComp.pas b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReportGrafComp.pas
index 07d360b2..ca450ef8 100644
--- a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReportGrafComp.pas
+++ b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeFacturasProveedorReportGrafComp.pas
@@ -3,7 +3,8 @@ unit uIEditorInformeFacturasProveedorReportGrafComp;
interface
uses
- FactuGES_Intf, uIEditorInformeBase;
+ FactuGES_Intf, uIEditorInformeBase,
+ DataAbstract4_Intf;
type
IEditorInformeFacturasProveedorReportGrafComp = interface(IEditorInformeBase)
@@ -15,6 +16,9 @@ type
function GetNTop: Variant;
function GetListaIDProveedores: TIntegerArray;
+ function GetListaIDTiposGasto: TIntegerArray;
+ function GetListaNombreTiposGasto: StringArray;
+
property Intervalo: Variant read GetIntervalo;
property Ano1: Variant read GetAno1;
@@ -22,6 +26,8 @@ type
property NTop: Variant read GetNTop;
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
+ property ListaIDTiposGasto: TIntegerArray read GetListaIDTiposGasto;
+ property ListaNombreTiposGasto: StringArray read GetListaNombreTiposGasto;
end;
diff --git a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeIVAProveedoresReport.pas b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeIVAProveedoresReport.pas
index c7702af0..6befb599 100644
--- a/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeIVAProveedoresReport.pas
+++ b/Source/Modulos/Gestor de informes/Controller/View/uIEditorInformeIVAProveedoresReport.pas
@@ -3,7 +3,8 @@ unit uIEditorInformeIVAProveedoresReport;
interface
uses
- FactuGES_Intf, uIEditorInformeBase;
+ FactuGES_Intf, uIEditorInformeBase,
+ DataAbstract4_Intf;
type
IEditorInformeIVAProveedoresReport = interface(IEditorInformeBase)
@@ -13,11 +14,16 @@ type
function GetListaIDProveedores: TIntegerArray;
function GetDesglosadoProveedor: Boolean;
function GetImporteMinimo: Currency;
+ function GetListaIDTiposGasto: TIntegerArray;
+ function GetListaNombreTiposGasto: StringArray;
+
property FechaInicio: Variant read GetFechaInicio;
property FechaFin: Variant read GetFechaFin;
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
property DesglosadoProveedor: Boolean read GetDesglosadoProveedor;
property ImporteMinimo: Currency read getImporteMinimo;
+ property ListaIDTiposGasto: TIntegerArray read GetListaIDTiposGasto;
+ property ListaNombreTiposGasto: StringArray read GetListaNombreTiposGasto;
end;
diff --git a/Source/Modulos/Gestor de informes/Controller/uGestorInformesController.pas b/Source/Modulos/Gestor de informes/Controller/uGestorInformesController.pas
index 9898ebf9..96dae763 100644
--- a/Source/Modulos/Gestor de informes/Controller/uGestorInformesController.pas
+++ b/Source/Modulos/Gestor de informes/Controller/uGestorInformesController.pas
@@ -324,7 +324,7 @@ begin
AEditor.Title := 'Informe comparativo de beneficios';
AStream := FDataModule.GenerarInformeBeneficiosGrafComp(AppFactuGES.EmpresaActiva.ID,
- AEditor.Intervalo, AEditor.Ano1, AEditor.Ano2, AEditor.Serie);
+ AEditor.Intervalo, AEditor.Ano1, AEditor.Ano2, AEditor.Serie, AEditor.ListaIDTiposGasto, AEditor.ListaNombreTiposGasto);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
@@ -372,7 +372,7 @@ begin
AEditor.Title := 'Informe comparativo de facturacin de proveedores';
AStream := FDataModule.GenerarInformeFacturasProvGrafComp(AppFactuGES.EmpresaActiva.ID,
- AEditor.Intervalo, AEditor.Ano1, AEditor.Ano2, AEditor.ListaIDProveedores, AEditor.NTop);
+ AEditor.Intervalo, AEditor.Ano1, AEditor.Ano2, AEditor.ListaIDProveedores, AEditor.NTop, AEditor.ListaIDTiposGasto, AEditor.ListaNombreTiposGasto);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
@@ -443,7 +443,7 @@ begin
AStream := FDataModule.GenerarInformeIVAProveedores(AppFactuGES.EmpresaActiva.ID,
AEditor.FechaInicio, AEditor.FechaFin,
AEditor.ListaIDProveedores, AEditor.DesglosadoProveedor,
- AEditor.ImporteMinimo);
+ AEditor.ImporteMinimo, AEditor.ListaIDTiposGasto, AEditor.ListaNombreTiposGasto);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
@@ -514,7 +514,7 @@ begin
AEditor.Title := 'Listado de facturas de proveedor';
AStream := FDataModule.GenerarInformeListadoFacturasProv(AppFactuGES.EmpresaActiva.ID,
AEditor.FechaInicio, AEditor.FechaFin, AEditor.FechaVenInicio, AEditor.FechaVenFin, AEditor.ListaIDProveedores,
- AEditor.DesglosadoProveedor, AEditor.ImporteMinimo);
+ AEditor.DesglosadoProveedor, AEditor.ImporteMinimo, AEditor.ListaIDTiposGasto, AEditor.ListaNombreTiposGasto);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
@@ -537,7 +537,7 @@ begin
AEditor.Title := 'Listado de facturas de proveedor pendientes';
AStream := FDataModule.GenerarInformeListadoFacturasProvPendientes(AppFactuGES.EmpresaActiva.ID,
AEditor.FechaInicio, AEditor.FechaFin, AEditor.FechaVenInicio, AEditor.FechaVenFin, AEditor.ListaIDProveedores,
- AEditor.DesglosadoProveedor, AEditor.ImporteMinimo);
+ AEditor.DesglosadoProveedor, AEditor.ImporteMinimo, AEditor.ListaIDTiposGasto, AEditor.ListaNombreTiposGasto);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
diff --git a/Source/Modulos/Gestor de informes/Data/uDataModuleGestorInformes.pas b/Source/Modulos/Gestor de informes/Data/uDataModuleGestorInformes.pas
index 98734f0d..e231e293 100644
--- a/Source/Modulos/Gestor de informes/Data/uDataModuleGestorInformes.pas
+++ b/Source/Modulos/Gestor de informes/Data/uDataModuleGestorInformes.pas
@@ -6,7 +6,7 @@ uses
SysUtils, Classes, DB, uDADataTable, uDABINAdapter,
uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uROTypes,
uRORemoteService, uROClient, uROBinMessage,
-
+ {Used RODLs:} DataAbstract4_Intf,
uIDataModuleGestorInformes, uDADesigntimeCall, uDataModuleBase,
uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer,
uDARemoteDataAdapter, uIntegerListUtils, FactuGES_Intf;
@@ -33,7 +33,7 @@ type
function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasCliGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; Const NTop: Variant): Binary;
function DarListaAnosFacturasCli: TStringList;
- function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant): Binary;
+ function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function GenerarInformeIVAComparativo(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant): Binary;
//MODULO RECIBOS DE CLIENTE
@@ -44,10 +44,12 @@ type
function GenerarInformeListadoPedidos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
//MODULO FACTURAS DE PROVEEDOR
- function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; Const NTop: Variant): Binary;
+ function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
+ const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; Const NTop: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function DarListaAnosFacturasProv: TStringList;
//MODULO RECIBOS DE CLIENTE
@@ -63,7 +65,7 @@ implementation
uses
uDataModuleConexion, uDataTableUtils, cxControls,
- Dialogs, DataAbstract4_Intf;
+ Dialogs;
{ TdmPresupuestos }
@@ -122,10 +124,11 @@ begin
end;
function TDataModuleGestorInformes.GenerarInformeBeneficiosGrafComp(
- const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant; const Serie: Variant): Binary;
+ const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant; const Serie: Variant;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
begin
try
- Result := (RORemoteService as IsrvGestorInformes).GenerarInformeBeneficiosGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, Serie);
+ Result := (RORemoteService as IsrvGestorInformes).GenerarInformeBeneficiosGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, Serie, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
end;
end;
@@ -142,10 +145,11 @@ end;
function TDataModuleGestorInformes.GenerarInformeFacturasProvGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
- const ListaIDProveedores: TIntegerArray; Const NTop: Variant): Binary;
+ const ListaIDProveedores: TIntegerArray; Const NTop: Variant;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
begin
try
- Result := (RORemoteService as IsrvGestorInformes).GenerarInformeFacturasProvGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIdProveedores, NTop);
+ Result := (RORemoteService as IsrvGestorInformes).GenerarInformeFacturasProvGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIdProveedores, NTop, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
end;
end;
@@ -170,10 +174,11 @@ end;
function TDataModuleGestorInformes.GenerarInformeIVAProveedores(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
begin
try
- Result := (RORemoteService as IsrvGestorInformes).GenerarInformeIVAProveedores(IdEmpresa, FechaInicio, FechaFin, ListaIdProveedores, Desglosado, ImporteMinimo);
+ Result := (RORemoteService as IsrvGestorInformes).GenerarInformeIVAProveedores(IdEmpresa, FechaInicio, FechaFin, ListaIdProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
end;
end;
@@ -206,10 +211,11 @@ function TDataModuleGestorInformes.GenerarInformeListadoFacturasProv(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio: Variant; const FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
begin
try
- Result := (RORemoteService as IsrvGestorInformes).GenerarInformeListadoFacturasProv(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIdProveedores, Desglosado, ImporteMinimo);
+ Result := (RORemoteService as IsrvGestorInformes).GenerarInformeListadoFacturasProv(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIdProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
end;
end;
@@ -218,10 +224,12 @@ function TDataModuleGestorInformes.GenerarInformeListadoFacturasProvPendientes(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio: Variant; const FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray;
+ const ListaNombreTiposGasto: StringArray): Binary;
begin
try
- Result := (RORemoteService as IsrvGestorInformes).GenerarInformeListadoFacturasProvPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIdProveedores, Desglosado, ImporteMinimo);
+ Result := (RORemoteService as IsrvGestorInformes).GenerarInformeListadoFacturasProvPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIdProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
end;
end;
diff --git a/Source/Modulos/Gestor de informes/GestorInformes_Group.groupproj b/Source/Modulos/Gestor de informes/GestorInformes_Group.groupproj
index 3c2c84be..0d7fe84b 100644
--- a/Source/Modulos/Gestor de informes/GestorInformes_Group.groupproj
+++ b/Source/Modulos/Gestor de informes/GestorInformes_Group.groupproj
@@ -10,6 +10,10 @@
+
+
+
+
@@ -121,14 +125,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Modulos/Gestor de informes/Model/Data/uIDataModuleGestorInformes.pas b/Source/Modulos/Gestor de informes/Model/Data/uIDataModuleGestorInformes.pas
index e8a887b1..a3211262 100644
--- a/Source/Modulos/Gestor de informes/Model/Data/uIDataModuleGestorInformes.pas
+++ b/Source/Modulos/Gestor de informes/Model/Data/uIDataModuleGestorInformes.pas
@@ -3,7 +3,8 @@ unit uIDataModuleGestorInformes;
interface
uses
- uROTypes, Classes, FactuGES_Intf;
+ uROTypes, Classes, FactuGES_Intf,
+ {Used RODLs:} DataAbstract4_Intf;
type
IDataModuleGestorInformes = interface
@@ -23,7 +24,7 @@ type
function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasCliGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; Const NTop: Variant): Binary;
function DarListaAnosFacturasCli: TStringList;
- function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant): Binary;
+ function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function GenerarInformeIVAComparativo(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant): Binary;
//MODULO RECIBOS DE CLIENTE
@@ -34,11 +35,11 @@ type
function GenerarInformeListadoPedidos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
//MODULO FACTURAS DE PROVEEDOR
- function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
+ function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
- function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; Const NTop: Variant): Binary;
+ function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; Const NTop: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function DarListaAnosFacturasProv: TStringList;
//MODULO RECIBOS DE CLIENTE
diff --git a/Source/Modulos/Gestor de informes/Servidor/srvGestorInformes_Impl.pas b/Source/Modulos/Gestor de informes/Servidor/srvGestorInformes_Impl.pas
index 373e5a79..dde280da 100644
--- a/Source/Modulos/Gestor de informes/Servidor/srvGestorInformes_Impl.pas
+++ b/Source/Modulos/Gestor de informes/Servidor/srvGestorInformes_Impl.pas
@@ -50,7 +50,7 @@ type
function GenerarInformeFacturasCliGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
function DarListaAnosFacturasCli: StringArray;
- function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant): Binary;
+ function GenerarInformeBeneficiosGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const Serie: Variant; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function GenerarInformeIVAComparativo(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant): Binary;
//MODULO RECIBOS CLIENTE
@@ -61,11 +61,12 @@ type
function GenerarInformeListadoPedidos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
//MODULO FACTURAS PROVEEDOR
- function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
- function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
+ function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
+ function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
- function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
+ function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer; const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
function DarListaAnosFacturasProv: StringArray;
//MODULO RECIBOS PROVEEDOR
@@ -124,13 +125,14 @@ begin
end;
function TsrvGestorInformes.GenerarInformeBeneficiosGrafComp(
- const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant; const Serie: Variant): Binary;
+ const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant; const Serie: Variant;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AReportGenerator : TRptFacturasCliente;
begin
AReportGenerator := TRptFacturasCliente.Create(nil);
try
- Result := AReportGenerator.GenerarInformeBeneficiosGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, Serie);
+ Result := AReportGenerator.GenerarInformeBeneficiosGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, Serie, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
FreeAndNIL(AReportGenerator);
end;
@@ -152,13 +154,14 @@ end;
function TsrvGestorInformes.GenerarInformeFacturasProvGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
- const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
+ const ListaIDProveedores: TIntegerArray; const TopN: Integer;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AReportGenerator : TRptFacturasProveedor;
begin
AReportGenerator := TRptFacturasProveedor.Create(nil);
try
- Result := AReportGenerator.GenerarInformeFacturasGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIDProveedores, TopN);
+ Result := AReportGenerator.GenerarInformeFacturasGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIDProveedores, TopN, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
FreeAndNIL(AReportGenerator);
end;
@@ -192,13 +195,14 @@ end;
function TsrvGestorInformes.GenerarInformeIVAProveedores(const IdEmpresa: Integer;
const FechaInicio, FechaFin: Variant; const ListaIDProveedores: TIntegerArray;
- const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
+ const Desglosado: Boolean; const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AReportGenerator : TRptFacturasProveedor;
begin
AReportGenerator := TRptFacturasProveedor.Create(nil);
try
- Result := AReportGenerator.GenerarInformeIVA(IdEmpresa, FechaInicio, FechaFin, ListaIDProveedores, Desglosado, ImporteMinimo);
+ Result := AReportGenerator.GenerarInformeIVA(IdEmpresa, FechaInicio, FechaFin, ListaIDProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
FreeAndNIL(AReportGenerator);
end;
@@ -238,13 +242,14 @@ function TsrvGestorInformes.GenerarInformeListadoFacturasProv(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio, FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray; const ListaNombreTiposGasto: StringArray): Binary;
var
AReportGenerator : TRptFacturasProveedor;
begin
AReportGenerator := TRptFacturasProveedor.Create(nil);
try
- Result := AReportGenerator.GenerarInformeListadoFacturas(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);
+ Result := AReportGenerator.GenerarInformeListadoFacturas(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
FreeAndNIL(AReportGenerator);
end;
@@ -254,13 +259,15 @@ function TsrvGestorInformes.GenerarInformeListadoFacturasProvPendientes(
const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant;
const FechaVenInicio, FechaVenFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
- const ImporteMinimo: Currency): Binary;
+ const ImporteMinimo: Currency;
+ const ListaIDTiposGasto: TIntegerArray;
+ const ListaNombreTiposGasto: StringArray): Binary;
var
AReportGenerator : TRptFacturasProveedor;
begin
AReportGenerator := TRptFacturasProveedor.Create(nil);
try
- Result := AReportGenerator.GenerarInformeListadoFacturasPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo);
+ Result := AReportGenerator.GenerarInformeListadoFacturasPendientes(IdEmpresa, FechaInicio, FechaFin, FechaVenInicio, FechaVenFin, ListaIDProveedores, Desglosado, ImporteMinimo, ListaIDTiposGasto, ListaNombreTiposGasto);
finally
FreeAndNIL(AReportGenerator);
end;
diff --git a/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dpk b/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dpk
index 8b4b26f5..fc5740a3 100644
--- a/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dpk
+++ b/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dpk
@@ -67,7 +67,12 @@ requires
cxDataD11,
dxCoreD11,
fqb110,
- bdertl;
+ bdertl,
+ FacturasProveedor_model,
+ FacturasProveedor_controller,
+ DataAbstract_Core_D11,
+ dsnap,
+ adortl;
contains
uGestorInformesViewRegister in 'uGestorInformesViewRegister.pas',
@@ -94,6 +99,7 @@ contains
uEditorInformeFacturasProveedorReportGrafComp in 'uEditorInformeFacturasProveedorReportGrafComp.pas' {fEditorInformeFacturasProveedorReportGrafComp: TForm},
uEditorInformeBeneficiosReportGrafComp in 'uEditorInformeBeneficiosReportGrafComp.pas' {fEditorInformeBeneficiosReportGrafComp: TForm},
uEditorInformePresupuestosClienteReportGrafComp in 'uEditorInformePresupuestosClienteReportGrafComp.pas' {fEditorInformePresupuestosClienteReportGrafComp: TForm},
- uEditorInformeIVAComparativoReport in 'uEditorInformeIVAComparativoReport.pas' {fEditorInformeIVAComparativoReport: TForm};
+ uEditorInformeIVAComparativoReport in 'uEditorInformeIVAComparativoReport.pas' {fEditorInformeIVAComparativoReport: TForm},
+ uViewFiltroTipoGasto in 'uViewFiltroTipoGasto.pas' {frViewFiltroTipoGasto: TFrame};
end.
diff --git a/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dproj b/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dproj
index 0280cb62..beb8dba6 100644
--- a/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dproj
+++ b/Source/Modulos/Gestor de informes/Views/GestorInformes_view.dproj
@@ -31,56 +31,55 @@
Delphi.Personality
Package
-FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0GestorInformes_view.dpk
+FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0GestorInformes_view.dpkFalse
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
TForm
@@ -166,6 +165,10 @@
TFrame
+
+
+ TFrame
+
TFrame
@@ -178,6 +181,12 @@
TFrame
+
+
+
+
+
+