SOMAR VALOR
Citação:[Ô]SELECT [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS, [Ô] & _
[Ô] SUM(CASE WHEN COALESCE(EXTRACT(MONTH FROM A.DATA_VENCIMENTO),0) = 1 THEN A.VALOR_TOTAL ELSE 0 END) AS JANEIRO, [Ô] & _
[Ô] FROM [Ô] & _
[Ô] FIN_RECEBIMENTOS A [Ô] & _
[Ô] LEFT OUTER JOIN FIN_PLANO_CONTAS C ON C.ID_PLANO_CONTAS=A.COD_PLANO_CONTAS [Ô] & _
[Ô] AND EXTRACT(YEAR FROM A.DATA_VENCIMENTO) = [Ô] & txtAno.Text & _
[Ô] WHERE [Ô] & _
[Ô] A.DATA_PAGAMENTO IS NULL AND C.COD_FAZENDA = [Ô] & Identificador_fazenda & _
[Ô] GROUP BY [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS [Ô]
O sistema soma tas a contas da tabela recebimento que vencem em janeiro tudo certinho, mas quando faço isto aqui:
Citação:[Ô]SELECT [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS, [Ô] & _
[Ô] SUM(CASE WHEN COALESCE(EXTRACT(YEAR FROM A.DATA_VENCIMENTO),0 ) = [Ô] & txtAno.Text & [Ô] THEN A.VALOR_TOTAL ELSE 0 END )as VALOR_TOTALG [Ô] & _
[Ô] FROM [Ô] & _
[Ô] FIN_RECEBIMENTOS A [Ô] & _
[Ô] LEFT OUTER JOIN FIN_PLANO_CONTAS C ON C.ID_PLANO_CONTAS=A.COD_PLANO_CONTAS [Ô] & _
[Ô] AND EXTRACT(YEAR FROM A.DATA_VENCIMENTO) = [Ô] & txtAno.Text & _
[Ô] WHERE [Ô] & _
[Ô] A.DATA_PAGAMENTO IS NULL AND C.COD_FAZENDA = [Ô] & Identificador_fazenda & _
[Ô] GROUP BY [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS [Ô]
O sistema não soma o total, ele simplesmente soma as valor da tabela recebimento de acordo com o primeiro registro da tabela plano de contas, despresando assim os demais valores dos demais planos de contas.
SUM(CASE WHEN COALESCE([txt-color=#e80000]EXTRACT(MONTH[/txt-color] FROM A.DATA_VENCIMENTO),0) = 1 THEN A.VALOR_TOTAL ELSE 0 END) AS JANEIRO
Ja no segundo SQL você Extrai o ano!
Passe a estrutura da sua tabela
Tentei da forma a seguir, não da erro mas também não soma todos os registros.
Citação:SQL = [Ô]SELECT [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS, [Ô] & _
[Ô] SUM(A.VALOR_TOTAL) AS VALOR_TOTALG [Ô] & _
[Ô] FROM [Ô] & _
[Ô] FIN_RECEBIMENTOS A [Ô] & _
[Ô] LEFT OUTER JOIN FIN_PLANO_CONTAS C ON C.ID_PLANO_CONTAS=A.COD_PLANO_CONTAS [Ô] & _
[Ô] WHERE [Ô] & _
[Ô] EXTRACT(YEAR FROM A.DATA_VENCIMENTO) BETWEEN [Ô] & txtAno.Text & [Ô] AND [Ô] & txtAno.Text & [Ô] [Ô] & _
[Ô] AND A.DATA_PAGAMENTO IS NULL AND C.COD_FAZENDA = [Ô] & Identificador_fazenda & _
[Ô] GROUP BY [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS [Ô]
Citação:SQL1 = [Ô]SELECT [Ô] & _
[Ô] A.COD_PLANO_CONTAS,C.PLANO_CONTAS, [Ô] & _
[Ô] ((Select Sum(VALOR_TOTAL)as VT From FIN_RECEBIMENTOS Where FIN_RECEBIMENTOS.Cod_PLANO_CONTAS=C.ID_PLANO_CONTAS))As VALOR_TOTALG[Ô] & _
[Ô] FROM [Ô] & _
[Ô] FIN_RECEBIMENTOS A [Ô] & _
[Ô] LEFT OUTER JOIN FIN_PLANO_CONTAS C ON C.ID_PLANO_CONTAS=A.COD_PLANO_CONTAS [Ô] & _
[Ô] WHERE [Ô] & _
[Ô] A.DATA_PAGAMENTO IS NULL AND C.COD_FAZENDA = [Ô] & Identificador_fazenda
Ele soma so os valores do menor codigo de plano de contas.
mostre-nos como esta o processo para que possamos lhe ajudar
Obrigado