none
Problema al Consultar Datos Mysql y al Actualizar los Mismos RRS feed

  • Pregunta

  • Hola. buenos días. es primera vez que utilizo un FORUM. Espero se me Ayude con este problema

    Estoy creando un Sistema de Puntos de Fidelidad y Todo me ha salido bien, Solo que ya en mi face final cree un FORM que se

    encarga de Cargar la factura para Calcular los Puntos que el cliente Ganó.

    Cuando Ejecuto el programa entra de maravilla, ingreso el Dato para que haga la relación entre las Bases de Datos, Cargo

    los Datos de Facturación y hace el calculo perfectamente. Ejemplo si un cliente pago en Efectivo se le Carga un 3% a su factura.

    Regla de tres Total = ElMontoIngrado * Porcentaje / 100....... Carga todo perfectamente pero cuando Vuelvo a Cargar otra Factura se trae Los valores anteriores y no el calculo nuevo. Existe una forma de limpiar todo sin necesidad de salir del programa y volver a entrar? dejo adjunto el codigo C#

    Imports MySql.Data.MySqlClient
    Imports System.IO

    Public Class cargarpuntos
        Dim tipo_pago As String
        Dim recompensa As Double
        Dim adaptador As New MySqlDataAdapter
        Dim datos As DataSet
        Dim consulta As String = 0
        Dim acumuladorderecompensas As Double = 0
        Dim resultado As Double = 0
        Dim lista As Byte
        Dim porcentaje As Double = 0
        Dim maxporcentaje As Double = 0

        Private Sub cargarpuntos_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            conexion_global()
            Dim limpiar As Limpiar = New Limpiar()
            limpiar.LimpiarCampos(Me)
            CampoValido()
            tbBuscarRFC.Clear()
            tbMonto.Clear()
            tbNfactura.Clear()
            tbComentario.Clear()
            tbPuntosA.Clear()
            GroupBox1.Refresh()
            RadioButton1.Refresh()
            RadioButton2.Refresh()
            RadioButton4.Refresh()
            RadioButton5.Refresh()
            RadioButton6.Refresh()
            RadioButton7.Refresh()
        End Sub


        Private Sub CampoValido()
            If tbBuscarRFC.TextLength > 0 And tbMonto.TextLength > 0 And tbNfactura.TextLength > 0 And tbComentario.TextLength > 0 Then

                btnRegistrar.Enabled = True
            Else
                btnRegistrar.Enabled = False
            End If
        End Sub

        Private Sub btnSalir_Click(sender As Object, e As EventArgs) Handles btnSalir.Click
            Me.Close()
        End Sub


        Private Sub btnRegistrar_Click(sender As Object, e As EventArgs) Handles btnRegistrar.Click
            acumuladorderecompensas = 0
            acumuladorderecompensas = tbPuntosA.Text + recompensa
            If lista <> 0 Then


                Dim sql As String = "update puntos set 
                                                       recompensas ='" & acumuladorderecompensas & "',
                                                       nfactura='" & tbNfactura.Text & "',
                                                       monto='" & tbMonto.Text & "',
                                                       fecha='" & dtfechapuntos.Text & "',
                                                       tipopago='" & tipo_pago & "',
                                                       comentario='" & tbComentario.Text & "'
                                                       where id_afiliados='" & resultado & "' "
                Dim Actualizar As New MySqlCommand(sql, Connexion)
                Actualizar.ExecuteNonQuery()
                MsgBox("Los Datos se han Guardado")

                Me.Close()
            Else
                MsgBox("RFC No encontrado")

                Me.Close()
            End If

        End Sub

        Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles tbNfactura.TextChanged
            CampoValido()
        End Sub

        Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton1.CheckedChanged
            tipo_pago = "Efectivo"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeE.Text

            Else
                porcentaje = tabladeparametros.tbPorEfectivo.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub

        Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton2.CheckedChanged
            tipo_pago = "Debito"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeO.Text

            Else
                porcentaje = tabladeparametros.tbPorDebito.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub

        Private Sub RadioButton4_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton4.CheckedChanged
            tipo_pago = "Credito"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeO.Text

            Else
                porcentaje = tabladeparametros.tbPorCredito.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub

        Private Sub RadioButton7_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton7.CheckedChanged
            tipo_pago = "Amex"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeO.Text

            Else
                porcentaje = tabladeparametros.tbPorAmex.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub

        Private Sub RadioButton6_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton6.CheckedChanged
            tipo_pago = "Cheque"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeO.Text

            Else
                porcentaje = tabladeparametros.tbPorCredito.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub

        Private Sub RadioButton5_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton5.CheckedChanged
            tipo_pago = "Transferencia"
            recompensa = 0
            If tbMonto.Text >= tabladeparametros.tbTopeMax.Text Then
                recompensa = tabladeparametros.tbAsigTopeO.Text

            Else
                porcentaje = tabladeparametros.tbPorCredito.Text
                recompensa = tbMonto.Text * porcentaje / 100

            End If
            Return
        End Sub


        Private Sub tbBuscarRFC_TextChanged(sender As Object, e As EventArgs) Handles tbBuscarRFC.TextChanged
            CampoValido()
        End Sub


        Private Sub tbComentario_TextChanged(sender As Object, e As EventArgs) Handles tbComentario.TextChanged
            CampoValido()
        End Sub

        Private Sub tbMonto_TextChanged(sender As Object, e As EventArgs) Handles tbMonto.TextChanged
            CampoValido()
        End Sub

        Private Sub btnConsultar_Click(sender As Object, e As EventArgs) Handles btnConsultar.Click

            If tbBuscarRFC.Text <> "" Then
                consulta = "SELECT afiliados.nombre_completo, afiliados.id_afiliados, puntos.recompensas FROM afiliados INNER JOIN puntos ON puntos.id_afiliados=afiliados.id_afiliados  WHERE RFC='" & tbBuscarRFC.Text & "'"
                adaptador = New MySqlDataAdapter(consulta, Connexion)
                datos = New DataSet
                adaptador.Fill(datos, "afiliados")
                adaptador.Fill(datos, "puntos")
                lista = datos.Tables("afiliados").Rows.Count
                lista = datos.Tables("puntos").Rows.Count
            End If
            If lista <> 0 Then
                tbNombreAfiliado.Text = datos.Tables("afiliados").Rows(0).Item("nombre_completo")
                resultado = datos.Tables("afiliados").Rows(0).Item("id_afiliados")
                tbPuntosA.Text = datos.Tables("puntos").Rows(0).Item("recompensas")
                If tbPuntosA.Text = "" Then
                    tbPuntosA.Text = 0
                End If
            Else
                MsgBox("RFC No encontrado")
            End If
        End Sub

    End Class

    jueves, 15 de marzo de 2018 16:00