¿ tword() o word.application ?

Post Reply
User avatar
wyerco613
Posts: 73
Joined: Wed Mar 06, 2019 8:28 pm

¿ tword() o word.application ?

Post by wyerco613 »

Estimados

Solo necesito colocar el Nombre y el rut de una tabla DBF en una plantilla echa en WORD.

Use tword() pero no estaba la classe la encontre y baje pero me marco un monton de variables no declaradas y 2 funciones que no existen.

Vi los ejemplos de word.application y ninguno es muy claro.

Muchas Gracias

Waldemar
"Porque Jehová da la sabiduría , Y de su boca viene el conocimiento y la inteligencia Proverbios 2:6"

FWH 1903 + Bcc7 + PellesC + XEdit

Waldemar
Colbún Chile
User avatar
armando.lagunas
Posts: 340
Joined: Mon Oct 05, 2009 3:35 pm
Location: Curico-Chile
Contact:

Re: ¿ tword() o word.application ?

Post by armando.lagunas »

Buen día:

aquí encontré un enlace que te puede orientar a lo que solicitas.

http://forums.fivetechsupport.com/viewt ... rd#p183361


Espero de que te pueda ayudar, saludos
User avatar
wyerco613
Posts: 73
Joined: Wed Mar 06, 2019 8:28 pm

Re: ¿ tword() o word.application ?

Post by wyerco613 »

Estimado Armando

Ya revise este y muchos más enlaces es más ocupe el mismo ejemplo (y otros más)y tiene muchos errores, quizás la clase TWord es muy antigua.

Ojala encuentre una respuesta pronto ya que es urgente.

A propósito te mande un mail lo recibiste ?

Saludos

Waldemar
"Porque Jehová da la sabiduría , Y de su boca viene el conocimiento y la inteligencia Proverbios 2:6"

FWH 1903 + Bcc7 + PellesC + XEdit

Waldemar
Colbún Chile
User avatar
wyerco613
Posts: 73
Joined: Wed Mar 06, 2019 8:28 pm

Re: ¿ tword() o word.application ?

Post by wyerco613 »

Estimados

¿ Alguien ?

Es urgente

Waldemar
"Porque Jehová da la sabiduría , Y de su boca viene el conocimiento y la inteligencia Proverbios 2:6"

FWH 1903 + Bcc7 + PellesC + XEdit

Waldemar
Colbún Chile
User avatar
cmsoft
Posts: 653
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: ¿ tword() o word.application ?

Post by cmsoft »

Hola, yo estoy usando esto. Tomo un modelo (en formato RTF) y le cargo los datos de una tabla.

Code: Select all

***************************************
** Emitir Actas
STATIC FUNCTION Acta (cDoc)
LOCAL cText, oWord, oDoc
cText := MEMOREAD(hb_CurDrive()+":\"+curdir()+"\Modelos\"+cDoc+".rtf")
IF !FILE(hb_CurDrive()+":\"+curdir()+"\Modelos\"+cDoc+".rtf")
    MsgStop("El archivo base no existe"+chr(10)+cDoc,"Error")
    RETURN  nil
ENDIF
TransformarTexto(@cText)
   
MemoWrit( hb_CurDrive()+":\"+curdir()+"\Impresion\"+cDoc+".Temp.rtf", cText )
IF (oWord := WinWordObj() ) == nil
   MsgAlert( "MS Word no instalado" ,  "Alerta" )        
   ELSE
   oDoc = oWord:Documents:Open(hb_CurDrive()+":\"+curdir()+"\Impresion\"+cDoc+".Temp.rtf")
   IF oDoc == nil
      MsgAlert("Fallo crear documento, verifique que no este en uso" , "Alerta"  )           
   ENDIF
ENDIF
oDoc:Application:Visible := .t.
RETURN nil

***********************************************************
** Hacer el RTF
STATIC FUNCTION TransformarTexto(cText)
   cText := STRTRAN(ctext,"<<RUT>>"   ,ALLTRIM(datos->RUT) )
   cText := STRTRAN(ctext,"<<NOMBRE>>"   ,ALLTRIM(datos->nombre) )   
RETURN nil
Claramente en el modelo, donde tiene que ir el RUT y el NOMBRE, los pongo entre <<>>
Entiendo que necesitas imprimir en un mismo paso varios registros. Pero te puede servir como idea inicial
User avatar
wyerco613
Posts: 73
Joined: Wed Mar 06, 2019 8:28 pm

Re: ¿ tword() o word.application ?

Post by wyerco613 »

cmsoft wrote:Hola, yo estoy usando esto. Tomo un modelo (en formato RTF) y le cargo los datos de una tabla.

Code: Select all

***************************************
** Emitir Actas
STATIC FUNCTION Acta (cDoc)
LOCAL cText, oWord, oDoc
cText := MEMOREAD(hb_CurDrive()+":\"+curdir()+"\Modelos\"+cDoc+".rtf")
IF !FILE(hb_CurDrive()+":\"+curdir()+"\Modelos\"+cDoc+".rtf")
    MsgStop("El archivo base no existe"+chr(10)+cDoc,"Error")
    RETURN  nil
ENDIF
TransformarTexto(@cText)
   
MemoWrit( hb_CurDrive()+":\"+curdir()+"\Impresion\"+cDoc+".Temp.rtf", cText )
IF (oWord := WinWordObj() ) == nil
   MsgAlert( "MS Word no instalado" ,  "Alerta" )        
   ELSE
   oDoc = oWord:Documents:Open(hb_CurDrive()+":\"+curdir()+"\Impresion\"+cDoc+".Temp.rtf")
   IF oDoc == nil
      MsgAlert("Fallo crear documento, verifique que no este en uso" , "Alerta"  )           
   ENDIF
ENDIF
oDoc:Application:Visible := .t.
RETURN nil

***********************************************************
** Hacer el RTF
STATIC FUNCTION TransformarTexto(cText)
   cText := STRTRAN(ctext,"<<RUT>>"   ,ALLTRIM(datos->RUT) )
   cText := STRTRAN(ctext,"<<NOMBRE>>"   ,ALLTRIM(datos->nombre) )   
RETURN nil
Claramente en el modelo, donde tiene que ir el RUT y el NOMBRE, los pongo entre <<>>
Entiendo que necesitas imprimir en un mismo paso varios registros. Pero te puede servir como idea inicial

Cesar muchas gracias por el ejemplo, creo que es lo que necesito, lo pruebo y te aviso.

Atentamente

Waldemar
"Porque Jehová da la sabiduría , Y de su boca viene el conocimiento y la inteligencia Proverbios 2:6"

FWH 1903 + Bcc7 + PellesC + XEdit

Waldemar
Colbún Chile
Post Reply