Word e il "layout di stampa"

Moderator: Enrico Maria Giordano

Word e il "layout di stampa"

Postby Marco Turco » Sun Jan 15, 2006 8:09 pm

Salve,
sto cercando di aprire un file rtf da Word via ole,
per questo nessun problema.
Vorrei però che il documento appaia visualizzato come "Layout di stampa" (vedi Visualizza/Layout di stampa) in microsoft word.

Qualcuno conosce il comando Ole per attivare la visualizzazione come "Layout di stampa" per il documento corrente ?

Grazie in anticipo

Marco Turco
User avatar
Marco Turco
 
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London

Re: Word e il "layout di stampa"

Postby Enrico Maria Giordano » Sun Jan 15, 2006 10:17 pm

Eccoti un esempio funzionante:

Code: Select all  Expand view
#define wdPrintView  3


FUNCTION MAIN()

    LOCAL oWord

    oWord = CreateObject( "Word.Application" )

    oWord:Documents:Add()

    oWord:ActiveDocument:ActiveWindow:View:Type = wdPrintView

    oWord:Visible = .T.

    RETURN NIL


EMG
User avatar
Enrico Maria Giordano
 
Posts: 8715
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Postby Marco Turco » Mon Jan 16, 2006 2:26 pm

Funziona, tuttavia mi appare in modo random il messaggio di errore

***
Application
===========
Path and name: K:\pigc\PIGC.Exe (32 bits)
Size: 6,569,472 bytes
Time from start: 0 hours 0 mins 37 secs
Error occurred at: 16/01/06, 12:54:13
Error description: Error Word.Application:ACTIVEDOCUMENT/1 Unknown error: ACTIVEWINDOW
Args:

Stack Calls
===========
Called from TOLEAUTO:ACTIVEWINDOW(0)

***

ed inoltre, dovendo richiamare la funzione più volte con difersi file rtf da aprire, non dovrei chiudere l'oggetto per non saturare la memoria ?
Vedi funzione Displayrtf in basso.

Marco




function DisplayRtf(cRtfFileName)

local oWord
local wsPrintView:=3

oWord := CreateObject("Word.Application")
oWord:Documents:Open(cRtfFileName)
oWord:ActiveDocument:ActiveWindow:View:Type = wsPrintView
oWord:Visible:=.t.
return nil
User avatar
Marco Turco
 
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London

Postby Enrico Maria Giordano » Mon Jan 16, 2006 2:53 pm

Prova così:

Code: Select all  Expand view
#define wdPrintView  3


FUNCTION MAIN()

    LOCAL oWord

    TRY
        oWord = GETACTIVEOBJECT( "Word.Application" )
    CATCH
        oWord = CREATEOBJECT( "Word.Application" )
    END

    oWord:Documents:Add()

    oWord:ActiveDocument:ActiveWindow:View:Type = wdPrintView

    oWord:Visible = .T.

    RETURN NIL


EMG
User avatar
Enrico Maria Giordano
 
Posts: 8715
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Postby Marco Turco » Tue Jan 17, 2006 5:49 pm

Grazie. E' tutto Ok adesso.

Saluti

Marco
User avatar
Marco Turco
 
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London


Return to All products support

Who is online

Users browsing this forum: No registered users and 9 guests