diff --git a/Build/Build.fbl6 b/Build/Build.fbl6 index bb1702f..3f8795a 100644 Binary files a/Build/Build.fbl6 and b/Build/Build.fbl6 differ diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql index 8489a1c..56c2e92 100644 --- a/Database/scripts/factuges.sql +++ b/Database/scripts/factuges.sql @@ -4542,13 +4542,15 @@ EXTRACT(MONTH FROM albaranes_cliente.FECHA_ALBARAN) as MES, case when (albaranes_cliente_detalles.cantidad > 0) then albaranes_cliente_detalles.cantidad else 0 end as cantidad, -case when (albaranes_cliente_detalles.cantidad < 0) then albaranes_cliente_detalles.cantidad +/*Así solo se tendránen cuenta las ordenes de devolución, en el caso de que una linea de albarán sea negativa no se tendrá en cuenta "productos que deja de exposición"*/ +case when ((albaranes_cliente_detalles.cantidad < 0) and (albaranes_cliente.tipo = 'D')) then albaranes_cliente_detalles.cantidad else 0 end as cantidad_dev, case when (albaranes_cliente_detalles.importe_total > 0) then albaranes_cliente_detalles.importe_total else 0 end as importe_total, -case when (albaranes_cliente_detalles.importe_total < 0) then albaranes_cliente_detalles.importe_total +/*Así solo se tendránen cuenta las ordenes de devolución, en el caso de que una linea de albarán sea negativa no se tendrá en cuenta "productos que deja de exposición"*/ +case when ((albaranes_cliente_detalles.importe_total < 0) and (albaranes_Cliente.tipo = 'D')) then albaranes_cliente_detalles.importe_total else 0 end as importe_total_dev @@ -4581,13 +4583,15 @@ EXTRACT(MONTH FROM facturas_cliente.FECHA_FACTURA) as MES, case when (facturas_cliente_detalles.cantidad > 0) then facturas_cliente_detalles.cantidad else 0 end as cantidad, -case when (facturas_cliente_detalles.cantidad < 0) then facturas_cliente_detalles.cantidad +/*Así solo se tendránen cuenta los abonos, en el caso de que una linea de la factura sea negativa no se tendrá en cuenta "productos que deja de exposición"*/ +case when ((facturas_cliente_detalles.cantidad < 0) and (facturas_cliente.importe_total < 0)) then facturas_cliente_detalles.cantidad else 0 end as cantidad_dev, case when (facturas_cliente_detalles.importe_total > 0) then facturas_cliente_detalles.importe_total else 0 end as importe_total, -case when (facturas_cliente_detalles.importe_total < 0) then facturas_cliente_detalles.importe_total +/*Así solo se tendránen cuenta los abonos, en el caso de que una linea de la factura sea negativa no se tendrá en cuenta "productos que deja de exposición"*/ +case when ((facturas_cliente_detalles.importe_total < 0) and (facturas_cliente.importe_total < 0)) then facturas_cliente_detalles.importe_total else 0 end as importe_total_dev @@ -4704,6 +4708,45 @@ where (CC.id_categoria = 1) and (CD.id_agente is not null) ; +CREATE VIEW V_INF_OBJ_CLI_ACTIVOS_ALB_AGE( + ID_EMPRESA, + ID_AGENTE, + ANO, + SEMESTRE, + TRIMESTRE, + MES, + ID_CLIENTE) +AS +select C.id_empresa, CD.id_agente, EXTRACT(YEAR FROM C.fecha_albaran) as ANO, +CAST((DIV(EXTRACT(MONTH FROM C.fecha_albaran),7)+1) AS SMALLINT) as SEMESTRE, +CAST((DIV((EXTRACT(MONTH FROM C.fecha_albaran)+2),3)) AS SMALLINT) as TRIMESTRE, +EXTRACT(MONTH FROM C.fecha_albaran) as MES, +C.id_cliente + +from albaranes_cliente C +left join clientes_datos CD on (CD.id_cliente = C.id_cliente) +where (CD.id_agente is not null) /*quitamos aquellos clientes que no tienen agente asociado*/ +; + +CREATE VIEW V_INF_OBJ_CLI_ACTIVOS_FAC_AGE( + ID_EMPRESA, + ID_AGENTE, + ANO, + SEMESTRE, + TRIMESTRE, + MES, + ID_CLIENTE) +AS +select C.id_empresa, CD.id_agente, EXTRACT(YEAR FROM C.fecha_factura) as ANO, +CAST((DIV(EXTRACT(MONTH FROM C.fecha_factura),7)+1) AS SMALLINT) as SEMESTRE, +CAST((DIV((EXTRACT(MONTH FROM C.fecha_factura)+2),3)) AS SMALLINT) as TRIMESTRE, +EXTRACT(MONTH FROM C.fecha_factura) as MES, +C.id_cliente + +from facturas_cliente C +left join clientes_datos CD on (CD.id_cliente = C.id_cliente) +where (CD.id_agente is not null) /*quitamos aquellos clientes que no tienen agente asociado*/ +; /******************************************************************************/ /**** Primary Keys ****/ diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj index 40c7b04..1197e55 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\TrueFalse4230FalseFalseFalseFalseFalse30821252Rodax Software S.L.4.2.3.0FactuGESFactuGES4.2.3.0FactuGES.dprFalse +FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse4240FalseFalseFalseFalseFalse30821252Rodax Software S.L.4.2.4.0FactuGESFactuGES4.2.4.0FactuGES.dprFalse diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc index 1ea9bc1..e716d49 100644 --- a/Source/Cliente/FactuGES.rc +++ b/Source/Cliente/FactuGES.rc @@ -1,7 +1,7 @@ MAINICON ICON "C:\Codigo\Resources\Iconos\Factuges.ico" 1 VERSIONINFO -FILEVERSION 4,2,3,0 -PRODUCTVERSION 4,2,3,0 +FILEVERSION 4,2,4,0 +PRODUCTVERSION 4,2,4,0 FILEFLAGSMASK 0x3FL FILEFLAGS 0x00L FILEOS 0x40004L @@ -13,10 +13,10 @@ BEGIN BLOCK "0C0A04E4" BEGIN VALUE "CompanyName", "Rodax Software S.L.\0" - VALUE "FileVersion", "4.2.3.0\0" + VALUE "FileVersion", "4.2.4.0\0" VALUE "InternalName", "FactuGES\0" VALUE "ProductName", "FactuGES\0" - VALUE "ProductVersion", "4.2.3.0\0" + VALUE "ProductVersion", "4.2.4.0\0" END END BLOCK "VarFileInfo" diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index e23a48f..51b1b5b 100644 Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ diff --git a/Source/Informes/1/InformeObjetivosAgentesFacturas.fr3 b/Source/Informes/1/InformeObjetivosAgentesFacturas.fr3 index 5721be9..76ebfd0 100644 --- a/Source/Informes/1/InformeObjetivosAgentesFacturas.fr3 +++ b/Source/Informes/1/InformeObjetivosAgentesFacturas.fr3 @@ -1,12 +1,12 @@ - + - + diff --git a/Source/Informes/2/InformeObjetivosAgentesFacturas.fr3 b/Source/Informes/2/InformeObjetivosAgentesFacturas.fr3 index 5721be9..3d1abdc 100644 --- a/Source/Informes/2/InformeObjetivosAgentesFacturas.fr3 +++ b/Source/Informes/2/InformeObjetivosAgentesFacturas.fr3 @@ -1,12 +1,12 @@ - + - + diff --git a/Source/Informes/5/InformeObjetivosAgentesFacturas.fr3 b/Source/Informes/5/InformeObjetivosAgentesFacturas.fr3 index 5721be9..57dd7a4 100644 --- a/Source/Informes/5/InformeObjetivosAgentesFacturas.fr3 +++ b/Source/Informes/5/InformeObjetivosAgentesFacturas.fr3 @@ -1,12 +1,12 @@ - + - + diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm index a9071d6..b1303d4 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm @@ -502,53 +502,56 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Name = 'IBX' SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, MES,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOTALES.N' + - 'UM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS_CLIE' + - 'NTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_O' + - 'BJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CAN' + - 'TIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA)' + - ' as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDA' + - 'D_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSE' + - 'GUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TO' + - 'TAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_' + - 'TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTAD' + - 'O,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) a' + - 's IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CONSEGUI' + - 'DA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL' + - '_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' c' + - 'ase when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, 0) <> ' + - '0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_TOTALES' + - '.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_MEDIO_C' + - 'LIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.MES,'#10'0 as ALTAS_' + - 'CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.' + - 'IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA,' + - ' 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IM' + - 'PORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONS' + - 'EGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join contactos C' + - ' on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3'#10 + - #10'UNION ALL'#10#10'select ID_AGENTE, ANO, MES,'#10'0 as ALTAS_CLIENTE,'#10'0 as' + - ' CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUI' + - 'DA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_D' + - 'EVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTIDAD_DEVUELTA)) as ' + - 'CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CO' + - 'NSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, (sum(IMPORT' + - 'E_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUI' + - 'DO'#10'from v_inf_objetivos_albaranes'#10'where ((v_inf_objetivos_albara' + - 'nes.id_empresa = :ID_EMPRESA) and (v_inf_objetivos_albaranes.ANO' + - ' = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, MES' + - ','#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 ' + - 'as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEV' + - 'UELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, ' + - '0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_' + - 'obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10') SEN'#10#10'l' + - 'eft join periodos_aux P on ((P.periodo = '#39'MENSUAL'#39') and (P.valor' + - ' = MES))'#10'left join contactos C on (C.ID = SEN.ID_AGENTE)'#10'left jo' + - 'in agentes_datos on (agentes_datos.id_agente = SEN.ID_AGENTE)'#10#10'l' + - 'eft join'#10'('#10'select coalesce(ID_AGENTE, -1) as ID_AGENTE, count(ID' + - '_CLIENTE) as NUM_CLIENTES_TOTALES'#10'from clientes_datos'#10'group by 1' + - #10') CLIENTES_TOTALES on (CLIENTES_TOTALES.ID_AGENTE = SEN.id_Agen' + - 'te)'#10#10'where agentes_datos.FECHA_BAJA is null'#10'and {where}'#10'group by' + - ' 1,2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10 + 'E, ANO, MES,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as ALTAS' + + '_CLIENTE,'#10#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALES,'#10#10' s' + + 'um(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OBJETIVO' + + ') as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CANTIDAD' + + '_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, sum(CA' + + 'NTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10' sum(I' + + 'MPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) ' + + 'as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as IMPORTE_TO' + + 'TAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - sum(CANTI' + + 'DAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_TOTAL_CON' + + 'SEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10#10' cas' + + 'e when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(IMPORTE_T' + + 'OTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' else 0'#10' ' + + 'end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENTES_ACTIVO' + + 'S) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENTES_ACTIVO' + + 'S))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10'('#10'select ' + + 'AO.ID_AGENTE, AO.ANO, AO.MES,'#10'0 as ALTAS_CLIENTE,'#10'0 clientes_act' + + 'ivos,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.IMP' + + 'ORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 ' + + 'as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPOR' + + 'TE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGU' + + 'IDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join contactos C on' + + ' (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3'#10#10'UN' + + 'ION ALL'#10#10'select ID_AGENTE, ANO, MES,'#10'0 as ALTAS_CLIENTE,'#10'0 clien' + + 'tes_activos,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(' + + 'CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUEL' + + 'TA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTID' + + 'AD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGUI' + + 'DO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVU' + + 'ELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPOR' + + 'TE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_albaranes'#10'where ((v_inf' + + '_objetivos_albaranes.id_empresa = :ID_EMPRESA) and (v_inf_objeti' + + 'vos_albaranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID' + + '_AGENTE, ANO, MES,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 cliente' + + 's_activos,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as C' + + 'ANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_' + + 'CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as' + + ' IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_obj_clientes_agentes'#10'where ' + + '(ANO = :ANO1)'#10'group by 1,2,3'#10#10'union all'#10#10'select ID_AGENTE, ANO, ' + + 'MES,'#10'0 as ALTAS_CLIENTE,'#10'count(distinct ID_CLIENTE) as CLIENTES_' + + 'ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CAN' + + 'TIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CO' + + 'NSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as I' + + 'MPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_obj_cli_activos_alb_age'#10'where' + + ' (ANO = :ANO1) and (v_inf_obj_cli_activos_alb_age.ID_EMPRESA = :' + + 'ID_EMPRESA)'#10'group by 1,2,3'#10#10') SEN'#10#10'left join periodos_aux P on (' + + '(P.periodo = '#39'MENSUAL'#39') and (P.valor = MES))'#10'left join contactos' + + ' C on (C.ID = SEN.ID_AGENTE)'#10'left join agentes_datos on (agentes' + + '_datos.id_agente = SEN.ID_AGENTE)'#10#10#10'where agentes_datos.FECHA_BA' + + 'JA is null'#10'and {where}'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5'#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -2039,54 +2042,57 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Default = True SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, TRIMESTRE,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOT' + - 'ALES.NUM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTA' + - 'S_CLIENTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANT' + - 'IDAD_OBJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' s' + - 'um(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEV' + - 'UELTA) as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as C' + - 'ANTIDAD_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE' + - '_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPO' + - 'RTE_TOTAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CAN' + - 'TIDAD_TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RE' + - 'SULTADO,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETI' + - 'VO)) as IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CO' + - 'NSEGUIDA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD' + - '_TOTAL_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10 + - #10' case when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, ' + - '0) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_T' + - 'OTALES.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_M' + - 'EDIO_CLIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.TRIMESTRE,' + - #10'0 as ALTAS_CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJET' + + 'E, ANO, TRIMESTRE,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as' + + ' ALTAS_CLIENTE,'#10#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALES,'#10 + + #10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OB' + + 'JETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CA' + + 'NTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, ' + + 'sum(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10' ' + + ' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVU' + + 'ELTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as IMPO' + + 'RTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - sum' + + '(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_TOT' + + 'AL_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10#10' ' + + ' case when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(IMP' + + 'ORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' else ' + + '0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENTES_' + + 'ACTIVOS) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENTES_' + + 'ACTIVOS))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10'('#10's' + + 'elect AO.ID_AGENTE, AO.ANO, AO.TRIMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'0 ' + + 'as CLIENTES_ACTIVOS,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJET' + 'IVO, sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD' + '_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGU' + 'IDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORT' + 'E_TOTAL_CONSEGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join' + ' contactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'gro' + 'up by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'0 as A' + - 'LTAS_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum' + - '(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUE' + - 'LTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTI' + - 'DAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGU' + - 'IDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEV' + - 'UELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPO' + - 'RTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_albaranes'#10'where ((v_in' + - 'f_objetivos_albaranes.id_empresa = :ID_EMPRESA) and (v_inf_objet' + - 'ivos_albaranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select I' + - 'D_AGENTE, ANO, TRIMESTRE,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 ' + - 'as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSE' + - 'GUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0' + - ' as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTA' + - 'L_CONSEGUIDO'#10'from v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)' + - #10'group by 1,2,3'#10') SEN'#10#10'left join periodos_aux P on ((P.periodo =' + - ' '#39'TRIMESTRAL'#39') and (P.valor = TRIMESTRE))'#10'left join contactos C ' + - 'on (C.ID = SEN.ID_AGENTE)'#10'left join agentes_datos on (agentes_da' + - 'tos.id_agente = SEN.ID_AGENTE)'#10#10'left join'#10'('#10'select coalesce(ID_A' + - 'GENTE, -1) as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTES_TOTAL' + - 'ES'#10'from clientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (CLIENTE' + - 'S_TOTALES.ID_AGENTE = SEN.id_Agente)'#10#10'where agentes_datos.FECHA_' + - 'BAJA is null'#10'and {where}'#10'group by 1,2,3,4,5,6'#10'order by 1,2,3,4,5' + - ',6'#10#10#10#10#10#10#10#10#10 + 'LTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 a' + + 's IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGU' + + 'IDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_' + + 'CONSEGUIDA) + sum(CANTIDAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUI' + + 'DA,'#10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_D' + + 'EVUELTO) as IMPORTE_DEVUELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMP' + + 'ORTE_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos' + + '_albaranes'#10'where ((v_inf_objetivos_albaranes.id_empresa = :ID_EM' + + 'PRESA) and (v_inf_objetivos_albaranes.ANO = :ANO1))'#10'group by 1,2' + + ',3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'count(ID_CLIENT' + + 'E) as ALTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETI' + + 'VO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTID' + + 'AD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEG' + + 'UIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from ' + + 'v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10#10'u' + + 'nion all'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'0 as ALTAS_CLIENTE,'#10 + + 'count(distinct ID_CLIENTE) as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OB' + + 'JETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CA' + + 'NTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CO' + + 'NSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'f' + + 'rom v_inf_obj_cli_activos_alb_age'#10'where (ANO = :ANO1) and (v_inf' + + '_obj_cli_activos_alb_age.ID_EMPRESA = :ID_EMPRESA)'#10'group by 1,2,' + + '3'#10#10') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'TRIMESTRAL'#39 + + ') and (P.valor = TRIMESTRE))'#10'left join contactos C on (C.ID = SE' + + 'N.ID_AGENTE)'#10'left join agentes_datos on (agentes_datos.id_agente' + + ' = SEN.ID_AGENTE)'#10#10'where agentes_datos.FECHA_BAJA is null'#10'and {w' + + 'here}'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5'#10#10#10#10#10#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -2264,54 +2270,57 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Default = True SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, SEMESTRE,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOTA' + - 'LES.NUM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS' + - '_CLIENTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTI' + - 'DAD_OBJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' su' + - 'm(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVU' + - 'ELTA) as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as CA' + - 'NTIDAD_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_' + - 'CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPOR' + - 'TE_TOTAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANT' + - 'IDAD_TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RES' + - 'ULTADO,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETIV' + - 'O)) as IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CON' + - 'SEGUIDA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_' + - 'TOTAL_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10 + - ' case when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, 0' + - ') <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_TO' + - 'TALES.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_ME' + - 'DIO_CLIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.SEMESTRE,'#10'0' + - ' as ALTAS_CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIV' + - 'O, sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_C' + - 'ONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUID' + - 'A, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_' + - 'TOTAL_CONSEGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join c' + - 'ontactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group' + - ' by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'0 as ALTA' + - 'S_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CA' + - 'NTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA' + - ') as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTIDAD' + - '_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGUIDO' + - ') as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUEL' + - 'TO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPORTE' + - '_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_albaranes'#10'where ((v_inf_o' + - 'bjetivos_albaranes.id_empresa = :ID_EMPRESA) and (v_inf_objetivo' + - 's_albaranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_A' + - 'GENTE, ANO, SEMESTRE,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as C' + - 'ANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUID' + - 'A, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as ' + - 'IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CO' + - 'NSEGUIDO'#10'from v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'gro' + - 'up by 1,2,3'#10') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'SE' + - 'MESTRAL'#39') and (P.valor = SEMESTRE))'#10'left join contactos C on (C.' + - 'ID = SEN.ID_AGENTE)'#10'left join agentes_datos on (agentes_datos.id' + - '_agente = SEN.ID_AGENTE)'#10#10'left join'#10'('#10'select coalesce(ID_AGENTE,' + - ' -1) as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTES_TOTALES'#10'fro' + - 'm clientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (CLIENTES_TOTA' + - 'LES.ID_AGENTE = SEN.id_Agente)'#10#10'where agentes_datos.FECHA_BAJA i' + - 's null'#10'and {where}'#10'group by 1,2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10 + - #10#10#10#10#10 + 'E, ANO, SEMESTRE,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as ' + + 'ALTAS_CLIENTE,'#10' '#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALE' + + 'S,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE' + + '_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as' + + ' CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELT' + + 'A, sum(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10 + + ' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_D' + + 'EVUELTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as I' + + 'MPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - ' + + 'sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_' + + 'TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,' + + #10#10' case when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(' + + 'IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' el' + + 'se 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENT' + + 'ES_ACTIVOS) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENT' + + 'ES_ACTIVOS))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10 + + '('#10'select AO.ID_AGENTE, AO.ANO, AO.SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10 + + '0 as CLIENTES_ACTIVOS,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJ' + + 'ETIVO, sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTID' + + 'AD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSE' + + 'GUIDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPO' + + 'RTE_TOTAL_CONSEGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left jo' + + 'in contactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'g' + + 'roup by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'0 as ' + + 'ALTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 ' + + 'as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEG' + + 'UIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD' + + '_CONSEGUIDA) + sum(CANTIDAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGU' + + 'IDA,'#10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_' + + 'DEVUELTO) as IMPORTE_DEVUELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IM' + + 'PORTE_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivo' + + 's_albaranes'#10'where ((v_inf_objetivos_albaranes.id_empresa = :ID_E' + + 'MPRESA) and (v_inf_objetivos_albaranes.ANO = :ANO1))'#10'group by 1,' + + '2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'count(ID_CLIENT' + + 'E) as ALTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETI' + + 'VO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTID' + + 'AD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEG' + + 'UIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from ' + + 'v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10#10'u' + + 'nion all'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'c' + + 'ount(distinct ID_CLIENTE) as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJ' + + 'ETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CAN' + + 'TIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CON' + + 'SEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'fr' + + 'om v_inf_obj_cli_activos_alb_agentes'#10'where (ANO = :ANO1) and (v_' + + 'inf_obj_cli_activos_alb_age.ID_EMPRESA = :ID_EMPRESA)'#10'group by 1' + + ',2,3'#10#10') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'SEMESTRA' + + 'L'#39') and (P.valor = SEMESTRE))'#10'left join contactos C on (C.ID = S' + + 'EN.ID_AGENTE)'#10'left join agentes_datos on (agentes_datos.id_agent' + + 'e = SEN.ID_AGENTE)'#10#10'where agentes_datos.FECHA_BAJA is null'#10'and {' + + 'where}'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5'#10#10#10#10#10#10#10#10#10 StatementType = stSQL ColumnMappings = < item diff --git a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm index 62a3aec..421b17d 100644 --- a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm +++ b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm @@ -2393,53 +2393,57 @@ object RptFacturasCliente: TRptFacturasCliente Name = 'IBX' SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, MES,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOTALES.N' + - 'UM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS_CLIE' + - 'NTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_O' + - 'BJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CAN' + - 'TIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA)' + - ' as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDA' + - 'D_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSE' + - 'GUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TO' + - 'TAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_' + - 'TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTAD' + - 'O,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) a' + - 's IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CONSEGUI' + - 'DA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL' + - '_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' c' + - 'ase when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, 0) <> ' + - '0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_TOTALES' + - '.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_MEDIO_C' + - 'LIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.MES,'#10'0 as ALTAS_' + - 'CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.' + + 'E, ANO, MES,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as ALTAS' + + '_CLIENTE,'#10#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALES,'#10#10' s' + + 'um(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OBJETIVO' + + ') as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CANTIDAD' + + '_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, sum(CA' + + 'NTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10' sum(I' + + 'MPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) ' + + 'as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as IMPORTE_TO' + + 'TAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - sum(CANTI' + + 'DAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_TOTAL_CON' + + 'SEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10#10' cas' + + 'e when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(IMPORTE_T' + + 'OTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' else 0'#10' ' + + 'end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENTES_ACTIVO' + + 'S) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENTES_ACTIVO' + + 'S))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10'('#10'select ' + + 'AO.ID_AGENTE, AO.ANO, AO.MES,'#10'0 as ALTAS_CLIENTE,'#10'0 as CLIENTES_' + + 'ACTIVOS,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.' + 'IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA,' + ' 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IM' + 'PORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONS' + 'EGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join contactos C' + ' on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3'#10 + #10'UNION ALL'#10#10'select ID_AGENTE, ANO, MES,'#10'0 as ALTAS_CLIENTE,'#10'0 as' + - ' CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUI' + - 'DA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_D' + - 'EVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTIDAD_DEVUELTA)) as ' + - 'CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CO' + - 'NSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, (sum(IMPORT' + - 'E_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUI' + - 'DO'#10'from v_inf_objetivos_facturas'#10'where ((v_inf_objetivos_factura' + - 's.id_empresa = :ID_EMPRESA) and (v_inf_objetivos_facturas.ANO = ' + - ':ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, MES,'#10'c' + - 'ount(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as ' + - 'IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUEL' + - 'TA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0 a' + - 's IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_obj' + - '_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10') SEN'#10#10'left' + - ' join periodos_aux P on ((P.periodo = '#39'MENSUAL'#39') and (P.valor = ' + - 'MES))'#10'left join contactos C on (C.ID = SEN.ID_AGENTE)'#10'left join ' + - 'agentes_datos on (agentes_datos.id_agente = SEN.ID_AGENTE)'#10#10'left' + - ' join'#10'('#10'select coalesce(ID_AGENTE, -1) as ID_AGENTE, count(ID_CL' + - 'IENTE) as NUM_CLIENTES_TOTALES'#10'from clientes_datos'#10'group by 1'#10') ' + - 'CLIENTES_TOTALES on (CLIENTES_TOTALES.ID_AGENTE = SEN.id_Agente)' + - #10#10'where agentes_datos.FECHA_BAJA is null'#10'and {where}'#10'group by 1,' + - '2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10 + ' CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO' + + ','#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_' + + 'DEVUELTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(' + + 'CANTIDAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CO' + + 'NSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORT' + + 'E_DEVUELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as' + + ' IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_facturas'#10'where ((' + + 'v_inf_objetivos_facturas.id_empresa = :ID_EMPRESA) and (v_inf_ob' + + 'jetivos_facturas.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select' + + ' ID_AGENTE, ANO, MES,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as C' + + 'LIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10 + + '0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_' + + 'TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO' + + ', 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_obj_clientes_agentes'#10 + + 'where (ANO = :ANO1)'#10'group by 1,2,3'#10#10'union all'#10#10'select ID_AGENTE,' + + ' ANO, MES,'#10'0 as ALTAS_CLIENTE,'#10'count(distinct ID_CLIENTE) as CLI' + + 'ENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 ' + + 'as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TO' + + 'TAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, ' + + '0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_obj_cli_activos_fac_age' + + #10'where (ANO = :ANO1) and (v_inf_obj_cli_activos_fac_age.ID_EMPRE' + + 'SA = :ID_EMPRESA)'#10'group by 1,2,3'#10#10') SEN'#10#10'left join periodos_aux ' + + 'P on ((P.periodo = '#39'MENSUAL'#39') and (P.valor = MES))'#10'left join con' + + 'tactos C on (C.ID = SEN.ID_AGENTE)'#10'left join agentes_datos on (a' + + 'gentes_datos.id_agente = SEN.ID_AGENTE)'#10#10'where agentes_datos.FEC' + + 'HA_BAJA is null'#10'and {where}'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,' + + '5'#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -2619,53 +2623,57 @@ object RptFacturasCliente: TRptFacturasCliente Name = 'IBX' SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, SEMESTRE,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOTA' + - 'LES.NUM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS' + - '_CLIENTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTI' + - 'DAD_OBJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' su' + - 'm(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVU' + - 'ELTA) as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as CA' + - 'NTIDAD_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_' + - 'CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPOR' + - 'TE_TOTAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANT' + - 'IDAD_TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RES' + - 'ULTADO,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETIV' + - 'O)) as IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CON' + - 'SEGUIDA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_' + - 'TOTAL_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10 + - ' case when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, 0' + - ') <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_TO' + - 'TALES.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_ME' + - 'DIO_CLIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.SEMESTRE,'#10'0' + - ' as ALTAS_CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIV' + + 'E, ANO, SEMESTRE,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as ' + + 'ALTAS_CLIENTE,'#10#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALES,'#10#10 + + ' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OBJ' + + 'ETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CAN' + + 'TIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, s' + + 'um(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10' ' + + 'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUE' + + 'LTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as IMPOR' + + 'TE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - sum(' + + 'CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_TOTA' + + 'L_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10#10' ' + + ' case when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(IMPO' + + 'RTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' else 0' + + #10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENTES_A' + + 'CTIVOS) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENTES_A' + + 'CTIVOS))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10'('#10'se' + + 'lect AO.ID_AGENTE, AO.ANO, AO.SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'0 as' + + ' CLIENTES_ACTIVOS,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIV' + 'O, sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_C' + 'ONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUID' + 'A, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_' + 'TOTAL_CONSEGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join c' + 'ontactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group' + ' by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'0 as ALTA' + - 'S_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CA' + - 'NTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA' + - ') as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTIDAD' + - '_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGUIDO' + - ') as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUEL' + - 'TO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPORTE' + - '_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_facturas'#10'where ((v_inf_ob' + - 'jetivos_facturas.id_empresa = :ID_EMPRESA) and (v_inf_objetivos_' + - 'facturas.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGEN' + - 'TE, ANO, SEMESTRE,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as CANT' + - 'IDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, ' + - '0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMP' + - 'ORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSE' + - 'GUIDO'#10'from v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group ' + - 'by 1,2,3'#10') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'SEMES' + - 'TRAL'#39') and (P.valor = SEMESTRE))'#10'left join contactos C on (C.ID ' + - '= SEN.ID_AGENTE)'#10'left join agentes_datos on (agentes_datos.id_ag' + - 'ente = SEN.ID_AGENTE)'#10#10'left join'#10'('#10'select coalesce(ID_AGENTE, -1' + - ') as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTES_TOTALES'#10'from c' + - 'lientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (CLIENTES_TOTALES' + - '.ID_AGENTE = SEN.id_Agente)'#10#10'where agentes_datos.FECHA_BAJA is n' + - 'ull'#10'and {where}'#10'group by 1,2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10 + 'S_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 as I' + + 'MPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA' + + ', sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CON' + + 'SEGUIDA) + sum(CANTIDAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,' + + #10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVU' + + 'ELTO) as IMPORTE_DEVUELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORT' + + 'E_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_fa' + + 'cturas'#10'where ((v_inf_objetivos_facturas.id_empresa = :ID_EMPRESA' + + ') and (v_inf_objetivos_facturas.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UN' + + 'ION ALL'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'count(ID_CLIENTE) as A' + + 'LTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 a' + + 's IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVU' + + 'ELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO, 0' + + ' as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_o' + + 'bj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10#10'UNION AL' + + 'L'#10#10'select ID_AGENTE, ANO, SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'count(di' + + 'stinct ID_CLIENTE) as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, ' + + '0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_D' + + 'EVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUIDO' + + ', 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_in' + + 'f_obj_cli_activos_fac_age'#10'where (ANO = :ANO1) and (v_inf_obj_cli' + + '_activos_fac_age.ID_EMPRESA = :ID_EMPRESA)'#10'group by 1,2,3'#10#10') SEN' + + #10#10'left join periodos_aux P on ((P.periodo = '#39'SEMESTRAL'#39') and (P.' + + 'valor = SEMESTRE))'#10'left join contactos C on (C.ID = SEN.ID_AGENT' + + 'E)'#10'left join agentes_datos on (agentes_datos.id_agente = SEN.ID_' + + 'AGENTE)'#10#10'where agentes_datos.FECHA_BAJA is null'#10'and {where}'#10'grou' + + 'p by 1,2,3,4,5'#10'order by 1,2,3,4,5'#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -2845,54 +2853,57 @@ object RptFacturasCliente: TRptFacturasCliente Name = 'IBX' SQL = 'select SEN.ID_AGENTE, COALESCE(C.NOMBRE, '#39'SIN ASIGNAR'#39') as AGENT' + - 'E, ANO, TRIMESTRE,'#10' P.descripcion,'#10#10' coalesce(CLIENTES_TOT' + - 'ALES.NUM_CLIENTES_TOTALES, 0) as CLIENTES_TOTALES,'#10#10' sum(ALTA' + - 'S_CLIENTE) as ALTAS_CLIENTE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANT' + - 'IDAD_OBJETIVO, sum(IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' s' + - 'um(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEV' + - 'UELTA) as CANTIDAD_DEVUELTA, sum(CANTIDAD_TOTAL_CONSEGUIDA) as C' + - 'ANTIDAD_TOTAL_CONSEGUIDA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE' + - '_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO, sum(IMPO' + - 'RTE_TOTAL_CONSEGUIDO) as IMPORTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CAN' + - 'TIDAD_TOTAL_CONSEGUIDA) - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RE' + - 'SULTADO,'#10' (sum(IMPORTE_TOTAL_CONSEGUIDO) - sum(IMPORTE_OBJETI' + - 'VO)) as IMPORTE_RESULTADO,'#10#10' case when (sum(CANTIDAD_TOTAL_CO' + - 'NSEGUIDA) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD' + - '_TOTAL_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10 + - #10' case when (coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, ' + - '0) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/coalesce(CLIENTES_T' + - 'OTALES.NUM_CLIENTES_TOTALES, 0))'#10' else 0'#10' end as IMPORTE_M' + - 'EDIO_CLIENTE'#10#10#10'from'#10'('#10'select AO.ID_AGENTE, AO.ANO, AO.TRIMESTRE,' + - #10'0 as ALTAS_CLIENTE,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJET' + + 'E, ANO, TRIMESTRE,'#10' P.descripcion,'#10#10' sum(ALTAS_CLIENTE) as' + + ' ALTAS_CLIENTE,'#10#10' sum(CLIENTES_ACTIVOS) as CLIENTES_TOTALES,'#10 + + #10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OB' + + 'JETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CA' + + 'NTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, ' + + 'sum(CANTIDAD_TOTAL_CONSEGUIDA) as CANTIDAD_TOTAL_CONSEGUIDA,'#10' ' + + ' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVU' + + 'ELTO) as IMPORTE_DEVUELTO, sum(IMPORTE_TOTAL_CONSEGUIDO) as IMPO' + + 'RTE_TOTAL_CONSEGUIDO,'#10#10' (sum(CANTIDAD_TOTAL_CONSEGUIDA) - sum' + + '(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_TOT' + + 'AL_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10#10' ' + + ' case when (sum(CANTIDAD_TOTAL_CONSEGUIDA) <> 0) then (sum(IMP' + + 'ORTE_TOTAL_CONSEGUIDO)/sum(CANTIDAD_TOTAL_CONSEGUIDA))'#10' else ' + + '0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10#10' case when (sum(CLIENTES_' + + 'ACTIVOS) <> 0) then (sum(IMPORTE_TOTAL_CONSEGUIDO)/sum(CLIENTES_' + + 'ACTIVOS))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10#10'from'#10'('#10's' + + 'elect AO.ID_AGENTE, AO.ANO, AO.TRIMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'0 ' + + 'as CLIENTES_ACTIVOS,'#10'sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJET' + 'IVO, sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD' + '_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGU' + 'IDA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORT' + 'E_TOTAL_CONSEGUIDO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join' + ' contactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'gro' + 'up by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'0 as A' + - 'LTAS_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum' + - '(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUE' + - 'LTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_CONSEGUIDA) + sum(CANTI' + - 'DAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUIDA,'#10'sum(IMPORTE_CONSEGU' + - 'IDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMPORTE_DEV' + - 'UELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMPORTE_DEVUELTO)) as IMPO' + - 'RTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos_facturas'#10'where ((v_inf' + - '_objetivos_facturas.id_empresa = :ID_EMPRESA) and (v_inf_objetiv' + - 'os_facturas.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_A' + - 'GENTE, ANO, TRIMESTRE,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as ' + - 'CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUI' + - 'DA, 0 as CANTIDAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as' + - ' IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_C' + - 'ONSEGUIDO'#10'from v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'gr' + - 'oup by 1,2,3'#10') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'T' + - 'RIMESTRAL'#39') and (P.valor = TRIMESTRE))'#10'left join contactos C on ' + - '(C.ID = SEN.ID_AGENTE)'#10'left join agentes_datos on (agentes_datos' + - '.id_agente = SEN.ID_AGENTE)'#10#10'left join'#10'('#10'select coalesce(ID_AGEN' + - 'TE, -1) as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTES_TOTALES'#10 + - 'from clientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (CLIENTES_T' + - 'OTALES.ID_AGENTE = SEN.id_Agente)'#10#10'where agentes_datos.FECHA_BAJ' + - 'A is null'#10'and {where}'#10'group by 1,2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10 + - #10#10#10 + 'LTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO, 0 a' + + 's IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGU' + + 'IDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, (sum(CANTIDAD_' + + 'CONSEGUIDA) + sum(CANTIDAD_DEVUELTA)) as CANTIDAD_TOTAL_CONSEGUI' + + 'DA,'#10'sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_D' + + 'EVUELTO) as IMPORTE_DEVUELTO, (sum(IMPORTE_CONSEGUIDO) + sum(IMP' + + 'ORTE_DEVUELTO)) as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_inf_objetivos' + + '_facturas'#10'where ((v_inf_objetivos_facturas.id_empresa = :ID_EMPR' + + 'ESA) and (v_inf_objetivos_facturas.ANO = :ANO1))'#10'group by 1,2,3'#10 + + #10'UNION ALL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'count(ID_CLIENTE) ' + + 'as ALTAS_CLIENTE,'#10'0 as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJETIVO,' + + ' 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_' + + 'DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSEGUID' + + 'O, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from v_i' + + 'nf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10#10'UNIO' + + 'N ALL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'cou' + + 'nt(distinct ID_CLIENTE) as CLIENTES_ACTIVOS,'#10'0 as CANTIDAD_OBJET' + + 'IVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTI' + + 'DAD_DEVUELTA, 0 as CANTIDAD_TOTAL_CONSEGUIDA, 0 as IMPORTE_CONSE' + + 'GUIDO, 0 as IMPORTE_DEVUELTO, 0 as IMPORTE_TOTAL_CONSEGUIDO'#10'from' + + ' v_inf_obj_cli_activos_fac_age'#10'where (ANO = :ANO1) and (v_inf_ob' + + 'j_cli_activos_fac_age.ID_EMPRESA = :ID_EMPRESA)'#10'group by 1,2,3'#10#10 + + ') SEN'#10#10'left join periodos_aux P on ((P.periodo = '#39'TRIMESTRAL'#39') a' + + 'nd (P.valor = TRIMESTRE))'#10'left join contactos C on (C.ID = SEN.I' + + 'D_AGENTE)'#10'left join agentes_datos on (agentes_datos.id_agente = ' + + 'SEN.ID_AGENTE)'#10#10'where agentes_datos.FECHA_BAJA is null'#10'and {wher' + + 'e}'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5'#10#10#10#10 StatementType = stSQL ColumnMappings = < item @@ -3901,7 +3912,7 @@ object RptFacturasCliente: TRptFacturasCliente PrintOptions.Printer = 'Por defecto' PrintOptions.PrintOnSheet = 0 ReportOptions.CreateDate = 37800.807714351900000000 - ReportOptions.LastChange = 40952.796821550920000000 + ReportOptions.LastChange = 41151.740285150460000000 ScriptLanguage = 'PascalScript' ScriptText.Strings = ( 'procedure mContinuaOnBeforePrint(Sender: TfrxComponent);' diff --git a/Source/Modulos/Gestor de informes/Views/uEditorInformeObjetivosFacturasReport.pas b/Source/Modulos/Gestor de informes/Views/uEditorInformeObjetivosFacturasReport.pas index e334086..9caf843 100644 --- a/Source/Modulos/Gestor de informes/Views/uEditorInformeObjetivosFacturasReport.pas +++ b/Source/Modulos/Gestor de informes/Views/uEditorInformeObjetivosFacturasReport.pas @@ -125,7 +125,7 @@ begin ShowHourglassCursor; try - AStream := (Controller as IGestorInformesController).DataModule.GenerarInformeObjetivosAgentesAlbaranes( + AStream := (Controller as IGestorInformesController).DataModule.GenerarInformeObjetivosAgentesFacturas( AppFactuGES.EmpresaActiva.ID, Intervalo, Ano1, diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES index 3e07a33..d954a91 100644 Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj index 4b6f025..32f4237 100644 --- a/Source/Servidor/FactuGES_Server.dproj +++ b/Source/Servidor/FactuGES_Server.dproj @@ -35,7 +35,7 @@ Delphi.Personality - FalseTrueFalse/standaloneTrueFalse4230FalseFalseFalseFalseFalse308212524.2.3.04.2.3.0martes, 14 de febrero de 2012 16:03 + FalseTrueFalse/standaloneTrueFalse4240FalseFalseFalseFalseFalse308212524.2.4.04.2.4.0lunes, 30 de julio de 2012 17:17 ExpressPrinting System by Developer Express Inc. FactuGES_Server.dprFalse diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index d4648b4..9c92b8b 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -1,7 +1,7 @@ MAINICON ICON "C:\Codigo\Resources\Iconos\Servidor.ico" 1 VERSIONINFO -FILEVERSION 4,2,3,0 -PRODUCTVERSION 4,2,3,0 +FILEVERSION 4,2,4,0 +PRODUCTVERSION 4,2,4,0 FILEFLAGSMASK 0x3FL FILEFLAGS 0x00L FILEOS 0x40004L @@ -12,9 +12,9 @@ BEGIN BEGIN BLOCK "0C0A04E4" BEGIN - VALUE "FileVersion", "4.2.3.0\0" - VALUE "ProductVersion", "4.2.3.0\0" - VALUE "CompileDate", "miércoles, 11 de abril de 2012 17:03\0" + VALUE "FileVersion", "4.2.4.0\0" + VALUE "ProductVersion", "4.2.4.0\0" + VALUE "CompileDate", "jueves, 30 de agosto de 2012 18:57\0" END END BLOCK "VarFileInfo"