Crea códigos QR en FileMaker Pro sin conexión a Internet

16 de mayo de 2014

Aunque la creación de códigos QR a través de FileMaker es de sobra conocida, FileMaker 13 hace que este proceso sea mucho más sencillo. En este artículo, Douglas Alder nos muestra cómo crear códigos QR con esta nueva versión sin necesidad de estar conectado a Internet, gracias al lenguaje JavaScript.

¿Por qué códigos QR? Porque pueden contener mucha más información que un código de barras tradicional. Además, gracias al escaneo de códigos de barras integrado de FileMaker Go 13, la velocidad y la precisión de reconocimiento son mejores que en estos últimos.

¿Cómo hacerlo?

Sólo necesitas FileMaker Pro 13, el visualizador web (web viewer) y la función Base64Decode. Con estas herramientas conseguiremos que el resultado sea una imagen Base64, en vez de una imagen incrustada en un documento HTML/Javascript.

Nos descargamos la demo:

Alder advierte de que es necesario usar la función:

GetLayoutObjectAttribute ("JavascriptQRCodeGenerator","fuente")

en vez de:

GetLayoutObjectAttribute ("JavascriptQRCodeGenerator", "contenido")

Pasos a dar:

  1. Copia los campos requeridos: código QR, datos, tamaño, “index_html”, “qr_code_js”.
  2. Copia en el web viewer el archivo llamado “JavascriptQRCodeGenerator”.
  3. Copia o crea la lista de los valores del tamaño.
  4. Configura la presentación.
  5. Pega el texto de los campos “index_html” y “qr_code_js” a tu solución.
  6. Copia el script llamado "Generar códigos QR".
  7. Copia el botón “Crear código QR”.
  8. Revisa el guión de errores (posiblemente las diferencias de nombre de campo produzcan algunos).

Demostración de un código QR

Hay tres campos importantes para el procesamiento:

  • Datos.
  • Tamaño del código QR.
  • Campo contenedor del código QR.

También hay que tener presente que existen dos campos globales para almacenar el contenido de Javascript y HTML que conducirán al web viewer:

  • index_html
  • qr_code_js
Codigo QR JavaScript Base64

Por último, el script "Generar código QR" realizará el cálculo para generar el contenido en el web viewer y dará el resultado en el campo contenedor del código QR. Alder nos recuerda que el botón “Generar UUID/script” sólo está para generar algunos datos de ejemplo, por lo que no es imprescindible para la demo.

El script o guión llama al web viewer para que muestre el código HTML calculado, substituyendo los datos de campo y el tamaño seleccionado. Gracias a Base64, este documento codifica la imagen QR y la sitúa en el campo contenedor.

Para crear las tuyas propias, aconseja visitar la biblioteca de código abierto de David Shim. Finalmente, Alder nos recomienda el truco de Paul Smith publicado en FileMaker Pro Tips Facebook Group, que muestra una forma distinta de realizar códigos QR a través de FileMaker Pro 12. En él, el código QR no está en ningún campo contenedor sino que aparece directamente en el web viewer. Puedes descargarte su demo aquí.

Fuente: HomeBase Software.

Back to top

Política de privacidad

El usuario que facilita sus datos personales a SETFILE consiente expresamente en la incorporación de los mismos al citado fichero y en el tratamiento de los mismos por parte de SETFILE para su utilización en actividades propias de sus fines previstos en el artículo 2º de sus Estatutos. En el formulario de recogida de datos estarán indicados aquellos que resultan obligatorios y los que no tienen ese carácter. La no cumplimentación de los datos marcados como "obligatorios" supone la no prestación del servicio o acceso para el que se solicitan los datos. En cualquier caso el tratamiento de los datos personales facilitados por el usuario se realizará con estricto cumplimiento de la normativa vigente y especialmente con la Ley Orgánica 15/1999 de Protección de Datos de Carácter Personal. En especial, SETFILE se compromete a mantener las condiciones de confidencialidad y seguridad de los datos personales confiados por los usuarios en los términos previstos en la legislación vigente. No obstante, SETFILE no se hace responsable del acceso, modificación, tratamiento, pérdida o uso ilícito que de los datos facilitados por los usuarios pueda efectuar un tercero. El usuario podrá ejercitar los derechos de acceso, rectificación, cancelación y oposición previstos en la normativa vigente dirigiéndose a SETFILE c/ Balmes, 430 Entlo. F - 08022 BARCELONA, donde podrá igualmente dejar sin efecto, sin carácter retroactivo los consentimientos antes expresados.