FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index All products support WORD Printout senza prompt
Posts: 283
Joined: Sat Oct 15, 2005 06:40 AM
WORD Printout senza prompt
Posted: Mon Dec 27, 2010 04:50 AM
Ciao,
dovendo stampare da word appare un prompt se i margini impostati nel documento sono inferiori a quelli della stampante scelta.
E' possibile forzare la stampa senza visualizzare niente?
Ecco un esempio (il messaggio non appare se si usano stampanti virtuali):
Code (fw): Select all Collapse
//------------------------------------------------------------------------------

FUNCTION TestWord()

   LOCAL oWord
   TRY
      oWord := CreateObject( "Word.Application" )
      oDoc  := oWord:Documents:Add()
      oWord:Selection:InsertAfter ( "This is a test." )
      // Impostazione pagina
      WITH OBJECT oDoc:PageSetup()
         :TopMargin      := 0
         :BottomMargin   := 0
         :LeftMargin     := 0
         :RightMargin    := 0
      END WITH

      // If the printer's margin is more big than set, word display a prompt.
      // When use oWord:DisplayScreenTips := .F., the prompt is not displayed but the process is blocked
      oWord:PrintOut()

      oWord:Quit()

   CATCH

      oWord:Quit()

   END

   RETURN Nil

//------------------------------------------------------------------------------
Grazie per l'aiuto.
Ciao, best regards,

Ugo
Posts: 9022
Joined: Thu Oct 06, 2005 08:17 PM
Re: WORD Printout senza prompt
Posted: Mon Dec 27, 2010 03:36 PM
Prova con

Code (fw): Select all Collapse
#define wdAlertsNone 0

oWord:DisplayAlerts = wdAlertsNone


EMG
Posts: 283
Joined: Sat Oct 15, 2005 06:40 AM
Re: WORD Printout senza prompt
Posted: Mon Dec 27, 2010 06:38 PM
Enrico Maria Giordano wrote:Prova con

Code (fw): Select all Collapse
#define wdAlertsNone 0

oWord:DisplayAlerts = wdAlertsNone


EMG

Enrico,
grazie per la risposta, ma continua ad apparire il prompt con il messaggio: :-)
"i margini della sezione 1 sono esterni all'area di stampa della pagina, continuare?".
Ciao, best regards,

Ugo
Posts: 9022
Joined: Thu Oct 06, 2005 08:17 PM
Re: WORD Printout senza prompt
Posted: Mon Dec 27, 2010 06:57 PM

Allora probabilmente non è proprio possibile stampare con quei margini.

EMG

Posts: 283
Joined: Sat Oct 15, 2005 06:40 AM
Re: WORD Printout senza prompt
Posted: Tue Dec 28, 2010 07:32 PM
Enrico Maria Giordano wrote:Allora probabilmente non è proprio possibile stampare con quei margini.

EMG

Enrico,
il messaggio è un warning.
Se clicco su si (prosegui) stampa la pagina magari cancellando parte del contenuto (tutto ciò che non rientra nella zona stampabile).
In pratica, per ciò che devo fare, l'utente dovrà sempre dare si. Se fosse possibile evitare il passaggio sarebbe meglio; se non si può pazienza.
Intanto grazie.
Ciao, best regards,

Ugo
Posts: 9022
Joined: Thu Oct 06, 2005 08:17 PM
Re: WORD Printout senza prompt
Posted: Tue Dec 28, 2010 07:40 PM

Oltre a DisplayAlerts non sono a conoscenza di altri modi. Sei sicuro di aver fatto la prova per bene? Magari mandami DOC e PRG per fare la prova qui.

EMG

Posts: 283
Joined: Sat Oct 15, 2005 06:40 AM
Re: WORD Printout senza prompt
Posted: Fri Dec 31, 2010 11:57 AM
Enrico Maria Giordano wrote:Oltre a DisplayAlerts non sono a conoscenza di altri modi. Sei sicuro di aver fatto la prova per bene? Magari mandami DOC e PRG per fare la prova qui.

Enrico,
l'esempio postato è completo!
Devi solo selezionare una stampante fisica con dei margini, le stampanti virtuali, dai miei test, non soffrono del problema.

P.S. Grazie e buon anno a tutti.
Ciao, best regards,

Ugo
Posts: 9022
Joined: Thu Oct 06, 2005 08:17 PM
Re: WORD Printout senza prompt
Posted: Fri Dec 31, 2010 01:24 PM
A me così funziona regolarmente:

Code (fw): Select all Collapse
//------------------------------------------------------------------------------

FUNCTION TestWord()

   LOCAL oWord, oDoc
   TRY
      oWord := CreateObject( "Word.Application" )
      oDoc  := oWord:Documents:Add()
      oWord:Selection:InsertAfter ( "This is a test." )
      // Impostazione pagina
      WITH OBJECT oDoc:PageSetup()
         :TopMargin      := 0
         :BottomMargin   := 0
         :LeftMargin     := 0
         :RightMargin    := 0
      END WITH

      // If the printer's margin is more big than set, word display a prompt.
      // When use oWord:DisplayScreenTips := .F., the prompt is not displayed but the process is blocked
      oWord:PrintOut( .F. )

      oDoc:Close( 0 )

      oWord:Quit()

   CATCH

      oWord:Quit()

   END

   RETURN Nil

//------------------------------------------------------------------------------


EMG

Continue the discussion