FoxPro/Visual FoxPro - Impresión DOS desde Visual Fox Pro 9.0

 
Vista:
Imágen de perfil de Guillermo Edgardo

Impresión DOS desde Visual Fox Pro 9.0

Publicado por Guillermo Edgardo (9 intervenciones) el 16/08/2014 19:30:40
Buenos días al foro... Estoy haciendo un upgrade de un sistema desarrollado hace años en FoxPro Lan (para D.O.S.) a Visual FoxPro 9 corriendo en Windows XP (con intención de correr en Windows 8 en un futuro cercano) y tengo problemas queriendo imprimir en una impresora matricial (Epson LX810).
El programa viejo leía un archivo mem mediante el cual se direccionaba la impresión a un determinado puerto local LPT (1 o 2 según correspondiera) y empleaba en los reportes e impresión de facturas caracteres condensados (usando la instrucción CHR(15)), expandidos (usando la instrucción CHR(18) + CHR(14)) y normales (usando la instrucción CHR(18)).
Los problemas que se me presentan en el sistema en Visual Fox son los siguientes:

a) Pese a leer el mismo archivo mem para direccionar la impresión no se produce el direccionamiento correctamente sino que se imprime SIEMPRE en la impresora que se haya configurado por defecto en Windows

b) No se reconocen las instrucciones para el cambio de tipo de letra (CHR) y aparecen en su lugar unos cuadritos en la impresión, siendo IMPRESCINDIBLE poder efectuar estos cambios de letra en la impresión de reportes y, especialmente, en las facturas de venta que emite el sistema.

Si alguien puede aportarme las soluciones a estos problemas se lo voy a agradecer.

Atte.

Guillermo Lombardi
[email protected]
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 309
Bronce
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Impresión DOS desde Visual Fox Pro 9.0

Publicado por santiago (551 intervenciones) el 16/08/2014 20:19:29
Hola, hasta donde entiendo, estas pasando el programa de foxpro 2.0 a vfp9.0, entonces, ¿porque conservas la manera antigua de imprimir?, has una nueva en vfp9.0, ahora, si estas conservando la manera antigua de imprimir, entonces debes instalar el DOSUSB, este programa capturará tu formato antiguo de impresión y lo validará y redirigirá a cualquier impresora, solo encontraras la versión demo (dura 15 días), así que para que te dure permanentemente instalas también el TIME STOPPER, y lo enlazas al DOSUSB.

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Guillermo Edgardo

Impresión DOS desde Visual Fox Pro 9.0

Publicado por Guillermo Edgardo (9 intervenciones) el 16/08/2014 20:23:40
Te comento que el problema por el cual no puedo modificar el método de impresión es que mi cliente está a 750 km de donde yo vivo y no tengo manera de hacerme de los formularios que emplea para poder tabularlos correctamente en la impresión "moderna". El programa que me sugieres, por lo que pude ver, emula la impresión DOS en impresoras "modernas" y lo que yo necesito es seguir usando la impresora matricial pero que Visual Fox "reconozca" y envíe a la impresora matricial los caracteres especiales (chr(14), chr(15) y chr(18)) como se hacía en la programación para DOS. De todas maneras, muchas gracias por la respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 309
Bronce
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Impresión DOS desde Visual Fox Pro 9.0

Publicado por santiago (551 intervenciones) el 18/08/2014 02:11:15
Hola, el DOSUSB te reconoce esos caracteres de impresión y te lo dirige al puerto lpt1 a la impresora matricial.
Si tu cliente no puede instalarlo, que trate de instalar el HAMACHI o algún programa similar, para que te de el control y tu le instalas los programas mencionados.

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Impresión DOS desde Visual Fox Pro 9.0

Publicado por Fidel José (558 intervenciones) el 18/08/2014 15:09:57
Te envío en adjunto tres métodos con los que trabajo con Epson FX810, LX 810, FX 870, FX 880 y FX 890.
El Procedure DefinirTxt lo puedes obviar, porque puede que ya tengas definidas las secuencias de escape de otra forma. Los otros dos (Zimpre y Pantalla) tendrás que ajustarlo a tu gusto.

Hay dos cosas que son importantes:
1) El uso de CpConvert para las variables de texto
2) La impresión de un caracter chr(32) cuando se cambia el formato del texto (como se ve en el extracto de código debajo)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ctelimp=""
		if xnImporte#0
			cTelImp="Importe: "+Transform(xnIMporte,"999,999,999.99")
		endif
 
		if !xlOmitEncab
			@ 3,90 say "C.U.I.T.: "+MiCuitEmp
		endif
		@ 3,1 say " "
		???ofcomp
		???indoce
		@ xnLin+4,1 say repli(Chr(205),93)
		@ xnLin+5,1 say Padr(Alltrim(xName_Doc)+" "+StrNum(xnumer_doc,.f.)+" - "+aCopias[xnCopia]+CXHOJA,70)+cTelImp
		@ xnLin+5,1 say Alltrim(xName_Doc)+" "+StrNum(xnumer_doc,.f.)+" - "+aCopias[xnCopia]+CXHOJA
		@ xnLin+6,1 say repli(chr(205),93)
		nlin=6+xnLin
		@ xnLin+6,1 say " "
		???ofdoce
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Impresión DOS desde Visual Fox Pro 9.0

Publicado por Ernesto Hernandez (4623 intervenciones) el 18/08/2014 18:41:47
utiliza SET PRINTER TO NAME \\ServerName\PrinterName para direccionar a tu impresora de matriz

y para asegurar que es la impresora correcta puedes utilizar

SET PRINTER ON PROMPT cuando realizes la impresion y te solicitara la impresora a imprimir


suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar