Hola amigos aqui les dejo un enlace para descargar el curso en video de Gx 9.0 (español).
http://www2.gxtechnical.com/portal/hgxpp001.aspx?15,8,77,O,S,0,,2319;26;4;;/%20%20/;/%20%20/;M;1
Saludos, espero les sirva.
domingo, 9 de mayo de 2010
martes, 26 de enero de 2010
VALIDAR RUT (CHILE)
Bueno aqui les dejo la una de las forma de validar el rut Chileno, esta solución me la envio un amigo de un foro (Rafael Diaz Gonzalez) :
Primero deben crear un nuevo objeto del tipo procedimiento y poner lo siguiene
En Rules
parm(In:&Rut,In:&DvR,Out:&validado);
/*
* Asigno como no validado a la variable a devolver
*
*/
&validado=0
/*
* Rutina de validación del rut
*/
&R = &Rut
&Y = 2
&Acum = 0
&Prod = 0
do while &R <> 0
&V1 = &R
&R = int(&R / 10)
&V2 = &V1 - (&R * 10)
&Prod = &V2 * &Y
&Acum = &Acum + &Prod
&Y = &Y + 1
if &Y = 8
&Y = 2
endif
enddo
&Resto = &Acum - (int(&Acum/11) * 11)
if &Resto = 1
&Dv = 'K'
else
if &Resto = 0
&Dv = '0'
else
&Dv = str(11 - &Resto, 1)
endif
endif
/*
* Fin Rutina de validación del rut
*/
/*
* Si es valido retorno un SN.Si=1
* Si no es Valido retorno un SN.No=2
*/
if &DvR=&Dv
&validado=1
else
&validado=0
endif
DONDE
Acum N(6)
Dv CHR(1)
DVR CHR(1)
Pro N(2)
R N(8)
Resto N(6)
Rut N(8)
V1 N(8)
V2 N(8)
validadoN(1)
Y (N1)
LUEGO EN LA TRANSACCION TIENES LOS ATRIBUTOS
EmpleadoRut N(8)
EmpleadoDigitoV C(1)
EN RULES PONES
&EsValido=(PPValidarRut(EmpleadoRut,EmpleadoDigitoV));
Error('Error: Debe ingresar un Rut correcto...') IF &EsValido= 0 ;
Primero deben crear un nuevo objeto del tipo procedimiento y poner lo siguiene
En Rules
parm(In:&Rut,In:&DvR,Out:&validado);
/*
* Asigno como no validado a la variable a devolver
*
*/
&validado=0
/*
* Rutina de validación del rut
*/
&R = &Rut
&Y = 2
&Acum = 0
&Prod = 0
do while &R <> 0
&V1 = &R
&R = int(&R / 10)
&V2 = &V1 - (&R * 10)
&Prod = &V2 * &Y
&Acum = &Acum + &Prod
&Y = &Y + 1
if &Y = 8
&Y = 2
endif
enddo
&Resto = &Acum - (int(&Acum/11) * 11)
if &Resto = 1
&Dv = 'K'
else
if &Resto = 0
&Dv = '0'
else
&Dv = str(11 - &Resto, 1)
endif
endif
/*
* Fin Rutina de validación del rut
*/
/*
* Si es valido retorno un SN.Si=1
* Si no es Valido retorno un SN.No=2
*/
if &DvR=&Dv
&validado=1
else
&validado=0
endif
DONDE
Acum N(6)
Dv CHR(1)
DVR CHR(1)
Pro N(2)
R N(8)
Resto N(6)
Rut N(8)
V1 N(8)
V2 N(8)
validadoN(1)
Y (N1)
LUEGO EN LA TRANSACCION TIENES LOS ATRIBUTOS
EmpleadoRut N(8)
EmpleadoDigitoV C(1)
EN RULES PONES
&EsValido=(PPValidarRut(EmpleadoRut,EmpleadoDigitoV));
Error('Error: Debe ingresar un Rut correcto...') IF &EsValido= 0 ;
Saludos
SUBIR IMAGEN
Suscribirse a:
Entradas (Atom)