Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/01/2012, 03:51
Avatar de slaxsna
slaxsna
 
Fecha de Ingreso: diciembre-2010
Ubicación: Tampico
Mensajes: 38
Antigüedad: 13 años, 11 meses
Puntos: 3
Resolver operaciones

Buenas noches tengo algunas dudas por las cuales no he podido avanzar con mi sistema, si son tan amables de asesorarme un poco, gracias.

Expongo mis dudas:

Tengo un modulo de ventas en el cual necesito obtener un total añadiendo al subtotal un descuento y el i.v.a los cuales los puede modificar el usuario a su conveniencia pero no encontrado la forma correcta de hacerlo funcionar.

Explicando mas detalladamente el problema seria

Subtotal : 30.00 pesos
Descuento: ?
I.v.a: ?
Total: 30.00 pesos (Esto cambia si yo aplico un descuento o un i.v.a)

Las operaciones las realiza, el problema que tengo es en cuestión de que no he podido combinarlas para obtener el total por ejemplo si en 'Descuento' aplico el 10% el total = 27.00 y si a esa cantidad (27.00) le aplico el 16% de i.v.a el total es: 31.32, pero si yo a 30.00 (Subtotal) ingreso primero el 16% (i.v.a) el resultado es: 34.80 y posteriormente ingreso el 10% de descuento la operación que me realiza es restarle el 10% de 30.00 (Subtotal) y no de 34.80. Entonces mi problema es poder jugar correctamente con las 4 cifras dando los resultados correctamente, pondré un código de como lo estoy haciendo.


Código:
 Private Sub txtDescuento_LostFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescuento.LostFocus
        If txtDescuento.Text = "" Then
            lblTotal.Text = lblSubtotal.Text
        Else
            lblTotal.Text = Val((txtDescuento.Text) * CDbl(lblSubtotal.Text)) / 100
            lblTotal.Text = Format(CDbl(lblTotal.Text), "$#,###,###,##0.00####")
        End If
    End Sub
Código:
Private Sub txtIva_LostFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtIva.LostFocus
        If txtIva.Text = "" Then
            lblTotal.Text = lblSubtotal.Text
        Else
            lblTotal.Text = CDbl(lblSubtotal.Text) + ((Val(txtIva.Text) * CDbl(lblSubtotal.Text)) / 100)
            lblTotal.Text = Format(CDbl(lblTotal.Text), "$#,###,###,##0.00####")
        End If
    End Sub
También otra cosa que quería saber si es posible y como que el total cambie conforme yo vaya escribiendo en los campos de texto y no hasta perder el focus alguna manera mejor que me pudieran decir?


Bueno ojala y me hayan entendido ... y me puedan asesorar sobre el tema, tal ves sea algo simple pero ando un poco ciclado, gracias por leerme.