FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour SetPrintDefault no cambia el valor de PrnGetName (solucionad
Posts: 33
Joined: Wed Jan 25, 2012 09:30 PM
SetPrintDefault no cambia el valor de PrnGetName (solucionad
Posted: Wed Oct 10, 2012 02:30 AM

Buenas noches

si tengo el siguiente programa

.
.
cImpresoraAnterior:=PrnGetName()
SetPrintDefault(cNuevaImpresora)
msginfo(PrnGetName())
.
.

Windows si establece a cNuevaImpresora como la impresora por defautl, pero mi aplicacion FWH no ( PrnGetName() sigue referenciando a cImpresoraAnterior), hasta que cierro y abro de nuevo mi aplicacion.

Parece ser que alguna variable de FWH no se actualiza con SetPrintDefault(cNuevaImpresora) y sigue tomando el valor de la impresora predeterminada al entrar al programa(cImpresoraAnterior).

¿como hago para corregir esto?

Saludos.

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: SetPrintDefault no cambia el valor de PrnGetName
Posted: Wed Oct 10, 2012 05:34 PM
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 33
Joined: Wed Jan 25, 2012 09:30 PM
Re: SetPrintDefault no cambia el valor de PrnGetName
Posted: Wed Oct 10, 2012 11:47 PM

Karinha

Funciono

Muchas Gracias.

Posts: 33
Joined: Wed Jan 25, 2012 09:30 PM
Re: SetPrintDefault no cambia el valor de PrnGetName
Posted: Thu Oct 11, 2012 12:08 AM

Karinha

Funciono:

cImpresoraAnterior:=( "windows", "device" , "" )
WriteProfString( "windows", "device",cNuevaImpresora)
SysRefresh()
PrinterInit()
msginfo(PrnGetName())
WriteProfString( "windows", "device",cImpresoraAnterior)

Tambien funciona con:

cImpresoraAnterior:=PrnGetName()
SetPrintDefault(cNuevaImpresora)
SysRefresh()
PrinterInit()
msginfo(PrnGetName())
SetPrintDefault(cImpresoraAnterior)

Muchas Gracias.

Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: SetPrintDefault no cambia el valor de PrnGetName (solucionad
Posted: Thu Oct 11, 2012 12:29 AM
ya que andamos en este tema:

Code (fw): Select all Collapse
PRINTER oPrn PREVIEW 
oPrn:Setup()
* ......
* .....
ENDPRINT


Amigos el method oPrn:Setup() de la class tprinter presenta 2 botones: [ Acepta ], [ Cancelar ]

abra forma de configurar las class para que cuando demos CANCELAR

se regrese y no prosiga con el reporte?

por ejemplo:

Code (fw): Select all Collapse
if ! oPrn:setup()
     retur nil
endif


Saludos..
Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: SetPrintDefault no cambia el valor de PrnGetName (solucionad
Posted: Thu Oct 11, 2012 09:36 AM
César,

Modificando asi el método Setup() de la Clase TPrinter:

METHOD Setup() BLOCK { | Self, hDC | hDC := PrinterSetup(), ::Rebuild(), hDC != 0 }

devuelve un valor lógico, lo que te permite hacer:

Code (fw): Select all Collapse
if ! oPrinter:Setup()
   return nil
endif
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: SetPrintDefault no cambia el valor de PrnGetName (solucionad
Posted: Thu Oct 11, 2012 04:56 PM

Excelente Antonio,

Haremos la prueba

Gracias..

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "

Continue the discussion