El siguiente listado permite obtener los totales por mano de obra, maquinaria, materiales y códigos asociados.
WITH CALCULO AS(
— PARTIDAS CON DESCOMPOSICION *** NO INCLUYE PORCENTAJES ***
SELECT SUM(CO.COEFICIENTE2*CO.PRECIO2) COSTE
,CASE WHEN PR.TIPO=1 THEN ‘MO’ WHEN PR.TIPO=2 THEN ‘MQ’ WHEN PR.TIPO=3 THEN ‘MT’ ELSE ‘–‘ END TIPO_PRECIO
, PR.ASOCIADO
FROM V_CAP_PARTIDAS_T PA
LEFT JOIN T_OBRAS O ON O.EMPRESA=PA.EMPRESA AND O.OBRA=PA.OBRA
LEFT JOIN T_PRECIOS_COMP CO ON CO.EMPRESA=PA.EMPRESA AND CO.OBRA=PA.OBRA AND CO.COD_INTERNO=PA.COD_INTERNO
LEFT JOIN T_PRECIOS PR ON PR.EMPRESA=CO.EMPRESA AND PR.OBRA=CO.OBRA AND PR.COD_INTERNO=CO.COD_HIJO
{WFiltro} AND PA.TIPO=’P’
GROUP BY PR.TIPO, PR.ASOCIADO
UNION
— PARTIDAS SIN DESCOMPOSICION
SELECT SUM(PA.PRESU2) COSTE
,CASE WHEN PR.TIPO=1 THEN ‘MO’ WHEN PR.TIPO=2 THEN ‘MQ’ WHEN PR.TIPO=3 THEN ‘MT’ ELSE ‘–‘ END TIPO_PRECIO
, PR.ASOCIADO
FROM V_CAP_PARTIDAS_T PA
LEFT JOIN T_OBRAS O ON O.EMPRESA=PA.EMPRESA AND O.OBRA=PA.OBRA
LEFT JOIN T_PRECIOS PR ON PR.EMPRESA=PA.EMPRESA AND PR.OBRA=PA.OBRA AND PR.COD_INTERNO=PA.COD_INTERNO
LEFT JOIN T_PRECIOS_COMP CO ON CO.EMPRESA=PA.EMPRESA AND CO.OBRA=PA.OBRA AND CO.COD_INTERNO=PA.COD_INTERNO
{WFiltro} AND PA.TIPO=’P’ AND CO.EMPRESA IS NULL
GROUP BY PR.TIPO, PR.ASOCIADO)
— SUMA DE PARTIDAS
SELECT TIPO_PRECIO, ASOCIADO, SUM(COSTE) COSTE FROM CALCULO
GROUP BY TIPO_PRECIO, ASOCIADO