Normas para el QR-Code
- TOTOVIOTTI
- Posts: 334
- Joined: Fri Feb 05, 2010 11:30 am
- Location: San Francisco - Córdoba - Argentina
Normas para el QR-Code
Hola amigos... por lo que tengo entendido, hay diferentes normas para la creación de los códigos QR y son:
QR-4, QR-8, QR-16 y QR-32
Es posible seleccionar con FW el formato de creación de los cídigos QR según la norma requerida?
Muchas gracias!
Roberto
QR-4, QR-8, QR-16 y QR-32
Es posible seleccionar con FW el formato de creación de los cídigos QR según la norma requerida?
Muchas gracias!
Roberto
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
Hola
hasta donde sé hay 2 modelos normados
aca en Argentina ahora debemos incluir QR en las facturas a partir de este año, si estas con eso, ya lo hice, sólo dime si lo necesitas
>>>
Los códigos QR se clasifican en Modelo 1, Modelo 2 y Micro QR. Poseen distintas características y capacidades de datos. La “Versión” indica el tamaño (cantidad de módulos) de un código QR. Una versión más grande contiene datos más grandes. (El tamaño real del código también aumenta.)
La versión estándar tiene módulos de 21 x 21 (MicroQR tiene módulos de 11 x 11) y, a medida que aumenta la versión, se agregan 4 módulos (2 módulos para MicroQR) en cada lado.
>>>
hasta donde sé hay 2 modelos normados
aca en Argentina ahora debemos incluir QR en las facturas a partir de este año, si estas con eso, ya lo hice, sólo dime si lo necesitas
>>>
Los códigos QR se clasifican en Modelo 1, Modelo 2 y Micro QR. Poseen distintas características y capacidades de datos. La “Versión” indica el tamaño (cantidad de módulos) de un código QR. Una versión más grande contiene datos más grandes. (El tamaño real del código también aumenta.)
La versión estándar tiene módulos de 21 x 21 (MicroQR tiene módulos de 11 x 11) y, a medida que aumenta la versión, se agregan 4 módulos (2 módulos para MicroQR) en cada lado.
>>>
Re: Normas para el QR-Code
Me interesa postinelli!
podras compartirlo?
podras compartirlo?
- TOTOVIOTTI
- Posts: 334
- Joined: Fri Feb 05, 2010 11:30 am
- Location: San Francisco - Córdoba - Argentina
Re: Normas para el QR-Code
Si Postinelli...estoy con eso... me podrías ayudar con un ejemplo para poder hacer la adecuación?
Muchas gracias!
Roberto...
Muchas gracias!
Roberto...
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
//----------------------------------------------------------------------------//
function GeneraQR()
Local cOrigen, cJason, cDestino, ElTxt
cOrigen:="https://www.afip.gob.ar/fe/qr/?p="
cJason:='{"ver":1,"fecha":"2020-10-13","cuit":30000000007,"ptoVta":10,"tipoCmp":1,"nroCmp":94,"importe":12100,"moneda":"DOL","ctz":65,"tipoDocRec":80,"nroDocRec":20000000001,"tipoCodAut":"E","codAut":70417054367476}'
cJason=StrToBase64( cJason )
cOrigen=cOrigen+cJason
//MsgAlert(cOrigen)
ElTxt:= "QrJason.txt"
Nhandle:= fcreate(ElTxt)
If (nhandle > 0)
fwrite(Nhandle, cOrigen + CRLF)
fclose(nhandle)
EndIf
cDestino:="FastQR.jpg"
QRCode(cOrigen,cDestino)
MsgInfo("Qr Generado OK")
Return NIL
//----------------------------------------------------------------------------//
DLL32 STATIC FUNCTION QRCode(cStr As STRING, cFile As STRING) AS LONG PASCAL FROM "FastQRCode" LIB "QRCodelib.Dll"
RETURN NIL
/*
function GeneraQR()
Local cOrigen, cJason, cDestino, ElTxt
cOrigen:="https://www.afip.gob.ar/fe/qr/?p="
cJason:='{"ver":1,"fecha":"2020-10-13","cuit":30000000007,"ptoVta":10,"tipoCmp":1,"nroCmp":94,"importe":12100,"moneda":"DOL","ctz":65,"tipoDocRec":80,"nroDocRec":20000000001,"tipoCodAut":"E","codAut":70417054367476}'
cJason=StrToBase64( cJason )
cOrigen=cOrigen+cJason
//MsgAlert(cOrigen)
ElTxt:= "QrJason.txt"
Nhandle:= fcreate(ElTxt)
If (nhandle > 0)
fwrite(Nhandle, cOrigen + CRLF)
fclose(nhandle)
EndIf
cDestino:="FastQR.jpg"
QRCode(cOrigen,cDestino)
MsgInfo("Qr Generado OK")
Return NIL
//----------------------------------------------------------------------------//
DLL32 STATIC FUNCTION QRCode(cStr As STRING, cFile As STRING) AS LONG PASCAL FROM "FastQRCode" LIB "QRCodelib.Dll"
RETURN NIL
/*
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
Aqui les copio
la verdad que es bastante simple, en cuanto vi la resolucion de afip, busqué y poco y salió al toque
espero les sirva
cualquier cosa avisan
///por cierto, todos los qr de afip, incluidos los que pone la afip al emitir una factura via Comprobantes en Linea, los lleva a la pagina de aviso informativo de QR, se ve que aun lo tienen en prueba,
les aviso nomas por si ven que no vincula con datos de facturas emitidas
///si el importe no tiene decimales no se ponen ni el punto ni los ceros
///si tiene decimales se pone el punto y el primer decimal y solo se pone el segundo decimal si es distinto de cero
ej 123.50 123.5
123.00 123
123.56 123.56
-
la verdad que es bastante simple, en cuanto vi la resolucion de afip, busqué y poco y salió al toque
espero les sirva
cualquier cosa avisan
///por cierto, todos los qr de afip, incluidos los que pone la afip al emitir una factura via Comprobantes en Linea, los lleva a la pagina de aviso informativo de QR, se ve que aun lo tienen en prueba,
les aviso nomas por si ven que no vincula con datos de facturas emitidas
///si el importe no tiene decimales no se ponen ni el punto ni los ceros
///si tiene decimales se pone el punto y el primer decimal y solo se pone el segundo decimal si es distinto de cero
ej 123.50 123.5
123.00 123
123.56 123.56
-
Last edited by postinelli on Thu Jan 14, 2021 8:44 pm, edited 1 time in total.
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
Code: Select all
function PDFQR(cNfac,cNCae,PuntoVenta,xDIA,XDNI,XIMP,TipoFF)
Local cOrigen, cJason, cDestino, ElTxt
Local cCuitEmite:='20211002003'
Local cFechaEmit,cXIMP
xDIA=DToC(xDIA)
cFechaEmit:=subst(xDIA,7,4)+'-'+subst(xDIA,4,2)+'-'+subst(xDIA,1,2)
cXIMP=AllTrim(Str(XIMP))
cXIMP=subst(cXIMP,1,Len(cXIMP)-3)
cOrigen:="https://www.afip.gob.ar/fe/qr/?p="
cJason:='{"ver":1,"fecha":"'+cFechaEmit+'","cuit":'+ cCuitEmite +',"ptoVta":'+AllTrim(Str(PuntoVenta))+',"tipoCmp":'+AllTrim(Str(TipoFF))+',"nroCmp":'+AllTrim(cNfac)+',"importe":'+cXIMP+',"moneda":"PES","ctz":1,"tipoDocRec":96,"nroDocRec":'+AllTrim(Str(XDNI))+',"tipoCodAut":"E","codAut":'+cNCae+'}'
cJason=StrToBase64( cJason )
cOrigen=cOrigen+cJason
///genero el txt solo para verificar el json que sea correcto, luego se comenta la generacion del txt
ElTxt:= "QrJason.txt"
Nhandle:= fcreate(ElTxt)
If (nhandle > 0)
fwrite(Nhandle, cOrigen + CRLF)
fclose(nhandle)
EndIf
cDestino:="FactQR.jpg"
QRCode(cOrigen,cDestino)
MsgInfo("Qr Generado OK")
Return NIL
//----------------------------------------------------------------------------//
///en fivewin
//FastQRCode("https://github.com/VFPX/FoxBarcodeQR", "C:\Mis imagenes\FastQR.bmp")
DLL32 STATIC FUNCTION QRCode(cStr As STRING, cFile As STRING) AS LONG PASCAL FROM "FastQRCode" LIB "QRCodelib.Dll"
RETURN NIL
/*
Last edited by postinelli on Fri Jan 15, 2021 12:27 pm, edited 1 time in total.
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
tengo la QRCodelib.Dll
no se como compartirla x aqui, o me pasan su email y se las envio
o la descargan de https://github.com/VFPX/FoxBarcodeQR
no se como compartirla x aqui, o me pasan su email y se las envio
o la descargan de https://github.com/VFPX/FoxBarcodeQR
Re: Normas para el QR-Code
Execelente!!!
Muchisimas gracias, por el código y por la info!!
Muchisimas gracias, por el código y por la info!!
Re: Normas para el QR-Code
Buenos dias postinelli.
El QR me lo genera perfecto!
No logro imprimir bien el código QR
La opción que me funcionó fue poniendo NOTRANSPARENT
Pero me sale con un cuadrado negro
Como lograste imprimirla?
Desde ya muchas gracias
El QR me lo genera perfecto!
No logro imprimir bien el código QR
La opción que me funcionó fue poniendo NOTRANSPARENT
Code: Select all
@ 26.5,1 PRINT TO oPrn IMAGE "FactQR.jpg" SIZE 3, 3 CM NOTRANSPARENT
Como lograste imprimirla?
Desde ya muchas gracias
Re: Normas para el QR-Code
Ahí logré imprimirlo pasándolo a BMP.
Pero no me lo lee.
Sabes cual es el tamaño mínimo? Porque me parece que es una cuestión del tamaño...
Pero no me lo lee.
Sabes cual es el tamaño mínimo? Porque me parece que es una cuestión del tamaño...
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
te paso como lo hice yo, con Harbour32 + fwh1707
por cierto el codigo de barras ya no va, al menos en las facturas emitidas por comprobantes en linea no sale el codigo de barras
saludos
Pablo Ostinelli
por cierto el codigo de barras ya no va, al menos en las facturas emitidas por comprobantes en linea no sale el codigo de barras
Code: Select all
cQR:="FactQR.jpg"
///aca seteo la impresora XPS
SetPrintDefault(cPrinter)
PrinterInit()
SysRefresh()
PrnSetPage(9) ///a4
PrnPortrait() ///vertical
// PrnLandScape() ///horizontal
//TPreview():lListViewHide := .T.
PRINT oPrn NAME "Impresión de facturas" PREVIEW
//PRINT oPrn NAME "Facturas en PDF" FILE cFactPdf
IF Empty( oPrn:hDC )
MsgStop( OemToAnsi( "¡ No hay IMPRESORA para imprimir !" ))
SetPrintDefault(cPrinterA)
Return NIL
EndIF
nPixVert := oPrn:nVertRes()
nPixHorz := oPrn:nHorzRes()
IF nPixHorz < 3000
nAnch := 8913290
nAlto := 12255652
nAncho_1 := 4
nAncho_2 := 7
ELSE
nAnch := 8913494
nAlto := 12256000
nAncho_1 := 6
nAncho_2 := 11
EndIf
PAGE
@ 10, 0.5 PRINT TO oPrn IMAGE cQR SIZE 1,1 INCHES NOTRANSPARENT STRETCH
ENDPAGE
ENDPRINT
Pablo Ostinelli
-
- Posts: 128
- Joined: Tue Jul 15, 2008 7:12 pm
- Location: Argentina
Re: Normas para el QR-Code
Cesar acabo de ponerlo como vos, sólo cambiando la posicion y tamaño y funciona perfecto
lo lee tanto desde la pantalla con el preview como impreso en papel
lo lee tanto desde la pantalla con el preview como impreso en papel
Code: Select all
@ 24.10, 1 PRINT TO oPrn IMAGE cQR SIZE 2.5, 2.5 CM NOTRANSPARENT
- TOTOVIOTTI
- Posts: 334
- Joined: Fri Feb 05, 2010 11:30 am
- Location: San Francisco - Córdoba - Argentina
Re: Normas para el QR-Code
Gracias Postinelli!! Muchas gracias!!!
Re: Normas para el QR-Code
Gracias Pablo por las pruebas.
Si lo guardo como jpg, me sale el cuadro negro que mostré en la foto anterior
Si lo guardo como bmp, me sale bien, pero no lo lee.
Compilo con:
Compiler version: Harbour 3.2.0dev (r1601050904)
FiveWin Version: FWH 16.06
Habrá algun cambio o algo que me falta incluir??
Si lo guardo como jpg, me sale el cuadro negro que mostré en la foto anterior
Si lo guardo como bmp, me sale bien, pero no lo lee.
Compilo con:
Compiler version: Harbour 3.2.0dev (r1601050904)
FiveWin Version: FWH 16.06
Habrá algun cambio o algo que me falta incluir??