Falla del NOEJECT y el NOPAGEEJECT

280 views
Skip to first unread message

Edgar Acevedo

unread,
Mar 18, 2021, 5:10:27 PM3/18/21
to Comunidad de Visual Foxpro en Español
Saludos respetables colegas:

Agradecería mucho su orientación respecto de este problema:
  • Debo usar una impresora matricial EPSON LX-300 II+ conectada por USB (NO está conectada por paralelo LPT1)
  • Tengo una forma continua de envío, que es del tamaño de 1/3 de una hoja tamaño carta (o sea, que en una hoja carta, caben 3 formas continuas de estas).
  • Estas formas continuas deben imprimirse en Dot Matrix dado que es un original y 2 copias (papel sensibilizado).
  • Con REPORT FORM diseñé la forma y todo queda en su lugar.
  • El problema es que al terminar de imprimir la última línea de la forma , no se queda el papel luego de la última línea de impresión de la forma.  Se salta TODA LA HOJA tamaño carta y por lo tanto se brinca 2 formas continuas en blanco.
  • No se queda al principio de la siguiente forma, lista para imprimir el siguiente envío.
  • Utilizo NOEJECT y NOPAGEEJECT para que no haga ese salto, pero igual, lo ignora y de todos modos salta 2 formas.
  • He probado en el botón "Page Setup" del creador de reportes, cambiar el tamaño del papel a otros "disponibles" en el listado que me muestra y de todos modos, salta como si fuera hoja carta (y no la 3era. parte de una como realmente es la forma continua).
  • Hay una opción en el "Page Setup" para ajustar el tamaño y dice "Elegido por el Usuario", pero resulta absurda siendo que no me deja ingresar las medidas de la forma continua.
¿Alguna sugerencia para que al terminar de imprimir una forma (del tamaño de 1/3 de hoja carta "se quede allí" el papel para poder imprimir la siguiente forma?
¿Será que el REPORT FORM no sirve para esta labor?
Y si el REPORT FORM funciona para imprimir formas continuas de cualquier tamaño, ¿Qué estaré haciendo mal?

De antemano, agradezco mucho su tiempo ocupado en leer mi problema y también agradezco sus sugerencias al respecto.

Saludos,


Edgar

rjdc...@gmail.com

unread,
Mar 18, 2021, 5:25:10 PM3/18/21
to Comunidad de Visual Foxpro en Español
Dos maneras. una pagina personalizada para este reporte
y la otra a puro codigo, en lo personal los reportes en lx300 lo hago a codigo. asi controlo todo lo que deseo

Ricardo Mata

unread,
Mar 18, 2021, 5:31:46 PM3/18/21
to publice...@googlegroups.com
Si tú reporte no necesita gráficos lo aconsejable es usar códigos de control para la impresora y establecer el tamaño de página , y enviar todo como texto a la impresora

Pero si debes imprimir una imagen, configura en Windows un tamaño de papel de esas dimensiones y utilízalo luego en el page setup

Saludos
Ricardo Mata

Venezuela

--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/e4e54fcf-a5de-4db6-9291-981fcf6f992an%40googlegroups.com.

Edgar Acevedo

unread,
Mar 18, 2021, 5:56:18 PM3/18/21
to Comunidad de Visual Foxpro en Español
Mil gracias por leerme Ricardo.

No imprimo gráficos, puro texto y justamente, también por ello pensé en algo así como esto:

PRINTJOB 
   SET PRINTER ON
   _PADVANCE = "LINEFEED"       && (lo puse así para que no haga un FORMFEED y evitar EJECT)                     
   _PEJECT = "NONE"             && (igual, no quiero que ejecute EJECT)                                           
   _PLENGTH = 22                && (Si una hoja tamaño carta tiene 66 líneas, un tercio debería tener 22 ¿no?)   
   ?
   ? "Prueba de línea 1"
   ? "Prueba de línea 2"
   ? "Prueba de línea 3"
   ?
   SET PRINTER OFF
ENDPRINTJOB

- Primero probé sin usar el _PADVANCE, _PEJECT y el _PEJECT y no funcionó.
- Agregué el _PADVANCE, _PEJECT y el _PEJECT para ver esto lo arreglaba pero tampoco funcionó.
- Lo metí todo en un PRINTJOB... ENDPRINTJOB y tampoco funcionó.
- Algo muy curioso: solo manda a imprimir cuando me salgo de la IDE de Visual Fox 9.

De todos modos, expulsa (o ejecuta) un EJECT si o si, y se me salta 2 formas continuas (como si saltara "tamaño Carta".
En la printer EPSON LX-300II+ no importa que tipo de papel elija (aún los tamaños más descabellados), siempre salta una hoja tamaño carta.

De nuevo, muy agradecido por tu sugerencia Ricardo.

Saludos,   

Edgar

Ricardo Mata

unread,
Mar 18, 2021, 6:02:59 PM3/18/21
to publice...@googlegroups.com
Para configurar un tamaño de página en las impresoras Epson debes enviar una secuencia de caracteres especial, en este momento no tengo a la mano un manual, pero busca las secuencias "Escape" de las impresoras Epson, le debes enviar una secuencia que le dice a la impresora que el papel es de 22 líneas ( por defecto son 6 líneas por pulgada y hay secuencia para cambiarlo), así cuando se da un salto de página será páginas de 22 líneas

Trabajar esas impresoras con código es un poco tedioso, pero cuando ya les conoces las secuencias que hacen cada cosa te acostumbras.

Saludos

Víctor Hugo Espínola Domínguez

unread,
Mar 18, 2021, 6:32:50 PM3/18/21
to publice...@googlegroups.com
Creo que la mejor opción es diseñar el  report en una sola hoja con el original y la(s) copia(s), no pude investigar mucho pero tuve problemas con tmu220/USB, configuraba la hoja personalizada y VFP no la veía y tampoco mostraba las fuentes propias de esa impresora, creo que el driver no era reconocido por VFP. 

Te paso los enlaces de 3 ejemplos, 2 de ellos son para original y duplicado  fácilmente modificable para triplicado, el tercero es para original y triplicado y es un bello ejemplo de la aplicación de la regla KISS y la navaja de Ockham, su autor es Carlos González de Paraguay.


Saludos,
Víctor.
Lambaré - Paraguay.



Carlos Alfaro

unread,
Mar 18, 2021, 6:55:31 PM3/18/21
to publice...@googlegroups.com

Les cuento como logre resolver que el tamaño media carta se respete.

 

Mi programa está hecho en VFP 7.

 

El documento lo defino con el generador de reportes.

 

Si yo creo el formato en Windows y lo selecciono al crear y compilar el ejecutable, si respeta el tamaño al correrlo en mi computadora, pero cuando lo uso en otra computadora aunque defina el mismo documento saca toda la hoja tamaño carta.

 

Entonces probé y me funciono lo siguiente, solo que haciéndolo en la computadora del cliente:

 

1.       Tener definido el tamaño en Windows

2.       Abrir el proyecto

3.       Abrir el reporte con el diseñador

a.       Seleccionar la impresora y el tamaño

b.      Grabar el reporte

4.       Crear el ejecutable.

 

Espero que esto les sirva.

 

Buen dia.

 

 

Carlos Alfaro

Edgar Acevedo

unread,
Mar 18, 2021, 10:05:42 PM3/18/21
to Comunidad de Visual Foxpro en Español
Muy agradecido por tu apoyo Víctor:

Te cuento que tu propuesta se me complica de implementar porque estas personas ya tienen como 15,000 formularios en papel continuo con original y 2 copias de papel sensibilizado, pensado en ser impreso en esa EPSON LX-300II+.
En definitiva, esta gente no va a querer dejar de lado toda esa inversión y pasarse a imprimir en papel las 3 partes en una sola hoja como se muestra en tu PDF que generosamente me has compartido.  Además, los formularios de papel continuo que ahora tienen para utilizarse, llevó cierto trámite de autorización ante entidades de gobierno.

De nuevo agradezco y valoro tu aporte,

Saludos,

Edgar Acevedo

Edgar Acevedo

unread,
Mar 18, 2021, 10:09:00 PM3/18/21
to Comunidad de Visual Foxpro en Español
Gracias por tu idea Carlos:

De alguna manera, sospechaba que tendré que hacer algo similar a lo que me propones: abrir la IDE de VFP 9 en el equipo donde correrá el Report Form y tratar desde ahí, darle forma al asunto.
Siendo que a ti ya te funcionó de esa manera, me has reforzado la idea de probar de esta manera.

Saludos,


Edgar

Edgar Acevedo

unread,
Mar 18, 2021, 10:13:46 PM3/18/21
to Comunidad de Visual Foxpro en Español
Mil gracias Ricardo:

Gracias por tu sugerencia de usar secuencias ESC/P.  
No tengo la impresora conmigo, por lo que podré probar de nuevo solo hasta estar de nuevo en localidad.
Seguiré tu consejo de probar usando la ESC(27) + ESC(67) + ESC(22)  (decirle que son 22 líneas de 1/6 de distanciamiento) a ver que tal me va.
Tengo la "mala corazonada" que estas secuencias ESC/P no siempre funcionan bien cuando la printer está conectada por USB en lugar de PUERTO PARALELO.
Pero igual, probaré nuevamente cuando la tenga accesible.

De nuevo, gracias por leerme y darme tus ideas.  

Saludos,   Edgar.

Alejandro Jorge Falca

unread,
Mar 19, 2021, 8:01:34 AM3/19/21
to publice...@googlegroups.com
Hola, buen dia, te fijaste en la configuración de la impresora? Hay una combinación de teclas (Mantenerlas presionadas cuando prendes la impresora) que te permite ver la configuración de la misma y cambiar esos valores (Largo de Página, ancho de pagina si hace salto para corte al finalizar un listado o no, etc.).



--
Alejandro J. Falca
S.F.V. de Catamarca
(4700) Catamarca
+54-0383-154512079


Octavio Rodriguez

unread,
Mar 19, 2021, 10:50:42 AM3/19/21
to publice...@googlegroups.com
Buen dia Edgar Acevedo, haz lo que dice Alejandro Jorge Falca, aqui te envio un link de como hacerlo


esto te va a solucionar tu problema.

Saludos desde México!

Edgar Acevedo

unread,
Mar 19, 2021, 2:21:05 PM3/19/21
to publicesvfoxpro
Muy agradecido Alejando:

Yo había hecho eso con secuencias ESC/P, no con los botones que mencionas.
Buscaré al respecto de eso.  

¡ Mil gracias ! 

Saludos, Edgar.


El vie, 19 mar 2021 a las 6:01, Alejandro Jorge Falca (<alejand...@gmail.com>) escribió:

Edgar Acevedo

unread,
Mar 19, 2021, 2:22:13 PM3/19/21
to publicesvfoxpro
Muy, muy agradecido Octavio:

Ahora mismo veré el link que me has compartido.

Saludos cordiales,   Edgar.


Francisco

unread,
Jan 14, 2026, 11:00:16 AM (3 days ago) Jan 14
to Comunidad de Visual Foxpro en Español
He visto este ejemplo que has indicado y funciona bien pero veo un pequeño problema y da fallo cuando la cantidad de lineas por factura es superior al que has puesto por hoja. ¿Que se puede hacer en este caso?
Reply all
Reply to author
Forward
0 new messages