Índice del Foro Modelizacion Commit Soft Modelizacion Commit Soft
Podra Buscar casos tipicos de errores y soluciones
 
 F.A.Q.F.A.Q.   BuscarBuscar   Lista de MiembrosLista de Miembros   Grupos de UsuariosGrupos de Usuarios   RegístreseRegístrese 
 PerfilPerfil   Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   ConectarseConectarse 

Digito verificador de Factura electronica Argentina

 
Publicar Nuevo Tema   Responder al Tema    Índice del Foro Modelizacion Commit Soft -> Crystal Report & Reportes Web
Ver tema anterior :: Ver siguiente tema  
Autor Mensaje
Typhon Software
Site Admin


Registrado: 24 Jul 2006
Mensajes: 247
Ubicación: Bs As Argentina

MensajePublicado: Mie Jul 18, 2012 1:33 pm    Título del mensaje: Digito verificador de Factura electronica Argentina Responder citando

Hola aca les dejo una formula que se agrega a los reportes con el objeto de calcular el digito verificador del codigo de barras que se debe imprimir en las facturas electronicas....
Tenemos que saber que el codigo de barras impreso en las facturas electronicas contiene ....
cuit + tipodecomprobante + puntodeventa + elcae + vencimientodelcae + digitoverificador
A continuacion explicaremos como obtener ese digitoverificador, lo primero en saber es que necesitamos en nuestra query un campo que traiga el cuit + tipodecomprobante + puntodeventa + elcae + vencimientodelcae
Para el ejemplo suponemos que el cuit es 30710943601, que sera una factura A con lo cual el tipo de comprobante es 01 y el punto de venta es 0002 nuestro campo dentro de la query sera algo asi
Código:
concat('30710943601','010002',cae,date_format(vencecae,'%Y%m%d')) as cae

Luego dentro del reporte tenemos que hacer una formula, y usando Basis Sintax agregamos el siguiente codigo...
Código:
dim totalpares as number
dim totalimpares as number
dim x as double
dim digito as number

totalimpares = 0
for x = 1 to len({Presupuesto.cae}) step 2
    totalimpares = totalimpares +cdbl(mid({Presupuesto.cae},x,1))
next x
totalimpares = totalimpares * 3


totalpares = 0
for x = 2 to len({Presupuesto.cae}) step 2
    totalpares = totalpares +cdbl(mid({Presupuesto.cae},x,1))
next x

x = totalimpares + totalpares
digito = 0

do while int(x / 10) * 10 <> x
  x = x + 1
  digito = digito + 1
loop

formula = digito

ATENCION !!!
Vean que en parte de la formula utiliza la expresion Presupuesto.cae eso hace referencia a :
Presupuesto: es el nombre que le definimos al repositorio de Crystal, cuando aceptamos la query, nos pide un nombre, esto se refiere a ese nombre
cae: es un campo que debe existir en la query, tal cual lo deciamos antes.
Por ultimo cuando peguemos esta formula en el reporte tenemos que configurarle que no agregue decimales para que nos quede un digito solo...




Espero que les sirva .... Saludos
_________________
http://www.typhon.com.ar - Soporte y Ayuda para la implementacion de Commit Soft ERP. info@typhon.com.ar
Volver arriba
Ver perfil del usuario Enviar mensaje privado Enviar correo Visitar sitio web del autor
Mostrar mensajes anteriores:   
Publicar Nuevo Tema   Responder al Tema    Índice del Foro Modelizacion Commit Soft -> Crystal Report & Reportes Web Todas las horas están en GMT - 3 Horas
Página 1 de 1

 
Saltar a:  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas


Powered by PhpBB © 2001, 2005 phpBB Group y Typhon © Empresa Desarrolladora de Software