classe TWord

Post Reply
Fco_Ozuna
Posts: 14
Joined: Sun Nov 27, 2005 2:49 am
Location: Nogales, Sonora
Contact:

classe TWord

Post by Fco_Ozuna »

Feliz Año Nuevo a Todos!!

Porque no me funciona, necesito abrir un archivo de Word existente, hago lo siguiente y me arroja el siguiente error:

oWord = TOleAuto():New( "Word.Application" )
oWord:OpenDoc("Prueba.Doc")

OPENDOC: DISP_E_UNKNOWNNAME

y con:

oWord := TWord():New()
oWord:OpenDoc("Prueba.Doc")

oWord:Preview()

ocurre un GPF
called from OLEINVOKE(0)
called from TWORD:PREVIEW(392)

FW23, HARBOUR, BCC55

Gracias por su atencion..
fleal
Posts: 234
Joined: Tue Oct 25, 2005 12:39 am
Location: México, DF

Re: classe TWord

Post by fleal »

Prueba esto

oWord:OpenDoc( DirDondeEstaElDocumento+"Prueba.Doc")

ó lo que sería lo mismo

oWord:OpenDoc( "C:\Docs\Prueba.Doc")

o como se quiera que se llame tu directorio donde está el archivo que quieres abrir.
Fco_Ozuna
Posts: 14
Joined: Sun Nov 27, 2005 2:49 am
Location: Nogales, Sonora
Contact:

Re: classe TWord

Post by Fco_Ozuna »

Gracias por tu respuesta fleal, pero no me funciono!!!, y por lo que estuve leyendo, la clase: oWord=TOleAuto():New( "Word.Application" ), es de xHarbour, y yo utilizo Harbour, y no doy con bola, si se trata de crear un nuevo documento, modificarlo, previzualizarlo e imprimirlo, no hay problema, el problema lo tengo cuando el documento ya esta creado y lo quiero modificar desde la clase TWord, cualquier comentario será agradecido.

Gracias.
User avatar
Vikthor
Posts: 271
Joined: Fri Oct 07, 2005 5:20 am
Location: México

Re: classe TWord

Post by Vikthor »

Revisa si el método New de tu clase es similar a este :

Code: Select all

METHOD OpenDoc( cNombreDoc )  CLASS TWord
       local sal := .t.
       ::oDocs := ::oWord:Get( "Documents" )
       if file( cNombreDoc )
          ::oActiveDoc  := ::oDocs:Invoke( "Open",cNombreDoc )
          if valtype(::oActiveDoc) <> 'O'
             sal := .f.
          endif
       else
          sal := .f.
       endif
       ::oTexto        := ::oWord:Get( "Selection" )
       ::oOptions      := ::oWord:Get("Options")              // Vikthor
       ::oMailMerge    := ::oActiveDoc:Get( "MailMerge")    // Vikthor
       ::oTables       := ::oActiveDoc:Get( "Tables")              // Vikthor
       ::cNombreDoc    := cNombreDoc
       ::nLinea        := 0
       ::nCol          := 0
       ::nPage         := 0
       ::nYoffset      := 0
       ::nXoffset      := 0
       ::oSelection    := ::oActiveDoc
       ::lstartpag     := .t.
       ::lsetcm        := .f.
       ::lOverflowing  := .f.
       ::nlastrow      := 0
       ::ctextoverflow := ''

       return sal
Vikthor
Fco_Ozuna
Posts: 14
Joined: Sun Nov 27, 2005 2:49 am
Location: Nogales, Sonora
Contact:

Re: classe TWord

Post by Fco_Ozuna »

Gracias Vickthor por contestar.

Pues no, es diferente en las Datas y los Methodos que llama la clase, que veo es modificada por Ti, serias tan amable de decirme si la puedo descargar de alguna parte o pasarmela a mi correo fco_ozuna@prodigy.net.mx, te lo agradeceria mucho.

Gracias....
User avatar
Vikthor
Posts: 271
Joined: Fri Oct 07, 2005 5:20 am
Location: México

Re: classe TWord

Post by Vikthor »

¡listo el pollo!... Enviada a tu cuenta de correo.
Vikthor
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Vikthor,

Puedes publicarla en algún sitio, como www.hyperupload.com para que la descargue quien la necesite ? gracias.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Vikthor
Posts: 271
Joined: Fri Oct 07, 2005 5:20 am
Location: México

Post by Vikthor »

Antonio :

Con mucho gusto, la voy a subir al sitio de DbWide que esta en http://vikthor.com.mx

La clase funciona con xHarbour e ignoro si el código es complatible con Harbour.

Pero haciendo unos pequeños ajuste la clase debe ser compatible con ambos compiladores.
Vikthor
Post Reply