diff --git a/Build/Build.fb5lck b/Build/Build.fb5lck
deleted file mode 100644
index 20d5cb86..00000000
Binary files a/Build/Build.fb5lck and /dev/null differ
diff --git a/Database/VISTAS.SQL b/Database/VISTAS.SQL
index 53c3aaf6..73a1dd01 100644
--- a/Database/VISTAS.SQL
+++ b/Database/VISTAS.SQL
@@ -1003,13 +1003,15 @@ CREATE VIEW V_ALBARANES_CLIENTE(
ID_FORMA_PAGO,
FECHA_PREVISTA_ENVIO,
FECHA_ENVIO,
- FECHA_RECEPCION)
+ FECHA_RECEPCION,
+ ID_AGENTE,
+ AGENTE)
AS
SELECT
ALBARANES_CLIENTE.ID,
ALBARANES_CLIENTE.ID_EMPRESA,
ALBARANES_CLIENTE.ID_CLIENTE,
- CONTACTOS.NOMBRE,
+ CLIENTES.NOMBRE,
ALBARANES_CLIENTE.FECHA_ALBARAN,
ALBARANES_CLIENTE.REFERENCIA,
ALBARANES_CLIENTE.REFERENCIA_CLIENTE,
@@ -1044,10 +1046,15 @@ SELECT
ALBARANES_CLIENTE.ID_FORMA_PAGO,
ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO,
ALBARANES_CLIENTE.FECHA_ENVIO,
- ALBARANES_CLIENTE.FECHA_RECEPCION
+ ALBARANES_CLIENTE.FECHA_RECEPCION,
+ CLIENTES_DATOS.ID_AGENTE,
+ AGENTES.NOMBRE
+
FROM
ALBARANES_CLIENTE
- LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_CLIENTE.ID_CLIENTE)
+ LEFT OUTER JOIN CONTACTOS CLIENTES ON (CLIENTES.ID = ALBARANES_CLIENTE.ID_CLIENTE)
+ LEFT OUTER JOIN CLIENTES_DATOS ON (CLIENTES_DATOS.ID_CLIENTE = ALBARANES_CLIENTE.ID_CLIENTE)
+ LEFT OUTER JOIN CONTACTOS AGENTES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO)
LEFT OUTER JOIN FACTURAS_CLIENTE ON (FACTURAS_CLIENTE.ID = ALBARANES_CLIENTE.ID_FACTURA)
LEFT OUTER JOIN V_ALB_CLI_SITUACION ON (V_ALB_CLI_SITUACION.ID = ALBARANES_CLIENTE.ID)
@@ -2435,7 +2442,14 @@ ARTICULOS.PRECIO_PORTE,
FACTURAS_CLIENTE_DETALLES.CANTIDAD,
FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD as importe_unidad_venta,
FACTURAS_CLIENTE_DETALLES.DESCUENTO,
-FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)) as importe_neto_venta,
+
+case when FACTURAS_CLIENTE_DETALLES.CANTIDAD < 0 then
+/*En caso de ser un abono el importe neto venta debe ser negativo para que los informes no salgan falseados*/
+(-1)*(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)))
+else
+FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))
+end as importe_neto_venta,
+
FACTURAS_CLIENTE_DETALLES.IMPORTE_PORTE as importe_porte_venta,
FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL,
@@ -2476,4 +2490,4 @@ on ((AGENTES_COMISIONES.ID_AGENTE = AGENTES.ID) and (AGENTES_COMISIONES.ID_PROVE
where (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO is not null) and (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
/*and (FACTURAS_CLIENTE_DETALLES.cantidad > 0) Quitamos los abonos*/
-and (ARTICULOS.INVENTARIABLE = 1); /*Solo nos quedamos con los inventariables*/
+and (ARTICULOS.INVENTARIABLE = 1);
\ No newline at end of file
diff --git a/Source/Cliente/FactuGES.bdsproj b/Source/Cliente/FactuGES.bdsproj
index 6a293a94..f4ba3f95 100644
--- a/Source/Cliente/FactuGES.bdsproj
+++ b/Source/Cliente/FactuGES.bdsproj
@@ -148,8 +148,8 @@
True
False
2
- 3
- 9
+ 4
+ 0
0
False
False
@@ -162,13 +162,13 @@
Rodax Software S.L.
- 2.3.9.0
+ 2.4.0.0
FactuGES
-
+ 2.3.9.0
Muststang Peak EasyListview Runtime Package
diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc
index 192a1463..2124bb77 100644
--- a/Source/Cliente/FactuGES.rc
+++ b/Source/Cliente/FactuGES.rc
@@ -1,7 +1,7 @@
MAINICON ICON "c:\Codigo Luis Leon\Source\Iconos\Factuges.ico"
1 VERSIONINFO
-FILEVERSION 2,3,9,0
-PRODUCTVERSION 2,3,9,0
+FILEVERSION 2,4,0,0
+PRODUCTVERSION 2,4,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@@ -13,7 +13,7 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
- VALUE "FileVersion", "2.3.9.0\0"
+ VALUE "FileVersion", "2.4.0.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductVersion", "2.3.9.0\0"
END
diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res
index bd2b3ffb..02e72f13 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloClient_Intf.pas b/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloClient_Intf.pas
index be946d3d..c689d78d 100644
--- a/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloClient_Intf.pas
+++ b/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloClient_Intf.pas
@@ -9,7 +9,7 @@ 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_InfMargenArticulo = '{CAD3971F-0746-414E-9D24-39D78E9C8795}';
+ RID_InfMargenArticulo = '{92D84183-B3FF-4539-8D7B-157CC5F2C581}';
{ Data table names }
nme_InfMargenArticulo = 'InfMargenArticulo';
@@ -103,7 +103,7 @@ const
type
{ IInfMargenArticulo }
IInfMargenArticulo = interface(IDAStronglyTypedDataTable)
- ['{5CC3A6EA-5D25-4D3E-A94F-04B1CAD301C4}']
+ ['{3EC440B5-DE16-4E0A-9C9C-BDED49BDCBC7}']
{ Property getters and setters }
function GetID_EMPRESAValue: Integer;
procedure SetID_EMPRESAValue(const aValue: Integer);
diff --git a/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloServer_Intf.pas b/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloServer_Intf.pas
index 81c1a349..01f43f0f 100644
--- a/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloServer_Intf.pas
+++ b/Source/Modulos/Informe margen por articulo/Model/schInfMargenArticuloServer_Intf.pas
@@ -9,12 +9,12 @@ 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_InfMargenArticuloDelta = '{E8D3A873-E61E-4AB3-8669-CA10D5D2CE05}';
+ RID_InfMargenArticuloDelta = '{E5366B0B-4C1B-4831-8053-90F6A565F217}';
type
{ IInfMargenArticuloDelta }
IInfMargenArticuloDelta = interface(IInfMargenArticulo)
- ['{E8D3A873-E61E-4AB3-8669-CA10D5D2CE05}']
+ ['{E5366B0B-4C1B-4831-8053-90F6A565F217}']
{ Property getters and setters }
function GetOldID_EMPRESAValue : Integer;
function GetOldID_CLIENTEValue : Integer;
diff --git a/Source/Modulos/Informe margen por articulo/Model/uBizInfMargenArticulo.pas b/Source/Modulos/Informe margen por articulo/Model/uBizInfMargenArticulo.pas
index b4d906a9..6694b619 100644
--- a/Source/Modulos/Informe margen por articulo/Model/uBizInfMargenArticulo.pas
+++ b/Source/Modulos/Informe margen por articulo/Model/uBizInfMargenArticulo.pas
@@ -71,6 +71,9 @@ begin
FDateParams.Clear;
NewDatasetParam(FDateParams, 'FECHAINI', DataTable.ParamByName('FECHAINI').AsDateTime);
NewDatasetParam(FDateParams, 'FECHAFIN', DataTable.ParamByName('FECHAFIN').AsDateTime);
+ //El intervalo de fechas para el calculo de compras promedio debe ser desde el principio de los tiempos hasta hoy
+// NewDatasetParam(FDateParams, 'FECHAINI2', DataTable.ParamByName('FECHAINI2').AsDateTime);
+// NewDatasetParam(FDateParams, 'FECHAFIN2', DataTable.ParamByName('FECHAFIN2').AsDateTime);
Request.ParamByName('Params').AsComplexType := FDateParams;
end;
diff --git a/Source/Modulos/Informe margen por articulo/Servidor/srvInfMargenArticulo_Impl.dfm b/Source/Modulos/Informe margen por articulo/Servidor/srvInfMargenArticulo_Impl.dfm
index 7523ff1f..d95631d6 100644
--- a/Source/Modulos/Informe margen por articulo/Servidor/srvInfMargenArticulo_Impl.dfm
+++ b/Source/Modulos/Informe margen por articulo/Servidor/srvInfMargenArticulo_Impl.dfm
@@ -77,113 +77,118 @@ object srvInfMargenArticulo: TsrvInfMargenArticulo
'P_PORTE_PRO_VENT,'#10#10'COALESCE(ARTICULOS.PRECIO_COSTE, 0) AS IMP_UN' +
'IDAD_COMPRA,'#10'COALESCE(ARTICULOS.PRECIO_NETO, 0) AS IMP_NETO_COMP' +
'RA,'#10'COALESCE(ARTICULOS.PRECIO_PORTE, 0) AS IMP_PORTE_COMPRA,'#10#10'CO' +
- 'ALESCE(MARGEN_COMPRAS.IMPORTE_UNIDAD_ULT_COMP, 0) AS IMP_UNIDAD_' +
- 'ULT_COMP,'#10'COALESCE(MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP, 0) AS I' +
- 'MP_NETO_ULT_COMP,'#10'COALESCE(MARGEN_COMPRAS.IMPORTE_PORTE_ULT_COMP' +
- ', 0) AS IMP_PORTE_ULT_COMP,'#10#10'COALESCE(MARGEN_COMPRAS.IMPORTE_UNI' +
- 'DAD_PRO_COMP, 0) AS IMP_UNIDAD_PRO_COMP,'#10'COALESCE(MARGEN_COMPRAS' +
- '.IMPORTE_NETO_PRO_COMP, 0) AS IMP_NETO_PRO_COMP,'#10'COALESCE(MARGEN' +
- '_COMPRAS.IMPORTE_PORTE_PRO_COMP, 0) AS IMP_PORTE_PRO_COMP,'#10#10#10#10#10'M' +
- 'ARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ARTICULOS.PRECIO_NETO AS IM' +
- 'P_MARGEN_ULT_VENT_COMPRA,'#10'CASE'#10'WHEN ARTICULOS.PRECIO_NETO = 0 T' +
- 'HEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ARTICULOS.PR' +
- 'ECIO_NETO) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT -' +
- ' ARTICULOS.PRECIO_NETO) * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_' +
- 'VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_ULT_VENT_COMPRA,'#10#10'MARGEN_VENTAS.IM' +
- 'PORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP AS IM' +
- 'P_MARGEN_ULT_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NE' +
- 'TO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VE' +
- 'NT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) > 0 THEN'#10' ((MARGE' +
- 'N_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT' +
- '_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'A' +
- 'S POR_MARGEN_ULT_VENT_ULT_COMP,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_ULT_' +
- 'VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP AS IMP_MARGEN_ULT_VE' +
- 'NT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP = 0' +
- ' THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COM' +
- 'PRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORT' +
- 'E_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) * 100) /' +
- ' MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_UL' +
- 'T_VENT_PRO_COMP,'#10#10#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - ARTICU' +
- 'LOS.PRECIO_NETO AS IMP_MARGEN_PRO_VENT_COMPRA,'#10'CASE'#10'WHEN ARTICU' +
- 'LOS.PRECIO_NETO = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_PR' +
- 'O_VENT - ARTICULOS.PRECIO_NETO) > 0 THEN'#10' ((MARGEN_VENTAS.IM' +
- 'PORTE_NETO_PRO_VENT - ARTICULOS.PRECIO_NETO) * 100) / MARGEN_VEN' +
- 'TAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_COMP' +
- 'RA,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORT' +
- 'E_NETO_ULT_COMP AS IMP_MARGEN_PRO_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARG' +
- 'EN_COMPRAS.IMPORTE_NETO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTA' +
- 'S.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) ' +
- '> 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COM' +
- 'PRAS.IMPORTE_NETO_ULT_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_' +
- 'PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_ULT_COMP,'#10#10'MARGEN_VEN' +
- 'TAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP' +
- ' AS IMP_MARGEN_PRO_VENT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPO' +
- 'RTE_NETO_PRO_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_' +
- 'PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' (' +
- '(MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NE' +
- 'TO_PRO_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0' +
- #10'END'#10'AS POR_MARGEN_PRO_VENT_PRO_COMP'#10#10'FROM'#10#10#10'(SELECT ID_EMPRESA,' +
- ' ID_CLIENTE, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_ULT_VENT),' +
- '0) AS IMPORTE_UNIDAD_ULT_VENT,'#10' COALESCE(SUM(IMPORTE_NETO_' +
- 'ULT_VENT),0) AS IMPORTE_NETO_ULT_VENT, COALESCE(SUM(IMPORTE_PORT' +
- 'E_ULT_VENT),0) AS IMPORTE_PORTE_ULT_VENT,'#10' COALESCE(SUM(IM' +
- 'PORTE_UNIDAD_PRO_VENT),0) AS IMPORTE_UNIDAD_PRO_VENT, COALESCE(S' +
- 'UM(IMPORTE_NETO_PRO_VENT),0) AS IMPORTE_NETO_PRO_VENT,'#10' CO' +
- 'ALESCE(SUM(IMPORTE_PORTE_PRO_VENT),0) AS IMPORTE_PORTE_PRO_VENT'#10 +
- #10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_CLIENTE, ID_ARTICULO,'#10' ' +
- ' IMPORTE_UNIDAD_VENTA AS IMPORTE_UNIDAD_ULT_VENT, IMPORTE_NETO' +
- '_VENTA AS IMPORTE_NETO_ULT_VENT, IMPORTE_PORTE_VENTA AS IMPORTE_' +
- 'PORTE_ULT_VENT,'#10' NULL AS IMPORTE_UNIDAD_PRO_VENT, NULL AS I' +
- 'MPORTE_NETO_PRO_VENT, NULL AS IMPORTE_PORTE_PRO_VENT'#10#10' FROM V' +
- '_INF_ULTIMA_VENTA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_CLIE' +
- 'NTE.ID_EMPRESA,'#10' FACTURAS_CLIENTE.ID_CLIENTE,'#10' FACTURA' +
- 'S_CLIENTE_DETALLES.ID_ARTICULO,'#10' NULL, NULL, NULL,'#10' AV' +
- 'G(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD) AS IMPORTE_UNIDAD_PR' +
- 'O_VENT,'#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FA' +
- 'CTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETAL' +
- 'LES.DESCUENTO / 100))) AS IMPORTE_NETO_PRO_VENT,'#10' AVG(FACTU' +
- 'RAS_CLIENTE_DETALLES.IMPORTE_PORTE) AS IMPORTE_PORTE_PRO_VENT'#10#10' ' +
- ' FROM FACTURAS_CLIENTE_DETALLES'#10' LEFT OUTER JOIN FACTURAS_C' +
- 'LIENTE'#10' ON (FACTURAS_CLIENTE.ID = FACTURAS_CLIENTE_DETALLES.I' +
- 'D_FACTURA)'#10#10' WHERE (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO IS ' +
- 'NOT NULL) AND (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO > 0)'#10' ' +
- 'AND (FACTURAS_CLIENTE_DETALLES.CANTIDAD > 0)'#10' AND (FACTURAS' +
- '_CLIENTE.FECHA_FACTURA BETWEEN :FECHAINI AND :FECHAFIN)'#10' GROU' +
- 'P BY 1, 2, 3)'#10#10' GROUP BY 1, 2, 3) MARGEN_VENTAS'#10#10#10'LEFT JOIN'#10#10#10'(S' +
- 'ELECT'#10' ID_EMPRESA, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_U' +
- 'LT_COMP),0) AS IMPORTE_UNIDAD_ULT_COMP, COALESCE(SUM(IMPORTE_NET' +
- 'O_ULT_COMP),0) AS IMPORTE_NETO_ULT_COMP,'#10' COALESCE(SUM(IMPORT' +
- 'E_PORTE_ULT_COMP),0) AS IMPORTE_PORTE_ULT_COMP, COALESCE(SUM(IMP' +
- 'ORTE_UNIDAD_PRO_COMP),0) AS IMPORTE_UNIDAD_PRO_COMP,'#10' COALESC' +
- 'E(SUM(IMPORTE_NETO_PRO_COMP),0) AS IMPORTE_NETO_PRO_COMP, COALES' +
- 'CE(SUM(IMPORTE_PORTE_PRO_COMP),0) AS IMPORTE_PORTE_PRO_COMP'#10#10' FR' +
- 'OM'#10' (SELECT'#10' ID_EMPRESA, ID_ARTICULO,'#10' IMPORTE_UNIDA' +
- 'D_COMPRA AS IMPORTE_UNIDAD_ULT_COMP, IMPORTE_NETO_COMPRA AS IMPO' +
- 'RTE_NETO_ULT_COMP, IMPORTE_PORTE_COMPRA AS IMPORTE_PORTE_ULT_COM' +
- 'P,'#10' NULL AS IMPORTE_UNIDAD_PRO_COMP, NULL AS IMPORTE_NETO_P' +
- 'RO_COMP, NULL AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM V_INF_ULTIMA_C' +
- 'OMPRA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_PROVEEDOR.ID_EMP' +
- 'RESA,'#10' FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO,'#10' NULL,' +
- ' NULL, NULL,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IMPORTE_UNIDA' +
- 'D) AS IMPORTE_UNIDAD_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETA' +
- 'LLES.IMPORTE_UNIDAD - (FACTURAS_PROVEEDOR_DETALLES.IMPORTE_UNIDA' +
- 'D * (FACTURAS_PROVEEDOR_DETALLES.DESCUENTO / 100))) AS IMPORTE_N' +
- 'ETO_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IMPORTE_PORT' +
- 'E) AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM FACTURAS_PROVEEDOR_DETALL' +
- 'ES'#10' LEFT OUTER JOIN FACTURAS_PROVEEDOR'#10' ON (FACTURAS_PROVE' +
- 'EDOR.ID = FACTURAS_PROVEEDOR_DETALLES.ID_FACTURA)'#10#10' WHERE (FA' +
- 'CTURAS_PROVEEDOR_DETALLES.ID_ARTICULO IS NOT NULL) AND (FACTURAS' +
- '_PROVEEDOR_DETALLES.ID_ARTICULO > 0)'#10' AND (FACTURAS_PROVEED' +
- 'OR_DETALLES.CANTIDAD > 0)'#10' AND (FACTURAS_PROVEEDOR.FECHA_FA' +
- 'CTURA BETWEEN :FECHAINI AND :FECHAFIN)'#10' GROUP BY 1, 2)'#10#10' GRO' +
- 'UP BY 1, 2) MARGEN_COMPRAS'#10#10#10'ON (MARGEN_COMPRAS.ID_EMPRESA = MAR' +
- 'GEN_VENTAS.ID_EMPRESA)'#10'AND (MARGEN_COMPRAS.ID_ARTICULO = MARGEN_' +
- 'VENTAS.ID_ARTICULO)'#10#10#10'LEFT JOIN ARTICULOS ON (ARTICULOS.ID = MAR' +
- 'GEN_VENTAS.ID_ARTICULO)'#10'LEFT JOIN CONTACTOS CLIENTES ON (CLIENTE' +
- 'S.ID = MARGEN_VENTAS.ID_CLIENTE)'#10'LEFT JOIN CLIENTES_DATOS ON (CL' +
- 'IENTES_DATOS.ID_CLIENTE = CLIENTES.ID)'#10'LEFT JOIN CONTACTOS AGENT' +
- 'ES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)'#10'WHERE ARTICULOS.IN' +
- 'VENTARIABLE = 1) INF_MARGEN_ARTICULOS'
+ 'ALESCE(MARGEN_COMPRAS.IMPORTE_UNIDAD_ULT_COMP, COALESCE(ARTICULO' +
+ 'S.PRECIO_COSTE, 0)) AS IMP_UNIDAD_ULT_COMP,'#10'COALESCE(MARGEN_COMP' +
+ 'RAS.IMPORTE_NETO_ULT_COMP, COALESCE(ARTICULOS.PRECIO_NETO, 0)) A' +
+ 'S IMP_NETO_ULT_COMP,'#10'COALESCE(MARGEN_COMPRAS.IMPORTE_PORTE_ULT_C' +
+ 'OMP, COALESCE(ARTICULOS.PRECIO_PORTE, 0)) AS IMP_PORTE_ULT_COMP,' +
+ #10#10'COALESCE(MARGEN_COMPRAS.IMPORTE_UNIDAD_PRO_COMP, COALESCE(ARTI' +
+ 'CULOS.PRECIO_COSTE, 0)) AS IMP_UNIDAD_PRO_COMP,'#10'COALESCE(MARGEN_' +
+ 'COMPRAS.IMPORTE_NETO_PRO_COMP, COALESCE(ARTICULOS.PRECIO_NETO, 0' +
+ ')) AS IMP_NETO_PRO_COMP,'#10'COALESCE(MARGEN_COMPRAS.IMPORTE_PORTE_P' +
+ 'RO_COMP, COALESCE(ARTICULOS.PRECIO_PORTE, 0)) AS IMP_PORTE_PRO_C' +
+ 'OMP,'#10#10#10#10#10'MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ARTICULOS.PRECIO_' +
+ 'NETO AS IMP_MARGEN_ULT_VENT_COMPRA,'#10'CASE'#10'WHEN ARTICULOS.PRECIO_' +
+ 'NETO = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - AR' +
+ 'TICULOS.PRECIO_NETO) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_' +
+ 'ULT_VENT - ARTICULOS.PRECIO_NETO) * 100) / MARGEN_VENTAS.IMPORTE' +
+ '_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_ULT_VENT_COMPRA,'#10#10'MARGEN' +
+ '_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_' +
+ 'COMP AS IMP_MARGEN_ULT_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.' +
+ 'IMPORTE_NETO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_N' +
+ 'ETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) > 0 THEN'#10' ' +
+ ' ((MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORT' +
+ 'E_NETO_ULT_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'EL' +
+ 'SE 0'#10'END'#10'AS POR_MARGEN_ULT_VENT_ULT_COMP,'#10#10'MARGEN_VENTAS.IMPORTE' +
+ '_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP AS IMP_MAR' +
+ 'GEN_ULT_VENT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO_PR' +
+ 'O_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ' +
+ 'MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' ((MARGEN_VEN' +
+ 'TAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP' +
+ ') * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR' +
+ '_MARGEN_ULT_VENT_PRO_COMP,'#10#10#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VEN' +
+ 'T - ARTICULOS.PRECIO_NETO AS IMP_MARGEN_PRO_VENT_COMPRA,'#10'CASE'#10'WH' +
+ 'EN ARTICULOS.PRECIO_NETO = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPOR' +
+ 'TE_NETO_PRO_VENT - ARTICULOS.PRECIO_NETO) > 0 THEN'#10' ((MARGEN' +
+ '_VENTAS.IMPORTE_NETO_PRO_VENT - ARTICULOS.PRECIO_NETO) * 100) / ' +
+ 'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO' +
+ '_VENT_COMPRA,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMP' +
+ 'RAS.IMPORTE_NETO_ULT_COMP AS IMP_MARGEN_PRO_VENT_ULT_COMP,'#10'CASE'#10 +
+ 'WHEN MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP = 0 THEN 100'#10'WHEN (MA' +
+ 'RGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_' +
+ 'ULT_COMP) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - ' +
+ 'MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) * 100) / MARGEN_VENTAS.IMP' +
+ 'ORTE_NETO_PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_ULT_COMP,'#10#10 +
+ 'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NET' +
+ 'O_PRO_COMP AS IMP_MARGEN_PRO_VENT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_CO' +
+ 'MPRAS.IMPORTE_NETO_PRO_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMP' +
+ 'ORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) > 0 T' +
+ 'HEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.' +
+ 'IMPORTE_NETO_PRO_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_PRO_V' +
+ 'ENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_PRO_COMP'#10#10'FROM'#10#10#10'(SELECT I' +
+ 'D_EMPRESA, ID_CLIENTE, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_' +
+ 'ULT_VENT),0) AS IMPORTE_UNIDAD_ULT_VENT,'#10' COALESCE(SUM(IMP' +
+ 'ORTE_NETO_ULT_VENT),0) AS IMPORTE_NETO_ULT_VENT, COALESCE(SUM(IM' +
+ 'PORTE_PORTE_ULT_VENT),0) AS IMPORTE_PORTE_ULT_VENT,'#10' COALE' +
+ 'SCE(SUM(IMPORTE_UNIDAD_PRO_VENT),0) AS IMPORTE_UNIDAD_PRO_VENT, ' +
+ 'COALESCE(SUM(IMPORTE_NETO_PRO_VENT),0) AS IMPORTE_NETO_PRO_VENT,' +
+ #10' COALESCE(SUM(IMPORTE_PORTE_PRO_VENT),0) AS IMPORTE_PORTE' +
+ '_PRO_VENT'#10#10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_CLIENTE, ID_ART' +
+ 'ICULO,'#10' IMPORTE_UNIDAD_VENTA AS IMPORTE_UNIDAD_ULT_VENT, IM' +
+ 'PORTE_NETO_VENTA AS IMPORTE_NETO_ULT_VENT, IMPORTE_PORTE_VENTA A' +
+ 'S IMPORTE_PORTE_ULT_VENT,'#10' NULL AS IMPORTE_UNIDAD_PRO_VENT,' +
+ ' NULL AS IMPORTE_NETO_PRO_VENT, NULL AS IMPORTE_PORTE_PRO_VENT'#10#10 +
+ ' FROM V_INF_ULTIMA_VENTA'#10#10' UNION ALL'#10#10' SELECT'#10' FAC' +
+ 'TURAS_CLIENTE.ID_EMPRESA,'#10' FACTURAS_CLIENTE.ID_CLIENTE,'#10' ' +
+ ' FACTURAS_CLIENTE_DETALLES.ID_ARTICULO,'#10' NULL, NULL, NULL' +
+ ','#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD) AS IMPORTE' +
+ '_UNIDAD_PRO_VENT,'#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_UN' +
+ 'IDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLI' +
+ 'ENTE_DETALLES.DESCUENTO / 100))) AS IMPORTE_NETO_PRO_VENT,'#10' ' +
+ ' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_PORTE) AS IMPORTE_PORTE_P' +
+ 'RO_VENT'#10#10' FROM FACTURAS_CLIENTE_DETALLES'#10' LEFT OUTER JOIN ' +
+ 'FACTURAS_CLIENTE'#10' ON (FACTURAS_CLIENTE.ID = FACTURAS_CLIENTE_' +
+ 'DETALLES.ID_FACTURA)'#10#10' WHERE (FACTURAS_CLIENTE_DETALLES.ID_AR' +
+ 'TICULO IS NOT NULL) AND (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO >' +
+ ' 0)'#10' AND (FACTURAS_CLIENTE_DETALLES.CANTIDAD > 0)'#10' AND' +
+ ' (FACTURAS_CLIENTE.FECHA_FACTURA BETWEEN :FECHAINI AND :FECHAFIN' +
+ ')'#10' GROUP BY 1, 2, 3)'#10#10' GROUP BY 1, 2, 3) MARGEN_VENTAS'#10#10#10'LEFT' +
+ ' JOIN'#10#10#10'(SELECT'#10' ID_EMPRESA, ID_ARTICULO, COALESCE(SUM(IMPORT' +
+ 'E_UNIDAD_ULT_COMP),0) AS IMPORTE_UNIDAD_ULT_COMP, COALESCE(SUM(I' +
+ 'MPORTE_NETO_ULT_COMP),0) AS IMPORTE_NETO_ULT_COMP,'#10' COALESCE(' +
+ 'SUM(IMPORTE_PORTE_ULT_COMP),0) AS IMPORTE_PORTE_ULT_COMP, COALES' +
+ 'CE(SUM(IMPORTE_UNIDAD_PRO_COMP),0) AS IMPORTE_UNIDAD_PRO_COMP,'#10' ' +
+ ' COALESCE(SUM(IMPORTE_NETO_PRO_COMP),0) AS IMPORTE_NETO_PRO_CO' +
+ 'MP, COALESCE(SUM(IMPORTE_PORTE_PRO_COMP),0) AS IMPORTE_PORTE_PRO' +
+ '_COMP'#10#10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_ARTICULO,'#10' IMP' +
+ 'ORTE_UNIDAD_COMPRA AS IMPORTE_UNIDAD_ULT_COMP, IMPORTE_NETO_COMP' +
+ 'RA AS IMPORTE_NETO_ULT_COMP, IMPORTE_PORTE_COMPRA AS IMPORTE_POR' +
+ 'TE_ULT_COMP,'#10' NULL AS IMPORTE_UNIDAD_PRO_COMP, NULL AS IMPO' +
+ 'RTE_NETO_PRO_COMP, NULL AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM V_IN' +
+ 'F_ULTIMA_COMPRA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_PROVEE' +
+ 'DOR.ID_EMPRESA,'#10' FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO,'#10' ' +
+ ' NULL, NULL, NULL,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IMP' +
+ 'ORTE_UNIDAD) AS IMPORTE_UNIDAD_PRO_COMP,'#10' AVG(FACTURAS_PROV' +
+ 'EEDOR_DETALLES.IMPORTE_UNIDAD - (FACTURAS_PROVEEDOR_DETALLES.IMP' +
+ 'ORTE_UNIDAD * (FACTURAS_PROVEEDOR_DETALLES.DESCUENTO / 100))) AS' +
+ ' IMPORTE_NETO_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IM' +
+ 'PORTE_PORTE) AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM FACTURAS_PROVEE' +
+ 'DOR_DETALLES'#10' LEFT OUTER JOIN FACTURAS_PROVEEDOR'#10' ON (FACT' +
+ 'URAS_PROVEEDOR.ID = FACTURAS_PROVEEDOR_DETALLES.ID_FACTURA)'#10#10' ' +
+ ' WHERE (FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO IS NOT NULL) AND' +
+ ' (FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO > 0)'#10' AND (FACTUR' +
+ 'AS_PROVEEDOR_DETALLES.CANTIDAD > 0)'#10' /*Las compras promedio' +
+ ' deben de calcularse desde el principio de los tiempos hasta aho' +
+ 'ra*/'#10' AND (FACTURAS_PROVEEDOR.FECHA_FACTURA BETWEEN '#39'12.12.' +
+ '2000'#39' AND current_date)'#10' GROUP BY 1, 2)'#10#10' GROUP BY 1, 2) MAR' +
+ 'GEN_COMPRAS'#10#10#10'ON (MARGEN_COMPRAS.ID_EMPRESA = MARGEN_VENTAS.ID_E' +
+ 'MPRESA)'#10'AND (MARGEN_COMPRAS.ID_ARTICULO = MARGEN_VENTAS.ID_ARTIC' +
+ 'ULO)'#10#10#10'LEFT JOIN ARTICULOS ON (ARTICULOS.ID = MARGEN_VENTAS.ID_A' +
+ 'RTICULO)'#10'LEFT JOIN CONTACTOS CLIENTES ON (CLIENTES.ID = MARGEN_V' +
+ 'ENTAS.ID_CLIENTE)'#10'LEFT JOIN CLIENTES_DATOS ON (CLIENTES_DATOS.ID' +
+ '_CLIENTE = CLIENTES.ID)'#10'LEFT JOIN CONTACTOS AGENTES ON (AGENTES.' +
+ 'ID = CLIENTES_DATOS.ID_AGENTE)'#10'WHERE ARTICULOS.INVENTARIABLE = 1' +
+ ') INF_MARGEN_ARTICULOS'
StatementType = stSQL
ColumnMappings = <
item
diff --git a/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.dfm b/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.dfm
index 415f46b0..5511c977 100644
--- a/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.dfm
+++ b/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.dfm
@@ -11,27 +11,27 @@ inherited frViewInfMargenArticulo: TfrViewInfMargenArticulo
inherited pnlParametros: TTBXDockablePanel
ExplicitHeight = 156
inherited pcParametros: TPageControl
- Height = 67
- ExplicitHeight = 67
+ Height = 69
+ ExplicitHeight = 69
inherited TabSheet5: TTabSheet
ExplicitHeight = 57
end
inherited tsColumnas: TTabSheet
- ExplicitHeight = 57
+ ExplicitHeight = 59
inherited frViewColumnas1: TfrViewColumnas
- Height = 57
- ExplicitHeight = 57
+ Height = 59
+ ExplicitHeight = 59
inherited lbColumnas: TcxCheckListBox
- Height = 28
- ExplicitHeight = 28
+ Height = 30
+ ExplicitHeight = 30
end
end
end
inherited tsAgrupacion: TTabSheet
- ExplicitHeight = 57
+ ExplicitHeight = 59
inherited frViewAgrupaciones1: TfrViewAgrupaciones
- Height = 57
- ExplicitHeight = 57
+ Height = 59
+ ExplicitHeight = 59
end
end
end
@@ -42,34 +42,34 @@ inherited frViewInfMargenArticulo: TfrViewInfMargenArticulo
ExplicitTop = 156
ExplicitHeight = 171
inherited TBXPageScroller1: TTBXPageScroller
- Height = 149
- ExplicitHeight = 149
+ Height = 151
+ ExplicitHeight = 151
inherited pcTareas: TPageControl
- Height = 101
- ExplicitHeight = 101
+ Height = 103
+ ExplicitHeight = 103
inherited tsSumarios: TTabSheet
- ExplicitHeight = 91
+ ExplicitHeight = 93
inherited frViewSumarios1: TfrViewSumarios
- Height = 91
- ExplicitHeight = 91
+ Height = 93
+ ExplicitHeight = 93
inherited vgSumarios: TcxVerticalGrid
- Height = 62
+ Height = 64
ExplicitHeight = 62
end
end
end
inherited tsFiltros: TTabSheet
- ExplicitHeight = 91
+ ExplicitHeight = 93
inherited frViewFiltros1: TfrViewFiltros
- Height = 91
- ExplicitHeight = 91
+ Height = 93
+ ExplicitHeight = 93
inherited cxFilterControl1: TcxFilterControl
- Height = 32
- ExplicitHeight = 32
+ Height = 34
+ ExplicitHeight = 34
end
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
- Top = 61
- ExplicitTop = 61
+ Top = 63
+ ExplicitTop = 63
end
end
end
diff --git a/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.pas b/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.pas
index 6fd8e9e0..5009ac9d 100644
--- a/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.pas
+++ b/Source/Modulos/Informe margen por articulo/Views/uViewInfMargenArticulo.pas
@@ -113,6 +113,9 @@ begin
ParamByName('FECHAINI').AsDateTime := frViewPeriodoFechas1.FechaInicial;
ParamByName('FECHAFIN').AsDateTime := frViewPeriodoFechas1.FechaFinal;
+// ParamByName('FECHAINI2').AsDateTime := frViewPeriodoFechas1.FechaInicial; //'12.12.2000';
+// ParamByName('FECHAFIN2').AsDateTime := frViewPeriodoFechas1.FechaFinal;
+
Active := True;
frViewColumnas1.Execute;
diff --git a/Source/Servidor/FactuGES_Server.bdsproj b/Source/Servidor/FactuGES_Server.bdsproj
index 7d802cf6..32c23b3d 100644
--- a/Source/Servidor/FactuGES_Server.bdsproj
+++ b/Source/Servidor/FactuGES_Server.bdsproj
@@ -153,8 +153,8 @@
True
False
2
- 3
- 9
+ 4
+ 0
0
False
False
@@ -167,15 +167,15 @@
Rodax Software S.L.
- 2.3.9.0
+ 2.4.0.0
FactuGES Server
-
+ 2.3.9.0
-
+ viernes, 18 de enero de 2008 21:11
RemObjects Pascal Script - RemObjects SDK 3.0 Integration
diff --git a/Source/Servidor/FactuGES_Server.dpr b/Source/Servidor/FactuGES_Server.dpr
index 8556d9e1..24085886 100644
--- a/Source/Servidor/FactuGES_Server.dpr
+++ b/Source/Servidor/FactuGES_Server.dpr
@@ -123,15 +123,15 @@ uses
srvInfMargenArticulo_Impl in '..\Modulos\Informe margen por articulo\Servidor\srvInfMargenArticulo_Impl.pas' {srvInfMargenArticulo: TDARemoteService},
schInfVentasArticuloClient_Intf in '..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloClient_Intf.pas',
schInfVentasArticuloServer_Intf in '..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloServer_Intf.pas',
- schInfMargenArticuloClient_Intf in '..\Modulos\Informe margen por articulo\Model\schInfMargenArticuloClient_Intf.pas',
- schInfMargenArticuloServer_Intf in '..\Modulos\Informe margen por articulo\Model\schInfMargenArticuloServer_Intf.pas',
schTiendaWebClient_Intf in '..\Modulos\Tienda web\Model\schTiendaWebClient_Intf.pas',
schTiendaWebServer_Intf in '..\Modulos\Tienda web\Model\schTiendaWebServer_Intf.pas',
uRptEtiquetasContactos_Server in '..\Modulos\Contactos\Reports\uRptEtiquetasContactos_Server.pas' {RptEtiquetasContactos: TDataModule},
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
schAlbaranesClienteClient_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas',
- schAlbaranesClienteServer_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas';
+ schAlbaranesClienteServer_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas',
+ schInfMargenArticuloClient_Intf in '..\Modulos\Informe margen por articulo\Model\schInfMargenArticuloClient_Intf.pas',
+ schInfMargenArticuloServer_Intf in '..\Modulos\Informe margen por articulo\Model\schInfMargenArticuloServer_Intf.pas';
{$R *.res}
{$R ..\Servicios\RODLFile.res}
diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc
index 02400a25..fe5549a2 100644
--- a/Source/Servidor/FactuGES_Server.rc
+++ b/Source/Servidor/FactuGES_Server.rc
@@ -1,7 +1,7 @@
MAINICON ICON "c:\Codigo Luis Leon\Source\Iconos\Servidor.ico"
1 VERSIONINFO
-FILEVERSION 2,3,9,0
-PRODUCTVERSION 2,3,9,0
+FILEVERSION 2,4,0,0
+PRODUCTVERSION 2,4,0,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.3.9.0\0"
+ VALUE "FileVersion", "2.4.0.0\0"
VALUE "ProductName", "FactuGES Server\0"
- VALUE "ProductVersion", "2.3.9.0\0"
- VALUE "CompileDate", "viernes, 18 de enero de 2008 21:11\0"
+ VALUE "ProductVersion", "2.4.0.0\0"
+ VALUE "CompileDate", "lunes, 21 de enero de 2008 17:54\0"
END
END
BLOCK "VarFileInfo"
diff --git a/Source/Servidor/FactuGES_Server.res b/Source/Servidor/FactuGES_Server.res
index 583250b9..d9c41dd3 100644
Binary files a/Source/Servidor/FactuGES_Server.res and b/Source/Servidor/FactuGES_Server.res differ