San Roman Posted May 26, 2014 at 05:06 PM Report #557012 Posted May 26, 2014 at 05:06 PM Olá amigos, Estou com dificuldade de resolver uma questão. Tenho uma linha SELECT que filtra os dados de uma coluna com valores e inseri em um textbox a soma desses valores. Até ai tudo bem, só que a primeira linha encontrada não é somada no valor gerado. Exemplo: linha 1 = 15 linha 2 = 20 linha 3 = 10 soma = 45 Valor inserido no textbox = 30 Não consigo resolver esse problema. Segue o código para tentarmos resolver essa questão: <code>Private Sub SomarEncargoMesCC() Dim Soma As Single = 0 Dim mes As String = Date.Now.Month.ToString Dim banco As String = txtBancoContaCorrente.Text Dim sqlCon As New SqlConnection(strCmd) Dim strSql As String = "SELECT Valor FROM TB_Encargos where MONTH(Data) = '" & mes & "' and Banco = '" & banco & "'" Dim sqlCmd As New SqlCommand(strSql, sqlCon) Dim dr As SqlDataReader sqlCmd.Connection.Open() dr = sqlCmd.ExecuteReader dr.Read() Do While dr.Read Soma += CDec(dr("Valor")).ToString Loop txtValorEncargosCC.Text = CDec(Soma) End Sub</code> Desde já agradeço.
nelsonr Posted May 26, 2014 at 05:25 PM Report #557015 Posted May 26, 2014 at 05:25 PM Boas, o problema é que estás a fazer duas vezes o Read. Apaga a linha que tem apenas "dr.Read()" Já agora, se pretendes fazer a soma de um campo, podes fazer o "SELECT SUM(Valor) FROM...", que faz logo as soma do campo em todos os registos
San Roman Posted May 26, 2014 at 06:55 PM Author Report #557026 Posted May 26, 2014 at 06:55 PM Boa tarde, Nelsonnr Cara, muito obrigado, funcionou perfeitamente. Espero um dia poder ajudá-lo. Abraços
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now