FoxPro/Visual FoxPro - imprimir cursor

   
Vista:

imprimir cursor

Publicado por wenceslao (134 intervenciones) el 11/10/2011 21:26:24
Hola chicos de la red, he estado tratando de imprimir un cursor, que es el resultado de una factura de pos.
utulice algo asi:
if used cursor
go top
imprimir el informe.
endif

esto funciona pero dandole vista preliminar, pero cuando quiero mandarlo a la impresora directamente a traves de un botom imprimir, no hace nada.

que estara pasando??

les agradadezco su valiosa colaboracion.


Saludos desde colombia.
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

imprimir cursor

Publicado por juan (533 intervenciones) el 12/10/2011 23:17:25
if used cursor
go top


Set Path To c:\Comercial\Informes
Report form Inform2 For Nombre_cursor.Numero=Num To Printer Prompt
Endif
Thisform.Command6.Refresh

podría hacer algo así
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

imprimir cursor

Publicado por Carlos Cuyé (75 intervenciones) el 14/10/2011 21:28:52
****************************************
***** Peviamente hay que realizar estas acciones
m.Informe = "NombreInforme" && Cargar esta variable previamente con el nombre del informe

SELECT NombreCursorOrigen && Posicionarse en el área del cursor o tabla de origen de datos del informe.

****************************************


*************************
*Lo que sigue podría formar una función de gestión de impresión de informes....

DO WHILE .T.

* Solicitud de impresora de destino
WAIT WIND NOWA 'Buscando impresoras instaladas...'
m.Impresora=GETPRINTER()
IF EMPTY(m.Impresora)
EXIT && Se canceló la impresión
ENDI

* Gestiona la impresión
m.Impresora=IIF(!EMPTY(m.Impresora) , '"'+m.Impresora+'"' , '' ) && agrega comillas a izq y der para poder ejecutar en macro.
W=0 && Señal que deberá manejarse en la rutina de control de errores (Variabloe pública)
WAIT WIND NOWA 'Preparando la impresora:'+CHR(13)+m.Impresora
SET PRINTER TO NAME &Impresora. && Puede retornar el error 1958
* Verifica si hubo error en el acceso a la impresora. La rutina de control de errores (definida con ON ERROR) se encargaría de cambiar el valor de la variable W para que este módulo detecte que hubo error.
DO CASE
* No hubo error.
CASE W=0
WAIT WIND NOWA 'Preparando la impresora:'+CHR(13)+Z

*********** Esto envía la impresión directamente a la impresora sin vista previa.
*********** Sólo muestra un conteo de páginas procesadas
REPORT FORM &Informe. NOEJECT NOCONSOLE TO PRINTER && Puede retornar el error 1957
**************************************************************************************

* Reintenta cuando hubo error en REPORT FORM (Error 1957)
IF W=4 && Corresponde a la respuesta dada a una función MESSAGEBOX manejada en la rut de control de errores
LOOP
ENDI
EXIT
* Reintenta cuando hubo error en SET PRINTER TO (Error 1958)
CASE W=4
LOOP
* "Cancelar" y otras respuestas no previstas
* Omite la impresión
OTHER
EXIT
ENDC
ENDD .T.
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

imprimir cursor

Publicado por Carlos Cuyé cachosistemas@hotmail.com (75 intervenciones) el 14/10/2011 21:31:48
Al nombre del informe también agregarle comillas a izq y der para poder ejecutar como macro....
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

imprimir cursor

Publicado por Douglas Sánchez (297 intervenciones) el 29/10/2011 07:18:27
Hola que tal pues como dicen aqui, PSM. Por Si las Moscas, no has resuelto, si el cursor viene del resultaod de una consulta atravez de select

seria mas o menos asi.

select * from tuttabla where condi = xcondi into cursor tmpcursor
if _tally = 0
wait windows "No hay información..."
return
endif

select tmpcursor
**** otra forma pa saber si tiene datos el cursor seria
if reccount() > 0
report form tureporte.frx noconsole to print prompt preview
endif


Saludes

Douglas
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