Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-08-2006
jjkballero jjkballero is offline
Registrado
 
Registrado: ago 2006
Posts: 5
Poder: 0
jjkballero Va por buen camino
Activar los campos

Estoy buscando la forma de activar directamente los campos desde Delphi, pues ocurre lo siguiente.

Desde el propio Word hay que ir campo por campo uno a uno, entonces necesito desde delphi abrir el documento de word activando los campos, me imagino que estos campos deben tener una propiedad para activarlos, será de esta forma o bien creando una macro en word y ejecutarla desde Delphi, voy a probar a ver si lo consigo, si alguien lo consigue antes que yo, que lo diga, gracias,
Responder Con Cita
  #2  
Antiguo 28-08-2006
jjkballero jjkballero is offline
Registrado
 
Registrado: ago 2006
Posts: 5
Poder: 0
jjkballero Va por buen camino
Smile Lo encontré

Para activar los variables en word basta con lanzar la siguiente instrucción:

documento.Fields.ToggleShowCodes y con esto conseguimos activar los campos en word y por tanto que se muestren los datos.
Responder Con Cita
  #3  
Antiguo 28-08-2006
Avatar de Manuel
Manuel Manuel is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz/Chile
Posts: 324
Poder: 24
Manuel Va por buen camino
sigo con problemas, este mi código delphi
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  Word: Variant;
  Documento: Variant;

begin
  (* Creas un objeto Word *)
  Word := CreateOleObject('Word.Application');

  (* Añades un documento basado en la plantilla *)
  Word.Documents.Add('c:\plantilla.dot');
  Documento := Word.Documents.Item(1);

  (* Asignas valores a los campos *)
  Documento.Variables.Add('nombres', 'pepe pérez');
  documento.Fields.ToggleShowCodes;
  Documento.Fields.Update;

  Word.Visible := true;


end;


esta es mi plantilla:

Carta

El señor

{MERGEFIELD nombres \* MERGEFORMAT}



ewl resulto me sale exactamente lo mismo que la plantilla
__________________
Manuel Muñoz L. Trabajando con delphi 7.0 , migrando sistema a Delphi XE8, matando BDE y pasando FIREDAC.
Responder Con Cita
  #4  
Antiguo 29-08-2006
jjkballero jjkballero is offline
Registrado
 
Registrado: ago 2006
Posts: 5
Poder: 0
jjkballero Va por buen camino
Yo lo tengo casi igual

Mira yo tengo el código igual solo que el update de las variables lo hago antes que el ToggleShowCodes y me funciona.

No se si las variables de word las insertas a mano o desde la opción

Insertar --> Campo y seleccionas la opción DocVariable

A ver si está ahí la cuestión.
Responder Con Cita
  #5  
Antiguo 29-08-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Un par de comentarios:

ToggleShowCodes, más que activar los campos, alterna entre ver los códigos o ver los valores. Si en Word tenemos desmarcada la opción de ver los códigos, entonces ToggleShowCodes la marcará y lo que veremos son los códigos y no los valores.

El que se muestren los códigos o valores no afecta la impresión del documento. Siempre se imprimirán los valores actuales.

Por otra parte, veo que Manuel usa:

Código:
{MERGEFIELD nombres \* MERGEFORMAT}
pero debe ser

Código:
{DOCVARIABLE nombre\* MERGEFORMAT}
// Saludos
Responder Con Cita
  #6  
Antiguo 29-08-2006
Avatar de Manuel
Manuel Manuel is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz/Chile
Posts: 324
Poder: 24
Manuel Va por buen camino
a pesar de todo los cambios incluso los que me propobe roman, igual sigo sin ver el resultado.
__________________
Manuel Muñoz L. Trabajando con delphi 7.0 , migrando sistema a Delphi XE8, matando BDE y pasando FIREDAC.
Responder Con Cita
  #7  
Antiguo 29-08-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Puedes preparar una pequeña plantilla de muestra y el código? De ser así, ponlo en un zip y adjúntalo al mensaje.

// Saludos
Responder Con Cita
  #8  
Antiguo 11-01-2009
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 23
ASAPLTDA Va por buen camino
Mostrar Valor Campos En Vez De Nombre De Campos De La Plantilla

Cita:
Empezado por Manuel Ver Mensaje
a pesar de todo los cambios incluso los que me propobe roman, igual sigo sin ver el resultado.
Hola Manuel, no es tarde la respuesta es solo que segui este tema para enviar datos a word. La solucion Manual al problema es que debes en el .Dot Tener :
menu tools, menu options, tabsheet view Field Codes sin marcar (no chulo), lo que no se es como decirlo desde delphi .

Una vez lo elimna la marca salva el archivo .dot y genera nuevamente la impresion y esto hace que funcione

Gracias a los usarios de es tema por sus comentarios
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Insertar filas en Tabla(word) Loviedo Servers 2 14-11-2007 00:12:40
Automatizacion de word (insertar tablas) alt126 C++ Builder 2 04-11-2005 10:44:29
Insertar objetos en Word ingel Varios 0 18-05-2005 22:42:12
Cómo insertar un salto de página a word desde delphi? nacho Servers 3 08-03-2005 21:02:16
Insertar Imagenes desde Delphi a un Documento Word ludan508 Servers 1 21-09-2004 01:07:02


La franja horaria es GMT +2. Ahora son las 08:00:34.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi