Indicadores - DDV
select c.IdCliente, c.Ncliente, c.Estatus,
IdTamanio = isnull(t.IdTamanio,0), NTamanio = isnull(t.Ntamanio, 'SIN TAMAÑO'),
IdValorIndustria = isnull(vi.IdTamanio,0), NValorIndustria = isnull(vi.Ntamanio, 'SIN TAMAÑO INDUSTRIA'),
IdGiro = isnull(g.IdGiro,0), NGiro = isnull(g.Ngiro, 'SIN GIRO'),
IdNivelMkt = isnull(n.IdNivelMkt,0), NNivel = isnull(n.NNivel,'SIN NIVEL MKT'),
IdHipersegmentacion = isnull(h.IdHipersegmentacion,0), NHipersegmentacion = isnull(h.NHipersegmentacion,'No asignado'),
CreditoDisponible = isnull(cred.limited_amount,0)
from Cliente c (nolock)
left join Tamanio t (nolock) on c.IdTamanio = t.IdTamanio
left join Tamanio vi (nolock) on c.IdValorIndustria = vi.IdTamanio --Tamano Industria, tendra el mismo catalogo que tamanio. Actualmente no hay quien llene la info
left join Giro g (nolock) on c.IdGiro = g.IdGiro
left join (
select IdCliente, IdNivelMkt, NivelMkt.NNivel
from ClienteNivelMkt (nolock)
inner join NivelMkt (nolock) on ClienteNivelMkt.IdNivelMkt = NivelMkt.IdNivel ) n on c.IdCliente = n.IdCliente
left join Hipersegmentacion h (nolock) on c.IdHipersegmentacion = h.IdHipersegmentacion
left join (
select c.code, cc.limited_amount
from wbcbbcp_credit.dbo.customer c (nolock)
inner join wbcbbcp_credit.dbo.customer_credit cc (nolock) on c.customerId = cc.customerId
where cast(expiration_date as date) <= cast(getdate() as date)
) cred on cred.code = c.Idcliente
select
cuc = rc.IdCliente,
cliente = cli.NCliente,
-- General
bepensa = sum(case when cp.IdPregunta in (518, 519, 522, 523, 526, 527, 530, 531, 534, 535, 538, 539, 542, 544, 545, 699, 700, 710) then rc.Resultado else 0 end),
competetencia = sum(case when cp.IdPregunta in (520, 521, 524, 525, 528, 529, 532, 533, 536, 537, 540, 541, 543, 546, 547, 701, 702, 711) then rc.Resultado else 0 end),
-- 1.Refrescos
refrescos_bepensa= sum(case when cp.IdPregunta in (518, 519, 522, 523, 699, 700) then rc.Resultado else 0 end),
refrescos_competencia = sum(case when cp.IdPregunta in (520, 521, 524, 525, 701, 702) then rc.Resultado else 0 end),
-- 1.1.Colas
colas_bepensa= sum(case when cp.IdPregunta in (518, 519) then rc.Resultado else 0 end),
colas_competencia = sum(case when cp.IdPregunta in (520, 521) then rc.Resultado else 0 end),
-- 1.2.Sabores
sabores_bepensa= sum(case when cp.IdPregunta in (522,523,699,711) then rc.Resultado else 0 end),
sabores_competencia = sum(case when cp.IdPregunta in (524,525,701,702) then rc.Resultado else 0 end),
-- 2.NCBS
ncbs_bepensa= sum(case when cp.IdPregunta in (530,531,534,535,538,539,542,544,545, 710) then rc.Resultado else 0 end),
ncbs_competencia = sum(case when cp.IdPregunta in (532,533,536,537,549,541,544,546,547, 711) then rc.Resultado else 0 end),
-- 2.1.JDV
jdv_bepensa= sum(case when cp.IdPregunta in (530,531) then rc.Resultado else 0 end),
jdv_competencia = sum(case when cp.IdPregunta in (532,533) then rc.Resultado else 0 end),
-- 2.2.ISOTONICOS
isotonicos_bepensa= sum(case when cp.IdPregunta in (534,535) then rc.Resultado else 0 end),
isotonicos_competencia = sum(case when cp.IdPregunta in (536,537) then rc.Resultado else 0 end),
-- 2.3.tes
tes_bepensa= sum(case when cp.IdPregunta in (538,539) then rc.Resultado else 0 end),
tes_competencia = sum(case when cp.IdPregunta in (540,541) then rc.Resultado else 0 end),
-- 2.4.energizantes
energizantes_bepensa= sum(case when cp.IdPregunta in (542) then rc.Resultado else 0 end),
energizantes_competencia = sum(case when cp.IdPregunta in (543) then rc.Resultado else 0 end),
-- 2.5.lacteos
lacteos_bepensa= sum(case when cp.IdPregunta in (544,545) then rc.Resultado else 0 end),
lacteos_competencia = sum(case when cp.IdPregunta in (546,547) then rc.Resultado else 0 end),
-- 3.APNR
apnr_bepensa= sum(case when cp.IdPregunta in (526,527) then rc.Resultado else 0 end),
apnr_competencia = sum(case when cp.IdPregunta in (528,529) then rc.Resultado else 0 end)
from ResultadoCenso rc (nolock)
inner join Censo c (nolock) on rc.IdCenso = c.IdCenso
inner join CensoPregunta cp (nolock) on rc.IdPregunta = cp.IdPregunta and c.IdCenso = cp.IdCenso
inner join Cliente cli (nolock) on rc.IdCliente = cli.IdCliente and cli.Estatus = 1 -- Solo para los clientes activos
where c.IdCenso = 38
group by rc.IdCliente, cli.NCliente