Ola pessoal, eu trabalho com esse cubo que desenvolvi ha uns 2 anos, vejam se atende:
SELECT
'2 - CONTAS A PAGAR' AS 'CONTAS PAG/REC' ,
GCOLIGADA.NOME AS 'COLIGADA' ,
GFILIAL.NOMEFANTASIA AS 'FILIAL' ,
GCCUSTO.NOME AS 'CONTA CAIXA' ,
FCFO.NOMEFANTASIA AS 'CLIFOR' ,
FLAN.NUMERODOCUMENTO AS 'DOC' ,
DATEDIFF(DAY,FLAN.DATAEMISSAO,FLAN.DATAVENCIMENTO) AS PRAZO,
(
CASE
DATENAME ( W, FLAN.DATAPREVBAIXA )
WHEN 'MONDAY' THEN 'SEGUNDA'
WHEN 'TUESDAY' THEN 'TERÇA'
WHEN 'WEDNESDAY' THEN 'QUARTA'
WHEN 'THURSDAY' THEN 'QUINTA'
WHEN 'FRIDAY' THEN 'SEXTA'
WHEN 'SATURDAY' THEN 'SABADO'
WHEN 'SUNDAY' THEN 'DOMINGO'
END
) AS 'DIA SEMANA' ,
DATEPART ( YEAR, FLAN.DATAPREVBAIXA ) AS 'ANO' ,
(
CASE
DATEPART ( MONTH, FLAN.DATAPREVBAIXA )
WHEN 1 THEN '01-JANEIRO'
WHEN 2 THEN '02-FEVEREIRO'
WHEN 3 THEN '03-MARÇO'
WHEN 4 THEN '04-ABRIL'
WHEN 5 THEN '05-MAIO'
WHEN 6 THEN '06-JUNHO'
WHEN 7 THEN '07-JULHO'
WHEN 8 THEN '08-AGOSTO'
WHEN 9 THEN '09-SETEMBRO'
WHEN 10 THEN '10-OUTUBRO'
WHEN 11 THEN '11-NOVEMBRO'
WHEN 12 THEN '12-DEZEMBRO'
END
) AS 'MES' ,
DATEPART(DAY,FLAN.DATAPREVBAIXA) AS 'DIA' ,
(
CASE FLAN.PAGREC
WHEN 2 THEN SUM(FLAN.VALORORIGINAL + FLAN.VALORJUROS+VALORMULTA-FLAN.VALORIRRF-FLAN.VALORDESCONTO-FLAN.VALORDEVOLUCAO-FLAN.VALORADIANTAMENTO)
END
) AS 'VALOR' ,
(
CASE FLAN.PAGREC
WHEN 2 THEN 'PAGAR'
END) AS PAGREC,
(
CASE FLAN.STATUSLAN
WHEN 0 THEN 'ABERTO'
WHEN 1 THEN 'BAIXADO'
END
) AS 'STATUS'
FROM
GCOLIGADA (NOLOCK),
GFILIAL (NOLOCK),
FLAN (NOLOCK),
GCCUSTO (NOLOCK),
FCFO (NOLOCK)
WHERE (GFILIAL.CODCOLIGADA = GCOLIGADA.CODCOLIGADA)
AND (FLAN.CODCOLIGADA = GFILIAL.CODCOLIGADA)
AND (FLAN.CODFILIAL = GFILIAL.CODFILIAL)
AND (FLAN.PAGREC = 2)
AND (FLAN.CODCCUSTO *= GCCUSTO.CODCCUSTO)
AND (FLAN.CODCOLIGADA *= GCCUSTO.CODCOLIGADA)
AND (
(FLAN.STATUSLAN = 0)
OR (FLAN.STATUSLAN = 1)
)
AND (FCFO.CODCOLIGADA = FLAN.CODCOLCFO)
AND (FCFO.CODCFO = FLAN.CODCFO)
AND DATEPART ( YEAR, FLAN.DATAPREVBAIXA ) ='2007'
AND DATEPART ( MONTH, FLAN.DATAVENCIMENTO )='07'
AND FLAN.DATAPREVBAIXA IS NOT NULL
GROUP BY
GCOLIGADA.NOME ,
FLAN.DATAPREVBAIXA ,
GFILIAL.NOMEFANTASIA ,
GCCUSTO.NOME ,
FLAN.PAGREC ,
FLAN.CODFILIAL ,
FCFO.NOMEFANTASIA ,
FLAN.STATUSLAN ,
FLAN.DATAVENCIMENTO ,
FLAN.DATAEMISSAO ,
FLAN.NUMERODOCUMENTO
/*********************/
UNION ALL
/*********************/
SELECT
'1 - CONTAS A RECEBER' AS 'CONTAS PAG/REC' ,
GCOLIGADA.NOME AS 'COLIGADA' ,
GFILIAL.NOMEFANTASIA AS 'FILIAL' ,
FCXA.DESCRICAO AS 'CONTA CAIXA ' ,
FCFO.NOMEFANTASIA AS 'CLIFOR' ,
FLAN.NUMERODOCUMENTO AS 'DOC' ,
DATEDIFF(DAY,DATAEMISSAO,DATAVENCIMENTO) AS PRAZO,
(
CASE
DATENAME ( W, FLAN.DATAVENCIMENTO )
WHEN 'MONDAY' THEN 'SEGUNDA'
WHEN 'TUESDAY' THEN 'TERÇA'
WHEN 'WEDNESDAY' THEN 'QUARTA'
WHEN 'THURSDAY' THEN 'QUINTA'
WHEN 'FRIDAY' THEN 'SEXTA'
WHEN 'SATURDAY' THEN 'SABADO'
WHEN 'SUNDAY' THEN 'DOMINGO'
END
) AS 'DIA SEMANA' ,
DATEPART ( YEAR, FLAN.DATAVENCIMENTO ) AS 'ANO' ,
(
CASE
DATEPART ( MONTH, FLAN.DATAVENCIMENTO )
WHEN 1 THEN '01-JANEIRO'
WHEN 2 THEN '02-FEVEREIRO'
WHEN 3 THEN '03-MARÇO'
WHEN 4 THEN '04-ABRIL'
WHEN 5 THEN '05-MAIO'
WHEN 6 THEN '06-JUNHO'
WHEN 7 THEN '07-JULHO'
WHEN 8 THEN '08-AGOSTO'
WHEN 9 THEN '09-SETEMBRO'
WHEN 10 THEN '10-OUTUBRO'
WHEN 11 THEN '11-NOVEMBRO'
WHEN 12 THEN '12-DEZEMBRO'
END
) AS 'MES' ,
DATEPART(DAY,FLAN.DATAVENCIMENTO) AS 'DIA' ,
(
CASE
FLAN.PAGREC
WHEN 1 THEN -1* SUM(FLAN.VALORBAIXADO)
END
) AS 'VALOR' ,
(
CASE
FLAN.PAGREC
WHEN 1 THEN 'RECEBER'
END
) AS 'PAGREC' ,
(
CASE
FLAN.STATUSLAN
WHEN 0 THEN 'ABERTO'
WHEN 1 THEN 'BAIXADO'
END
) AS 'STATUS'
FROM
GCOLIGADA (NOLOCK),
GFILIAL (NOLOCK),
FLAN (NOLOCK),
FCFO (NOLOCK),
FCXA (NOLOCK)
WHERE FLAN.CODCOLCFO = FCFO.CODCOLIGADA
AND FLAN.CODCFO = FCFO.CODCFO
AND FLAN.CODCOLIGADA = GCOLIGADA.CODCOLIGADA
AND FLAN.CODCOLIGADA = GFILIAL.CODCOLIGADA
AND FLAN.CODFILIAL = GFILIAL.CODFILIAL
AND FLAN.CODCOLIGADA = FCXA.CODCOLIGADA
AND FLAN.CODCXA = FCXA.CODCXA
AND DATEPART ( YEAR, FLAN.DATAVENCIMENTO )='2007'
AND DATEPART ( MONTH, FLAN.DATAVENCIMENTO )='07'
AND FLAN.PAGREC = 1
AND (
FLAN.STATUSLAN = 0
OR FLAN.STATUSLAN = 1
)
GROUP BY
GCOLIGADA.NOME ,
FLAN.DATAVENCIMENTO ,
GFILIAL.NOMEFANTASIA ,
FLAN.PAGREC ,
FLAN.CODFILIAL ,
FCFO.NOMEFANTASIA ,
FLAN.STATUSLAN ,
FLAN.NUMERODOCUMENTO ,
FLAN.DATAEMISSAO ,
FCXA.DESCRICAO
ORDER BY 'CONTAS PAG/REC' DESC