Bom Dia Fábio.
Precisei de faze o balanço patrimonial comparativo(porém nesse SQL só tem as informações de um ano) e fiz o SQL abaixo para retornar as informações em uma planilha, talvez te ajude, ele retorna as mesmas informações que tem no relatório que você solicitou, altere-o para as suas necessidades.
SELECT CONTA, DESCRICAO, SUM(ANTERIOR) AS ANTERIOR, SUM(POSTERIOR) AS ATUAL
FROM(
SELECT CODCONTA AS CONTA, DESCRICAO, 0 AS ANTERIOR, 0 AS POSTERIOR
FROM CCONTA
WHERE CODCOLIGADA = :CODCOLIGADA
AND (CCONTA.CODCONTA LIKE :CONTA_INICIAL||'%' OR CCONTA.CODCONTA LIKE :CONTA_FINAL||'%' OR CCONTA.CODCONTA LIKE :CONTA_PATRIMONIO||'%')
UNION ALL
SELECT CONTA, CCONTA.DESCRICAO, SUM(ANO_ANTERIOR) AS ANTERIOR, SUM(ANO_POSTERIOR) AS POSTERIOR
FROM(SELECT CONTA, 0 ANO_ANTERIOR,
SUM(VALOR_DEBITO + VALOR_CREDITO) ANO_POSTERIOR
FROM(SELECT DEBITO CONTA, -SUM(VALOR) VALOR_DEBITO, 0 VALOR_CREDITO,'D'
FROM CLANCA
WHERE DEBITO LIKE '3%'
AND CODCOLIGADA = 1
AND VALOR > 0
AND DEBITO >= '0'
AND DEBITO < 'a'
AND DATA >= '01/01/2012'
AND DATA <= '31/12/2012'
GROUP BY DEBITO
UNION ALL
SELECT CREDITO CONTA, 0 VALOR_DEBITO, SUM(VALOR) VALOR_CREDITO, 'C'
FROM CLANCA
WHERE CREDITO LIKE '3%'
AND CODCOLIGADA = 1
AND VALOR > 0
AND CREDITO >= '0'
AND CREDITO < 'a'
AND DATA >= '01/01/2012'
AND DATA <= '31/12/2012'
GROUP BY CREDITO)
GROUP BY CONTA
UNION ALL
SELECT CONTA, SUM(VALOR2 - VALOR) ANO_ANTERIOR, 0 ANO_POSTERIOR
FROM(
SELECT CONTA, SUM(VALOR) VALOR, SUM(VALOR_2) VALOR2
FROM (SELECT CODCONTA CONTA, SUM(VALOR) VALOR, 0 AS VALOR_2
FROM CSDANT
WHERE CODCOLIGADA = :CODCOLIGADA
AND VALOR <> 0.00
AND CODCONTA >= '0'
AND CODCONTA < 'a'
GROUP BY CODCONTA
UNION ALL
SELECT DEBITO CONTA, SUM(VALOR) VALOR, 0 AS VALOR_2
FROM CLANCA
WHERE CODCOLIGADA = :CODCOLIGADA
AND VALOR > 0
AND DEBITO >= '0'
AND DEBITO < 'a'
AND DATA < ADD_MONTHS(TO_DATE(:DATA_INICIAL),-12)
GROUP BY DEBITO
UNION ALL
SELECT CREDITO CONTA, -SUM(VALOR) VALOR, 0 AS VALOR_2
FROM CLANCA
WHERE CODCOLIGADA = :CODCOLIGADA
AND VALOR > 0
AND CREDITO >= '0'
AND CREDITO < 'a'
AND DATA < ADD_MONTHS(TO_DATE(:DATA_INICIAL),-12)
GROUP BY CREDITO)
GROUP BY CONTA
UNION ALL
SELECT CONTA2, SUM(VALOR), SUM(VALOR_2)
FROM (SELECT DEBITO CONTA2, 0 AS VALOR, -SUM(VALOR) VALOR_2
FROM CLANCA
WHERE CODCOLIGADA = :CODCOLIGADA
AND VALOR > 0
AND DEBITO >= '0'
AND DEBITO < 'A'
AND DATA >= ADD_MONTHS(TO_DATE(:DATA_INICIAL),-12)
AND DATA <= ADD_MONTHS(TO_DATE(:DATA_FINAL),-12)
GROUP BY DEBITO
UNION ALL
SELECT CREDITO CONTA2, 0 AS VALOR, SUM(VALOR) VALOR_2
FROM CLANCA
WHERE CODCOLIGADA = :CODCOLIGADA
AND VALOR > 0
AND CREDITO >= '0'
AND CREDITO < 'A'
AND DATA >= ADD_MONTHS(TO_DATE(:DATA_INICIAL),-12)
AND DATA <= ADD_MONTHS(TO_DATE(:DATA_FINAL),-12)
GROUP BY CREDITO)
GROUP BY CONTA2
ORDER BY 1)
GROUP BY CONTA), CCONTA
WHERE CCONTA.CODCONTA = CONTA
AND CCONTA.CODCOLIGADA = :CODCOLIGADA
AND (CCONTA.CODCONTA LIKE :CONTA_INICIAL||'%' OR CCONTA.CODCONTA LIKE :CONTA_FINAL||'%' OR CCONTA.CODCONTA LIKE :CONTA_PATRIMONIO||'%')
GROUP BY CONTA, DESCRICAO
HAVING SUM(ANO_ANTERIOR) <> 0 OR SUM(ANO_POSTERIOR) <> 0)
GROUP BY CONTA, DESCRICAO
HAVING ((SUM(ANTERIOR) <> 0 OR SUM(POSTERIOR) <> 0) OR LENGTH(CONTA) < 12)
ORDER BY 1