Como ya todos sabemos dicho código fue definido por la autoridad (SAT) como un requerimiento en la representación impresa del CFDI, el cual debe contener los siguientes datos:
- RFC del emisor
- RFC del receptor
- Total (a 6 decimales fijos)
- Identificador único del timbre (UUID) asignado
Dicho código es generado debe ser generado bajo el estándar QR Code, para mayor información pueden dar clic aquí.
BarCodeLibrary.dll es una DLL de Win32 que he desarrollado para poder generar el código de barras bidimensional (CBB) desde cualquier lenguaje de programación (Visual Basic, Visual FoxPro, Clarion, PowerBuilder, etc) y la cual expone 3 métodos para tal fin:
LibraryVersion
- En realidad es una función que regresa una cadena de texto
- No recibe ningún parámetro
- Es usada para obtener la versión de la biblioteca
SetConfiguration
- Es un método que permite configurar el tamaño y el tipo de archivo a generar.
- Recibe dos parámetros, el primero se llama size y el según imageformat, los dos son de tipo entero.
- Size es usado para determinar el tamaño del QR Code a generar, su valor recomendado es 4 y sus posibles valores son entre 4 y 6
- Imageformat indica el tipo de imagen (archivo) a generar y sus posibles valores son: 0 para BMP, 1 para JPG y 2 para PNG.
- Por default estos valores son 4 para size y 0 para Imageformat,
GenerateFile
- Es el método más importante de la biblioteca, ya que es el encargado de genera el código de barras bidimensional o CBB como le decimos algunos.
- Recibe dos parámetros: text que es el texto que va a contener el código y fileName que es el nombre y ruta del archivo que se va a generar, este nombre debe contener la extensión de acuerdo a lo definido en el método SetConfiguration.
- Para su uso NO es necesario llamar previamente al método SetConfiguration
Como podemos ver es muy fácil usar dicha biblioteca, solo debemos importarla a nuestro lenguaje de programación favorito e invocar el método GenerateFile.
Para finalizar pueden descarga el anexo 20 dando clic aquí y revisar la página 110 que es donde se da toda la especificación para el manejo de código de barras bidimenacional.
Hasta la próxima.
Hola darioaa, oye tengo una inquietud, quisiera saber si tienes disponible esta biblioteca o en que lugar podria encontrarla… Saludos
Hola Monserrat…
En la pagina principal del sitio Electronic Document puedes encontrar la dos versiones.
Saludos
Muchisimas gracias Darioaa, me son de gran utilidad, una ultima pregunta tengo que solicitarte la licencia de este desarrollo?
Hola Darioaa, yo uso vb6 y solo necesito generar el CBB, pero al agregar la dll en el proyecto me pone el siguiente error: “No se puede agregar una referencia al archivo especificado”.. me podrías orienta a que se debe este error por favor, y muchas gracias por tu aportación a la comunidad de programadores con tu libreria, ya sabes “El mundo es mejor si compartimos”, gracias de nuevo y un saludo!!..
Hola Manuel.
Desgraciadamente no te puedo ayudar en el tema, ya que no conozco Visual Basic, siempre he trabajado con Delphi y con C#.
Lo que si te puedo decir es que existen usuarios usando la biblioteca desde Visual Basic y desde otros lenguajes de programación, yo por ejemplo la uso desde C#.
Espero que alguien que ya lo tenga implementado de puedo ayudar.
Hola Dario
Acabo de descargar la dll, pero al generar el archivo lo graba en la ruta indicada pero con el nombre ‘ér¢©ÿéPüÿÿ^[‹å]Ã’ o sea no respeta el nombre que quiero ‘C:\Sistemas\Facturacion\CBB.bmp’ a que se deberá.
Saludos
Roger
La libreria para el codigo de barras funciona en windows server 2008 de 64 bits
la libreria de codigo de barras funciona en windows server 2008 de 64 bits
Hola,
La librería fue compilada para 32 Bits, sería cuestión de que investigaras si te puede presentar algún problema; yo hice una aplicación que se ejecuta en la versión de Windows que comentas y no tuve problemas, lo único es que la aplicación, que está en .Net, la compile para 32 Bits.
Saludos
yo utlizo Visual Studio 2008 y no funciono, la primera ocasion marco error, y despues ya no marca el error, pero no graba el archivo
Hola,
Actualmente uso la librería desde C# Visual Studio 2010, si gustas de puedo pasar el código que uso para importarla, por favor deja tu correo y te lo hago llegar.
Saludos
Estoy usando VB 2008 y no funciona, intente tambien con vb6 y nada simplemente la libreria no puede ser agrega al proyecto, tienes ejemplos aunque se en c#
Hola,
Ya te envíe a tu correo como se importa la DLL para el caso de C#; si llegas a hacer en Visual Basic.Net (VB.Net) te agradecería que lo compartieras con la comunidad.
Saludos
Tengo Windows XP y VB 6.0, y al tratar de registrar la dll manda el error: se descargo c:\….\barcodelibrary.dll, pero no sencontro punto de entrada DllRegisterServer. No se puede registrar este archivo.
¿que recomiendas hacer?
Saludos
Hola Jaime,
No es necesario registrar la libreria para poderla usar, solo debes de importarla a tu lenguaje.
Saludos
Hola, buen día, soy novato en esto me pueden ayudar a darme una parte de código en C# usando visual studio 2008 de cómo utilizar la librería, no puedo iniciarla, cómo la instancio ???. Gracias.
Hola Carlos
La biblioteca trae consigo una seria de ejemplos en donde se muestra el funcionamiento de la misma, son más 20 ejemplos en donde se ilustra cómo usar cada aspecto.
El código en cada ejemplo viene acompañado con una serie de comentarios, los cuales te pido revises detenidamente ya que te va a ser de gran ayuda.
No me queda más que invitarte a probarla y si tienes alguna duda puedes escribir al foro donde con gusto te estaré apoyando.
Saludos
Hola, he hecho pruebas con esta librería y me ha funcionado correctamente sólo que hoy que segúia probando me dice que la librería no está actualizada y que no hay soporte. Me manda a la liga de http://www.electronicdocument.com.mx.
Puedes orientarme acerca de este error?
Saludos.
Hola, he estado probando la librería sin ningún problema pero estama semana que hicimos otras pruebas me empezó a mandar un mensaje de que no estaba actualizada.
Es esto normal?
Saludos y quedo en espera de sus comentarios.
Cristian Robles
Hola Cristian
Es correcto, seguramente tenías una versión desactualizada, solamente debes de actualizarla y listo.
Saludos
Hola
Para quienes tienen duda de como importar la libreria Barcodelibrary.dll usando vb.net (cualquier version):
Imports System.Runtime.InteropServices
Public Class BarCode
Public Shared Sub GenerateFile(ByVal text As String, ByVal fileName As String)
End Sub
Public Shared Sub SetConfiguration(ByVal size As Integer, ByVal imageformat As Integer)
End Sub
End Class
Perdon, el codigo correcto para quienes tienen duda de como importar la libreria Barcodelibrary.dll usando vb.net (cualquier version):
Imports System.Runtime.InteropServices
Public Class BarCode
DllImport(“BarCodeLibrary.dll”) Public Shared Sub GenerateFile(ByVal text As String, ByVal fileName As String)
End Sub
DllImport(“BarCodeLibrary.dll”) Public Shared Sub SetConfiguration(ByVal size As Integer, ByVal imageformat As Integer)
End Sub
End Class
Aclaro que DllImport(“BarcodeLibrary.dll”) debe ir entre los simbolos de Mayor que y Menor que, los cuales por algun razon no los puedo poner aqui.
Gracias por tu aportación Juan,
Una pregunta.
Estoy probando la dll pero me genera un codigo qr con el texto que le paso cortado por la mitad tiene 400 caracteres. ¿Tiene la dll alguna limitación del tamaño del texto?
gracias.
saludos.
Hola David,
No existe ningún límite, aunque nos surge la duda, porque tienes más de 400 caracteres.
Saludos
Estimado Darío:
Estoy realizando pruebas y me genera correctamente el CBB pero al escanearlo me duplica el valor de total en el campo de uuid.
Por tu apoyo gracias
Saludos
Te invitamos a usar nuestro foro que es lugar que hemos creado para apoyar a todos los usuarios.
Saludos
Me podrian decir el codigo para vfp 9, y como leer desdpues este codigo
Hola,
Te invito a ver que visites esta página, en ella encontraras como hacen uso de la misma desde Visual Fox Pro
Ejemplo de BarCodeLibrary en Visual Fox Pro
Dario buen dia, excelente incio de año, me podrias ayudar con el codigo de barras, tengo esta parte del codigo en delphi2010,
archivo := ExtractFilePath(Application.ExeName) + ‘\cbb.bmp’;
GenerateFile(Pchar(edit1.Text),Pchar(archivo));
image1.Picture.LoadFromFile(archivo);
el problema es que la imagen nunca cambia siempre es la misma, sabes porque es ya instale el documt library
Hola que tal. Recien descubri este blog y me interesa mucho darle una checada a la libreria que mencionas. Me podrias indicar como la puedo obtener?
Saludos.
Estoy usando la version 2011.7.4.0 en un proyecto de c# y me da error al invocar el metodo generate file. La dll esta en el directorio bin. Podrias oriientarme si es la version o estoy haciendo algo incorrecto. Muchas gracias.
public class BarCode
{
[DllImport(“BarCodeLibrary.dll”)]
public static extern void GenerateFile(string text,string fileName);
[DllImport(“BarCodeLibrary.dll”)]
public static extern void SetConfiguration(int size, int imageformat);
}
Leondardo,
Ya no ofrecemos soporte a dicha versión; por favor ponte en contacto con nosotros y con gusto te apoyamos para que te actualices a la última versión.
Saludos
Pingback: Librería para descargar XML del SAT C#, VB.Net | Facturando
Pingback: Librería en Delphi para descargar XML del SAT | Facturando