ayuda para imprimir con @ .. say

1,105 views
Skip to first unread message

mcantor

unread,
Apr 20, 2009, 8:42:14 PM4/20/09
to Mundo Visual FoxPro
hola, tengo un reporte bastante especial, el cual NO puedo imprimirlo
usando el generador de reportes del 9.0. asi que la unica forma es
con el @... say, alguien tiene algun ejemplo de como hacerlo donde
incluya trabajo con diferentes tipos de letra.,,, por ahora el reporte
solo lo puedo generar en la pantalla y solo con un tipo de letra, y
necesito imprimirlo en una laser...
mil gracias...

GOOD_FOX

unread,
Apr 21, 2009, 1:17:45 AM4/21/09
to Mundo Visual FoxPro

Hola que ta...!!

que tipo de Reporte es el que quieres imprimir.??

nota, ticket, algun informe de ventas, etc, etc. ???


si es por el tamaño de papel, puedes configurarlo muy fácil desde
propiedades del servidor desde impresoras y faxes, y despues
estableces ese tamaño en tu reporte... ya que la impresion va hacer
en una impresora laser y asi tendrás todas la posibilidades para los
tipos de fuente, ya que al imprimir directamente en la impresora con
@..say o ???, te limitan en los tipos de letra... Pero revisa
el siguiente codigo, ya que esto funciona para impresoras de matriz de
puntos, no se si funcionaría para impresoras laser...

suerte.. !

LCRUTA_IMPRESORA = "EPSONTK" && o el Nombre de tu impresora en
comillas
SET CONSOLE OFF
SET PRINTER TO NAME &LCRUTA_IMPRESORA

*Se inicializa el codigo de Impresion
??? CHR(27)+CHR(48)+CHR(27)+CHR(67)+CHR(44)
??? CHR(18)+CHR(27)+CHR(77)+CHR(15)

TL('CH')
FOR I=1 TO 3
??? CHR(10)+CHR(13)+"ESTO ES UNA PRUEBA"
ENDFOR

TL('M1')
FOR I=1 TO 3
??? CHR(10)+CHR(13)+"ESTO ES UNA PRUEBA"
ENDFOR

TL('M2')
FOR I=1 TO 3
??? CHR(10)+CHR(13)+"ESTO ES UNA PRUEBA"
ENDFOR

TL('GR')
FOR I=1 TO 3
??? CHR(10)+CHR(13)+"ESTO ES UNA PRUEBA"
ENDFOR


CLOSE PRINT
SET CONSOLE ON
SET PRINTER TO




*------ CODIGOS DE IMPRESION
--------------------------------------------
* DESCRIPCION: Funciónes que verifica los codigos de impresion para
impresoras EPSON.
*----- CODIGOS DE IMPRESION
--------------------------------------------
FUNCTION TL(mcTam)
??? CHR(27)+CHR(48)+CHR(27)+CHR(67)+CHR(44)
DO CASE
CASE MCTAM=='GR'
*Fuente Extra Grande 6CPP CARTA=46 COLUMAS
??? CHR(13)+CHR(18)+CHR(27)+CHR(77)+CHR(18)+CHR(14)
CASE MCTAM=='M1'
*Fuente Mediana 10CPP CARTA=80 COLUMNAS RECOMENDADO=78 COLUMNAS
??? CHR(18)+CHR(27)+CHR(80)
CASE MCTAM=='M2'
*Fuente Tamaño 13CPP CARTA=94 COLUMNAS
??? CHR(18)+CHR(27)+CHR(77)
CASE MCTAM=='CH'
*Fuente Pequeña 20CPP CARTA=160 COLUMNAS
??? CHR(18)+CHR(27)+CHR(77)+CHR(15)
OTHERWISE
*Si no es ninguna de las Anteriores, Es un Espacio.
??? CHR(10)+CHR(13)
ENDCASE
ENDFUNC

Carlos Miguel FARIAS

unread,
Apr 21, 2009, 10:02:20 AM4/21/09
to mundovis...@googlegroups.com
El comando @ say lo podes encontrar documentado en la ayuda de fox DOS o fox para windows, no se si está documentado en la ayuda de VFP 6. en las ultimas versiones, el comando se mantuvo para compatibilidad descendente
Sería interesante saber porque no sale con el generador de reportes, que si permite configurar tipos de letras en el mismo diseño.
 
En http://support.microsoft.com/kb/99595 tenes alguna informacion.

Reply all
Reply to author
Forward
0 new messages