Clarion - Llamada a procedimiento desde un Form (ABM) para validar

 
Vista:
Imágen de perfil de Pablo Dante

Llamada a procedimiento desde un Form (ABM) para validar

Publicado por Pablo Dante (67 intervenciones) el 25/03/2024 12:20:18
Hola, foro.
Necesitaría si me pueden ayudar con esto de la validación del CUIL/CUIT, por favor...

Declaré un procedimiento (source) para validar el CUIL/CUIT de una persona:
- En el Prototype indique: (STRING PINCUILoT), BYTE
- En Action indique: (STRING PINCUILoT)
- en Embeds -> Processed Code el código del mismo de esta forma:
! SRC - VALIDAR CUIL/CUIT
! PINCUILoT: parámetro IN CUIL/CUIT
IF len(PINCUILoT) > 0
IF sub(PINCUILoT,1,2) = '20' or SUB(PINCUILoT,1,2) = '24' or SUB(PINCUILoT,1,2) = '27'
Loc:Operador[1] = 5
Loc:Operador[2] = 4
Loc:Operador[3] = 3
Loc:Operador[4] = 2
Loc:Operador[5] = 7
Loc:Operador[6] = 6
Loc:Operador[7] = 5
Loc:Operador[8] = 4
Loc:Operador[9] = 3
Loc:Operador[10] = 2
Loc:Digito = DEFORMAT(sub(PINCUILoT,11,1))
Loc:Contador = 1
RETURN TRUE
ELSE
RETURN FALSE
END !IF
ELSE
RETURN FALSE
END !IF

En el Form; (para insertar, actualizar y eliminar); en Embeds del Entry "PRE:CUIL" -> Accepted -> declare un Source donde evaluo la clave ingresada:
IF ValidarCUILoT(VEN:CUIL)
! El cuit es válido, no hacemos nada
ELSE
MESSAGE('Debe ingresar un cuit válido','Atención',ICON:EXCLAMATION)
SELECT (?VEN:CUIL)
CYCLE
END !IF

... Y en el Button del Form ABM, Embeds -> Accepted -> Generated Code -> Source tengo lo siguiente:
POST (EVENT:Accepted, VEN:CUIL)
(Imagino que POST actua algo así como una Condición posterior al evento ... digo lo interpreto así)

Pero por más que ingreso un CUIL correcto (20-22210948-6) o cualquier "verdura" me indica siempres que es "incorrecto". Pove con varias claves tributarias y siempres son erroneas.

Que puedo estár haciendo mal :( , como no tengo bien en claro como es el llamado a un PRC por ahí me falta declarar o modificarl algo ... :?:
Si me pueden dar una mano lo voy a agradecer.
------------------------------------------
Estoy trabajando con:
Clarion Vers. 8 EE
DCT: Top Speed
--------------------------------------------
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder