Joxean, lo que te pasa es que debes enviarle los caracteres en hexadecimal, por ejemplo la letra "f" es en decimal el codigo 102 de la tabla ASCII, pero en hexadecimal es el 66. Ahí es donde tienes el problema.
Por tanto, la serie Escape &f1y4X es en hexadecimal 1B2631793458 y como son 7 bytes lo que debes enviar a imprimir es 03071B2631793458
Te adjunto la tabla ASCII para poder efectuar la conversión más facilmente.
 
Un saludo,
Marcel.

                     ASCII Table

Non-Printing Characters   Printing Characters
   
Name Ctrl
char
 Dec  Hex  Char Dec  Hex  Char   Dec  Hex  Char   Dec  Hex  Char
null ctrl-@ 0 00 NUL 32 20 Space    64 40   96 60
start of heading ctrl-A 1 01 SOH 33 21   65 41   97 61
start of text ctrl-B 2 02 STX 34 22   66 42   98 62
end of text ctrl-C 3 03 ETX 35 23   67 43   99 63
end of xmit ctrl-D 4 04 EOT 36 24   68 44   100 64
enquiry ctrl-E 5 05 ENQ 37 25   69 45   101 65
acknowledge ctrl-F 6 06 ACK 38 26   70 46   102 66
bell ctrl-G 7 07 BEL   39 27   71 47   103 67
   
backspace ctrl-H 8 08 BS 40 28   72 48   104 68
horizontal tab ctrl-I 9 09 HT 41 29   73 49   105 69
line feed ctrl-J 10 0A LF 42 2A   74 4A   106 6A
vertical tab ctrl-K 11 0B VT 43 2B   75 4B   107 6B
form feed ctrl-L 12 0C FF 44 2C   76 4C   108 6C
carriage feed ctrl-M 13 0D CR 45 2D   77 4D   109 6D
shift out ctrl-N 14 0E SO 46 2E   78 4E   110 6E
shift in ctrl-O 15 0F SI 47 2F   79 4F   111 6F
   
data line escape ctrl-P 16 10 DLE 48 30   80 50   112 70
device control 1 ctrl-Q 17 11 DC1 49 31   81 51   113 71
device control 2 ctrl-R 18 12 DC2 50 32   82 52   114 72
device control 3 ctrl-S 19 13 DC3 51 33   83 53   115 73
device control 4 ctrl-T 20 14 DC4 52 34   84 54   116 74
neg acknowledge ctrl-U 21 15 NAK 53 35   85 55   117 75
synchronous idel ctrl-V 22 16 SYN 54 36   86 56   118 76
end of xmit block  ctrl-W 23 17 ETB 55 37   87 57   119 77
   
cancel ctrl-X 24 18 CAN 56 38   88 58   120 78
end of medium ctrl-Y 25 19 EM 57 39   89 59   121 79
substitute ctrl-Z 26 1A SUB 58 3A   90 5A   122 7A
escape ctrl-[ 27 1B ESC 59 3B   91 5B   123 7B
file separator ctrl-\ 28 1C FS 60 3C   92 5C   124 7C
group separator ctrl-] 29 1D GS 61 3D   93 5D   125 7D
record separator ctrl-^ 30 1E RS 62 3E   94 5E   126 7E
unit separator ctrl-_ 31 1F US 63 3F   95 5F   127 7F DEL 


 

-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] En nombre de Joxean Muguruza
Enviado el: miércoles, 13 de julio de 2005 11:17
Para: [email protected]
Asunto: RE: Envío de caracteres de Control (Escape) desde Iseries.

Buenos días Marcel,

He intentado hacer lo que me dices....Parámetro RPLUNPRT *NO en archivo de impresora y secuencias de escape en hexadecimal ASCII, y la impresora no lo entiende como una secuencia escape sino como una constante, por lo que no obedece.

Lo que yo le quiero enviar y que me entienda es Escape&f1y4X que según lo que me comentas sería '03071B40102311213458' en donde 03-por definición, 07-nº de byte, 1B-Hex.(Escape), 40-Hex.(&), 102-Hex.(f), 32-Hex.(1), 121-Hex.(y), 34-Hex.(4), 58-Hex.(X).

donde podría estar el error....

gracias anticipadas,

Joxean Muguruza



-----Mensaje original-----
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]En nombre de Marcel Cortilla (Tejidos Cornejo S.A.) Enviado el: martes, 12 de julio de 2005 17:28
Para: [email protected]
Asunto: RE: Envío de caracteres de Control (Escape) desde Iseries.


Hola Joxean:

Para enviar caracteres de control (escape) tienes primero que cambiar el parámetro RPLUNPRT a *NO en el archivo de impresora, con lo cual no sustituirá con blancos los caracteres no imprimibles.
Luego deberás enviar la secuencia hexadecimal (en ASCII) mediante el formato 03nncccccc, donde nn es la longitud en bytes de la secuencia cccccc (cada par de cc es un byte).

Así, si queremos enviar la secuencia ASCII 1B4D013A (4 bytes, que son Escape 4D 01 3A), lo haremos enviando la cadena hexadecimal '03041B4D013A'

También tienes más información y ejemplos en  la base de datos de IBM:
http://www-912.ibm.com/s_dir/slkbase.nsf/1ac66549a21402188625680b0002037e/37
88b4d775308174862565c2007d473e?OpenDocument

Un saludo,
Marcel.


________________________________

De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
En nombre de Joxean Muguruza
Enviado el: lunes, 11 de julio de 2005 13:00
Para: [email protected]
Asunto: Envío de caracteres de Control (Escape) desde Iseries.



Buenos días foro,



No se si alguien abra hecho el envío de caracteres de control (Escape) a una impresora que está conectada al servidor Iseries mediante tarjeta de red (IP).



Lo que quiero es utilizar los códigos de control para decirle a la impresora que cuando imprima un documento, enviado desde el iseries, coja el preformato asociado(nro. 1..n)  que residen en la memoria flash



Gracias anticipadas,



Joxean Muguruza.














__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________

Para darte de baja visita la siguente URL:
http://coyote.combios.es/mailman/listinfo/forum.help400

__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________

Para darte de baja visita la siguente URL:
http://coyote.combios.es/mailman/listinfo/forum.help400

Responder a