SOMAR VALOR

PAULOHSV 03/03/2013 20:00:17
#419836
Quando faço isto aqui:

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.
FILMAN 04/03/2013 21:47:57
#419904
No primeiro caso você esta utilizando o CASE extraindo MÊS
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
PAULOHSV 04/03/2013 22:15:54
#419906
O que eu preciso é que some todos os dados no ano que eu informar.

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 [Ô]

PAULOHSV 04/03/2013 22:31:12
#419908
Nem fazendo assim:

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.
FILMAN 03/06/2013 22:48:26
#424358
Se o Problema foi resolvido, favor encerrar o tópico, mas caso não tenha sido resolvido
mostre-nos como esta o processo para que possamos lhe ajudar

Obrigado
Tópico encerrado , respostas não são mais permitidas