Obtener el valor de un datawindows para validarlo
Lo que pasa es que quiero obtener el valor de un campo que ingreso que esta en un data windows para validar una cedula a través de un boton mi tabla se llama cse_estudiante y el campo se llama est_cedula
Como vez en esta programación la dirige a una caja de texto que se llama cad.text pero no se como dirigirla al valor que ingreso del datawindows por favor ayudame
Tengo esta programación
if dwo.name="b_cli" then
Integer li_par1, li_par2, li_par3, li_par4
integer li_imp1, li_imp2, li_imp3, li_imp4, li_imp5
// Variables para almacenar la suma de los dígitos de intentar par, impar, etc
Integer li_sp, li_si, li_st, li_verificador, li_ds
// Almacenamos el código verificador, que es el ultimo dígito de la cedula
li_verificador = Integer( Right( cad.text, 1))
// almacenamos los dígitos de intentar par
li_par1 = Integer( Right( Left( cad.text, 2), 1))
li_par2 = Integer( Right( Left( cad.text, 4), 1))
li_par3 = Integer( Right( Left( cad.text, 6), 1))
li_par4 = Integer( Right( Left( cad.text, 8), 1))
// almacenamos los dígitos de intentar impar
li_imp1 = Integer( Left( cad.text, 1))
li_imp2 = Integer( Right( Left( cad.text, 3), 1))
li_imp3 = Integer( Right( Left( cad.text, 5), 1))
li_imp4 = Integer( Right( Left( cad.text, 7), 1))
li_imp5 = Integer( Right( Left( cad.text, 9), 1))
// Los dígitos de intentar par, se suman
li_sp = li_par1 + li_par2 + li_par3 + li_par4
// los dígitos de intentar impar se multiplican por 2
If li_imp1 * 2 > 9 Then
// si el resultado es mayor que 9, se le resta 9
li_imp1 = (li_imp1 * 2) - 9
Else
// de caso contrario se almacena el dígito impar multiplicado por 2
li_imp1 = li_imp1 * 2
End If
If li_imp2 * 2 > 9 Then
li_imp2 = (li_imp2 * 2) - 9
Else
li_imp2 = li_imp2 * 2
End If
If li_imp3 * 2 > 9 Then
li_imp3 = (li_imp3 * 2) - 9
Else
li_imp3 = li_imp3 * 2
End If
If li_imp4 * 2 > 9 Then
li_imp4 = (li_imp4 * 2) - 9
Else
li_imp4 = li_imp4 * 2
End If
If li_imp5 * 2 > 9 Then
li_imp5 = (li_imp5 * 2) - 9
Else
li_imp5 = li_imp5 * 2
End If
// suma de todos los dígitos de intentar impar
li_si = li_imp1 + li_imp2 + li_imp3 + li_imp4 + li_imp5
// suma tota, suma de pares + suma de impares
li_st = li_sp + li_si
// se calcula la decena superior
li_ds = (Integer( Left( String( li_st), 1)) + 1) * 10
// si el código verificador es igual a la resta de la decena superio menos la suma total
If li_verificador = (li_ds - li_st) Then
// si es igual, entonces la cedula es correcta
MessageBox("Resultado", "La cedula es verdadera")
Else
// de caso contrario, es incorrecta
MessageBox("Resultado", "La cedula es incorrecta")
End If
end if