dbo.LN_dashboard_cliente_fidelitasprod_mis

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

19
Name Data Type Length Description
@accion varchar 50
@p_cliente int 4
@p_country_code varchar 2
@p_familia int 4
@p_contraparte int 4
@p_clave_indicador varchar 50
@p_score float 8
@p_valor_numerico float 8
@p_valor_texto varchar 100
@p_valor_memo text -1
@p_user_id int 4
@p_visible tinyint 1
@p_indicador int 4
@p_min float 8
@p_max float 8
@p_valor_indicador varchar 100
@p_sigla_producto varchar 10
@p_servicio_contratado int 4
@grupo int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
exec [LN_dashboard_cliente_fidelitasprod_mis] 'resultado_panel_new', 5546348, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,47,1
*/

-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
exec [LN_dashboard_cliente_fidelitasprod_mis] 'VALORES_GRILLA_EXT', 1226057645, null,null, null
exec [LN_dashboard_cliente_fidelitasprod_mis] 'PRODUCTOS_INDICADORES', 5546348, null,null, null

exec LN_dashboard_cliente_fidelitasprod_mis 'tiene_tabla_json', 2046807993, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,47 
exec LN_dashboard_cliente_fidelitasprod_mis 'resultado_panel_count', 5546348, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,47 
*/


/* 21/04/2023: En el caso del indicador SITUACION_CD: 
Si es de argentina y es null le muestra circulito gris, con el caption 'Sin información en los últimos meses' 
Son las lineas marcadas con el comentario 21/04/2023 */
 

CREATE OR ALTER PROCEDURE dbo.LN_dashboard_cliente_fidelitasprod_mis 
 -- Add the parameters for the stored procedure here
 @accion          varchar(50),
 @p_cliente         int,
 @p_country_code        varchar(2),
 @p_familia         int,
 @p_contraparte        int,

 /* Este parámetro opcional para obtener por clave un indicador específico de una contraparte
  cuando @accion = 'indicadores_contraparte' */

 @p_clave_indicador       varchar(50) = NULL,

 /* Parámetro para asentar el score manual o cuando se consulta mediante API */
 @p_score         float = NULL,

 /* Estos tres parámetros para asentar indicadores varios en tabla LN_contraparte_indicadores */
 @p_valor_numerico       float = null,
 @p_valor_texto        varchar(100) = null,
 @p_valor_memo        text = null,
 @p_user_id         int = null,
 @p_visible         tinyint = 1 ,
 
 @p_indicador        int = null,
 @p_min          float = null,
 @p_max          float = null,
 @p_valor_indicador       varchar(100) = null, 
 @p_sigla_producto       varchar(10) = null,

 @p_servicio_contratado      int = 47,
 @grupo int = 0
 

/* WITH RECOMPILE */
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here

 DECLARE @color_fondo varchar(10), @color_texto varchar(10)
  
 DECLARE @contrapartes varchar(MAX) = '0'
 declare @tabla_contrapartes table (contraparte int) 
 DECLARE @contrap int

   
/* NUEVO 17/10/2022 */ 

 DECLARE @indicadores_cliente table (indicador int, clave_indicador varchar(100), familia int) 

  -- exec LN_dashboard_cliente_fidelitasprod_mis 'VALORES_GRILLA_EXT',2046807993,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL


  /*
   select 'AAAAA' as BBB
   return
   */


 if (@accion = 'tiene_tabla_json')
 begin
  if exists (select top 1 * from PANEL_CONTROL_JSON P
     inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
              and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
       where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado )
  begin   

   select 'SI' as respuesta

  end
  else 
  begin
   -- Si tiene registro en PANEL_CONTROL_JSON_TERMINADO, pero no tenia nada en PANEL_CONTROL_JSON => 
   -- elimina el registro de PANEL_CONTROL_JSON_TERMINADO, porque no puede generarlo por no tener registros en PANEL_CONTROL_JSON
   if exists (select top 1 * from PANEL_CONTROL_JSON_TERMINADO where cliente = @p_cliente and servicio = @p_servicio_contratado)
   begin
    delete from PANEL_CONTROL_JSON_TERMINADO  where cliente = @p_cliente and servicio = @p_servicio_contratado  
   end

   select 'NO' as respuesta
  end
 end 


 if (@accion = 'busqueda_panel')
 begin

 if (@p_contraparte is null) 
 begin
  /*
   -- A la madrugada: Borra el panel y lo hace para todas las contrapartes
   delete from PANEL_CONTROL_JSON where cliente = @p_cliente and servicio = @p_servicio_contratado 
   -- Ahora se borran los datos de PANEL_CONTROL_JSON antes del insert_masivo del queue
   */

  return -- Que no haga el panel completo
 end 
 else 
 begin
  /*
   -- Antes si no habia registros para el cliente, ponia la contraparte en null para que haga el panel de todas las contrapartes 
   if exists (select top 1 * from PANEL_CONTROL_JSON where cliente = @p_cliente and servicio = @p_servicio_contratado) 
   begin
   update PANEL_CONTROL_JSON set visible = 0 where contraparte = @p_contraparte
   end
   else
   begin
   set @p_contraparte = null -- Para que lo haga para todas las contrapartes, ya que no tiene aun nada 
   end
   */

  if exists (select top 1 * from PANEL_CONTROL_JSON where contraparte = @p_contraparte and visible = 1)  
  begin
   update PANEL_CONTROL_JSON set visible = 0 where contraparte = @p_contraparte and visible = 1
  end 
  
  -- 10/07/2024: Guarda datos para el panel de control en excel
  exec [PANEL_CONTROL_EXCEL_] 'DATOS',null,null,@p_contraparte,null,1
  -- 
  
 end 
  
  /*
  
  exec LN_dashboard_cliente_fidelitasprod_mis 'VALORES_GRILLA_EXT',515494256,NULL,NULL,@p_contraparte,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,47
  
   */



 insert into PANEL_CONTROL_JSON
  (servicio, cliente, nro_registro,
  pais_servicio,
  country_name_servicio,
  PAIS,
  country_name,
  RAZON_SOCIAL,
  identificacion,
  FAMILIA,
  contraparte,
  clave_indicador,  
  producto_id,
  valor,
  color,
  textcolor,
  svg_data,
  textcaption,
  texto,
  punto,
  cell_data,
  detalle_killer,
  data_CLIENTE,
  CONTRATO
  )
  exec LN_dashboard_cliente_fidelitasprod_mis 'VALORES_GRILLA_EXT',@p_cliente,
  NULL,NULL,@p_contraparte,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
  @p_servicio_contratado

  
  -- 28/06/2024: Antes con una contraparte procesada ya lo ponia en PANEL_CONTROL_JSON_TERMINADO, 
  -- ahora lo pone cuando no hay nada pendiente en el queue para ese cliente

  IF (select count(*) as pendientes 
     from ln_contrapartes_queue Q
     inner join LN_contrapartes C   on (C.contraparte = Q.contraparte)
     inner join LN_gestiones G    on (G.contraparte = Q.contraparte and G.vigente = 1)
     inner join ln_contraparte_familias CF on (CF.contraparte = Q.contraparte and isnull(CF.activo,1) = 1)
     inner join ln_familias F    on (F.familia = CF.familia and isnull(F.visible,1) = 1)
    where C.cliente = @p_cliente and C.servicio_contratado = @p_servicio_contratado 
      and C.activo = 1 and C.subcontratista = 0
      and Q.processed = 0) = 0 

  BEGIN
   if not exists (select TOP 1 * from PANEL_CONTROL_JSON_TERMINADO where cliente = @p_cliente and servicio = @p_servicio_contratado)
      insert into PANEL_CONTROL_JSON_TERMINADO (cliente, servicio) values (@p_cliente,@p_servicio_contratado)
  END
  
  /*
   -- Antes del 28/06/2024
   -- Para saber que tengo datos nuevos para generar el archivo json
   if (select COUNT(*) as tota
    from PANEL_CONTROL_JSON P
   inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
    and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
   where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado
    ) > 0 
   begin
    if not exists (select TOP 1 * from PANEL_CONTROL_JSON_TERMINADO where cliente = @p_cliente and servicio = @p_servicio_contratado
    )
   insert into PANEL_CONTROL_JSON_TERMINADO (cliente, servicio) values (@p_cliente,@p_servicio_contratado)
   end
   */

 end

 if (@accion = 'resultado_panel')
 begin
  /* Como ya voy a generar el panel, saco el registro de control de json pendiente */
  delete from PANEL_CONTROL_JSON_TERMINADO  where cliente = @p_cliente and servicio = @p_servicio_contratado  
  /**/
  if @grupo = 0
   select *  from PANEL_CONTROL_JSON P
   inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
           and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
   where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado

   order by nro_registro
  else 
   select * from PANEL_CONTROL_JSON P
    inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
           and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
   where P.cliente = @p_cliente and servicio = @p_servicio_contratado and P.visible = 1 
     and P.nro_registro between (@grupo * 1000 - 999) and (@grupo * 1000)
   order by nro_registro
 end


 if (@accion = 'resultado_panel_new')
 begin
  /* Como ya voy a generar el panel, saco el registro de control de json pendiente */
  delete from PANEL_CONTROL_JSON_TERMINADO  where cliente = @p_cliente and servicio = @p_servicio_contratado  
  /**/
  if @grupo = 0
  begin
   select *  from PANEL_CONTROL_JSON P
   inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
           and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
   where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado

   order by P.contraparte 
  end
  else 
  begin
   select DATA.* from
     (
     select P.*, 
     C.id_padron,
     C.country_code,
     C.datos_comerciales,
     C.activo,
     C.nombre_contacto,
     C.email_contacto,
     C.telefono_contacto,
     C.clave,
     C.clave_temporal,
     C.clave_cambio,
     C.clave_expira,
     C.last_login,
     C.fecha_ultimo_cierre,
     C.periodicidad_ejercicio,
     C.vigencia_desde,
     C.vigencia_hasta,
     C.solicitud_dossier,
     C.fecha_solicitud,
     C.solicitado_por,
     C.estado_solicitud,
     C.fecha_cancelacion,
     C.cancelado_por,
     C.carga_inicial,
     C.limite_carga_inicial,
     C.inicio_actividades,
     C.ultimo_acceso,
     C.subcontratista,
     C.id_padre,
     C.empleados,
     C.resenia,
     C.codigo_idioma,
     C.modalidad_pago,
     C.domicilio,
     C.smart_informado,
     C.servicio_contratado,
     C.id_imperium,
     C.web,
     C.idTipoServicioPriv,
     C.idSectorPriv,
     C.email_ejecutivo_cuenta,
     C.id_referencia,
     C.hit_summary,
     row_number() OVER(ORDER BY  P.contraparte ASC) as contador  
    from PANEL_CONTROL_JSON P
    inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
           and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
    where P.cliente = @p_cliente and servicio = @p_servicio_contratado and P.visible = 1
     and P.idrow = (select MAX(idrow) from PANEL_CONTROL_JSON P2 where P2.contraparte = P.contraparte and P2.clave_indicador = P.clave_indicador and P2.visible = 1 )
    ) DATA 
    where contador between (@grupo * 100000 - 99999) and (@grupo * 100000)
  end
 end




 if (@accion = 'resultado_panel_count')
 begin
  
  select count(distinct P.contraparte) as total, isnull(MAX(nro_registro),0) as maximo_registro, MIN(P.contraparte) as contraparte_min,  MAX(P.contraparte) as contraparte_max
  from PANEL_CONTROL_JSON P
  inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
          and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
  where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado and P.visible = 1 
  
 end

 if (@accion = 'resultado_panel_count_new')
 begin
  
  select count(distinct P.contraparte) as total, isnull(MAX(P.contraparte),0) as maximo, MIN(P.contraparte) as contraparte_min,  MAX(P.contraparte) as contraparte_max
  from PANEL_CONTROL_JSON P
  inner join LN_contrapartes c on (c.cliente = @p_cliente and c.contraparte = P.contraparte 
          and c.activo = 1 and c.servicio_contratado = @p_servicio_contratado)
  where P.cliente = @p_cliente and P.servicio = @p_servicio_contratado and P.visible = 1 
  
 end



 IF (@accion = 'VALORES_GRILLA_EXT') BEGIN

  insert into @indicadores_cliente

  SELECT DATA.indicador, DATA.clave_indicador, DATA.familia 
  FROM (
  SELECT distinct LN_productos.producto_id, LN_productos.producto,
     ln_indicadores.indicador, LN_indicadores.nombre_indicador, LN_indicadores.etiqueta as etiqueta_indicador, LN_indicadores.clave_indicador, 
     show_panel = 
      CASE 
      WHEN ISNULL(LN_productos.suscribe_indicadores, 0) > 0 THEN iif(SUSC.indicador IS NOT NULL, 1, 0)
      ELSE 1 END, 
      ln_familias.familia
   FROM LN_productos 
   INNER JOIN LN_cliente_productos ON LN_productos.producto = LN_cliente_productos.producto
   INNER JOIN LN_familia_productos ON LN_cliente_productos.producto = LN_familia_productos.producto
   INNER JOIN LN_familias ON (LN_familia_productos.familia = LN_familias.familia
          AND LN_cliente_productos.cliente = LN_familias.cliente)

   INNER join LN_indicadores ON LN_productos.producto = LN_indicadores.producto

   LEFT OUTER JOIN (SELECT cliente, indicador FROM LN_cliente_indicadores
       WHERE cliente = @p_cliente) SUSC
    ON (LN_cliente_productos.cliente = SUSC.cliente AND LN_indicadores.indicador = SUSC.indicador)


   LEFT OUTER JOIN country ON LN_productos.country_code = country.country_code
   WHERE LN_cliente_productos.cliente = @p_cliente
   AND LN_productos.visible = 1
   AND LN_cliente_productos.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_familias.visible = 1 AND LN_familias.uso_familia != 'I'
   AND ISNULL(LN_familias.subfamilia, 0) = 0
   AND LN_indicadores.visible = 1
   and LN_productos.servicio_contratado in (0, @p_servicio_contratado)    
   ) DATA

  WHERE DATA.show_panel = 1



  --exec LN_indicadores_cliente_servicio 'INDICADORES_CLIENTE_SERVICIO', @p_cliente, @p_servicio_contratado


  /* Para consultar por un ID de contraparte en particular */
  if (@p_contraparte > 0) begin
   set @p_clave_indicador = NULL
   set @p_min = null
   set @p_max = null
   set @p_valor_indicador = null
   --set @contrapartes = convert(varchar(10), @p_contraparte)
   insert into @tabla_contrapartes (contraparte) values (@p_contraparte)

  end

  /* Filtro por indicador : rango numérico o valor fijo */
  if ( @p_clave_indicador is not null AND ( (@p_min is not null AND @p_max is not null) OR @p_valor_indicador is not null ) ) begin

   if (@p_min = 0) set @p_min = -1000

   if (@p_valor_indicador is not null)
   
    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_texto = @p_valor_indicador
    and ln_contraparte_indicadores.visible = 1 

   else

    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_numerico IS NOT NULL
    and LN_contraparte_indicadores.valor_numerico >= @p_min
    and LN_contraparte_indicadores.valor_numerico <= @p_max
    and ln_contraparte_indicadores.visible = 1
    group by LN_contrapartes.contraparte


   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    --SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    insert into @tabla_contrapartes (contraparte) values (@contrap)
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes


  end


  /* Filtro por país */
  if (@p_country_code is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join padrones on LN_contrapartes.id_padron = padrones.id_padron
   inner join identificadores on padrones.identificador = identificadores.identificador
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and identificadores.country_code = @p_country_code

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    --SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    insert into @tabla_contrapartes (contraparte) values (@contrap)

    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end

  /* Filtro por familia */
  if (@p_familia is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes 
   inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1 
   and LN_contrapartes.activo = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and LN_contraparte_familias.familia = @p_familia

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    --SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    insert into @tabla_contrapartes (contraparte) values (@contrap)

    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end

  if ( @p_clave_indicador is null and @p_familia is null and @p_country_code is null and @p_contraparte is null) -- Sin Filtros 
  begin 
  declare Contrapartes CURSOR FOR

  select LN_contrapartes.contraparte
   from LN_contrapartes 
   inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1 
   and LN_contrapartes.activo = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and LN_contrapartes.servicio_contratado = @p_servicio_contratado

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
-- SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    insert into @tabla_contrapartes (contraparte) values (@contrap)

    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end

  -- IF (@contrapartes = '0')
  IF (@contrapartes = '0' or @contrapartes != '0') -- Siempre hace esto 
  begin 
   SELECT distinct @p_servicio_contratado as servicio, @p_cliente as client_id, row_number() OVER(ORDER BY RAZON_SOCIAL ASC) as nro_registro, 
           DATA.pais_servicio, 
           DATA.country_name_servicio, 
     DATA.PAIS, 
     DATA.country_name, 
     DATA.RAZON_SOCIAL,
     DATA.identificacion, 
     DATA.FAMILIA, 
     DATA.contraparte, 
     DATA.clave_indicador, 
     DATA.producto_id,
     iif(DATA.sin_datos is not null, DATA.sin_datos, DATA.valor) as valor, 
     DATA.color,
     DATA.textcolor,
     DATA.svg_data,
     DATA.textcaption,
     DATA.texto, 
     DATA.punto,
     DATA.cell_data,
     DATA.detalle_killer,
     DATA.CLIENTE, 
     DATA.CONTRATO

   from 
   (



   SELECT LOWER(ln_contrapartes.pais_servicio) AS 'pais_servicio', 
   country_ser.country_name as'country_name_servicio', 
   LOWER(identificadores.country_code) AS 'PAIS', 
   country.country_name AS 'country_name', 
   padrones.nombre_persona AS 'RAZON_SOCIAL', 
   padrones.identificacion as identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte as contraparte, 
     LN_indicadores.clave_indicador as clave_indicador, LN_productos.producto_id as producto_id,
   /* 21/04/2023 */ 
   iif(LN_indicadores.clave_indicador = 'SITUACION_CD'  and ln_contrapartes.country_code = 'AR' and LN_contraparte_indicadores.valor_numerico is null,null,
   (iif((LN_contraparte_indicadores.valor_numerico is null and 
    LN_contraparte_indicadores.valor_texto is null and 
    LN_contraparte_indicadores.valor_fecha is null and 
    LN_contraparte_indicadores.valor_memo is null),'SIN DATOS',NULL))) as sin_datos,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'
      END,

      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'
      END,

      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,




   case        
    when LN_indicadores.tipo_dato = 'M' or ln_indicadores.clave_indicador = 'SOS_CLASIFICACION' then convert(varchar(max),LN_contraparte_indicadores.valor_memo)

    when LN_indicadores.tipo_dato = 'S' then LN_contraparte_indicadores.valor_texto
    /* 21/04/2023 */
    
    when LN_indicadores.tipo_dato = 'I' and ln_indicadores.clave_indicador = 'SITUACION_CD' AND ln_contrapartes.country_code = 'AR' then 
      iif(LN_contraparte_indicadores.valor_numerico is not null, 
      LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
      '-')

    when LN_indicadores.tipo_dato = 'I' and (ln_indicadores.clave_indicador != 'SITUACION_CD' or ln_contrapartes.country_code != 'AR') then 
    /*
     when LN_indicadores.tipo_dato = 'I' then 
     */

     /* acá distingo score de informe comercial ARGENTINA o EXTERIOR: según el país de la contraparte va nulo */
     /*CASE
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ar THEN
      iif (identificadores.country_code = 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ext THEN
      iif (identificadores.country_code != 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      ELSE
     
      iif(LN_contraparte_indicadores.valor_numerico is not null, 
      /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/

      LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
      null)
     
      END*/

     /* fin distinción score de informe comercial */


     
     iif(LN_contraparte_indicadores.valor_numerico is not null, 
       /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
       LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
       null)
     


    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK' or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end


    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')



    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
    
    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end


    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'sujeto_obligado') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '4A8AF0'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'cccccc'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
     /* 21/04/2023: Si es de argentina y es null le hace circulito gris */
         when (ln_contrapartes.country_code = 'AR' and LN_contraparte_indicadores.valor_numerico is null)  then 'cccccc'
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)
    
    WHEN (LN_indicadores.clave_indicador = 'VRM_DDR') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'FFB81C'

      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
/* and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL 
       end)


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL
       end)


    WHEN (LN_indicadores.clave_indicador = 'impe_status' OR LN_indicadores.clave_indicador = 'impe_control_acceso') THEN
     case
      when LN_contraparte_indicadores.valor_numerico > 0 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')

    ELSE
     case
     /*
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
      */

        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'   
        
        else NULL
      
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK' or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

       WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'FFFFFF'
      when LN_contraparte_indicadores.valor_numerico = 0 then '000000'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
/*
and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC' )

     


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)


    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO' OR LN_indicadores.clave_indicador = 'PRENSA') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB'
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador = 'SCORE_VRM' or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') ) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)


    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST' OR
       LN_indicadores.clave_indicador like 'KPI%' 
       ) THEN 
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
    /* 21/04/2023 */ 
     case
      when ( (LN_indicadores.clave_indicador = 'SITUACION_CD' and LN_contrapartes.country_code = 'AR') or (LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6)) then 'DOT'
      --when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_status' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'CHECK'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'CROSS'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_control_acceso' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'THUMBSUP'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'THUMBSDOWN'
      else NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'

    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      else null
     end


    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')


    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'
      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(convert(varchar(max),LN_contraparte_indicadores.valor_memo),'EN TOLERANCIA') 
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto 

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end
    /* 21/04/2023 */ 
    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' and LN_contrapartes.country_code = 'AR' and LN_contraparte_indicadores.valor_numerico is null  THEN 
         'Sin información en los últimos meses'
    --WHEN LN_indicadores.clave_indicador = 'SITUACION_CD'
    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' and (LN_contrapartes.country_code != 'AR' or LN_contraparte_indicadores.valor_numerico is not null) THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto

    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo)
        
    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')


   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 

      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
      or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') 
      or LN_indicadores.clave_indicador like 'DD_%'
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal','DP_301','DP_351','pago_resp_civil','pago_sindicato') 
      OR LN_indicadores.clave_indicador = 'PRENSA'
      OR LN_indicadores.clave_indicador = 'APOCRIFAS'
      OR LN_indicadores.clave_indicador like 'KPI%' 
      OR LN_indicadores.clave_indicador = 'sujeto_obligado' 
      OR LN_indicadores.clave_indicador = 'BLACKLIST' ) THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  as CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT distinct SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
   --INNER JOIN country ON country.country_code = UPPER(identificadores.country_code)
   left outer JOIN country ON country.country_code = UPPER(ln_contrapartes.country_code)
   left outer JOIN country country_ser ON country_ser.country_code = UPPER(ln_contrapartes.pais_servicio)

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
               and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)

   

   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1 
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)
   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 

   /* 12/12/2022: */ 
   --INNER JOIN dbo.DelimitedSplit8K(@contrapartes, ',') FILTRADAS ON LN_contrapartes.contraparte = CONVERT(INT, FILTRADAS.Item)
   /* Se saco, y se puso el Ln_Contrapartes.contraparte IN */ 

   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_Contrapartes.contraparte in (select contraparte from @tabla_contrapartes)
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona

   
   
   UNION 


   SELECT distinct LOWER(ln_contrapartes.pais_servicio) AS 'pais_servicio', 
           country_ser.country_name as'country_name_servicio', 
     LOWER(identificadores.country_code) AS 'PAIS',country.country_name AS 'country_name', 
     padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,
     null as sin_datos, 
     iif (inf.indicador is null, 'NO APLICA','SIN CALCULAR') AS valor, 
     NULL AS color,
     NULL AS textcolor,
     NULL AS svg_data,
     NULL AS textcaption,
     NULL AS texto, 
     NULL AS punto,
     NULL AS cell_data,
     NULL AS detalle_killer,
     NULL as CLIENTE, 
     NULL as CONTRATO

   FROM LN_contrapartes 
  
   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
   left outer JOIN country ON country.country_code = UPPER(ln_contrapartes.country_code)
   left outer JOIN country country_ser ON country_ser.country_code = UPPER(ln_contrapartes.pais_servicio)
   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte

   INNER JOIN (select distinct indicador, clave_indicador from @indicadores_cliente) inc on (1=1)
   LEFT JOIN  @indicadores_cliente inf on (inc.clave_indicador = inf.clave_indicador and inf.familia = ln_contraparte_familias.familia)

   INNER JOIN LN_indicadores ON LN_indicadores.indicador = inc.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia
   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)
   /* 12/12/2022: */
   --INNER JOIN dbo.DelimitedSplit8K(@contrapartes, ',') FILTRADAS ON LN_contrapartes.contraparte = CONVERT(INT, FILTRADAS.Item)
   /* Se saco porque se puse el ln_contrapartes.contraparte IN */

   WHERE LN_contrapartes.cliente = @p_cliente
   /* Se puso este IN */
   AND LN_contrapartes.contraparte in (select contraparte from @tabla_contrapartes)
   /**/
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1  
   AND LN_contrapartes.subcontratista = 0
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_cliente_productos.activo = 1   
   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado
   
   AND not exists (select top 1 * from LN_contraparte_indicadores ci 
         inner join LN_indicadores lni on lni.indicador = ci.indicador
                    where ci.contraparte = ln_contrapartes.contraparte 
          and ci.gestion = LN_gestiones.gestion 
          and ci.visible = 1 
          --and ci.indicador = inc.indicador 
          and lni.clave_indicador = inc.clave_indicador -- Lo hacemos por clave_indicador para el caso de SCORE_IC (que hay de argentina y exterior)
          --and (ci.valor_numerico is not null or ci.valor_texto is not null or ci.valor_fecha is not null or ci.valor_memo is not null) 
          )
   
   --order by padrones.nombre_persona 


   ) DATA
   --where (@p_cliente = 2046807993 and DATA.contraparte = 191675) or  @p_cliente != 2046807993
   --where (@p_cliente = 2046807993 and DATA.FAMILIA not in ('SOCIEDADES ANÓNIMAS y SRL') ) or  @p_cliente != 2046807993

   order by DATA.RAZON_SOCIAL




  end 
  
  -- No se usa mas: siempre va a tener la lista de contrapartes 
  ELSE
  

   -- con filtrado de contrapartes

   SELECT LOWER(identificadores.country_code) AS 'PAIS', padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'

      END,
      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'
       

      END,
      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,
    

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,




   case        
    when LN_indicadores.tipo_dato = 'S' then LN_contraparte_indicadores.valor_texto
    when LN_indicadores.tipo_dato = 'M' then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'I' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
               null)
    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
   
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

    /*WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
     when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
     when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
     else NULL
     end*/


    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

        
        WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

       WHEN (LN_indicadores.clave_indicador = 'VRM_DDR') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'FFB81C'

      else NULL 
     end
    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)

    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')

    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
      else NULL 
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
/*
WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
case
when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
else NULL
end
*/

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     
    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC'

     )


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or   LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador = 'SCORE_VRM'  or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal')) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)
/*
WHEN (LN_indicadores.clave_indicador in ('DP_301','DP_351')) THEN
iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)
*/

    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN

     case
      when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'
    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end


    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      else null
     end

     
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')
    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'

      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(LN_contraparte_indicadores.valor_memo, 'EN TOLERANCIA')
    
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
      
    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo)

    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto

    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')

   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
       or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','VRM_SCORE_SOSTENIBILIDAD') 
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal'/*,'DP_301','DP_351'*/)
      OR LN_indicadores.clave_indicador = 'PRENSA') THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  AS CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte
   
   --INNER JOIN dbo.DelimitedSplit8K(@contrapartes, ',') FILTRADAS ON LN_contrapartes.contraparte = CONVERT(INT, FILTRADAS.Item)

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
 
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
                                             and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)


   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)

   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1 
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 



   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_Contrapartes.contraparte in (select contraparte from @tabla_contrapartes) 
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and LN_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')



   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona
   ORDER BY padrones.nombre_persona asc
 END



/* FIN NUEVO 17/10/2022 */ 


 IF (@accion = 'VALORES_GRILLA_EXT_NO_SE_USA_MAS') BEGIN

  /*DECLARE @contrapartes varchar(MAX) = '0'
   DECLARE @contrap int*/


  /* Para consultar por un ID de contraparte en particular */
  if (@p_contraparte > 0) begin
   set @p_clave_indicador = NULL
   set @p_min = null
   set @p_max = null
   set @p_valor_indicador = null

   set @contrapartes = convert(varchar(10), @p_contraparte)
  end

  /* Filtro por indicador : rango numérico o valor fijo */
  if ( @p_clave_indicador is not null AND ( (@p_min is not null AND @p_max is not null) OR @p_valor_indicador is not null ) ) begin

   if (@p_min = 0) set @p_min = -1000

   if (@p_valor_indicador is not null)
   
    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_texto = @p_valor_indicador
    and ln_contraparte_indicadores.visible = 1 

   else

    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_numerico IS NOT NULL
    and LN_contraparte_indicadores.valor_numerico >= @p_min
    and LN_contraparte_indicadores.valor_numerico <= @p_max
    and ln_contraparte_indicadores.visible = 1
    group by LN_contrapartes.contraparte


   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes


  end


  /* Filtro por país */
  if (@p_country_code is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join padrones on LN_contrapartes.id_padron = padrones.id_padron
   inner join identificadores on padrones.identificador = identificadores.identificador
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and identificadores.country_code = @p_country_code

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end

  /* Filtro por familia */
  if (@p_familia is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes 
   inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1 
   and LN_contrapartes.activo = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and LN_contraparte_familias.familia = @p_familia

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end


  IF (@contrapartes = '0')

   SELECT LOWER(ln_contrapartes.pais_servicio) AS 'pais_servicio', country_ser.country_name as'country_name_servicio', LOWER(identificadores.country_code) AS 'PAIS',country.country_name AS 'country_name', padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK' or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'
      END,
      
      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'

      END,

      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,

 


   case        
    when LN_indicadores.tipo_dato = 'S' then LN_contraparte_indicadores.valor_texto
    when LN_indicadores.tipo_dato = 'M' then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'I' then 
    
     /* acá distingo score de informe comercial ARGENTINA o EXTERIOR: según el país de la contraparte va nulo */
     /*CASE
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ar THEN
      iif (identificadores.country_code = 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ext THEN
      iif (identificadores.country_code != 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      ELSE
     
      iif(LN_contraparte_indicadores.valor_numerico is not null, 
      /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/

      LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
      null)
     
      END*/

     /* fin distinción score de informe comercial */


     
     iif(LN_contraparte_indicadores.valor_numerico is not null, 
       /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
       LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
       null)
     


    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK' or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
    
    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end


    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'sujeto_obligado') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '4A8AF0'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'cccccc'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)
    
    WHEN (LN_indicadores.clave_indicador = 'VRM_DDR') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'FFB81C'

      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
/* and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL 
       end)


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL
       end)


    WHEN (LN_indicadores.clave_indicador = 'impe_status' OR LN_indicadores.clave_indicador = 'impe_control_acceso') THEN
     case
      when LN_contraparte_indicadores.valor_numerico > 0 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      else null
     end
    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')
    ELSE
     case
     /*
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
      */

        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'   
        
        else NULL
      
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    
    

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

       WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'FFFFFF'
      when LN_contraparte_indicadores.valor_numerico = 0 then '000000'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
/*
and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC' )

     


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)


    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO' OR LN_indicadores.clave_indicador = 'PRENSA') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB'
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador = 'SCORE_VRM' or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') ) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)


    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST'
      OR LN_indicadores.clave_indicador like 'KPI%' 
       ) THEN 
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN

     case
      when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_status' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'CHECK'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'CROSS'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_control_acceso' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'THUMBSUP'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'THUMBSDOWN'
      else NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'

    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      else null
     end


    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')
    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'
      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(LN_contraparte_indicadores.valor_memo,'EN TOLERANCIA') 
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto 

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo) 
    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')


   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 

      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
      or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal','DP_301','DP_351','pago_resp_civil','pago_sindicato') 
      or LN_indicadores.clave_indicador like 'DD_%'
      OR LN_indicadores.clave_indicador = 'PRENSA'
      OR LN_indicadores.clave_indicador = 'APOCRIFAS'
      OR LN_indicadores.clave_indicador like 'KPI%' 

      OR LN_indicadores.clave_indicador = 'sujeto_obligado' 
      OR LN_indicadores.clave_indicador = 'BLACKLIST' ) THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  as CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT distinct SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
   --INNER JOIN country ON country.country_code = UPPER(identificadores.country_code)
   left outer JOIN country ON country.country_code = UPPER(ln_contrapartes.country_code)
   left outer JOIN country country_ser ON country_ser.country_code = UPPER(ln_contrapartes.pais_servicio)

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
               and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)

   

   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1 
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)
   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 



   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona
   order by padrones.nombre_persona

  ELSE

   -- con filtrado de contrapartes

   SELECT LOWER(identificadores.country_code) AS 'PAIS', padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'

      END,
      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'


      END,
      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,
    

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,

       


   case        
    when LN_indicadores.tipo_dato = 'S' then LN_contraparte_indicadores.valor_texto
    when LN_indicadores.tipo_dato = 'M' then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'I' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
               null)
    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
   
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')   THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end

     
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

    /*WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
     when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
     when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
     else NULL
     end*/


    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

        
        WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

       WHEN (LN_indicadores.clave_indicador = 'VRM_DDR') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'FFB81C'

      else NULL 
     end
    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)
    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')

    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
      else NULL 
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador = 'WORDCHK'   or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
/*
WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
case
when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
else NULL
end
*/

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     
    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC'

     )


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or   LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador = 'SCORE_VRM'  or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal')) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)
/*
WHEN (LN_indicadores.clave_indicador in ('DP_301','DP_351')) THEN
iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)
*/

    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN

     case
      when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'
    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end


    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      else null
     end

   

    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')
    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'

      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(LN_contraparte_indicadores.valor_memo, 'EN TOLERANCIA')
    
    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo)   
    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto

    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')

   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
       or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%'
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal'/*,'DP_301','DP_351'*/)
      OR LN_indicadores.clave_indicador = 'PRENSA') THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  AS CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte
   
   INNER JOIN dbo.DelimitedSplit8K(@contrapartes, ',') FILTRADAS ON LN_contrapartes.contraparte = CONVERT(INT, FILTRADAS.Item)

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
 
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
                                             and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)


   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)

   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1 
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 



   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and LN_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')



   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona
   ORDER BY padrones.nombre_persona asc
 END





 IF (@accion = 'VALORES_GRILLA_EXTAGB') BEGIN

  --DECLARE @contrapartes varchar(MAX) = '0'
  --DECLARE @contrap int
  set @contrap= 0
  set @contrapartes = '0'
  set @p_contraparte =147088
  /* Para consultar por un ID de contraparte en particular */
  if (@p_contraparte > 0) begin
   set @p_clave_indicador = NULL
   set @p_min = null
   set @p_max = null
   set @p_valor_indicador = null

   set @contrapartes = convert(varchar(10), @p_contraparte)
  end

  /* Filtro por indicador : rango numérico o valor fijo */
  if ( @p_clave_indicador is not null AND ( (@p_min is not null AND @p_max is not null) OR @p_valor_indicador is not null ) ) begin

   if (@p_min = 0) set @p_min = -1000

   if (@p_valor_indicador is not null)
   
    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_texto = @p_valor_indicador
    and ln_contraparte_indicadores.visible = 1 

   else

    declare Contrapartes CURSOR FOR

    select LN_contrapartes.contraparte
    from LN_contrapartes 
    inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
    inner join LN_contraparte_indicadores on (LN_gestiones.contraparte = LN_contraparte_indicadores.contraparte
               and LN_gestiones.gestion = LN_contraparte_indicadores.gestion)
    inner join LN_indicadores on LN_contraparte_indicadores.indicador = LN_indicadores.indicador
    inner join LN_cliente_productos on (LN_indicadores.producto = LN_cliente_productos.producto
             and LN_contrapartes.cliente = LN_cliente_productos.cliente)
    inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
    inner join LN_familia_productos on (LN_cliente_productos.producto = LN_familia_productos.producto
             and LN_contraparte_familias.familia = LN_familia_productos.familia)
    inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia

    where LN_contrapartes.cliente = @p_cliente
    and LN_contrapartes.activo = 1
    and LN_familias.visible = 1
    and LN_contraparte_familias.activo = 1
    and LN_gestiones.desde <= GETDATE()
    and LN_gestiones.hasta >= GETDATE()
    and ln_gestiones.vigente = 1 
    and LN_familia_productos.activo = 1
    and LN_cliente_productos.activo = 1
    and LN_indicadores.clave_indicador = @p_clave_indicador
    and LN_contraparte_indicadores.valor_numerico IS NOT NULL
    and LN_contraparte_indicadores.valor_numerico >= @p_min
    and LN_contraparte_indicadores.valor_numerico <= @p_max
    and ln_contraparte_indicadores.visible = 1
    group by LN_contrapartes.contraparte


   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes


  end


  /* Filtro por país */
  if (@p_country_code is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join padrones on LN_contrapartes.id_padron = padrones.id_padron
   inner join identificadores on padrones.identificador = identificadores.identificador
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and identificadores.country_code = @p_country_code

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end

  /* Filtro por familia */
  if (@p_familia is not null) begin

   declare Contrapartes CURSOR FOR
   
   select LN_contrapartes.contraparte
   from LN_contrapartes 
   inner join LN_gestiones on LN_contrapartes.contraparte = LN_gestiones.contraparte
   inner join LN_contraparte_familias on LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   inner join LN_familias on LN_contraparte_familias.familia = LN_familias.familia
   where LN_gestiones.desde <= GETDATE()
   and LN_gestiones.hasta >= GETDATE()
   and LN_gestiones.vigente = 1 
   and LN_contrapartes.activo = 1
   and LN_familias.visible = 1
   and LN_contraparte_familias.activo = 1
   and LN_contrapartes.cliente = @p_cliente
   and LN_contraparte_familias.familia = @p_familia

   Open Contrapartes
   Fetch next from Contrapartes Into @contrap
   WHILE @@FETCH_STATUS = 0 BEGIN
    SET @contrapartes = @contrapartes + ',' + rtrim(ltrim(convert(varchar(10), @contrap)))
    Fetch next from Contrapartes Into @contrap
   END
   Close Contrapartes
   Deallocate Contrapartes

  end


  IF (@contrapartes = '0')

   SELECT LOWER(ln_contrapartes.pais_servicio) AS 'pais_servicio', country_ser.country_name as'country_name_servicio', LOWER(identificadores.country_code) AS 'PAIS',country.country_name AS 'country_name', padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK' or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'
      END,

      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador like 'DD_%',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'
      END,

      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,



   case        
    when LN_indicadores.tipo_dato = 'S' and ln_indicadores.clave_indicador not in ('SCORE_VRM') then LN_contraparte_indicadores.valor_texto
    when LN_indicadores.tipo_dato = 'S' and ln_indicadores.clave_indicador in ('SCORE_VRM') then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'M' then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'I' then 
    
     /* acá distingo score de informe comercial ARGENTINA o EXTERIOR: según el país de la contraparte va nulo */
     /*CASE
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ar THEN
      iif (identificadores.country_code = 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      WHEN LN_contraparte_indicadores.indicador = @score_comercial_ext THEN
      iif (identificadores.country_code != 'AR', iif(LN_contraparte_indicadores.valor_numerico is not null, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')),NULL),NULL)
     
      ELSE
     
      iif(LN_contraparte_indicadores.valor_numerico is not null, 
      /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/

      LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
      null)
     
      END*/

     /* fin distinción score de informe comercial */


     
     iif(LN_contraparte_indicadores.valor_numerico is not null, 
       /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
       LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
       null)
     


    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
    
    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end


    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'sujeto_obligado') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '4A8AF0'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'cccccc'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)
    WHEN (LN_indicadores.clave_indicador = 'VRM_DDR') THEN
       case
        when  LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
        when  LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'FFB81C'

        else null
       end 

    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        /*
         and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
         */

        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL 
       end)


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
        when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
        else NULL
       end)


    WHEN (LN_indicadores.clave_indicador = 'impe_status' OR LN_indicadores.clave_indicador = 'impe_control_acceso') THEN
     case
      when LN_contraparte_indicadores.valor_numerico > 0 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      else null
     end
    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')
    ELSE
     case
     /*
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 81 then '63b68c'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 61 then 'cbc367'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 41 then 'FFB81C'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') >= 21 then 'd37123'
      when format(LN_contraparte_indicadores.valor_numerico,'##0') < 21 then 'A72B2A'
      */

        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'   
        
        else NULL
      
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    
    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

       WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 0 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico = 1 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST') THEN 
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'FFFFFF'
      when LN_contraparte_indicadores.valor_numerico = 0 then '000000'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC' )

     


    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)


    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO' OR LN_indicadores.clave_indicador = 'PRENSA') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB'
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or  LN_indicadores.clave_indicador = 'SCORE_VRM' or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') ) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN LN_indicadores.clave_indicador in ('pago_resp_civil','pago_sindicato') THEN
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)


    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'APOCRIFAS' OR 
       LN_indicadores.clave_indicador = 'sujeto_obligado' OR 
       LN_indicadores.clave_indicador = 'BLACKLIST'
      OR LN_indicadores.clave_indicador like 'KPI%' 
       ) THEN 
     iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN

     case
      when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_status' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'CHECK'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'CROSS'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'impe_control_acceso' THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then 'THUMBSUP'
      when LN_contraparte_indicadores.valor_numerico = 0 then 'THUMBSDOWN'
      else NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'

    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%'  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD' )  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      else null
     end

    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

    ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')

    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'

      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(ln_contraparte_indicadores.valor_memo,'EN TOLERANCIA')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto 

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo) 
    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')


   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 

      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
       or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal','DP_301','DP_351','pago_resp_civil','pago_sindicato') 
      or LN_indicadores.clave_indicador like 'DD_%'
      OR LN_indicadores.clave_indicador = 'PRENSA'
      OR LN_indicadores.clave_indicador = 'APOCRIFAS'
      OR LN_indicadores.clave_indicador like 'KPI%' 

      OR LN_indicadores.clave_indicador = 'sujeto_obligado' 
      OR LN_indicadores.clave_indicador = 'BLACKLIST' ) THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  as CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT distinct SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador
   --INNER JOIN country ON country.country_code = UPPER(identificadores.country_code)
   left outer JOIN country ON country.country_code = UPPER(ln_contrapartes.country_code)
   left outer JOIN country country_ser ON country_ser.country_code = UPPER(ln_contrapartes.pais_servicio)

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
               and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)

   

   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1 
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)
   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 



   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona
   order by padrones.nombre_persona

  ELSE

   -- con filtrado de contrapartes

   SELECT LOWER(identificadores.country_code) AS 'PAIS', padrones.nombre_persona AS 'RAZON_SOCIAL', padrones.identificacion, 
     LN_familias.nombre_familia AS 'FAMILIA', LN_contrapartes.contraparte, 
     LN_indicadores.clave_indicador, LN_productos.producto_id,

   iif(LN_productos.producto_id = 'balances',
    CASE
     WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN 
      CASE
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
      END

     WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '##0')), NULL)

     WHEN LN_indicadores.clave_indicador = 'FECHA_BALANCE' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '')

     WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA') THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(ROUND(LN_contraparte_indicadores.valor_numerico/1000, 0), '#############0')), NULL)

     ELSE iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, LTRIM(format(LN_contraparte_indicadores.valor_numerico, '################0.00')), NULL)

     /*WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_RESULTADO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
     
      WHEN LN_indicadores.clave_indicador = 'BAL_SOLVENCIA_PATRIMONIAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_TOTAL' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ENDEUDAMIENTO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_CAPITAL_CORRIENTE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_LIQUIDEZ_SECA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_CREDITOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_INVENTARIOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVOS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_ACTIVO_FIJO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_PRESTAMOS_PATRIMONIO_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MESES_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_DIAS_DEUDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_BRUTO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_NETO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_OPERATIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_PATRIMONIO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_MARGEN_SOBRE_ACTIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0')), '.', ','), '')
     
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_PASIVO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_EBITDA_INTERESES' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_FINANCIEROS_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_COMERCIALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_ADMINISTRACION_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_GASTOS_TOTALES_VENTAS' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_INVERSIONES_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_VIDA_RESTANTE_BIENES_USO' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      WHEN LN_indicadores.clave_indicador = 'BAL_ROTACION_PASIVO_CORRIENTE' THEN iif(LN_contraparte_indicadores.valor_numerico IS NOT NULL, REPLACE(LTRIM(format(LN_contraparte_indicadores.valor_numerico, '### ### ### ### ### ##0.00')), '.', ','), '')
      */

    END,
    
   /* else: no balances */

    iif(LN_indicadores.clave_indicador = 'NIVEL_RIESGO',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'BR' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'SR' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'MR' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'AR' THEN '4'
      END,

     iif (LN_indicadores.clave_indicador = 'FIDECHECK',
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'S' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'

      END,

      iif ((LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' or LN_indicadores.clave_indicador = 'PRENSA'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'V' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'R' THEN '3'

      END,
      iif (LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto = 'B' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto = 'M' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto = 'A' THEN '3'
       WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '4'
       WHEN LN_contraparte_indicadores.valor_texto = 'C' THEN '5'
       WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '6'

      END,
      iif ((LN_indicadores.clave_indicador = 'aportes_ss' or 
            LN_indicadores.clave_indicador = 'aportes_os' or
            LN_indicadores.clave_indicador = 'aportes_patronal'),
      CASE 
       WHEN LN_contraparte_indicadores.valor_texto like 'PAG_' THEN '1'
       WHEN LN_contraparte_indicadores.valor_texto like '%PARCIAL%' THEN '2'
       WHEN LN_contraparte_indicadores.valor_texto like 'IMPAG%' THEN '3'
      END,
    

      iif (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG',
       CASE 
        WHEN LN_contraparte_indicadores.valor_numerico = 0 THEN '1'
        WHEN LN_contraparte_indicadores.valor_numerico = 1 THEN '2'
       END,

       iif (LN_indicadores.clave_indicador = 'LC_TEND_BALANCE' OR LN_indicadores.clave_indicador = 'LC_ESCENARIOS_TENDENCIA' OR LN_indicadores.clave_indicador = 'LC_SITUACION_TENDENCIA',
        CASE
         WHEN LN_contraparte_indicadores.valor_texto = 'P' THEN '1'
         WHEN LN_contraparte_indicadores.valor_texto = 'U' THEN '2'
         WHEN LN_contraparte_indicadores.valor_texto = 'E' THEN '3'
         WHEN LN_contraparte_indicadores.valor_texto = 'D' THEN '4'
         WHEN LN_contraparte_indicadores.valor_texto = 'N' THEN '5'
        END,



   case        
    when LN_indicadores.tipo_dato = 'S' then LN_contraparte_indicadores.valor_texto
    when LN_indicadores.tipo_dato = 'M' then LN_contraparte_indicadores.valor_memo
    when LN_indicadores.tipo_dato = 'I' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.')*/
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0')), 
               null)
    when LN_indicadores.tipo_dato = 'F' then iif(LN_contraparte_indicadores.valor_numerico is not null, 
               /*REPLACE(replace(convert(varchar,convert(Money, ROUND(LN_contraparte_indicadores.valor_numerico,0)),1),'.00',''), ',', '.'), */
               LTRIM(format(LN_contraparte_indicadores.valor_numerico, '############0.00')),
               null)

    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, right('00'+cast(month(LN_contraparte_indicadores.valor_fecha) as varchar),2) + '-' + cast(right(year(LN_contraparte_indicadores.valor_fecha),2) as varchar), NULL) --convert(varchar, LN_contraparte_indicadores.valor_fecha, 103)*/
    /*when LN_indicadores.tipo_dato = 'D' then iif(LN_contraparte_indicadores.valor_fecha is not null, convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 101), NULL) */
    when LN_indicadores.tipo_dato = 'D' and clave_indicador not in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil') then
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(7), LN_contraparte_indicadores.valor_fecha, 121),'-',''),3,10), '') 
    when LN_indicadores.tipo_dato = 'D' and clave_indicador in ('INICIO_GESTION','ULTIMO_LOGIN','FECHA_PAGO','fecha_vigencia_resp_civil')  then 
          iif(LN_contraparte_indicadores.valor_fecha is not null, substring(replace(convert(varchar(10), LN_contraparte_indicadores.valor_fecha, 121),'-',''),1,10), '') 
   
    when LN_indicadores.tipo_dato = 'B' then iif(LN_contraparte_indicadores.valor_numerico > 0, 'SI', 'NO')
    else null

   end )))))))) as valor,


   /*iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
    ) as separator,
   
    iif(LN_productos.producto_id = 'balances',
    case
    when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
    LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
    LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
    LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
    LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
    LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
    when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
    else 0
    end,
    case
    when LN_indicadores.tipo_dato = 'F' then 2
    when LN_indicadores.tipo_dato = 'I' then 0
    else NULL
    end
    ) as decimals,*/



   /** COLOR **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      /*when LN_contraparte_indicadores.valor_numerico >= 81 then 'A72B2A'
       when LN_contraparte_indicadores.valor_numerico >= 61 then 'd37123'
       when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
       when LN_contraparte_indicadores.valor_numerico >= 21 then 'cbc367'
       when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'*/

      when LN_contraparte_indicadores.valor_numerico >= 70 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 50 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'BABABA'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end
    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end

    /*WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
     case
     when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
     when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
     else NULL
     end*/


    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO' 
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' 
      OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 1) then '63b68c'
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN 'FFB81C'

    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'cbc367'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'd37123'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'A72B2A'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN
     case
      when LN_contraparte_indicadores.valor_numerico = 1 then '96CAB0'
      when LN_contraparte_indicadores.valor_numerico = 2 then 'FFFFBA'
      when LN_contraparte_indicadores.valor_numerico = 3 then 'FDC689'
      when LN_contraparte_indicadores.valor_numerico = 4 then 'FD676E'
      when LN_contraparte_indicadores.valor_numerico = 5 then 'C55B5B'
      when LN_contraparte_indicadores.valor_numerico = 6 then 'C55B5B'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS' OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 181 then 'A72B2A'
      when LN_contraparte_indicadores.valor_numerico >= 121 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico >= 91 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 0 then '63b68c'
      else null
     end

    WHEN (LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN
          convert(varchar(max),LN_contraparte_indicadores.valor_memo)

        
        WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), 

       NULL)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN
    case
     when LN_contraparte_indicadores.valor_texto = 'SI' then '63b68c'
     else null 
    end 
    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 

       'CCCCCC')

        
    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

       case
        when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
        when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
        when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
        when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
        when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
        else NULL 
       end)
    WHEN (LN_indicadores.clave_indicador like 'KPI%') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 

       'cccccc')
    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then '63b68c'
      when LN_contraparte_indicadores.valor_numerico >= 61 then 'cbc367'
      when LN_contraparte_indicadores.valor_numerico >= 41 then 'FFB81C'
      when LN_contraparte_indicadores.valor_numerico >= 21 then 'd37123'
      when LN_contraparte_indicadores.valor_numerico < 21 then 'A72B2A'
      else NULL 
     end
        
   END AS color,


   /** COLOR TEXTO **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'DEP_ECON' OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC' OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE') THEN
     case
      when LN_contraparte_indicadores.valor_numerico >= 81 then 'FFFFFF'
      else '000000'
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'FFFFFF'
      when LN_contraparte_indicadores.valor_texto = 'MR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'SR' then '000000'
      when LN_contraparte_indicadores.valor_texto = 'BR' then '000000'
      else NULL
     end       

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'FF5C1C'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'S' then '63b68c'
      when LN_contraparte_indicadores.valor_texto = 'N' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%'  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')  THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'B' then '63b68c'
      else NULL
     end

    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.color_fondo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       'CCCCCC')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     case
      when LN_contraparte_indicadores.valor_texto LIKE 'IMPAG%' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto LIKE 'PAG_' then '63b68c'
      when LN_contraparte_indicadores.valor_texto LIKE '%PARCIAL%' then 'FFB81C'
      else NULL
     end
/*
WHEN LN_indicadores.clave_indicador in ('DP_301','DP_351') THEN
case
when LN_contraparte_indicadores.valor_numerico = 1 then 'A72B2A'
when LN_contraparte_indicadores.valor_numerico = 0 then '63b68c'
else NULL
end
*/

    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'A72B2A'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'FFB81C'
      when LN_contraparte_indicadores.valor_texto = 'V' then '63b68c'
      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG') THEN
     case 
      when (LN_contraparte_indicadores.valor_numerico = 0) then 'FFFFFF'
      else '000000'
     end

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION') THEN '000000'
    WHEN (LN_indicadores.clave_indicador = 'SITUACION_CD') THEN iif(LN_contraparte_indicadores.valor_numerico >=4, 'FFFFFF', '000000')

    WHEN (LN_indicadores.clave_indicador = 'SCORE_RR') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_RR'), '000000'

     )

     
    WHEN (LN_indicadores.clave_indicador = 'SCORE_VRM') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde between LN_contraparte_indicadores.valor_numerico and LN_contraparte_indicadores.valor_numerico 
        /*and LN_cliente_nivel.desde = LN_contraparte_indicadores.valor_numerico 
         and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico*/

        and LN_indicadores.clave_indicador = 'SCORE_VRM'), 'CCCCCC'

     )


    WHEN (LN_indicadores.clave_indicador = 'SCORE_FINAL') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    WHEN (LN_indicadores.clave_indicador = 'SCORE_DOSSIER') THEN

     ISNULL( (select LN_cliente_nivel.color_texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER'), 

     case
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else '000000' 
     end)

    ELSE
     case
      when LN_contraparte_indicadores.valor_numerico > 20 then '000000' 
      when LN_contraparte_indicadores.valor_numerico <= 20 then 'FFFFFF'
      else null 
     end        
   END AS textcolor,


   /** SVG **/
   CASE

    WHEN (LN_indicadores.clave_indicador = 'CTRL_ETICO' OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD' OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL' OR LN_indicadores.clave_indicador = 'HOMOLOG' OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO') THEN 'SQUARE'

    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_BR' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'PIPE'

    
    WHEN (LN_indicadores.clave_indicador = 'VALORACION_BAL') THEN

     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'fas fa-arrow-up'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'fas fa-arrow-up r45r'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'fas fa-arrow-right'
      when LN_contraparte_indicadores.valor_texto = 'D' then 'fas fa-arrow-down r45l'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'fas fa-arrow-down'

      else NULL
     end

    WHEN (LN_indicadores.clave_indicador = 'FIDECHECK' or LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%'  or LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') or LN_indicadores.clave_indicador = 'SCORE_VRM' or LN_indicadores.clave_indicador = 'VRM_DDR' or LN_indicadores.clave_indicador like 'DD_%') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)

    WHEN (LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal')) THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'DOT', NULL)
/*
WHEN (LN_indicadores.clave_indicador in ('DP_301','DP_351')) THEN
iif(LN_contraparte_indicadores.valor_numerico is NOT null, 'DOT', NULL)
*/

    WHEN (LN_indicadores.clave_indicador = 'PRENSA') THEN
     iif(LN_contraparte_indicadores.valor_texto is NOT null, 'SQUARE', NULL)

    WHEN (LN_indicadores.clave_indicador = 'EXCEPCION' OR LN_indicadores.clave_indicador = 'SITUACION_CD') THEN

     case
      when LN_contraparte_indicadores.valor_numerico >= 1 and LN_contraparte_indicadores.valor_numerico <= 6 then 'DOT'
     else
      NULL
     end

    ELSE NULL
   END AS svg_data,


   /** TEXT CAPTION **/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE'
       OR LN_indicadores.clave_indicador = 'BAL_PASIVO_TOTAL'
       OR LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO'
       OR LN_indicadores.clave_indicador = 'BAL_VENTAS'
       OR LN_indicadores.clave_indicador = 'VENTAS_BALANCE'
       OR LN_indicadores.clave_indicador = 'VENTAS'
       OR LN_indicadores.clave_indicador = 'BAL_RESULTADO'
       OR LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO'
       OR LN_indicadores.clave_indicador = 'BAL_EBITDA')
       then 'en miles'
    WHEN LN_indicadores.clave_indicador = 'VALORACION_BAL' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positivo'
      when LN_contraparte_indicadores.valor_texto = 'U' then 'Ascendente'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'Neutro' 
      when LN_contraparte_indicadores.valor_texto = 'D' then 'Descendente' 
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negativo'
      else NULL
     end

    WHEN LN_indicadores.clave_indicador = 'NIVEL_RIESGO' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'AR' then 'Riesgo alto'
      when LN_contraparte_indicadores.valor_texto = 'MR' then 'Riesgo medio'
      when LN_contraparte_indicadores.valor_texto = 'SR' then 'Riesgo standard'
      when LN_contraparte_indicadores.valor_texto = 'BR' then 'Riesgo bajo'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'FIDECHECK' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'P' then 'Positive'
      when LN_contraparte_indicadores.valor_texto = 'E' then 'PEP'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Related'
      when LN_contraparte_indicadores.valor_texto = 'S' then 'Sujeto obligado'
      when LN_contraparte_indicadores.valor_texto = 'N' then 'Negative'
      else null
     end


    WHEN LN_indicadores.clave_indicador = 'WORDCHK'  or LN_indicadores.clave_indicador like 'ARCOR_%' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Rojo'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Amarillo'
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Verde'
      else null
     end
    WHEN LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD') THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Alto'
      when LN_contraparte_indicadores.valor_texto = 'M' then 'Medio'
      when LN_contraparte_indicadores.valor_texto = 'B' then 'Bajo'
      else null
     end
    
    WHEN (LN_indicadores.clave_indicador like 'DD_%' and LN_indicadores.clave_indicador != 'DD_SCORE_FINAL_MANUAL') THEN

     ISNULL( (select LN_cliente_nivel.texto_largo
        from LN_cliente_nivel 
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.texto = LN_contraparte_indicadores.valor_texto
        and LN_cliente_nivel.indicador = LN_contraparte_indicadores.indicador), 
       '')
    WHEN LN_indicadores.clave_indicador = 'VRM_DDR' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'SI' then 'SI'
      when LN_contraparte_indicadores.valor_texto = 'PENDIENTE' then 'PENDIENTE'

      else null
     end
    WHEN LN_indicadores.clave_indicador = 'SCORE_VRM' THEN
     /*case
      when LN_contraparte_indicadores.valor_texto in ('1','AA') then 'APTO'
      when LN_contraparte_indicadores.valor_texto IN ('2','PR') then 'APTO CON PREMISAS'
      when LN_contraparte_indicadores.valor_texto IN ('3','NA') then 'NO APTO'
      when LN_contraparte_indicadores.valor_texto IN ('4','XX') then 'NO APLICA / EN TOLERANCIA'
      else null
      end*/

     isnull(ln_contraparte_indicadores.valor_memo, 'EN TOLERANCIA')

    WHEN LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal') THEN
     LN_contraparte_indicadores.valor_texto
    
    WHEN LN_indicadores.clave_indicador = 'PRENSA' THEN
     case
      when LN_contraparte_indicadores.valor_texto = 'V' then 'Positiva'
      when LN_contraparte_indicadores.valor_texto = 'A' then 'Relativa'
      when LN_contraparte_indicadores.valor_texto = 'R' then 'Negativa'
      else null
     end

    WHEN LN_indicadores.clave_indicador = 'SITUACION_CD' THEN
     iif (LN_contraparte_indicadores.valor_numerico is not null, 'Situación ' + Convert(varchar,LN_contraparte_indicadores.valor_numerico)+' - Período: '+LN_contraparte_indicadores.valor_texto, null) 

    WHEN LN_indicadores.clave_indicador = 'EXCEPCION' THEN
     iif (excepciones.tipo_excepcion = 'V', 'Excepción para PERMITIR ingreso', iif(excepciones.tipo_excepcion = 'R', 'Excepción para RECHAZAR ingreso', NULL))
   
    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' or LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto
    WHEN LN_indicadores.clave_indicador like 'KPI%' THEN
     convert(varchar(max),LN_contraparte_indicadores.valor_memo)    
    ELSE NULL
   END AS textcaption,

   /** TEXTOS **/
   CASE

    WHEN LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR' THEN
     LN_contraparte_indicadores.valor_texto

    WHEN LN_indicadores.clave_indicador = 'SCORE_FINAL' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_FINAL')

    WHEN LN_indicadores.clave_indicador = 'SCORE_DOSSIER' THEN
     (select LN_cliente_nivel.texto
        from LN_cliente_nivel inner join LN_indicadores ON LN_cliente_nivel.indicador = LN_indicadores.indicador
        where LN_cliente_nivel.cliente = @p_cliente 
        and LN_cliente_nivel.desde <= LN_contraparte_indicadores.valor_numerico 
        and LN_cliente_nivel.hasta > LN_contraparte_indicadores.valor_numerico
        and LN_indicadores.clave_indicador = 'SCORE_DOSSIER')

   ELSE NULL
   END AS texto, 



   /** PUNTO **/
   CASE      
    WHEN LN_indicadores.clave_indicador LIKE '%CUMPL%' THEN iif(PENDIENTES_VERIFICAR.ingresados > 0, 1, 0)
    WHEN LN_indicadores.clave_indicador = 'ULTIMA_NOVEDAD' THEN iif(LN_contraparte_indicadores.valor_fecha IS NOT NULL, iif(DATEDIFF(DAY, CONVERT(DATE,LN_contraparte_indicadores.valor_fecha) , CONVERT(DATE,GETDATE())) <= 7, 1, 0), 0)
    WHEN LN_indicadores.clave_indicador = 'SCORE_BAL' THEN ISNULL(LN_contraparte_indicadores.balance_preexiste, 0)
    ELSE 0 
   END AS punto,

   /*** DATOS A MOSTRAR EN CELDA DEL PANEL DE CONTROL: 1=NUMERO, 2=GRAFICO, 3=NUMERO+GRAFICO ***/
   CASE
    WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
      OR LN_indicadores.clave_indicador = 'SCORE_RR' 
      OR LN_indicadores.clave_indicador = 'SCORE_VRMAGB' 
      OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
      OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
      OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
      OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL' 
      OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
      OR LN_indicadores.clave_indicador = 'SCORE_DATOS' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON' 
      OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
      OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
      OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
      OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
      OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 3
   
    WHEN (LN_indicadores.clave_indicador = 'NIVEL_RIESGO' 
      OR LN_indicadores.clave_indicador = 'VALORACION_BAL'
      OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
      OR LN_indicadores.clave_indicador = 'VRM_DDR' 
      OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
      OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
      OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
      OR LN_indicadores.clave_indicador = 'HOMOLOG'
      OR LN_indicadores.clave_indicador = 'EXCEPCION'
      --OR LN_indicadores.clave_indicador = 'SITUACION_CD'
      OR LN_indicadores.clave_indicador = 'FIDECHECK'
      OR LN_indicadores.clave_indicador = 'WORDCHK'
       or LN_indicadores.clave_indicador like 'ARCOR_%'
      OR LN_indicadores.clave_indicador in ('DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD','VRM_SCORE_AML','VRM_Score_RR','VRM_SCORE_CONCENTRACION','VRM_SCORE_FINANCIERO','VRM_SCORE_LLF','VRM_SCORE_IT_RISK','VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD')
      or LN_indicadores.clave_indicador like 'DD_%'
      OR LN_indicadores.clave_indicador in ('aportes_ss','aportes_os','aportes_patronal'/*,'DP_301','DP_351'*/)
      OR LN_indicadores.clave_indicador = 'PRENSA') THEN 2

    ELSE 1
   END AS cell_data,

   detalles_killer.detalle AS detalle_killer,
   SAAS.CLIENTE  AS CLIENTE, 
   SAAS.CONTRATO as CONTRATO

   FROM LN_contrapartes 

   LEFT OUTER JOIN
       -- ultima consulta de la contraparte en el historial de consultas de saas
    (SELECT SAAS_Historial_Consultas.contraparte as CONTRAPARTE, 
            SAAS_Clientes.cliente_saas as CLIENTE, 
      SAAS_Contratos.nro_contrato as CONTRATO
    FROM SAAS_Historial_Consultas  
    inner join SAAS_Usuarios_Contratos on SAAS_Usuarios_Contratos.saas_usuario_contrato =  SAAS_Historial_Consultas.saas_usuario_contrato
    inner join SAAS_Contratos on SAAS_Contratos.saas_contrato =  SAAS_Usuarios_Contratos.saas_contrato
    inner join SAAS_clientes on SAAS_clientes.saas_cliente =  SAAS_Contratos.saas_cliente
    )
    SAAS ON LN_contrapartes.contraparte = SAAS.contraparte
   
   INNER JOIN dbo.DelimitedSplit8K(@contrapartes, ',') FILTRADAS ON LN_contrapartes.contraparte = CONVERT(INT, FILTRADAS.Item)

   INNER JOIN LN_gestiones ON LN_contrapartes.contraparte = LN_gestiones.contraparte
 
   INNER JOIN padrones ON LN_contrapartes.id_padron = padrones.id_padron
   INNER JOIN identificadores ON padrones.identificador = identificadores.identificador

   INNER JOIN LN_contraparte_indicadores ON (LN_contrapartes.contraparte = LN_contraparte_indicadores.contraparte
                                             and LN_contraparte_indicadores.gestion = LN_gestiones.gestion) 
   INNER JOIN LN_indicadores ON LN_contraparte_indicadores.indicador = LN_indicadores.indicador
   INNER JOIN LN_productos ON LN_indicadores.producto = LN_productos.producto

   INNER JOIN LN_contraparte_familias ON LN_contrapartes.contraparte = LN_contraparte_familias.contraparte
   INNER JOIN LN_familia_productos ON (LN_contraparte_familias.familia = LN_familia_productos.familia
            AND LN_indicadores.producto = LN_familia_productos.producto)
   INNER JOIN LN_familias ON LN_contraparte_familias.familia = LN_familias.familia

   INNER JOIN LN_cliente_productos ON (LN_contrapartes.cliente = LN_cliente_productos.cliente
            AND LN_indicadores.producto = LN_cliente_productos.producto)


   LEFT OUTER JOIN
    (SELECT LN_docs.contraparte, COUNT(*) AS ingresados
    FROM LN_docs 
    INNER JOIN LN_gestiones ON LN_docs.gestion = LN_gestiones.gestion

    INNER JOIN
     (select LN_docs.contraparte, LN_docs.tipo_doc, max(doc_version) as ultima
     from LN_docs
     inner join LN_gestiones on (LN_docs.gestion = LN_gestiones.gestion 
            AND LN_docs.contraparte = LN_gestiones.contraparte)
     where LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE()
     group by LN_docs.contraparte, LN_docs.tipo_doc) ultimas_versiones 

    ON (LN_docs.tipo_doc = ultimas_versiones.tipo_doc 
     AND ln_docs.contraparte = ultimas_versiones.contraparte 
     AND LN_docs.doc_version = ultimas_versiones.ultima)


    WHERE LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and ln_gestiones.vigente = 1
    AND LN_docs.estado_doc = 'I'
    GROUP BY LN_docs.contraparte) PENDIENTES_VERIFICAR ON LN_contrapartes.contraparte = PENDIENTES_VERIFICAR.contraparte


   LEFT OUTER JOIN
    (select LN_excepciones.contraparte, LN_excepciones.tipo_excepcion, LN_excepciones.gestion
    from LN_contrapartes inner join LN_excepciones
    on LN_contrapartes.contraparte = LN_excepciones.contraparte
    where LN_contrapartes.cliente = @p_cliente
    and LN_excepciones.estado = 1
    and LN_excepciones.vigencia >= GETDATE()) excepciones ON 
                                             (LN_contrapartes.contraparte = excepciones.contraparte
                and excepciones.gestion = LN_gestiones.gestion)

   LEFT OUTER JOIN
    (SELECT T.contraparte, detalle=STUFF(
            (SELECT '; ' + detalle_killer AS [text()]
           FROM ln_score_detalle_killer XT
           WHERE XT.contraparte = T.contraparte and XT.visible = 1 
           FOR XML PATH('')), 1, 2, '') 
    FROM LN_score_detalle_killer T 
    inner join LN_contrapartes C on T.contraparte = C.contraparte
    where T.visible = 1
    and C.cliente = @p_cliente
    GROUP BY T.contraparte) detalles_killer on detalles_killer.contraparte = LN_contrapartes.contraparte 



   WHERE LN_contrapartes.cliente = @p_cliente
   AND LN_gestiones.desde <= GETDATE() AND LN_gestiones.hasta >= GETDATE() and LN_gestiones.vigente = 1
   AND LN_indicadores.visible = 1
   AND LN_contrapartes.activo = 1 /*and ln_contrapartes.contraparte=219*/
   AND LN_contrapartes.subcontratista = 0
            AND LN_contraparte_indicadores.visible=1


   --and padrones.identificacion = '30709637084'
   AND LN_familias.visible = 1
   AND LN_contraparte_familias.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_cliente_productos.activo = 1
   
   /* En caso de tener Informe Comercial de Argentina e Informe Comercial del exterior, 
    solo tomará el score que le corresponde por el país de la cotraparte */

   AND ((ln_indicadores.clave_indicador = 'SCORE_IC' and 
    (LN_contrapartes.country_code = 'AR' and LN_productos.country_code = 'AR')
    or 
    (LN_contrapartes.country_code != 'AR' and LN_productos.country_code is null)
    ) or ln_indicadores.clave_indicador != 'SCORE_IC')



   AND ISNULL(LN_contrapartes.servicio_contratado, 47) = @p_servicio_contratado

   --order by padrones.identificacion
   --ORDER BY LN_contrapartes.country_code, LN_familias.nombre_familia, padrones.nombre_persona
   ORDER BY padrones.nombre_persona asc
 END




 IF (@accion = 'PRODUCTOS_INDICADORES') BEGIN

  declare @primeras_columnas table (etiqueta varchar(20), producto_id varchar(20), orden int,ancho int,alineacion varchar(10),fijo bit) 
  if (@p_sigla_producto = 'SAAS') 
  begin
   insert into @primeras_columnas values ('País', 'PAIS', -3, 60, 'center', 0) 
   insert into @primeras_columnas values ('Cliente', 'CLIENTE', -2, 100, 'left', 0) 
   insert into @primeras_columnas values ('Contrato', 'CONTRATO', -1, 100, 'left', 0) 
   insert into @primeras_columnas values ('Razón Social', 'RAZON_SOCIAL', 0, 200, 'left', 0) 
  end 
  else 
  begin
   insert into @primeras_columnas values ('Filial', 'pais_servicio', -3,60,'center',1) 
   insert into @primeras_columnas values ('Origen', 'PAIS', -2,60,'center',1) 
   insert into @primeras_columnas values ('Familia', 'FAMILIA', -1,120,'left',1) 
   insert into @primeras_columnas values ('Razón Social', 'RAZON_SOCIAL', 0,200,'left',1) 
  end 

  SELECT DATA.* FROM
   
   (SELECT etiqueta as etiqueta, 
     producto_id AS 'producto_id', NULL AS indicador,NULL AS indsusc,NULL as producto, NULL as etiqueta_indicador,
     NULL AS tipo_dato, producto_id AS clave_indicador, 1 as show_panel,
     orden as orden_producto, 1 as orden, alineacion as alignment, fijo as locked,
     ancho AS width, NULL AS separator, NULL as decimals, NULL AS class_icon,
     NULL AS nombre_producto, NULL AS nombre_indicador
     from @primeras_columnas
     
   /*
    (SELECT 'País' as etiqueta, 
    'PAIS' AS 'producto_id', NULL AS indicador, NULL as etiqueta_indicador,
    NULL AS tipo_dato, 'PAIS' AS clave_indicador, 1 as show_panel,
    -2 as orden_producto, 1 as orden, 'center' as alignment, 1 as locked,
    60 AS width, NULL AS separator, NULL as decimals, NULL AS class_icon,
    NULL AS nombre_producto, NULL AS nombre_indicador
   
    UNION ALL
   
    SELECT 'Familia' as etiqueta, 
    'FAMILIA' AS 'producto_id', NULL AS indicador, NULL as etiqueta_indicador,
    NULL AS tipo_dato,'FAMILIA' AS clave_indicador, 1 as show_panel,
    -1 as orden_producto, 1 as orden, 'left' as alignment, 1 as locked,
    120 AS width, NULL AS separator, NULL as decimals, NULL AS class_icon,
    NULL AS nombre_producto, NULL AS nombre_indicador
   
    UNION ALL
   
    SELECT 'Razón Social' as etiqueta,
    'RAZON_SOCIAL' AS 'producto_id', NULL AS indicador, NULL as etiqueta_indicador,
    NULL AS tipo_dato, 'RAZON_SOCIAL' AS clave_indicador, 1 as show_panel,
    0 as orden_producto, 1 as orden, 'left' as alignment, 1 as locked,
    200 AS width, NULL AS separator, NULL as decimals, NULL AS class_icon,
    NULL AS nombre_producto, NULL AS nombre_indicador
    */

   UNION ALL
   
   SELECT LN_productos.etiqueta, LN_productos.producto_id, ln_indicadores.indicador, SUSC.indicador indsusc,LN_productos.producto,
    LN_indicadores.etiqueta as etiqueta_indicador, 
    CASE
     WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
       OR LN_indicadores.clave_indicador = 'SCORE_RR' 
       OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
       OR LN_indicadores.clave_indicador = 'VRM_DDR' 
       OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
       OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
       OR LN_indicadores.clave_indicador = 'SCORE_BR' 
       OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
       OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
       OR LN_indicadores.clave_indicador = 'DEP_ECON' 
       OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
       OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
       OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
       OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
       OR LN_indicadores.clave_indicador = 'SITUACION_CD'
       OR LN_indicadores.clave_indicador = 'SCORE_JUDICIAL'
          OR LN_indicadores.clave_indicador = 'SCORE_ARBA_SIRCREB' 
       OR LN_indicadores.clave_indicador = 'SCORE_DATOS'
       OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
       OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR') THEN 'S'
     ELSE LN_indicadores.tipo_dato
    END AS tipo_dato,
    LN_indicadores.clave_indicador, 
    show_panel = 
     CASE 
      /*
       WHEN ISNULL(LN_productos.balance, 0) > 0 THEN iif(SUSC.indicador IS NOT NULL, 1, 0) 
       WHEN ISNULL(LN_productos.dossier, 0) > 0 THEN iif(SUSC.indicador IS NOT NULL, 1, 0)
       WHEN ln_indicadores.clave_indicador = 'INICIO_GESTION' THEN iif(SUSC.indicador IS NOT NULL, 1, 0) 
       */

      WHEN ISNULL(LN_productos.suscribe_indicadores, 0) > 0 THEN iif(SUSC.indicador IS NOT NULL, 1, 0)

     ELSE 1 END,

    LN_cliente_productos.orden_producto, LN_indicadores.orden,

    /*** ALINEACION DE LOS DATOS EN LA CELDA ***/
    CASE
     WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
       OR LN_indicadores.clave_indicador = 'SCORE_RR' 
       OR LN_indicadores.clave_indicador = 'SCORE_BAL' 
       OR LN_indicadores.clave_indicador = 'SCORE_DOC' 
       OR LN_indicadores.clave_indicador = 'SCORE_BR' 
       OR LN_indicadores.clave_indicador = 'CUMPL_DOC'
       OR LN_indicadores.clave_indicador = 'SCORE_DOSSIER' 
       OR LN_indicadores.clave_indicador = 'DEP_ECON' 
       OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
       OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
       OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS'
       OR LN_indicadores.clave_indicador = 'LC_DIAS_VENTAS_PPB'
       OR LN_indicadores.clave_indicador = 'SCORE_FINAL'
       OR LN_indicadores.clave_indicador = 'VALOR_FINAL_ANTERIOR'
       ) THEN 'right'
       
     WHEN (LN_indicadores.clave_indicador = 'RAMO')
         THEN 'left'
     WHEN (LN_indicadores.clave_indicador in ('NIVEL_RIESGO' 
               ,'ULTIMA_NOVEDAD' 
               ,'INICIO_GESTION','ULTIMO_LOGIN'
               ,'fecha_vigencia_resp_civil'
               ,'FECHA_PAGO'
               ,'DEP_ECON_BALANCE_FECHA'
               ,'VALORACION_BAL'
               ,'CTRL_ETICO'
               ,'CTRL_COMERCIAL'
               ,'CTRL_CALIDAD'
               ,'HOMOLOG'
               ,'EXCEPCION'
               ,'FIDECHECK'
               ,'WORDCHK'
               ,'SOS_CLASIFICACION'
               ,'SCORE_VRM' 
               ,'VRM_DDR' 
               ,'VRM_SCORE_AML'
               ,'VRM_Score_RR'
               ,'VRM_SCORE_CONCENTRACION'
               ,'VRM_SCORE_FINANCIERO'
               ,'VRM_SCORE_LLF'
               ,'VRM_SCORE_IT_RISK'
               ,'VRM_SCORE_PROT_CLIENTELA','DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD' 
               ,'DD_SCORE_FINAL_MANUAL','VRM_SCORE_SOSTENIBILIDAD' 
               ,'PRENSA'
               ,'SITUACION_CD'
               ,'CHEQUES_RECH'
               ,'FECHA_BALANCE'
               ,'FECHA_PUBLICACION'
               ,'APOCRIFAS'
               ,'sujeto_obligado'
               ,'BLACKLIST'
               ,'impe_recursos'
               ,'impe_subcontratistas'
               ,'impe_control_acceso'
               ,'impe_Status'
               ,'FAB_DIS_AMX'
               ,'CANT_EMP'
               ,'CANT_EMP_AMX')
       or LN_indicadores.clave_indicador like 'DD_%'
       or LN_indicadores.clave_indicador like 'MAPA_%'
       or LN_indicadores.clave_indicador like 'ARCOR_%'
       OR LN_indicadores.clave_indicador like 'aportes_%'
       OR LN_indicadores.clave_indicador like 'DP_%'
       OR LN_indicadores.clave_indicador like 'KPI%' 
       ) THEN 'center'

     ELSE 'right'
    END AS alignment, 0 as locked,

    CASE
     WHEN (LN_indicadores.clave_indicador = 'SCORE_IC' 
       OR LN_indicadores.clave_indicador = 'SCORE_RR' 
       OR LN_indicadores.clave_indicador = 'SCORE_VRM' 
       OR LN_indicadores.clave_indicador = 'VRM_DDR' 
       OR LN_indicadores.clave_indicador = 'CTRL_ETICO'
       OR LN_indicadores.clave_indicador = 'CTRL_COMERCIAL'
       OR LN_indicadores.clave_indicador = 'CTRL_CALIDAD'
       OR LN_indicadores.clave_indicador = 'HOMOLOG'
       OR LN_indicadores.clave_indicador = 'EXCEPCION'
       OR LN_indicadores.clave_indicador = 'NIVEL_RIESGO'
       OR LN_indicadores.clave_indicador = 'DEP_ECON' 
       OR LN_indicadores.clave_indicador = 'DEP_ECON_CALC'
       OR LN_indicadores.clave_indicador = 'DEP_ECON_BALANCE'
       OR LN_indicadores.clave_indicador = 'SITUACION_CD'
       OR LN_indicadores.clave_indicador = 'APOCRIFAS'
      OR LN_indicadores.clave_indicador like 'KPI%' 

       OR LN_indicadores.clave_indicador = 'sujeto_obligado'
       OR LN_indicadores.clave_indicador = 'SOS_CLASIFICACION'

       OR LN_indicadores.clave_indicador = 'BLACKLIST') THEN 70

     WHEN LN_indicadores.clave_indicador = 'SUBCONT' THEN 80
     WHEN LN_indicadores.clave_indicador = 'CHEQUES_RECH' THEN 88

     ELSE 60
    END AS width,

   /*** separadores de miles : en balances va espacio, en otros productos va el punto ***/
   iif(LN_productos.producto_id = 'balances',
    iif(LN_indicadores.clave_indicador = 'VALORACION_BAL', NULL, 'SPACE'),
    iif(LN_indicadores.tipo_dato = 'F' OR LN_indicadores.tipo_dato = 'I', 'POINT', NULL)
   ) as separator,

   /*** decimales ***/
   iif(LN_productos.producto_id = 'balances',
    case
     when (LN_indicadores.clave_indicador = 'BAL_ACTIVO_CORRIENTE' OR
       LN_indicadores.clave_indicador = 'BAL_ACTIVO_NO_CORRIENTE' OR
       LN_indicadores.clave_indicador = 'BAL_ACTIVO_TOTAL' OR
       LN_indicadores.clave_indicador = 'BAL_PASIVO_CORRIENTE' OR
       LN_indicadores.clave_indicador = 'BAL_PASIVO_NO_CORRIENTE' OR
       LN_indicadores.clave_indicador = 'BAL_PATRIMONIO_NETO' OR
       LN_indicadores.clave_indicador = 'BAL_VENTAS' OR
       LN_indicadores.clave_indicador = 'VENTAS_BALANCE' OR
       LN_indicadores.clave_indicador = 'VENTAS' OR
       LN_indicadores.clave_indicador = 'BAL_RESULTADO' OR
       LN_indicadores.clave_indicador = 'BAL_CAPITAL_TRABAJO' OR
       LN_indicadores.clave_indicador = 'BAL_EBITDA') then 0
     when LN_indicadores.clave_indicador = 'VALORACION_BAL' then NULL
     else iif(LN_indicadores.clave_indicador LIKE 'SCORE%', 0, 2)
    end,

    iif(LN_indicadores.clave_indicador = 'SCORE_DOC', 0,
     case
      when LN_indicadores.tipo_dato = 'F' then 2
      when LN_indicadores.tipo_dato = 'I' then 0
      else NULL
     end)
   ) as decimals,

   CASE
    WHEN LN_indicadores.clave_indicador = 'impe_recursos' THEN 'fa fa-users'
    WHEN LN_indicadores.clave_indicador = 'impe_subcontratistas' THEN 'fa fa-sitemap'
    WHEN LN_indicadores.clave_indicador = 'impe_control_acceso' THEN 'fa fa-hand-paper-o'
    WHEN LN_indicadores.clave_indicador = 'impe_status' THEN 'fa fa-check'
    ELSE LN_productos.class_icon
   END AS class_icon,

   ISNULL(LN_cliente_productos.etiqueta_personalizada, LN_productos.nombre_producto) AS nombre_producto,

   CASE 
   WHEN (LN_indicadores.clave_indicador like 'CHEQUES_MONTO%' or LN_indicadores.clave_indicador like 'CHEQUES_CANT%')
      then 
      LN_indicadores.nombre_indicador + ' (' +
      isnull(convert(varchar,(select convert(int,MAX(dias)/30) from LN_dias_alertas where cliente = @p_cliente and tabla = 'cheques')),'24') + ' meses)'
   ELSE 
    LN_indicadores.nombre_indicador
   END
   as nombre_indicador 

   FROM LN_productos 
   INNER JOIN LN_cliente_productos ON LN_productos.producto = LN_cliente_productos.producto
   INNER JOIN LN_familia_productos ON LN_cliente_productos.producto = LN_familia_productos.producto
   INNER JOIN LN_familias ON (LN_familia_productos.familia = LN_familias.familia
          AND LN_cliente_productos.cliente = LN_familias.cliente)

   INNER join LN_indicadores ON LN_productos.producto = LN_indicadores.producto

   LEFT OUTER JOIN (SELECT cliente, indicador FROM LN_cliente_indicadores
       WHERE cliente = @p_cliente) SUSC
    ON (LN_cliente_productos.cliente = SUSC.cliente AND LN_indicadores.indicador = SUSC.indicador)


   LEFT OUTER JOIN country ON LN_productos.country_code = country.country_code


   WHERE LN_cliente_productos.cliente = @p_cliente
   AND LN_productos.visible = 1
   AND LN_cliente_productos.activo = 1
   AND LN_familia_productos.activo = 1
   AND LN_familias.visible = 1 AND LN_familias.uso_familia != 'I'
   AND ISNULL(LN_familias.subfamilia, 0) = 0
   AND LN_indicadores.visible = 1
   /* 18/03/2022 */
   and LN_productos.servicio_contratado in (0, @p_servicio_contratado)
   /**/
   /* Si se quiere controlar los indicadores segun el servicio contratado, agregar la linea de aca abajo (por ahora solo controla que el producto sea del servicio_contratado */
   --and LN_indicadores.servicio_contratado in (0, @p_servicio_contratado) 
   GROUP BY LN_productos.etiqueta, 
    LN_productos.producto_id, LN_productos.balance, 
    LN_productos.dossier, 
    LN_productos.suscribe_indicadores, 
    LN_productos.class_icon,
    LN_indicadores.etiqueta, LN_indicadores.tipo_dato,
    LN_indicadores.clave_indicador, ln_indicadores.indicador, SUSC.indicador,
    LN_cliente_productos.orden_producto, LN_indicadores.orden,
    LN_productos.nombre_producto,
    LN_cliente_productos.etiqueta_personalizada,
    LN_indicadores.nombre_indicador,
    ln_productos.producto


   --ORDER BY LN_cliente_productos.orden_producto, LN_indicadores.orden
   ) DATA


  WHERE DATA.show_panel = 1
  ORDER BY DATA.orden_producto, DATA.orden

 END


 

END
GO