Problema con Seleccion Impresora

Problema con Seleccion Impresora

Postby colthop » Tue Sep 22, 2015 9:08 am

Hola a todos:

Desde hace tiempo uso el poder seleccionar la impresora desde la aplicación y en una opción de impresión he puesto :

Code: Select all  Expand view

PRINT oPrn TO xImpLis2
oPrn:SetSize( vtapx*100, vtapy*100 )
if vorien = 1
  oPrn:SetPortrait()
else
  oPrn:SetLandscape()
endif
 


La primera línea selecciona la impresora con "to xImpLis2", la segunda redimensiona el tamaño de la impresión, el resto la orientación de la página y mi sorpresa es que al hacer esto la impresión la envía a la impresora por defecto del sistema y no a la impresora seleccionada.

Existe alguna solución para poder enviar a la impresora que se desee con oPrn:"Seleccion"(xLisImp2) o alguna otra solución.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: Problema con Seleccion Impresora

Postby armando.lagunas » Tue Sep 22, 2015 11:36 am

Amigo:

yo lo utilizo asi:

Code: Select all  Expand view


#define  cPrinter     "BIXOLON SRP-350plus"     <<----- aqui es el mismo nombre definido en windows  ojo igual igual
...
...
PRINTER oPrn NAME "Guia de Recepcion" TO cPrinter


 


espero que sirva.

Saludos
SkyPe: armando.lagunas@hotmail.com
Mail: armando.lagunas@gmail.com
User avatar
armando.lagunas
 
Posts: 346
Joined: Mon Oct 05, 2009 3:35 pm
Location: Curico-Chile

Re: Problema con Seleccion Impresora

Postby colthop » Tue Sep 22, 2015 1:03 pm

Hola Armando:

Lo he probado y sigue imprimiendo con la impresora por defecto. Muchas gracias por tu aporte.

No encuentro solución pero me gustaría saber si puede existir.

un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: Problema con Seleccion Impresora

Postby AngelSalom » Tue Sep 22, 2015 4:57 pm

Carlos, ¿en qué sistema operativo lo estás probando? Recuerdo que tuve el mismo problema en Windows Server 2008 (no solucionado).
En cambio si se selecciona la impresora desde la función PrinterSetup() de FW funciona perfectamente :oops: :oops:
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
User avatar
AngelSalom
 
Posts: 727
Joined: Fri Oct 07, 2005 7:38 am
Location: Benicarló (Castellón ) - España

Re: Problema con Seleccion Impresora

Postby colthop » Tue Sep 22, 2015 6:11 pm

Hola Ángel:

El Sistema Operativo es Windows 7, Windows 8 y Windows 10. Y yo no uso PrinterSetup(). Presento una ventana con todas las impresoras y selecciono la impresora en el "PRINT oPrn TO xImpLis2 ".

El problema no es como selecciona la impresora al principio sino que cuando le digo si quiero imprimir en Horizontal o Vertical y el tamaño de la impresión pierde la impresora que le digo y pone la del sistema operativo por defecto, y no se como se puede arreglar o si no lo tiene por el motivo que sea y es un error de las librerías que no se puede corregir.

Un saludo

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: Problema con Seleccion Impresora

Postby karinha » Tue Sep 22, 2015 6:36 pm

Cambie PRINTER.PRG para veer se és esto que necesitas:

Code: Select all  Expand view

METHOD New( cDocument, lUser, lPreview, cModel, lModal, lSelection, cFile ) CLASS TPrinter

   local aOffset
   local cPrinter

   DEFAULT cDocument  := "FiveWin Report" ,;
       lUser := .f., lPreview := .f., lModal := .f., lSelection := .f.

   if lUser

      ::hDC := GetPrintDC( GetActiveWindow(), lSelection, PrnGetPagNums() )

      if ::hDC != 0
         cModel = ::GetModel() + "," + ::GetDriver() + "," + ::GetPort()
      endif

   elseif cModel == nil  // Modified: 16/01/2014

      ::hDC  := GetPrintDefault( GetActiveWindow() )

      cModel = ::GetModel() + "," + ::GetDriver() + "," + ::GetPort()

      SetPrintDefault( cModel ) // NEW !!!  // 16/01/2014  Joao

   else

      cPrinter := GetProfString( "windows", "device" , "" )

      WriteProfString( "windows", "device", cModel )

      SysRefresh()

      PrinterInit()

      ::hDC := GetPrintDefault( GetActiveWindow() )

      SysRefresh()

      WriteProfString( "windows", "device", cPrinter  )

      SetPrintDefault( cPrinter ) // NEW !!!  Antonio Linares

   endif

   if ::hDC != 0
      aOffset    = PrnOffset( ::hDC )
      ::nXOffset = aOffset[ 1 ]
      ::nYOffset = aOffset[ 2 ]
      ::nOrient  = ::GetOrientation()
   elseif ComDlgXErr() != 0
      MsgStop( "There are no printers installed!"  + CRLF + ;
               "Please exit this application and install a printer." )
      ::nXOffset = 0
      ::nYOffset = 0
   else
      ::nXOffset = 0
      ::nYOffset = 0
      ::nOrient  = DMORIENT_PORTRAIT
   endif

   ::cDocument = cDocument
   ::cModel    = cModel
   ::nPage     = 0
   ::nPad      = 0
   ::lMeta     = .f.
   ::lPreview  = lPreview
   ::lStarted  = .F.
   ::lModified = .F.
   ::lPrvModal = lModal

   if ! Empty( cFile ) .and. Lower( Right( cFile, 3 ) ) == "pdf"
      ::cFile   = cFile
      ::lMeta     = .t.
   elseif ::lPreview
      ::lMeta     = .t.
   endif

   if ! ::lMeta
      ::hDcOut = ::hDC
   else
      ::aMeta  = {}
      ::cDir   = GetEnv( "TEMP" )

      if Empty( ::cDir )
         ::cDir = GetEnv( "TMP" )
      endif

      if Right( ::cDir, 1 ) == "\"
         ::cDir = SubStr( ::cDir, 1, Len( ::cDir ) - 1 )
      endif

      if ! Empty( ::cDir )
         if ! lIsDir( ::cDir )
            ::cDir = GetWinDir()
         endif
      else
         ::cDir := GetWinDir()
      endif
   endif

return Self


João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7804
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Problema con Seleccion Impresora

Postby colthop » Tue Sep 22, 2015 7:10 pm

Hola Joao:

Parece que con esta corrección ya funciona bien. Seguiré con las pruebas y muchas gracias por tu interés.

Un saludo.

Carlos
Colt Hop ED, S.L.
Carlos Blas Fernández Domínguez
Tlfo: 645847093
E-Mail: carlos@colthop.es

Nunca se termina de aprender, por eso necesito siempre ayuda.
colthop
 
Posts: 505
Joined: Sat Apr 22, 2006 9:09 am
Location: Madrid - España

Re: Problema con Seleccion Impresora

Postby karinha » Tue Sep 22, 2015 7:46 pm

Hola soy siempre feliz de ayudar a los mejores del mundo. Me encanta FiveWin. Feliz de ser parte de esto. saludos
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7804
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 24 guests