none
Erro ao somar campo Usando variavel RRS feed

  • Pergunta

  • Galera estou com problema fiz o codigo ja funcionando é uma variavel que fiz para somar o campo valor total da compra para o valor do total devendo (para salvar no campo de dados (ja salvando) o problema é que ele soma ate dmais sera que vcs pode me ajudar se tem algo errado no meu codigo boa tarde ai ele soma umas das vezes como faz para soma so uma vez boa tarde
    Private Sub PCadastrarValortotalDevendo()
            Using con As OleDbConnection = geetConectionCadClientes()
                Try
                    con.Open()
                    Dim sql As String = "UPDATE tbl_Clientes SET Total_Devendo=?"
                    Dim cmd As OleDbCommand = New OleDbCommand(sql, con)
    
                    cmd.Parameters.Add(New OleDb.OleDbParameter("@Total_Devendo", Total_DevendoTextBox.Text))
    
    
                    cmd.ExecuteNonQuery()
    
                    MsgBox("Alterado com sucesso")
    
    
                Catch ex As Exception
                    MsgBox(ex.Message)
                Finally
                    con.Close()
                End Try
            End Using
        End Sub
    Private Sub acao_devendo_Tick(sender As System.Object, e As System.EventArgs) Handles acao_devendo.Tick
            If cmb_tipo_modo_pagamento.Text = "Anotar" Then
                acao_devendo.Start()
            Else
                acao_devendo.Stop()
            End If
        End Sub
    
        Private Sub Cadastrar_Click(sender As System.Object, e As System.EventArgs) Handles Cadastrar.Click
    
            If cmb_tipo_modo_pagamento.Text = "Anotar" Then
                acao_devendo.Start()
                Dim somarTotalDevendo = Total_DevendoTextBox.Text + Total_DevendoTextBox.Text
                valortotal_textbox.Text = FormatCurrency(somarTotalDevendo)
                PCadastrarValortotalDevendo()
            Else
                acao_devendo.Stop()
            End If
    
    
        End Sub
    End Class


    XD

    quarta-feira, 14 de junho de 2017 17:02

Respostas

  • resolvi vou deixar a solucao aqui para vcs (meu banco de dados estava como numero ai so converter para int 32 Abraços

    Obrigado a cada um que me ajudou

     If cmb_tipo_modo_pagamento.Text = "Anotar" Then
                Dim somarTotalDevendo = valortotal_textbox.Text + Total_DevendoTextBox.Text
                Total_DevendoTextBox.Text = Convert.ToString(Int32.Parse(valortotal_textbox.Text) + Int32.Parse(Total_DevendoTextBox.Text))
    
                PCadastrarValortotalDevendo()


    XD

    sexta-feira, 16 de junho de 2017 17:46

Todas as Respostas

  • Bom dia, jose_down.

    Não estou compreendendo o que você quer, pode ser mais claro?

    quinta-feira, 15 de junho de 2017 13:20
  • Não faltou acao_devendo.Stop() no if?

    If cmb_tipo_modo_pagamento.Text = "Anotar" Then acao_devendo.Start() Dim somarTotalDevendo = Total_DevendoTextBox.Text + Total_DevendoTextBox.Text valortotal_textbox.Text = FormatCurrency(somarTotalDevendo) PCadastrarValortotalDevendo()

    // -- Parar Ação

    acao_devendo.Stop()

    End If

    // -- Não há necessidade de Else

    quinta-feira, 15 de junho de 2017 16:00
  • fiz isso nao adianto, o problema é que ele ta somando mais de uma vez 

    XD

    quinta-feira, 15 de junho de 2017 20:16
  • eu quero que se o tipo de pagamento for anotar ele soma o campo valor total e salva no banco de dados ja esta funcionando essa parte porem ele soma umas 10 vezes 

    XD

    quinta-feira, 15 de junho de 2017 20:16
  • É o mesmo valor que se repete várias vezes?
    sexta-feira, 16 de junho de 2017 12:03
  • Sim, quando eu coloco o modo'anotar' o timer ja identifica ai alem de ele somar so uma vezes ele soma umas 100 vezes bom dia

    XD

    sexta-feira, 16 de junho de 2017 14:13
  • Você realmente precisa do timer?

    Acredito que foi configurado o timer para executar a cada segundo, com isso esta somando varias vezes


    Uma imagem vale mais do que mil palavras, mas ocupa 3 mil vezes mais espaço em disco

    sexta-feira, 16 de junho de 2017 14:37
  • Remova o else dessa sub:

    Private Sub acao_devendo_Tick(sender As System.Object, e As System.EventArgs) Handles acao_devendo.Tick If cmb_tipo_modo_pagamento.Text = "Anotar" Then acao_devendo.Start()

    End If Else // -- remova acao_devendo.Stop() // -- remova End If // -- remova

    End Sub

    If cmb_tipo_modo_pagamento.Text = "Anotar" Then acao_devendo.Start() Dim somarTotalDevendo = Total_DevendoTextBox.Text + Total_DevendoTextBox.Text valortotal_textbox.Text = FormatCurrency(somarTotalDevendo) PCadastrarValortotalDevendo()

    // -- Parar Ação

    acao_devendo.Stop()

    return

    End If

    sexta-feira, 16 de junho de 2017 15:54
  • amigo o problema esta na variavel quando coloca para somar 
    Dim somarTotalDevendo = Total_DevendoTextBox.Text + Total_DevendoTextBox.Text
                valortotal_textbox.Text = FormatCurrency(somarTotalDevendo) (essa parte do format currency que ta somando e acrescentando muitas casas) 


    XD

    sexta-feira, 16 de junho de 2017 17:27
  • nao ja removi ele e continua dando problema 

    XD

    sexta-feira, 16 de junho de 2017 17:27
  • resolvi vou deixar a solucao aqui para vcs (meu banco de dados estava como numero ai so converter para int 32 Abraços

    Obrigado a cada um que me ajudou

     If cmb_tipo_modo_pagamento.Text = "Anotar" Then
                Dim somarTotalDevendo = valortotal_textbox.Text + Total_DevendoTextBox.Text
                Total_DevendoTextBox.Text = Convert.ToString(Int32.Parse(valortotal_textbox.Text) + Int32.Parse(Total_DevendoTextBox.Text))
    
                PCadastrarValortotalDevendo()


    XD

    sexta-feira, 16 de junho de 2017 17:46