Código SQL:
Ver original--Caalificar la visita 30
--Si hizo pedido + 1
-- Si tomo Imventario (Todos Los itenes) +1
--Si Cobro +1
--Pos <150 + 1
DECLARE @Puntaje AS INT;
SET @Puntaje=0;
SELECT
CASE
WHEN Calificacion.Cobros>0 THEN SUM(1)
WHEN Calificacion.Pedidos>0 THEN SUM(1)
WHEN Calificacion.Cotizaciones>0 THEN SUM(1)
WHEN Calificacion.Vdistancia<150 THEN SUM(1)
END AS Puntaje
,*
FROM (SELECT V.IdVisita,V.Vdistancia,
COUNT(P.IdPedido) AS Pedidos,
COUNT(C.IdPedido) AS Cotizaciones,
COUNT(CO.IdCobro) AS Cobros
FROM Visitas_E AS V
LEFT JOIN Pedidos_E AS P ON (P.IdVisita=V.IdVisita AND P.Cotizacion='P')
LEFT JOIN Pedidos_E AS C ON (C.IdVisita=V.IdVisita AND C.Cotizacion='C')
LEFT JOIN Cobros AS CO ON (CO.IdVisita=V.IdVisita)
WHERE V.IdVisita=30
GROUP BY V.IdVisita,V.Vdistancia) AS Calificacion
prueba con eso a ver que te sale :)