diff --git a/Build/Build.fbl6 b/Build/Build.fbl6
index 82b76c4..2725114 100644
Binary files a/Build/Build.fbl6 and b/Build/Build.fbl6 differ
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index 553497e..9c6fdd3 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -54,6 +54,58 @@
MainSource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
TDataModule
@@ -63,58 +115,6 @@
TDataModule
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
TForm
diff --git a/Source/Informes/1/InformeObjetivosAgentesAlbaranes.fr3 b/Source/Informes/1/InformeObjetivosAgentesAlbaranes.fr3
index 2eecd5d..ba8b6fd 100644
--- a/Source/Informes/1/InformeObjetivosAgentesAlbaranes.fr3
+++ b/Source/Informes/1/InformeObjetivosAgentesAlbaranes.fr3
@@ -1,19 +1,19 @@
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
+
-
+
@@ -27,26 +27,26 @@
-
-
-
+
+
+
-
+
-
+
-
+
-
+
diff --git a/Source/Informes/2/InformeObjetivosAgentesAlbaranes.fr3 b/Source/Informes/2/InformeObjetivosAgentesAlbaranes.fr3
index 2eecd5d..ba8b6fd 100644
--- a/Source/Informes/2/InformeObjetivosAgentesAlbaranes.fr3
+++ b/Source/Informes/2/InformeObjetivosAgentesAlbaranes.fr3
@@ -1,19 +1,19 @@
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
+
-
+
@@ -27,26 +27,26 @@
-
-
-
+
+
+
-
+
-
+
-
+
-
+
diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
index f1a60bf..8cdf5c7 100644
--- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
+++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm
@@ -619,49 +619,47 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Default = True
Name = 'IBX'
SQL =
- 'select OBJETIVOS.ID_AGENTE, OBJETIVOS.AGENTE, OBJETIVOS.ANO,'#10' ' +
- ' OBJETIVOS.MES,'#10' OBJETIVOS.descripcion,'#10' CLIENTES_NUEVOS.C' +
- 'ANTIDAD as ALTAS_CLIENTE,'#10' CLIENTES_TOTALES.CANTIDAD as CLIEN' +
- 'TES_TOTALES,'#10' OBJETIVOS.CANTIDAD_OBJETIVO,'#10' OBJETIVOS.IMPO' +
- 'RTE_OBJETIVO,'#10' ALCANZADO.CANTIDAD_CONSEGUIDA,'#10' ALCANZADO.C' +
- 'ANTIDAD_DEVUELTA,'#10' ALCANZADO.IMPORTE_CONSEGUIDO,'#10' ALCANZAD' +
- 'O.IMPORTE_DEVUELTO,'#10' (ALCANZADO.CANTIDAD_CONSEGUIDA - OBJETIV' +
- 'OS.CANTIDAD_OBJETIVO) as CANTIDAD_RESULTADO,'#10' (ALCANZADO.IMPO' +
- 'RTE_CONSEGUIDO - OBJETIVOS.IMPORTE_OBJETIVO) as IMPORTE_RESULTAD' +
- 'O,'#10' case when (ALCANZADO.IMPORTE_CONSEGUIDO > 0) then (ALCANZ' +
- 'ADO.IMPORTE_CONSEGUIDO/ALCANZADO.CANTIDAD_CONSEGUIDA)'#10' else 0' +
- #10' end as IMPORTE_MEDIO_UNIDAD,'#10' case when (ALCANZADO.IMPOR' +
- 'TE_CONSEGUIDO > 0) then (ALCANZADO.IMPORTE_CONSEGUIDO/CLIENTES_T' +
- 'OTALES.CANTIDAD)'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10'fr' +
- 'om'#10#10'(select AO.ID_AGENTE, C.NOMBRE as AGENTE, AO.ANO,'#10' AO.MES' +
- ','#10' P.descripcion,'#10' sum(AO.CANTIDAD_OBJETIVO) as CANTIDAD_O' +
- 'BJETIVO,'#10' sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJETIVO'#10'from V' +
- '_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join periodos_aux P on ((P.pe' +
- 'riodo = '#39'MENSUAL'#39') and (P.valor = AO.MES))'#10'left join contactos C' +
- ' on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3,' +
- '4,5'#10'order by 1,2,3,4,5) OBJETIVOS'#10#10#10'left join'#10'(select ID_AGENTE,' +
- ' AGENTE, ANO, MES, sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONSEGUI' +
- 'DA,'#10' sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, sum(IMPORTE_CO' +
- 'NSEGUIDO) as IMPORTE_CONSEGUIDO,'#10' sum(IMPORTE_DEVUELTO) as IMPOR' +
- 'TE_DEVUELTO'#10' from v_inf_objetivos_albaranes'#10' where ((v_inf_objet' +
+ 'select SEN.ID_AGENTE, C.NOMBRE as AGENTE, ANO, MES,'#10' P.descri' +
+ 'pcion,'#10#10' coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES, 0) a' +
+ 's CLIENTES_TOTALES,'#10#10' sum(ALTAS_CLIENTE) as ALTAS_CLIENTE,'#10#10' ' +
+ ' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORTE_OBJE' +
+ 'TIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) as CANT' +
+ 'IDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA,'#10' ' +
+ ' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEV' +
+ 'UELTO) as IMPORTE_DEVUELTO,'#10#10' (sum(CANTIDAD_CONSEGUIDA) - sum' +
+ '(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORTE_CON' +
+ 'SEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10' case' +
+ ' when (sum(IMPORTE_CONSEGUIDO) > 0) then (sum(IMPORTE_CONSEGUIDO' +
+ ')/sum(CANTIDAD_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_MEDIO_' +
+ 'UNIDAD,'#10#10' case when (sum(IMPORTE_CONSEGUIDO) > 0) then (sum(I' +
+ 'MPORTE_CONSEGUIDO)/coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALE' +
+ 'S, 0))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10'from'#10'('#10'selec' +
+ 't AO.ID_AGENTE, AO.ANO, AO.MES,'#10'0 as ALTAS_CLIENTE,'#10'sum(AO.CANTI' +
+ 'DAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.IMPORTE_OBJETIVO) as ' +
+ 'IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUEL' +
+ 'TA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO'#10'from V_INF_OB' +
+ 'JETIVOS_ALB_AGENTES AO'#10'left join contactos C on (C.ID = AO.ID_AG' +
+ 'ENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select I' +
+ 'D_AGENTE, ANO, MES,'#10'0 as ALTAS_CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, ' +
+ '0 as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) as CANTIDAD_CONS' +
+ 'EGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUELTA, sum(IMPORTE' +
+ '_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_DEVUELTO) as IMP' +
+ 'ORTE_DEVUELTO'#10'from v_inf_objetivos_albaranes'#10'where ((v_inf_objet' +
'ivos_albaranes.id_empresa = :ID_EMPRESA) and (v_inf_objetivos_al' +
- 'baranes.ANO = :ANO1))'#10' group by 1,2,3,4'#10' order by 1,2,3,4) ALCAN' +
- 'ZADO on ((OBJETIVOS.id_agente = ALCANZADO.id_agente) and (OBJETI' +
- 'VOS.ano = ALCANZADO.ANO) and (OBJETIVOS.mes = ALCANZADO.MES))'#10#10'l' +
- 'eft join'#10'(select ID_AGENTE, ANO, MES, count(ID_CLIENTE) as CANTI' +
- 'DAD'#10'from v_inf_obj_clientes_agentes'#10'where (ANO = :ANO1)'#10'group by' +
- ' 1,2,3'#10'order by 1,2,3) CLIENTES_NUEVOS on ((OBJETIVOS.id_agente ' +
- '= CLIENTES_NUEVOS.id_agente) and (OBJETIVOS.ano = CLIENTES_NUEVO' +
- 'S.ANO) and (OBJETIVOS.mes = CLIENTES_NUEVOS.MES))'#10#10'left join'#10'(se' +
- 'lect ID_AGENTE, count(ID_CLIENTE) as CANTIDAD'#10'from v_inf_obj_cli' +
- 'entes_agentes'#10'group by 1'#10'order by 1) CLIENTES_TOTALES on (OBJETI' +
- 'VOS.id_agente = CLIENTES_TOTALES.id_agente)'#10#10#10'where {where}'#10
+ 'baranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10'select ID_AGENT' +
+ 'E, ANO, MES,'#10'count(ID_CLIENTE) as ALTAS_CLIENTE,'#10'0 as CANTIDAD_O' +
+ 'BJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as C' +
+ 'ANTIDAD_DEVUELTA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO' +
+ #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_AGE' +
+ 'NTE)'#10#10'left join'#10'('#10'select coalesce(ID_AGENTE, -1) as ID_AGENTE, c' +
+ 'ount(ID_CLIENTE) as NUM_CLIENTES_TOTALES'#10'from clientes_datos'#10'gro' +
+ 'up by 1'#10') CLIENTES_TOTALES on (CLIENTES_TOTALES.ID_AGENTE = SEN.' +
+ 'id_Agente)'#10#10'where {where}'#10'group by 1,2,3,4,5,6'#10'order by 1,2,3,4,' +
+ '5,6'#10#10#10#10
StatementType = stSQL
ColumnMappings = <
- item
- DatasetField = 'AGENTE'
- TableField = 'AGENTE'
- end
item
DatasetField = 'ANO'
TableField = 'ANO'
@@ -725,6 +723,10 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
item
DatasetField = 'IMPORTE_MEDIO_CLIENTE'
TableField = 'IMPORTE_MEDIO_CLIENTE'
+ end
+ item
+ DatasetField = 'AGENTE'
+ TableField = 'AGENTE'
end>
end>
Name = 'InformeListadoObjetivosMensual'
@@ -752,12 +754,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
@@ -2129,44 +2131,45 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
ConnectionType = 'Interbase'
Default = True
SQL =
- 'select OBJETIVOS.ID_AGENTE, OBJETIVOS.AGENTE, OBJETIVOS.ANO,'#10' ' +
- ' OBJETIVOS.TRIMESTRE,'#10' OBJETIVOS.descripcion,'#10' CLIENTES_NU' +
- 'EVOS.CANTIDAD as ALTAS_CLIENTE,'#10' CLIENTES_TOTALES.CANTIDAD as' +
- ' CLIENTES_TOTALES,'#10' OBJETIVOS.CANTIDAD_OBJETIVO,'#10' OBJETIVO' +
- 'S.IMPORTE_OBJETIVO,'#10' ALCANZADO.CANTIDAD_CONSEGUIDA,'#10' ALCAN' +
- 'ZADO.CANTIDAD_DEVUELTA,'#10' ALCANZADO.IMPORTE_CONSEGUIDO,'#10' AL' +
- 'CANZADO.IMPORTE_DEVUELTO,'#10' (ALCANZADO.CANTIDAD_CONSEGUIDA - O' +
- 'BJETIVOS.CANTIDAD_OBJETIVO) as CANTIDAD_RESULTADO,'#10' (ALCANZAD' +
- 'O.IMPORTE_CONSEGUIDO - OBJETIVOS.IMPORTE_OBJETIVO) as IMPORTE_RE' +
- 'SULTADO,'#10' case when (ALCANZADO.IMPORTE_CONSEGUIDO > 0) then (' +
- 'ALCANZADO.IMPORTE_CONSEGUIDO/ALCANZADO.CANTIDAD_CONSEGUIDA)'#10' ' +
- 'else 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10' case when (ALCANZADO' +
- '.IMPORTE_CONSEGUIDO > 0) then (ALCANZADO.IMPORTE_CONSEGUIDO/CLIE' +
- 'NTES_TOTALES.CANTIDAD)'#10' else 0'#10' end as IMPORTE_MEDIO_CLIEN' +
- 'TE'#10#10'from'#10#10'(select AO.ID_AGENTE, C.NOMBRE AS AGENTE, AO.ANO,'#10' ' +
- 'AO.TRIMESTRE,'#10' P.descripcion,'#10' sum(AO.CANTIDAD_OBJETIVO) a' +
- 's CANTIDAD_OBJETIVO,'#10' sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJ' +
- 'ETIVO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join periodos_aux' +
- ' P on ((P.periodo = '#39'TRIMESTRAL'#39') and (P.valor = AO.TRIMESTRE))'#10 +
- 'left join contactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :' +
- 'ANO1)'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5) OBJETIVOS'#10#10'left joi' +
- 'n'#10'(select ID_AGENTE, AGENTE, ANO, TRIMESTRE, sum(CANTIDAD_CONSEG' +
- 'UIDA) as CANTIDAD_CONSEGUIDA,'#10' sum(CANTIDAD_DEVUELTA) as CANTIDA' +
- 'D_DEVUELTA, sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO,'#10' sum(' +
- 'IMPORTE_DEVUELTO) as IMPORTE_DEVUELTO'#10' from v_inf_objetivos_alba' +
- 'ranes'#10' where ((v_inf_objetivos_albaranes.id_empresa = :ID_EMPRES' +
- 'A) and (v_inf_objetivos_albaranes.ANO = :ANO1))'#10' group by 1,2,3,' +
- '4'#10' order by 1,2,3,4) ALCANZADO on ((OBJETIVOS.id_agente = ALCANZ' +
- 'ADO.id_agente) and (OBJETIVOS.ano = ALCANZADO.ANO) and (OBJETIVO' +
- 'S.TRIMESTRE = ALCANZADO.TRIMESTRE))'#10#10'left join'#10'(select ID_AGENTE' +
- ', ANO, TRIMESTRE, count(ID_CLIENTE) as CANTIDAD'#10'from v_inf_obj_c' +
- 'lientes_agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10'order by 1,2,' +
- '3) CLIENTES_NUEVOS on ((OBJETIVOS.id_agente = CLIENTES_NUEVOS.id' +
- '_agente) and (OBJETIVOS.ano = CLIENTES_NUEVOS.ANO) and (OBJETIVO' +
- 'S.trimestre = CLIENTES_NUEVOS.TRIMESTRE))'#10#10'left join'#10'(select ID_' +
- 'AGENTE, count(ID_CLIENTE) as CANTIDAD'#10'from v_inf_obj_clientes_ag' +
- 'entes'#10'group by 1'#10'order by 1) CLIENTES_TOTALES on (OBJETIVOS.id_a' +
- 'gente = CLIENTES_TOTALES.id_agente)'#10#10' where {where}'#10#10#10#10#10#10
+ 'select SEN.ID_AGENTE, C.NOMBRE as AGENTE, ANO, TRIMESTRE,'#10' P.' +
+ 'descripcion,'#10#10' coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES' +
+ ', 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS_CLIENTE) as ALTAS_CLIEN' +
+ 'TE,'#10#10' sum(CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(IMPORT' +
+ 'E_OBJETIVO) as IMPORTE_OBJETIVO,'#10#10' sum(CANTIDAD_CONSEGUIDA) a' +
+ 's CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUEL' +
+ 'TA,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPOR' +
+ 'TE_DEVUELTO) as IMPORTE_DEVUELTO,'#10#10' (sum(CANTIDAD_CONSEGUIDA)' +
+ ' - sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPOR' +
+ 'TE_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10' ' +
+ ' case when (sum(IMPORTE_CONSEGUIDO) > 0) then (sum(IMPORTE_CONS' +
+ 'EGUIDO)/sum(CANTIDAD_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_' +
+ 'MEDIO_UNIDAD,'#10#10' case when (sum(IMPORTE_CONSEGUIDO) > 0) then ' +
+ '(sum(IMPORTE_CONSEGUIDO)/coalesce(CLIENTES_TOTALES.NUM_CLIENTES_' +
+ 'TOTALES, 0))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#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_OBJETIVO, sum(AO.IMPORTE_O' +
+ 'BJETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CAN' +
+ 'TIDAD_DEVUELTA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO'#10'f' +
+ 'rom V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join contactos C on (C.I' +
+ 'D = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1)'#10'group by 1,2,3'#10#10'UNION A' +
+ 'LL'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'0 as C' +
+ 'ANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA' +
+ ') as CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEV' +
+ 'UELTA, sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORT' +
+ 'E_DEVUELTO) as IMPORTE_DEVUELTO'#10'from v_inf_objetivos_albaranes'#10'w' +
+ 'here ((v_inf_objetivos_albaranes.id_empresa = :ID_EMPRESA) and (' +
+ 'v_inf_objetivos_albaranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION AL' +
+ 'L'#10#10'select ID_AGENTE, ANO, TRIMESTRE,'#10'count(ID_CLIENTE) as ALTAS_' +
+ 'CLIENTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CAN' +
+ 'TIDAD_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as IMPORTE_CONSEGUID' +
+ 'O, 0 as IMPORTE_DEVUELTO'#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#10'left join'#10'('#10'select coales' +
+ 'ce(ID_AGENTE, -1) as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTE' +
+ 'S_TOTALES'#10'from clientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (' +
+ 'CLIENTES_TOTALES.ID_AGENTE = SEN.id_Agente)'#10#10'where {where}'#10'group' +
+ ' by 1,2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -2263,12 +2266,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
@@ -2327,44 +2330,45 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
ConnectionType = 'Interbase'
Default = True
SQL =
- 'select OBJETIVOS.ID_AGENTE, OBJETIVOS.AGENTE, OBJETIVOS.ANO,'#10' ' +
- ' OBJETIVOS.SEMESTRE,'#10' OBJETIVOS.descripcion,'#10' CLIENTES_NUE' +
- 'VOS.CANTIDAD as ALTAS_CLIENTE,'#10' CLIENTES_TOTALES.CANTIDAD as ' +
- 'CLIENTES_TOTALES,'#10' OBJETIVOS.CANTIDAD_OBJETIVO,'#10' OBJETIVOS' +
- '.IMPORTE_OBJETIVO,'#10' ALCANZADO.CANTIDAD_CONSEGUIDA,'#10' ALCANZ' +
- 'ADO.CANTIDAD_DEVUELTA,'#10' ALCANZADO.IMPORTE_CONSEGUIDO,'#10' ALC' +
- 'ANZADO.IMPORTE_DEVUELTO,'#10' (ALCANZADO.CANTIDAD_CONSEGUIDA - OB' +
- 'JETIVOS.CANTIDAD_OBJETIVO) as CANTIDAD_RESULTADO,'#10' (ALCANZADO' +
- '.IMPORTE_CONSEGUIDO - OBJETIVOS.IMPORTE_OBJETIVO) as IMPORTE_RES' +
- 'ULTADO,'#10' case when (ALCANZADO.IMPORTE_CONSEGUIDO > 0) then (A' +
- 'LCANZADO.IMPORTE_CONSEGUIDO/ALCANZADO.CANTIDAD_CONSEGUIDA)'#10' e' +
- 'lse 0'#10' end as IMPORTE_MEDIO_UNIDAD,'#10' case when (ALCANZADO.' +
- 'IMPORTE_CONSEGUIDO > 0) then (ALCANZADO.IMPORTE_CONSEGUIDO/CLIEN' +
- 'TES_TOTALES.CANTIDAD)'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENT' +
- 'E'#10#10'from'#10#10'(select AO.ID_AGENTE, C.NOMBRE as AGENTE, AO.ANO,'#10' A' +
- 'O.SEMESTRE,'#10' P.descripcion,'#10' sum(AO.CANTIDAD_OBJETIVO) as ' +
- 'CANTIDAD_OBJETIVO,'#10' sum(AO.IMPORTE_OBJETIVO) as IMPORTE_OBJET' +
- 'IVO'#10'from V_INF_OBJETIVOS_ALB_AGENTES AO'#10'left join periodos_aux P' +
- ' on ((P.periodo = '#39'SEMESTRAL'#39') and (P.valor = AO.SEMESTRE))'#10'left' +
- ' join contactos C on (C.ID = AO.ID_AGENTE)'#10'where (AO.ANO = :ANO1' +
- ')'#10'group by 1,2,3,4,5'#10'order by 1,2,3,4,5) OBJETIVOS'#10#10'left join'#10'(s' +
- 'elect ID_AGENTE, AGENTE, ANO, SEMESTRE, sum(CANTIDAD_CONSEGUIDA)' +
- ' as CANTIDAD_CONSEGUIDA,'#10' sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEV' +
- 'UELTA, sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO,'#10' sum(IMPOR' +
- 'TE_DEVUELTO) as IMPORTE_DEVUELTO'#10' from v_inf_objetivos_albaranes' +
- #10' where ((v_inf_objetivos_albaranes.id_empresa = :ID_EMPRESA) an' +
- 'd (v_inf_objetivos_albaranes.ANO = :ANO1))'#10' group by 1,2,3,4'#10' or' +
- 'der by 1,2,3,4) ALCANZADO on ((OBJETIVOS.id_agente = ALCANZADO.i' +
- 'd_agente) and (OBJETIVOS.ano = ALCANZADO.ANO) and (OBJETIVOS.SEM' +
- 'ESTRE = ALCANZADO.SEMESTRE))'#10#10'left join'#10'(select ID_AGENTE, ANO, ' +
- 'SEMESTRE, count(ID_CLIENTE) as CANTIDAD'#10'from v_inf_obj_clientes_' +
- 'agentes'#10'where (ANO = :ANO1)'#10'group by 1,2,3'#10'order by 1,2,3) CLIEN' +
- 'TES_NUEVOS on ((OBJETIVOS.id_agente = CLIENTES_NUEVOS.id_agente)' +
- ' and (OBJETIVOS.ano = CLIENTES_NUEVOS.ANO) and (OBJETIVOS.semest' +
- 're = CLIENTES_NUEVOS.SEMESTRE))'#10#10'left join'#10'(select ID_AGENTE, co' +
- 'unt(ID_CLIENTE) as CANTIDAD'#10'from v_inf_obj_clientes_agentes'#10'grou' +
- 'p by 1'#10'order by 1) CLIENTES_TOTALES on (OBJETIVOS.id_agente = CL' +
- 'IENTES_TOTALES.id_agente)'#10#10'where {where}'#10#10#10#10#10#10#10#10
+ 'select SEN.ID_AGENTE, C.NOMBRE as AGENTE, ANO, SEMESTRE,'#10' P.d' +
+ 'escripcion,'#10#10' coalesce(CLIENTES_TOTALES.NUM_CLIENTES_TOTALES,' +
+ ' 0) as CLIENTES_TOTALES,'#10#10' sum(ALTAS_CLIENTE) as ALTAS_CLIENT' +
+ 'E,'#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,'#10' sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORT' +
+ 'E_DEVUELTO) as IMPORTE_DEVUELTO,'#10#10' (sum(CANTIDAD_CONSEGUIDA) ' +
+ '- sum(CANTIDAD_OBJETIVO)) as CANTIDAD_RESULTADO,'#10' (sum(IMPORT' +
+ 'E_CONSEGUIDO) - sum(IMPORTE_OBJETIVO)) as IMPORTE_RESULTADO,'#10' ' +
+ ' case when (sum(IMPORTE_CONSEGUIDO) > 0) then (sum(IMPORTE_CONSE' +
+ 'GUIDO)/sum(CANTIDAD_CONSEGUIDA))'#10' else 0'#10' end as IMPORTE_M' +
+ 'EDIO_UNIDAD,'#10#10' case when (sum(IMPORTE_CONSEGUIDO) > 0) then (' +
+ 'sum(IMPORTE_CONSEGUIDO)/coalesce(CLIENTES_TOTALES.NUM_CLIENTES_T' +
+ 'OTALES, 0))'#10' else 0'#10' end as IMPORTE_MEDIO_CLIENTE'#10#10'from'#10'('#10 +
+ 'select AO.ID_AGENTE, AO.ANO, AO.SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'su' +
+ 'm(AO.CANTIDAD_OBJETIVO) as CANTIDAD_OBJETIVO, sum(AO.IMPORTE_OBJ' +
+ 'ETIVO) as IMPORTE_OBJETIVO,'#10'0 as CANTIDAD_CONSEGUIDA, 0 as CANTI' +
+ 'DAD_DEVUELTA, 0 as IMPORTE_CONSEGUIDO, 0 as IMPORTE_DEVUELTO'#10'fro' +
+ 'm 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, SEMESTRE,'#10'0 as ALTAS_CLIENTE,'#10'0 as CANT' +
+ 'IDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'sum(CANTIDAD_CONSEGUIDA) a' +
+ 's CANTIDAD_CONSEGUIDA, sum(CANTIDAD_DEVUELTA) as CANTIDAD_DEVUEL' +
+ 'TA, sum(IMPORTE_CONSEGUIDO) as IMPORTE_CONSEGUIDO, sum(IMPORTE_D' +
+ 'EVUELTO) as IMPORTE_DEVUELTO'#10'from v_inf_objetivos_albaranes'#10'wher' +
+ 'e ((v_inf_objetivos_albaranes.id_empresa = :ID_EMPRESA) and (v_i' +
+ 'nf_objetivos_albaranes.ANO = :ANO1))'#10'group by 1,2,3'#10#10'UNION ALL'#10#10 +
+ 'select ID_AGENTE, ANO, SEMESTRE,'#10'count(ID_CLIENTE) as ALTAS_CLIE' +
+ 'NTE,'#10'0 as CANTIDAD_OBJETIVO, 0 as IMPORTE_OBJETIVO,'#10'0 as CANTIDA' +
+ 'D_CONSEGUIDA, 0 as CANTIDAD_DEVUELTA, 0 as IMPORTE_CONSEGUIDO, 0' +
+ ' as IMPORTE_DEVUELTO'#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.p' +
+ 'eriodo = '#39'SEMESTRAL'#39') and (P.valor = SEMESTRE))'#10'left join contac' +
+ 'tos C on (C.ID = SEN.ID_AGENTE)'#10#10'left join'#10'('#10'select coalesce(ID_' +
+ 'AGENTE, -1) as ID_AGENTE, count(ID_CLIENTE) as NUM_CLIENTES_TOTA' +
+ 'LES'#10'from clientes_datos'#10'group by 1'#10') CLIENTES_TOTALES on (CLIENT' +
+ 'ES_TOTALES.ID_AGENTE = SEN.id_Agente)'#10#10'where {where}'#10'group by 1,' +
+ '2,3,4,5,6'#10'order by 1,2,3,4,5,6'#10#10#10#10
StatementType = stSQL
ColumnMappings = <
item
@@ -2407,10 +2411,6 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DatasetField = 'DESCRIPCION'
TableField = 'DESCRIPCION'
end
- item
- DatasetField = 'SEMESTRE'
- TableField = 'SEMESTRE'
- end
item
DatasetField = 'AGENTE'
TableField = 'AGENTE'
@@ -2434,6 +2434,10 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
item
DatasetField = 'IMPORTE_MEDIO_CLIENTE'
TableField = 'IMPORTE_MEDIO_CLIENTE'
+ end
+ item
+ DatasetField = 'SEMESTRE'
+ TableField = 'SEMESTRE'
end>
end>
Name = 'InformeListadoObjetivosSemestral'
@@ -2461,12 +2465,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
@@ -3766,12 +3770,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
@@ -3858,12 +3862,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
@@ -3950,12 +3954,12 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Size = 20
end
item
- Name = 'ALTAS_CLIENTE'
+ Name = 'CLIENTES_TOTALES'
DataType = datInteger
end
item
- Name = 'CLIENTES_TOTALES'
- DataType = datInteger
+ Name = 'ALTAS_CLIENTE'
+ DataType = datLargeInt
end
item
Name = 'CANTIDAD_OBJETIVO'
diff --git a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
index 7c326b3..2ed2f22 100644
--- a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
+++ b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas
@@ -3,7 +3,7 @@ unit schContactosClient_Intf;
interface
uses
- Classes, DB, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;
+ Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;
const
{ Data table rules ids
@@ -812,7 +812,7 @@ type
end;
{ TContactosDataTableRules }
- TContactosDataTableRules = class(TDADataTableRules, IContactos)
+ TContactosDataTableRules = class(TIntfObjectDADataTableRules, IContactos)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -986,7 +986,7 @@ type
end;
{ TGruposClienteDataTableRules }
- TGruposClienteDataTableRules = class(TDADataTableRules, IGruposCliente)
+ TGruposClienteDataTableRules = class(TIntfObjectDADataTableRules, IGruposCliente)
private
protected
{ Property getters and setters }
@@ -1075,7 +1075,7 @@ type
end;
{ TDatosBancariosDataTableRules }
- TDatosBancariosDataTableRules = class(TDADataTableRules, IDatosBancarios)
+ TDatosBancariosDataTableRules = class(TIntfObjectDADataTableRules, IDatosBancarios)
private
protected
{ Property getters and setters }
@@ -1403,7 +1403,7 @@ type
end;
{ TClientesDataTableRules }
- TClientesDataTableRules = class(TDADataTableRules, IClientes)
+ TClientesDataTableRules = class(TIntfObjectDADataTableRules, IClientes)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -1912,7 +1912,7 @@ type
end;
{ TProveedoresDataTableRules }
- TProveedoresDataTableRules = class(TDADataTableRules, IProveedores)
+ TProveedoresDataTableRules = class(TIntfObjectDADataTableRules, IProveedores)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -2369,7 +2369,7 @@ type
end;
{ TEmpleadosDataTableRules }
- TEmpleadosDataTableRules = class(TDADataTableRules, IEmpleados)
+ TEmpleadosDataTableRules = class(TIntfObjectDADataTableRules, IEmpleados)
private
f_NOTAS: IROStrings;
f_FORMACION_BASE: IROStrings;
@@ -2696,7 +2696,7 @@ type
end;
{ TDireccionesContactoDataTableRules }
- TDireccionesContactoDataTableRules = class(TDADataTableRules, IDireccionesContacto)
+ TDireccionesContactoDataTableRules = class(TIntfObjectDADataTableRules, IDireccionesContacto)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -2846,7 +2846,7 @@ type
end;
{ TClientesDescuentosDataTableRules }
- TClientesDescuentosDataTableRules = class(TDADataTableRules, IClientesDescuentos)
+ TClientesDescuentosDataTableRules = class(TIntfObjectDADataTableRules, IClientesDescuentos)
private
protected
{ Property getters and setters }
@@ -2911,7 +2911,7 @@ type
end;
{ TGruposProveedorDataTableRules }
- TGruposProveedorDataTableRules = class(TDADataTableRules, IGruposProveedor)
+ TGruposProveedorDataTableRules = class(TIntfObjectDADataTableRules, IGruposProveedor)
private
protected
{ Property getters and setters }
@@ -2958,7 +2958,7 @@ type
end;
{ TGruposEmpleadoDataTableRules }
- TGruposEmpleadoDataTableRules = class(TDADataTableRules, IGruposEmpleado)
+ TGruposEmpleadoDataTableRules = class(TIntfObjectDADataTableRules, IGruposEmpleado)
private
protected
{ Property getters and setters }
@@ -3118,7 +3118,7 @@ type
end;
{ TContactos_RefreshDataTableRules }
- TContactos_RefreshDataTableRules = class(TDADataTableRules, IContactos_Refresh)
+ TContactos_RefreshDataTableRules = class(TIntfObjectDADataTableRules, IContactos_Refresh)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -3274,7 +3274,7 @@ type
end;
{ TContratosEmpleadosDataTableRules }
- TContratosEmpleadosDataTableRules = class(TDADataTableRules, IContratosEmpleados)
+ TContratosEmpleadosDataTableRules = class(TIntfObjectDADataTableRules, IContratosEmpleados)
private
protected
{ Property getters and setters }
@@ -3309,7 +3309,7 @@ type
end;
{ TDescripcionesProveedoresDataTableRules }
- TDescripcionesProveedoresDataTableRules = class(TDADataTableRules, IDescripcionesProveedores)
+ TDescripcionesProveedoresDataTableRules = class(TIntfObjectDADataTableRules, IDescripcionesProveedores)
private
protected
{ Property getters and setters }
@@ -3398,7 +3398,7 @@ type
end;
{ TPersonalContactoDataTableRules }
- TPersonalContactoDataTableRules = class(TDADataTableRules, IPersonalContacto)
+ TPersonalContactoDataTableRules = class(TIntfObjectDADataTableRules, IPersonalContacto)
private
protected
{ Property getters and setters }
@@ -3511,7 +3511,7 @@ type
end;
{ TAgentes_ComisionesDataTableRules }
- TAgentes_ComisionesDataTableRules = class(TDADataTableRules, IAgentes_Comisiones)
+ TAgentes_ComisionesDataTableRules = class(TIntfObjectDADataTableRules, IAgentes_Comisiones)
private
protected
{ Property getters and setters }
@@ -3570,7 +3570,7 @@ type
end;
{ TListaAnosObjetivosAlbDataTableRules }
- TListaAnosObjetivosAlbDataTableRules = class(TDADataTableRules, IListaAnosObjetivosAlb)
+ TListaAnosObjetivosAlbDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosObjetivosAlb)
private
protected
{ Property getters and setters }
@@ -3754,7 +3754,7 @@ type
end;
{ TAgentesDataTableRules }
- TAgentesDataTableRules = class(TDADataTableRules, IAgentes)
+ TAgentesDataTableRules = class(TIntfObjectDADataTableRules, IAgentes)
private
f_NOTAS: IROStrings;
procedure NOTAS_OnChange(Sender: TObject);
@@ -3988,7 +3988,7 @@ type
end;
{ TClientesDescuentosArticulosDataTableRules }
- TClientesDescuentosArticulosDataTableRules = class(TDADataTableRules, IClientesDescuentosArticulos)
+ TClientesDescuentosArticulosDataTableRules = class(TIntfObjectDADataTableRules, IClientesDescuentosArticulos)
private
protected
{ Property getters and setters }
@@ -4107,7 +4107,7 @@ type
end;
{ TAgentes_Objetivos_albaranesDataTableRules }
- TAgentes_Objetivos_albaranesDataTableRules = class(TDADataTableRules, IAgentes_Objetivos_albaranes)
+ TAgentes_Objetivos_albaranesDataTableRules = class(TIntfObjectDADataTableRules, IAgentes_Objetivos_albaranes)
private
protected
{ Property getters and setters }
@@ -4214,7 +4214,7 @@ type
end;
{ TAgentes_Objetivos_facturasDataTableRules }
- TAgentes_Objetivos_facturasDataTableRules = class(TDADataTableRules, IAgentes_Objetivos_facturas)
+ TAgentes_Objetivos_facturasDataTableRules = class(TIntfObjectDADataTableRules, IAgentes_Objetivos_facturas)
private
protected
{ Property getters and setters }
@@ -4285,7 +4285,7 @@ type
end;
{ TListaAnosObjetivosFacDataTableRules }
- TListaAnosObjetivosFacDataTableRules = class(TDADataTableRules, IListaAnosObjetivosFac)
+ TListaAnosObjetivosFacDataTableRules = class(TIntfObjectDADataTableRules, IListaAnosObjetivosFac)
private
protected
{ Property getters and setters }
diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj
index 5dd6a2c..2e77227 100644
--- a/Source/Servidor/FactuGES_Server.dproj
+++ b/Source/Servidor/FactuGES_Server.dproj
@@ -36,6 +36,8 @@
FalseTrueFalse/standaloneTrueFalse4210FalseFalseFalseFalseFalse308212524.2.1.04.2.1.0martes, 31 de enero de 2012 10:21
+
+
ExpressPrinting System by Developer Express Inc.
FactuGES_Server.dprFalse