facturista.com - Foros de Factura Electrónica (Comprobante Fiscal Digital por Internet)

Venta de timbres y programas para Generar, Sellar y Timbrar Factura Electrónica (CFDI) en México
Fecha actual Jue Mar 28, 2024 3:26 am

Todos los horarios son UTC - 6 horas




Nuevo tema Responder al tema  [ 2 mensajes ] 
Autor Mensaje
NotaPublicado: Mié Nov 20, 2013 4:27 pm 
Desconectado

Registrado: Sab Mar 30, 2013 1:04 am
Mensajes: 47
Para generar el QrCode debe llamar a unos programas externos, aquí el ejemplo de código en Fox:

loShell = createobject("WScript.Shell")

lcrutacomprobante='cfdi:Comprobante'
lcrutaemisor='cfdi:Comprobante/cfdi:Emisor'
lcrutareceptor='cfdi:Comprobante/cfdi:Receptor'

lctotal=alltrim(cfdi_xml_atributo(h,lcrutacomprobante,'total'))
lctotal=padreal(lctotal,10,6)

lcqrcode="?re="+cfdi_xml_atributo(h,lcrutaemisor,'rfc')+"&rr="+cfdi_xml_atributo(h,lcrutareceptor,'rfc')+"&tt="+;
lctotal+"&id="+alltrim(cfdi_uuid(h))

loShell.Run('qrcode\qrcode.exe -o "'+lcxml+'.png" "'+lcqrcode+'"',0,.T.)
loShell.Run('qrcode\png2bmp.exe "'+lcxml+'.png"',0,.T.)

release loShell


Vea que también se llama a unas funciones de la dll: cfdi_xml_atributo y cfdi_uuid ,
h es el manejador al CFDI cargado,
lcxml es el nombre del archivo xml, al cual se le agrega el sufijo .png .


Se anexa también la especificación del SAT para el QRcode.

Solicite por correo el directorio con los programas que se deben llamar, la imagen resultante estará en png y bmp .


Adjuntos:
qrcode.png
qrcode.png [ 182.15 KiB | Visto 13091 veces ]
Arriba
 Perfil  
 
NotaPublicado: Sab Mar 08, 2014 1:12 pm 
Desconectado

Registrado: Sab Mar 30, 2013 1:04 am
Mensajes: 47
Para comprobar que el CBB se ha generado correctamente, puede usar zbarimg : http://sourceforge.net/apps/mediawiki/zbar/index.php?title=FAQ


Código:
* Funcion que ajusta un numero a los enteros y decimales indicados

function padreal(lcn,lni,lnd)
local lnpospunto, lc

        lnpospunto=at('.',lcn)
        if lnpospunto>0
                lc=padl(substr(lcn,1,lnpospunto),lni+1,'0')+padr(substr(lcn,lnpospunto+1,lnd),lnd,'0')
        else
                lc=padl(lcn,lni,'0')+padr('.',1+lnd,'0')
        endif

        return lc
endfunc


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 2 mensajes ] 

Todos los horarios son UTC - 6 horas


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 8 invitados


No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Buscar:
Saltar a:  
cron
Powered by phpBB® Forum Software © phpBB Group
Traducción al Español Mexicano por nextgen en colaboración con phpbb-es.com