[GUFA] Generara CUIT automatico
Buenos Días Alguien tiene cual es la formula para generar los CUIT o CUIL de personas físicas o jurídicas, en base a su sexo y numero de documento. tengo que incorporar el cuit a una base de datos donde tengo estos datos, sexo, documento, personaría jurídica gracias -- Mario Andrés Ageno Analista de Sistemas de Computación Italia 2317 - 3040 San Justo (SF) mail: mario.ag...@sanjustosf.com.ar web: www.maasoft.com.ar msn: mario_ag...@hotmail.com
[GUFA] Generara CUIT automatico
Hola Mario: Esta es una función para verificar si el CUIT/CUIL es válido. Pero ¡OJO con el cálculo automático! Normalmente el CUIT/CUIL responde a ciertas reglas, pero en algunos casos excepcionales cambian el prefijo sin que ese cambio responda a datos verificables Cuando el resultado del cálculo inicial da 10, el dígito verificador pasa a ser 9 y el prefijo de las Sociedades pasa a ser 33, el de los hombres a 23.En el caso de las mujeres el prefijo pasa a 23 y el digito verificador pasa a ser 4. Si el numero de documento estuviera duplicado (cosa que sucede) el prefijo cambia a 34 en Sociedades y a 24 en las personas físicas Los prefijos aceptados son 20: Masculino 27: Femenino 23: Masculino/Femenino 24: Masculino/Femenino (Cuando hay repetición de Nº de documento, increíble pero real y no detectable) 30: Sociedades 33: Sociedades 34: Sociedades (Cuando hay repetición de Nº de la sociedad, increíble pero real y no detectable) Para obtener el CUIT/CUIL, lo más seguro es consultar la página del ANSES. En el caso de CUIT, se puede descargar un archivo texto que luego se puede pasar a dbf y consultar la existencia del CUIT. En el caso de CUIL no sé si existe algún archivo a descargar con los CUILes generados. function VerifCuit parameters FCuit private Secuencia, I, ProDesc, DigVer if lastkey() # 27 Secuencia= '54-32765432' ProDesc= 0 for I= 1 to 11 if i # 3 ProDesc= ProDesc + (val (substr (FCuit,i,1)) * val (substr (Secuencia,i,1))) endif endfor DigVer= 11 - mod (ProDesc, 11) if DigVer= 10 wait window nowait 'El Prefijo debe cambiarse' return .F. endif if alltrim (str (DigVer))= right (FCuit, 1) return .T. else wait window nowait 'El dígito verificador no coincide' return .F. endif else return .T. endif Saludos Fabricio A. Bridera De: GUFA@mug.org.ar [mailto:GUFA@mug.org.ar] En nombre de Mario Andrés Ageno Enviado el: Viernes, 19 de Octubre de 2012 12:00 Para: GUFA List Member Asunto: [GUFA] Generara CUIT automatico Buenos Días Alguien tiene cual es la formula para generar los CUIT o CUIL de personas físicas o jurídicas, en base a su sexo y numero de documento. tengo que incorporar el cuit a una base de datos donde tengo estos datos, sexo, documento, personaría jurídica gracias -- Mario Andrés Ageno Analista de Sistemas de Computación Italia 2317 - 3040 San Justo (SF) mail: mario.ag...@sanjustosf.com.ar web: www.maasoft.com.ar msn: mario_ag...@hotmail.com
[GUFA] Generara CUIT automatico
Gracias Fabricio pero por lo que veo es un verificador de CUIT lo que estoy buscando es como generarlo, teniendo como dato el sexo y documento, algo ya encontre pero no contempla o tiene errores con los 23 saludos From: Fabricio Bridera (GUFA) Sent: Friday, October 19, 2012 4:39 PM To: GUFA List Member Subject: [GUFA] Generara CUIT automatico Hola Mario: Esta es una función para verificar si el CUIT/CUIL es válido. Pero ¡OJO con el cálculo automático! Normalmente el CUIT/CUIL responde a ciertas reglas, pero en algunos casos excepcionales cambian el prefijo sin que ese cambio responda a datos verificables Cuando el resultado del cálculo inicial da 10, el dígito verificador pasa a ser 9 y el prefijo de las Sociedades pasa a ser 33, el de los hombres a 23.En el caso de las mujeres el prefijo pasa a 23 y el digito verificador pasa a ser 4. Si el numero de documento estuviera duplicado (cosa que sucede) el prefijo cambia a 34 en Sociedades y a 24 en las personas físicas Los prefijos aceptados son 20: Masculino 27: Femenino 23: Masculino/Femenino 24: Masculino/Femenino (Cuando hay repetición de Nº de documento, increíble pero real y no detectable) 30: Sociedades 33: Sociedades 34: Sociedades (Cuando hay repetición de Nº de la sociedad, increíble pero real y no detectable) Para obtener el CUIT/CUIL, lo más seguro es consultar la página del ANSES. En el caso de CUIT, se puede descargar un archivo texto que luego se puede pasar a dbf y consultar la existencia del CUIT. En el caso de CUIL no sé si existe algún archivo a descargar con los CUILes generados. function VerifCuit parameters FCuit private Secuencia, I, ProDesc, DigVer if lastkey() # 27 Secuencia= '54-32765432' ProDesc= 0 for I= 1 to 11 if i # 3 ProDesc= ProDesc + (val (substr (FCuit,i,1)) * val (substr (Secuencia,i,1))) endif endfor DigVer= 11 - mod (ProDesc, 11) if DigVer= 10 wait window nowait 'El Prefijo debe cambiarse' return .F. endif if alltrim (str (DigVer))= right (FCuit, 1) return .T. else wait window nowait 'El dígito verificador no coincide' return .F. endif else return .T. endif Saludos Fabricio A. Bridera De: GUFA@mug.org.ar [mailto:GUFA@mug.org.ar] En nombre de Mario Andrés Ageno Enviado el: Viernes, 19 de Octubre de 2012 12:00 Para: GUFA List Member Asunto: [GUFA] Generara CUIT automatico Buenos Días Alguien tiene cual es la formula para generar los CUIT o CUIL de personas físicas o jurídicas, en base a su sexo y numero de documento. tengo que incorporar el cuit a una base de datos donde tengo estos datos, sexo, documento, personaría jurídica gracias -- Mario Andrés Ageno Analista de Sistemas de Computación Italia 2317 - 3040 San Justo (SF) mail: mario.ag...@sanjustosf.com.ar web: www.maasoft.com.ar msn: mario_ag...@hotmail.com
[GUFA] Generara CUIT automatico
y esta ?? No es propiedad mia, de algun lado la saqué (portalfox quizas...). Saludos. Carlos Morandin FUNCTION GenCuit(cDni,cSexo) LOCAL cCuit,cIniciales,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,nSumatoria,nResto,nVerificador,lStop FOR i=1 TO 3 IF cSexo='H' DO CASE CASE i=1 cIniciales=20 CASE i=2 cIniciales=23 CASE i=3 cIniciales=24 ENDCASE ELSE DO CASE CASE i=1 cIniciales=27 CASE i=2 cIniciales=23 CASE i=3 cIniciales=24 ENDCASE ENDIF FOR j=0 TO 9 * crea un cuit y va probando digitos verificadores cCuit=cIniciales+cDni+STR(j,1) * busca el digito verificador c1=SUBSTR(cCuit,1,1) c2=SUBSTR(cCuit,2,1) c3=SUBSTR(cCuit,3,1) c4=SUBSTR(cCuit,4,1) c5=SUBSTR(cCuit,5,1) c6=SUBSTR(cCuit,6,1) c7=SUBSTR(cCuit,7,1) c8=SUBSTR(cCuit,8,1) c9=SUBSTR(cCuit,9,1) c10=SUBSTR(cCuit,10,1) c11=SUBSTR(cCuit,11,1) nSumatoria=(5*VAL(c1)+4*VAL(c2)+3*VAL(c3)+2*VAL(c4)+7*VAL(c5)+; 6*VAL(c6)+5*VAL(c7)+4*VAL(c8)+3*VAL(c9)+2*VAL(c10)) nResto=MOD(nSumatoria,11) nVerificador=11-nResto IF nVerificador=VAL(c11) OR (nResto=0 AND VAL(c11)=0) lStop=.T. EXIT ENDIF NEXT IF lStop=.T. EXIT ENDIF NEXT RETURN(cCuit) - Original Message - From: Mario Andrés Ageno To: GUFA List Member Sent: Friday, October 19, 2012 4:55 PM Subject: [GUFA] Generara CUIT automatico Gracias Fabricio pero por lo que veo es un verificador de CUIT lo que estoy buscando es como generarlo, teniendo como dato el sexo y documento, algo ya encontre pero no contempla o tiene errores con los 23 saludos From: Fabricio Bridera (GUFA) Sent: Friday, October 19, 2012 4:39 PM To: GUFA List Member Subject: [GUFA] Generara CUIT automatico Hola Mario: Esta es una función para verificar si el CUIT/CUIL es válido. Pero ¡OJO con el cálculo automático! Normalmente el CUIT/CUIL responde a ciertas reglas, pero en algunos casos excepcionales cambian el prefijo sin que ese cambio responda a datos verificables Cuando el resultado del cálculo inicial da 10, el dígito verificador pasa a ser 9 y el prefijo de las Sociedades pasa a ser 33, el de los hombres a 23.En el caso de las mujeres el prefijo pasa a 23 y el digito verificador pasa a ser 4. Si el numero de documento estuviera duplicado (cosa que sucede) el prefijo cambia a 34 en Sociedades y a 24 en las personas físicas Los prefijos aceptados son 20: Masculino 27: Femenino 23: Masculino/Femenino 24: Masculino/Femenino (Cuando hay repetición de Nº de documento, increíble pero real y no detectable) 30: Sociedades 33: Sociedades 34: Sociedades (Cuando hay repetición de Nº de la sociedad, increíble pero real y no detectable) Para obtener el CUIT/CUIL, lo más seguro es consultar la página del ANSES. En el caso de CUIT, se puede descargar un archivo texto que luego se puede pasar a dbf y consultar la existencia del CUIT. En el caso de CUIL no sé si existe algún archivo a descargar con los CUILes generados. function VerifCuit parameters FCuit private Secuencia, I, ProDesc, DigVer if lastkey() # 27 Secuencia= '54-32765432' ProDesc= 0 for I= 1 to 11 if i # 3 ProDesc= ProDesc + (val (substr (FCuit,i,1)) * val (substr (Secuencia,i,1))) endif endfor DigVer= 11 - mod (ProDesc, 11) if DigVer= 10 wait window nowait 'El Prefijo debe cambiarse' return .F. endif if alltrim (str (DigVer))= right (FCuit, 1) return .T. else wait window nowait 'El dígito verificador no coincide' return .F. endif else return .T. endif Saludos Fabricio A. Bridera De: GUFA@mug.org.ar [mailto:GUFA@mug.org.ar] En nombre de Mario Andrés Ageno Enviado el: Viernes, 19 de Octubre de 2012 12:00 Para: GUFA List Member Asunto: [GUFA] Generara CUIT automatico Buenos Días Alguien tiene cual es la formula para generar los CUIT o CUIL de personas físicas o jurídicas, en base a su sexo y numero de documento. tengo que incorporar el cuit a una base de datos donde tengo estos datos, sexo, documento, personaría jurídica gracias -- Mario Andrés Ageno Analista de Sistemas de Computación Italia 2317 - 3040 San Justo (SF) mail: mario.ag...@sanjustosf.com.ar web: www.maasoft.com.ar msn: mario_ag...@hotmail.com