Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Fujitsu COBOL PowerCOBOL (ActiveX, v4 - v11)
PowerCOBOL (ActiveX, v4 - v11) Versiones del IDE basadas en ActiveX
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Duda] Enviar aviso "Sin conexion a internet" Gatomalo PowerCOBOL (ActiveX, v4 - v11) 11 26 de octubre de 2020 15:19
[Duda] Call "CFURCOV" System error occurred. code = 0x25 dmosca PowerCOBOL (ActiveX, v4 - v11) 19 6 de agosto de 2019 15:29
[Sintaxis] Error MOVE "Parent" de un nodo "Root" en TreeView dmosca PowerCOBOL (ActiveX, v4 - v11) 1 23 de agosto de 2017 08:47
[Sintaxis] Problema en el evento "Return" en TextBox (CmEdit) dmosca PowerCOBOL (ActiveX, v4 - v11) 8 3 de agosto de 2017 23:40
[Duda] Error "impresora en uso" al cambiar de Form dmosca PowerFORM 2 20 de abril de 2017 16:44

Respuesta

  #1
Antiguo 9 de agosto de 2017, 04:14
drvedia1981
Forero
Última Actividad 17.05.2022 22:45
Posts Posts: 66
Likes enviados Enviados: 3
Likes recibidos Recibidos: 9
Predeterminado Problema en enviar null x"00" a impresora termica
0 Inactivo Inactivo

Hola amigos de este nuevo foro no entre mucho del viejo (escobol) mi nick era drvedia, el tema es que estoy mandando una cadena de datos para imprimir un tique con el ocx mcscomm pero al llegar al caracter x"00" en visual basic chr(0) se detiene que puede ser ? ahy otra forma de mandar un null ?
Muchas Gracias

Codigo
Código COBOL:
  1.  01 ENVIO.
  2.     03 FILLER           PIC X VALUE X"1D".
  3.     03 FILLER           PIC X VALUE X"28".
  4.     03 FILLER           PIC X VALUE X"4C".
  5.     03 FILLER           PIC X VALUE X"06".
  6.     03 FILLER           PIC X VALUE B"00".
  7.     03 FILLER           PIC X VALUE X"30".
  8.     03 FILLER           PIC X VALUE X"45".
  9.     03 FILLER           PIC X VALUE X"20".
  10.     03 FILLER           PIC X VALUE X"20".
  11.     03 FILLER           PIC X VALUE X"01".
  12.     03 FILLER           PIC X VALUE X"01".
drvedia1981 is offline   Responder Con Cita
  #2
Antiguo 9 de agosto de 2017, 11:50
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

drvedia1981, por lo pronto has puesto B"00" y no X"00". En cuanto a tu problema, haz un REDEFINES :

Código COBOL:
  1.  01 ENVIO.
  2.     03 FILLER           PIC X VALUE X"1D".
  3.     03 FILLER           PIC X VALUE X"28".
  4.     03 FILLER           PIC X VALUE X"4C".
  5.     03 FILLER           PIC X VALUE X"06".
  6.     03 FILLER           PIC X VALUE B"00".
  7.     03 FILLER           PIC X VALUE X"30".
  8.     03 FILLER           PIC X VALUE X"45".
  9.     03 FILLER           PIC X VALUE X"20".
  10.     03 FILLER           PIC X VALUE X"20".
  11.     03 FILLER           PIC X VALUE X"01".
  12.     03 FILLER           PIC X VALUE X"01".
  13.  01  ENVIO-R REDEFINES ENVIO PIC X(11).

Y manda a la impresora el campo ENVIO-R a ver qué tal.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #3
Antiguo 9 de agosto de 2017, 14:42
drvedia1981
Forero
Última Actividad 17.05.2022 22:45
Posts Posts: 66
Likes enviados Enviados: 3
Likes recibidos Recibidos: 9

Hola kuk probé con redefines pero nada, copie mal el codigo porque estaba haciendo pruebas se envia x"00" no b"00"
Solo se recibe por puerto serie
Código:
1B 61 31 1D 28 4C 06
y se corta
Gracias Saludos
drvedia1981 is offline   Responder Con Cita
  #4
Antiguo 9 de agosto de 2017, 15:05
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

drvedia1981, ¿si omites el X"00" recibe el resto de valores? (aunque no sea código válido, pruébalo a ver)



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #5
Antiguo 10 de agosto de 2017, 02:19
drvedia1981
Forero
Última Actividad 17.05.2022 22:45
Posts Posts: 66
Likes enviados Enviados: 3
Likes recibidos Recibidos: 9

Hola Kuk probé sin el X"00" y no funciona, es algo que tiene que recibir la impresora, en visual basic 6 envió chr(0) y funciona perfecto creo que voy a llamar de cobol a un programita en vb que imprima y devuelva el control pero quería evitar eso.
Gracias Saludos

---------- Post añadido : 00:05 ---------- Post anterior : 23:07 ----------

Kuk con respecto a tu pregunta, si quito el x"00" sigue con los demas caracteres sin problema, no es solo que no lo envia sino que bloquela el envio de los demas caracteres lo prove con el mcscomm.ocx y el ocx de Serial Port ActiveX Control y hace lo mismo
Gracias Saludos

---------- Post añadido : 01:19 ---------- Post anterior : 00:05 ----------

La impresora es una epson tm-t20ii
drvedia1981 is offline   Responder Con Cita
  #6
Antiguo 10 de agosto de 2017, 08:59
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

drvedia1981, normalmente el X"00" significa Fin de cadena de caracteres. En este caso, no sé por qué razón, es justamente lo que está pasando, que tu cadena de caracteres se corta en el X"00" porque se piensa que no hay nada más detrás de ello.

¿Puedes publicar el código VB para ver cómo lo haces?



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #7
Antiguo 10 de agosto de 2017, 23:01
drvedia1981
Forero
Última Actividad 17.05.2022 22:45
Posts Posts: 66
Likes enviados Enviados: 3
Likes recibidos Recibidos: 9

Hola kUk este es el código emite un tique de turnos por una impresora térmica epson tm-t20ii, te comento que lo solucione con una ocx echa en vb6 que manejo de power si interesa la subo con fuente pero tendrían que adaptarla a cada necesidad.
Saludos

Código VB:
  1. SerialCom.Output = Chr(27) & "a" & Chr(49)
  2. SerialCom.Output = Chr(29) & Chr(40) & Chr(76) & Chr(6) & Chr(0) & Chr(48) & Chr(69) & Chr(32) & Chr(32) & Chr(1) & Chr(1)
  3. SerialCom.Output = Chr(29) & "!" & Chr(37)
  4. SerialCom.Output = "A-001" & Chr(10)
  5. SerialCom.Output = Chr(29) & "!" & Chr(0)
  6. SerialCom.Output = Chr(27) & "!" & Chr(17) & "Por favor espere el llamado en pantalla   20/07/2017 13:39" & Chr(10) & Chr(10) & Chr(27) & "!" & Chr(0)
  7. SerialCom.Output = Chr(29) & "h" & Chr(40)
  8. SerialCom.Output = Chr(29) & "w" & Chr(2)
  9. SerialCom.Output = Chr(29) & "H" & Chr(0)
  10. SerialCom.Output = Chr(29) & Chr(107) & Chr(4) & "A-125" & Chr(0)
  11. SerialCom.Output = Chr(27) & "a" & Chr(48)
drvedia1981 is offline   Responder Con Cita
  #8
Antiguo 11 de agosto de 2017, 08:59
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

drvedia1981, hace poco alguien tuvo un problema parecido... Sería interesante resolverlo.

Oye, y si intentas pasar el valor directamente en el INVOKE o CALL haciendo:

Código COBOL:
  1.      ... USING BY CONTENT X"1D284C0600304520200101"

¿Puedes intentarlo a ver qué pasa?



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #9
Antiguo 12 de agosto de 2017, 04:18
drvedia1981
Forero
Última Actividad 17.05.2022 22:45
Posts Posts: 66
Likes enviados Enviados: 3
Likes recibidos Recibidos: 9

Hola enviando la cadena completa como me decias ... USING BY CONTENT X"1D284C0600304520200101" es lo mismo llega hasta el 06 y se detiene el envio, como te comente lo pude resolver por otro lado pero es raro parece no se puede.
Saludos y gracias por la ayuda
drvedia1981 is offline   Responder Con Cita
  #10
Antiguo 18 de agosto de 2017, 09:15
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Citación del post de drvedia1981 Ver Mensaje
si interesa la subo con fuente pero tendrían que adaptarla a cada necesidad.
Sí súbelo todo por aquí, seguro que a alguien le servirá.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
Respuesta


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

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 14:40.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.