Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
  COBOL Foro > IDE-s y compiladores COBOL > Fujitsu COBOL
Fujitsu COBOL Sub-Foro dedicado a Compiladores e IDE-s de Fujitsu.
Comunicados
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Herramienta] Codigos de redundancia cliclica (CRC) BASA01 RM/COBOL 0 12 de abril de 2021 12:01
[Información] Ejecutar RM Cobol 85 en WEB mena RM/COBOL 4 18 de marzo de 2019 14:55
[Información] Tomar fotos con camara web desde RM/Cobol 7 dyscojh RM/COBOL 1 18 de marzo de 2019 14:35
[Componente] Mostrar codigos de barra en un form lfarias PowerCOBOL (ActiveX, v4 - v11) 1 14 de noviembre de 2016 11:34
[Petición] Rutina impresión sticker con codigos de barras Gatomalo Cocina PowerCOBOL 7 19 de agosto de 2016 16:44
Respuesta
 
Herramientas

  #1
Antiguo 12 de julio de 2021, 10:38
IDENTIFICATION DIVISION
lumalma
 Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de lumalma
DATA DIVISION
febrero 2015
Gipuzkoa
23.09.2021 17:19
PROCEDURE DIVISION
Posts: 16
Enviado: 10
Recibido: 3
Soluiones: 0
Reputación: 0
lumalma is on a distinguished road
Predeterminado Enlazar con servicios web y codigos QR

Buenos dias a todos
Las Haciendas forales vascas implantan un sistema de envio de las facturas mediante un archivo XML a traves de servicios web RESTful y ademas cada factura en papel o pdf, etc debe llevar un identificador que se debe generar y un codigo QR.
A pesar de haber mirado documentacion al respecto estoy bastante perdido. Todos estos temas no los he tratado nunca y no se por donde empezar ya que el desarrollo que he hecho habitualmente es adaptar las aplicaciones para funcionamiento en modo local o red.
No se como puedo enlazar desde una aplicacion powercobol con una aplicacion que genere codigos QR ni generar una API para enviar el fichero XML. Realmente estoy muy perdido con todos estos temas y, la verdad, un poco desesperado.

Espero haberme explicado bien.

Agradezco por adelantado toda ayuda.

Un saludo
lumalma no ha iniciado sesión   Responder Con Cita
  #2
Antiguo 12 de julio de 2021, 11:30
IDENTIFICATION DIVISION
Joseg
 Senior
Innovación: Por aportar innovaciones - Razón: Por aportar soluciones innovadoras en varias ocasiones 
ENVIRONMENT DIVISION
Avatar de Joseg
DATA DIVISION
abril 2015
27.10.2021 10:25
PROCEDURE DIVISION
Posts: 237
Enviado: 54
Recibido: 97
Soluiones: 13
Reputación: 16
Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about
Predeterminado

Cita del post de lumalma Ver Mensaje
Buenos dias a todos
Las Haciendas forales vascas implantan un sistema de envio de las facturas mediante un archivo XML a traves de servicios web RESTful y ademas cada factura en papel o pdf, etc debe llevar un identificador que se debe generar y un codigo QR.
A pesar de haber mirado documentacion al respecto estoy bastante perdido. Todos estos temas no los he tratado nunca y no se por donde empezar ya que el desarrollo que he hecho habitualmente es adaptar las aplicaciones para funcionamiento en modo local o red.
No se como puedo enlazar desde una aplicacion powercobol con una aplicacion que genere codigos QR ni generar una API para enviar el fichero XML. Realmente estoy muy perdido con todos estos temas y, la verdad, un poco desesperado.

Espero haberme explicado bien.

Agradezco por adelantado toda ayuda.

Un saludo
QRCode - eu uzo o zint (opensource), posteriormente anexo a imagem a um report (no meu caso Crystal Report)
Exemplo:
Código COBOL:
  1.         STRING "zint -o " DELIMiTED SIZE
  2.             qrfilename DELIMiTED "  "         ----------------------------------------->> o que fica no qrcode
  3.             " --vers=12 --secure=2 --scale=5 -b 58 -d " DELIMiTED SIZE
  4.             '"' DELIMiTED BY SIZE
  5.             WGSTRING DELIMiTED BY "  "
  6.             '"' DELIMiTED BY SIZE
  7.         INTO REGCOMMAND.
  8.         INVOKE POW-SELF "ExecuteSync" USING REGCOMMAND POW-SWHIDE RETURNING ReturnValue.    


Para JSON dá para fazer tudo com esta ferramenta:
jq

Também existem outras alternativas, ver exemplos neste forum.
Joseg no ha iniciado sesión   Responder Con Cita
Han dicho Gracias: 2
Kuk (12 de julio de 2021), lumalma (12 de julio de 2021)
  #3
Antiguo 12 de julio de 2021, 13:02
IDENTIFICATION DIVISION
Gusaiello
 Forero
Concurso: Segundo puesto: Ganador/a del Segundo puesto en un concurso - Razón: Generador de código QR encriptado  Activista del Foro: Activista del Foro - Razón: Por aportar ejecrcicios para los novatos 
ENVIRONMENT DIVISION
Avatar de Gusaiello
DATA DIVISION
febrero 2015
Quilmes, Buenos Aires
66 años
27.10.2021 11:38
PROCEDURE DIVISION
Posts: 149
Enviado: 57
Recibido: 100
Soluiones: 7
Reputación: 16
Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road
Predeterminado

Hola @lumalma, por si sirve de algo envié para el concurso un programita que genera un QR.

Esta el fuente con todos los accesorios que necesita (Zint para generar el QR y Magick para cambiarle el formato).

Zint genera la imagen pero con formato .png.

No se si tiene algún parámetro para cambiar ese formato, por use Magick para generar un .jpg.

Espero te sirva.
Gusaiello no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
lumalma (12 de julio de 2021)
  #4
Antiguo 12 de julio de 2021, 15:13
IDENTIFICATION DIVISION
lumalma
 Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de lumalma
DATA DIVISION
febrero 2015
Gipuzkoa
23.09.2021 17:19
PROCEDURE DIVISION
Posts: 16
Enviado: 10
Recibido: 3
Soluiones: 0
Reputación: 0
lumalma is on a distinguished road
Predeterminado

Hola

Muchas gracias Joseg y Gusaiello por vuestra rapida respuesta.

Me pondré con ello y ya comentaré mis progresos.

Un saludo
lumalma no ha iniciado sesión   Responder Con Cita
  #5
Antiguo 12 de julio de 2021, 15:30
IDENTIFICATION DIVISION
Fito
 Guardián del Foro
Guardián del Foro: Guardián del espíritu y clima del Foro - Razón: Por el Avatar  Activista del Foro: Activista del Foro - Razón: Por aportar ideas 
ENVIRONMENT DIVISION
Avatar de Fito
DATA DIVISION
febrero 2015
Córdoba, Villa María
50 años
27.10.2021 04:07
PROCEDURE DIVISION
Posts: 283
Enviado: 151
Recibido: 141
Soluiones: 14
Reputación: 20
Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road
Predeterminado

Buen día: En Argentina tenemos el servicio de Factura Electrónica que sería más o meno lo mismo.

Para todo el manejo del webservice, acá hay empresas que se dedican a la producción de Activex u Ejecutables en Batch para realizar este tipo de tarea. Tendrías que ver si en España hay productos de ese estilo, para no tener que ponerte a renegar vos con todos esos temas. Porque más allá de tener que realizar la aplicación, después hay que mantenerlas actualizadas por todo los cambios que el Fisco realiza. De esta manera es más sencillo para nosotros.

Y la parte del QR, todo dependerá qué herramienta utilices para hacer los reportes. En mi caso uso Cobview y ya la ultima versión genera QR.

Saludos...

Fito...
Fito no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
lumalma (12 de julio de 2021)
  #6
Antiguo 15 de julio de 2021, 18:27
IDENTIFICATION DIVISION
lumalma
 Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de lumalma
DATA DIVISION
febrero 2015
Gipuzkoa
23.09.2021 17:19
PROCEDURE DIVISION
Posts: 16
Enviado: 10
Recibido: 3
Soluiones: 0
Reputación: 0
lumalma is on a distinguished road
Predeterminado

Muchas gracias Fito

Un saludo

---------- Post añadido : 19:27 ---------- Post anterior : 19:16 ----------

Buenas tardes

Siguiendo los ejemplos de Joseg y Gusaiello he intentado crear un codigo QR con zint e insertarlo en un documento impreso.

Gusaiello, además lo he hecho en bmp ya que con un parámetro se puede crear un codigo QR en bmp.

El texto de ejemplo que estoy utilizando es: TICKETBAI

El problema es que al ejecutar el comando con executesync como comentaba Joseg me devuelve el error +000000005. Si pruebo con texto mas pequeño como "Esto es una prueba" me genera el QR en formato bmp.

Pero si pruebo a introducir el texto largo en el programa que Gusaiello presentó al concurso se genera perfectamente el QR y lo puedo imprimir y al leerlo obtengo la url que he indicado.

En el manual de zint en Zint: Home indican unos errores en el capítulo 5. Using the API pero no viene nada respecto al comentado mas arriba.

He hecho bastantes pruebas y no logro nada. Pongo el código que estoy utilizando:

Código COBOL:
  1.      01 WTEXTOQR PIC X(256) VALUE SPACES.
  2.      01 WARCHIVOQR PIC X(8192) VALUE SPACES.
  3.  
  4.      MOVE SPACES TO WARCHIVOQR WTEXTOQR
  5.      MOVE "CODQR.BMP;" TO WARCHIVOQR
  6.      MOVE "https://tbai.egoitza.gipuzkoa.eus/qr/?id=TBAI-44619360G-261020-EzyQEMtxw37Gm-161&s=TB-2020-F&nf=419&i=1542.75&cr=182;" TO WTEXTOQR
  7. *     MOVE "Esto es una prueba;" TO WTEXTOQR
  8.      STRING "zint.exe -o " DELIMITED BY SIZE
  9.         WARCHIVOQR DELIMITED BY ";"
  10.         " --vers=4 --secure=2 --scale=5 -b 58 --filetype=BMP -d " DELIMITED BY SIZE
  11.         '"' DELIMITED BY SIZE
  12.         WTEXTOQR DELIMITED BY ";"
  13.         '"' DELIMITED BY SIZE
  14.         INTO WLINEACOMANDO.
  15. *     INVOKE POW-SELF "ExecuteSync" USING WLINEACOMANDO POW-SWHIDE
  16. *                                   RETURNING WRETURNVALUE2
  17.      INVOKE POW-SELF "ExecuteSync" USING WLINEACOMANDO
  18.                                    RETURNING WRETURNVALUE2
  19.      display "WRETURNVALUE2: " WRETURNVALUE2
  20.  
  21.      MOVE "B" TO EDIT-MODE OF BM-CODQR OF IFactuVT
  22.      MOVE "CODQR.BMP" TO BM-CODQR OF IFactuVT

Muchas gracias

Un saludo
lumalma no ha iniciado sesión   Responder Con Cita
  #7
Antiguo 15 de julio de 2021, 19:48
IDENTIFICATION DIVISION
Fito
 Guardián del Foro
Guardián del Foro: Guardián del espíritu y clima del Foro - Razón: Por el Avatar  Activista del Foro: Activista del Foro - Razón: Por aportar ideas 
ENVIRONMENT DIVISION
Avatar de Fito
DATA DIVISION
febrero 2015
Córdoba, Villa María
50 años
27.10.2021 04:07
PROCEDURE DIVISION
Posts: 283
Enviado: 151
Recibido: 141
Soluiones: 14
Reputación: 20
Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road Fito is on a distinguished road
Predeterminado

Hola:

Estás usando en ZINT de Gustavo u otra versión? porque esa versión no tiene para trabajar con BMP.

Sacale --filetype=BMP y generalo en PNG

Saludos...

Fito...
Fito no ha iniciado sesión   Responder Con Cita
  #8
Antiguo 15 de julio de 2021, 20:45
IDENTIFICATION DIVISION
Gusaiello
 Forero
Concurso: Segundo puesto: Ganador/a del Segundo puesto en un concurso - Razón: Generador de código QR encriptado  Activista del Foro: Activista del Foro - Razón: Por aportar ejecrcicios para los novatos 
ENVIRONMENT DIVISION
Avatar de Gusaiello
DATA DIVISION
febrero 2015
Quilmes, Buenos Aires
66 años
27.10.2021 11:38
PROCEDURE DIVISION
Posts: 149
Enviado: 57
Recibido: 100
Soluiones: 7
Reputación: 16
Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road Gusaiello is on a distinguished road
Predeterminado

Cita del post de lumalma Ver Mensaje
Gusaiello, además lo he hecho en bmp ya que con un parámetro se puede crear un codigo QR en bmp.
Pues esta parte no se la encontré por ningun lado. Claro, asi te ahorras el paso de convertir el .png a otro formato.
En mi caso lo necesito en .bmp o .jpg que son los formatos gráficos que puedo leer con Acu.

---------- Post añadido : 16:45 ---------- Post anterior : 16:41 ----------

Cita del post de Fito Ver Mensaje
Estás usando en ZINT de Gustavo u otra versión? porque esa versión no tiene para trabajar con BMP
Ah, entonces no es que no lo encontré, es que no lo tiene.
Gracias @Fito, entonces no soy tan burro

Agrego : buscando por ahi encontré otro programa para generar QR : qrencode, se usa mas o menos como Zint, por un lado tiene menos limitaciones, pero por otro lado no corre bajo XP.

Y...si... tengo algunos clientes que aún usan XP.
Gusaiello no ha iniciado sesión   Responder Con Cita
  #9
Antiguo 15 de julio de 2021, 21:00
IDENTIFICATION DIVISION
fastpho
 Forero
Concurso: Primer puesto: Ganador/a del Primer puesto en un concurso - Razón: Acceso a datos Cobol vía web 
ENVIRONMENT DIVISION
Avatar de fastpho
DATA DIVISION
diciembre 2016
Mendoza
51 años
27.10.2021 12:53
PROCEDURE DIVISION
Posts: 175
Enviado: 119
Recibido: 109
Soluiones: 19
Reputación: 15
fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point fastpho is an unknown quantity at this point
Predeterminado

Buenas
Esta ocx que subio Rapinto
en este link [Componente] Imprimir código QR - COBOL Foro
Genera qr-code en formato .jpg .png .bmp sin problemas
Código COBOL:
  1.         move "TEXT" OF EncodeTxt to "TextToEncode" OF qrcode1.
  2.          
  3.           move "filepng.png" to "ImageFileName" OF qrcode1.
  4.           INVOKE qrcode1 "Refresh".
  5.           INVOKE qrcode1 "SavePicture".
  6.          
  7.          move "filebmp.bmp" to "ImageFileName" OF qrcode1.
  8.           INVOKE qrcode1 "Refresh".
  9.           INVOKE qrcode1 "SavePicture".
  10.          
  11.          
  12.          move "filejpg.jpg" to "ImageFileName" OF qrcode1.
  13.           INVOKE qrcode1 "Refresh".
  14.           INVOKE qrcode1 "SavePicture".
Saludos
fastpho no ha iniciado sesión   Responder Con Cita
  #10
Antiguo 16 de julio de 2021, 09:22
IDENTIFICATION DIVISION
Joseg
 Senior
Innovación: Por aportar innovaciones - Razón: Por aportar soluciones innovadoras en varias ocasiones 
ENVIRONMENT DIVISION
Avatar de Joseg
DATA DIVISION
abril 2015
27.10.2021 10:25
PROCEDURE DIVISION
Posts: 237
Enviado: 54
Recibido: 97
Soluiones: 13
Reputación: 16
Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about
Predeterminado

Cita del post de Gusaiello Ver Mensaje
Pues esta parte no se la encontré por ningun lado. Claro, asi te ahorras el paso de convertir el .png a otro formato.
En mi caso lo necesito en .bmp o .jpg que son los formatos gráficos que puedo leer con Acu.

---------- Post añadido : 16:45 ---------- Post anterior : 16:41 ----------



Ah, entonces no es que no lo encontré, es que no lo tiene.
Gracias @Fito, entonces no soy tan burro

Agrego : buscando por ahi encontré otro programa para generar QR : qrencode, se usa mas o menos como Zint, por un lado tiene menos limitaciones, pero por otro lado no corre bajo XP.

Y...si... tengo algunos clientes que aún usan XP.
Também uso isto para o efeito:
Mais detalhes: ImageMagick - Convert, Edit, or Compose Digital Images


Código COBOL:
  1.  ENVIRONMENT     DIVISION.
  2.  DATA            DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01  REGCOMMAND             PIC X(4096).
  5.  01  WSTEXTOENC             PIC X(4096).
  6.  01  ReturnValue            pic s9(5) comp-5.
  7.  PROCEDURE       DIVISION.
  8.     MOVE qrfilename TO qrfileconv.
  9.     inspect qrfileconv replacing ALL ".png" BY ".bmp".
  10.     INITIALIZE REGCOMMAND.
  11.     STRING "magick convert " DELIMiTED SIZE
  12.            qrfilename DELIMiTED "  "
  13.            " "  DELIMiTED BY SIZE
  14.            qrfileconv DELIMiTED "  "
  15.            INTO REGCOMMAND.
  16.     INVOKE POW-SELF "ExecuteSync" USING REGCOMMAND POW-SWHIDE RETURNING ReturnValue.
  17.     display "Convert ReturnValue " ReturnValue.
  18.      
Joseg no ha iniciado sesión   Responder Con Cita
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 13:59.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2021, Jelsoft Enterprises Ltd.