Page 1 of 1

Problema di visualizzazione documenti RTF complessi

PostPosted: Wed Jan 25, 2006 11:23 am
by Marco Turco
Ho un problema quando devo aprire via ole un file rtf molto complesso.
In alcuni casi si verifica il seguente errore:

*********************
Application
===========
Path and name: K:\pigc\PIGC.Exe (32 bits)
Size: 6,567,424 bytes
Time from start: 0 hours 1 mins 8 secs
Error occurred at: 25/01/06, 12:14:50
Error description: Error Word.Application:ACTIVEDOCUMENT/1 Unknown error: ACTIVEWINDOW
Args:

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

La routine di stampa che utilizzo è:

*************
function DisplayRtf(cRtfFileName)

local oWord
local wsPrintView:=3

try
oWord := GetActiveObject("Word.Application")
catch
oWord := CreateObject("Word.Application")
end

sysrefresh()
oWord:Documents:Open(cRtfFileName)
sysrefresh()
oWord:ActiveDocument:ActiveWindow:View:Type = wsPrintView
sysrefresh()
oWord:Visible:=.t.
return nil
*****************

Credo che il problema risieda nel fatto che quando chiamo oWord:ActiveDocument:ActiveWindows.... l'ActiveWindow non è stata ancora creata da Word in quanto sta ancora aprendo il file rtf.
(Open(cRtfFileName) prima di passare alla successiva ?
Ho provato con dei sysrefresh() ma il problema persiste.

Grazie in anticipo

Marco Turco

Re: Problema di visualizzazione documenti RTF complessi

PostPosted: Wed Jan 25, 2006 11:26 am
by Enrico Maria Giordano
Prova con SysWait() al posto di SysRefresh(). Se non va avrei bisogno di riprodurre il problema per fare qualche esperimento quindi magari mandami il file RTF.

EMG

PostPosted: Mon Jan 30, 2006 1:40 am
by Guest
Ho trovato se a qualcuno interessa il Preview di stampa della classe RichText
non l'ho provato ma credo che dovrebbe funzionare solo che nella classe ultima che da linares non c'è il metodo preview come è possibile ?

In realtà io posseggo due versioni una è la richpad e l'altra è il richrtf di fw
A me poi interessava un altra cosa : come fare un merge con quest aclasse ed usare un file dbf per esempio per fare i solleciti

silvio