Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2015
El_Chava El_Chava is offline
Miembro
 
Registrado: jun 2005
Posts: 62
Poder: 19
El_Chava Va por buen camino
Question Enviar datos a una plantilla MS Word desde Lazarus

Hola amigos del foro, esperando que se encuentren bien aquí de nuevo con un problema y es el siguiente. Necesito usar una platilla de MS word y enviarle los datos desde lazarus. Uso la versión 1.4.0 de lazarus. Buscando ejemplos de como hacerlo encontre uno de tanto que hay en el foro pero al tratar de ejecutarlo me muestra el siguiente mensaje de error "El elemento del conjunto solicitado no existe." y no se como resolver el problema estuve buscando en san google pero no encontre nada en si que me pudiera ayudar a resolverlo. Espero sus respuestas y muchas gracias de antemano saludos

Código Delphi [-]
procedure TFrmElaborarNotificacion.SpeedButton1Click(Sender: TObject);
var
  Word: Variant;
  Documento,A, B, C: Variant;
  w:widestring;
begin
  (* Creas un objeto Word *)
  try
   w:= WideString(UTF8Decode(ExtractFilePath(AnsiToUtf8(ParamStr(0)))+ pchar('C:\Proyecto lazarus 140\sisco14\Reportes\planilla.dot')));
   Word := CreateOleObject('Word.Application');
    (* Añades un documento basado en la plantilla *)
   Word.Documents.open(w);
   Documento := Word.Documents.Item(1);
  (*Asignas Valores a la Variables*)
  A:='Usuario';
  B:='computer #303';
  C:= 'sistema operativo';
  (* Asignas valores a los campos *)
  Documento.Variables.Add('Nombre', A);
  Documento.Variables.Add('Direccion', B);
  Documento.Variables.Add('Colonia', C);
  Word.ActiveWindow.View.ShowFieldCodes := false;
  Documento.Fields.Update;
  Word.Visible := true;  {Make Word visible}
  except
   on E: Exception do
      ShowMessage(SysToUTF8(E.Message));
  end;
end;

Última edición por Casimiro Notevi fecha: 06-07-2015 a las 17:10:24.
Responder Con Cita
  #2  
Antiguo 06-07-2015
El_Chava El_Chava is offline
Miembro
 
Registrado: jun 2005
Posts: 62
Poder: 19
El_Chava Va por buen camino
Solucionado

Hola de nuevo ya encontre la solución al mi problema les dejo el código.
Código Delphi [-]
procedure TFrmElaborarNotificacion.SpeedButton1Click(Sender: TObject);
var
  Word: Variant;
  Documento,A, B, C: Variant;
  w:widestring;
begin
  (* Creas un objeto Word *)
  try
    {* a la variable "w" le asigno la ruta donde se encuentra la plantilla a utilizar *}
    w:= UTF8Decode(ExtractFilePath(application.ExeName)+'Reportes\plantilla2015.dot');
   Word := CreateOleObject('Word.Application');
    (* Añades un documento basado en la plantilla *)
   Documento := Word.Documents.Add(w);
   Documento := Word.Documents.Item(1);
 
  (*Asignas Valores a la Variables*)
  A:='Usuario';
  B:='Lazarus ';
  C:= 'Object Pascal';
 
  (* Asignas valores a los campos *)
  Documento.Variables.Add('Nombre', A);
  Documento.Variables.Add('Direccion', B);
  Documento.Variables.Add('Colonia', C);
  Word.ActiveWindow.View.ShowFieldCodes := false;
  Documento.Fields.Update;
  Word.Visible := true;  {Make Word visible}
 
  except
   on E: Exception do
      ShowMessage(SysToUTF8(E.Message));
  end;
end;

Última edición por nlsgarcia fecha: 06-07-2015 a las 20:26:02. Razón: Sintaxis Delphi
Responder Con Cita
  #3  
Antiguo 06-07-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Muchas gracias por compartir la solución

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 06-07-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Responder Con Cita
  #5  
Antiguo 06-07-2015
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
El_Chava,

Cita:
Empezado por El_Chava
...ya encontré la solución...les dejo el código...


Nelson.
Responder Con Cita
  #6  
Antiguo 06-07-2015
El_Chava El_Chava is offline
Miembro
 
Registrado: jun 2005
Posts: 62
Poder: 19
El_Chava Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Muchas gracias por compartir la solución

Saludos
De nada para eso estamos para ayudar y compartir soluciones
Responder Con Cita
Respuesta



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
Plantilla Word dentro de un While shoulder Varios 2 06-02-2014 13:47:06
Enviar correo desde Lazarus reevil Lazarus, FreePascal, Kylix, etc. 4 03-05-2013 06:53:01
Enviar correo desde Word MAXIUM Servers 4 11-08-2010 18:54:05
Error al Abrir Plantilla RTF de Word desde delphi ingabraham Varios 1 27-07-2010 15:49:26
Enviar datos o variables a word , desde memo o un reporte ingabraham Impresión 1 08-10-2008 18:37:24


La franja horaria es GMT +2. Ahora son las 15:49:02.


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