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 21-07-2006
crack_neon crack_neon is offline
Miembro
 
Registrado: abr 2006
Posts: 28
Poder: 0
crack_neon Va por buen camino
Wink Y en un documento ya guardado..

Hola un saludo,

Andaba buscando algo como esto, ya probé el ejemplo y definitivamente funciona, pero el detalle está en que yo necesito abrir las consultas en un documento que ya ha sido creado y posicionar los datos en un área específica del documento, es como se ha preguntado en otros hilos, tener una plantilla y solo modificar los datos que traemos de la bd.

La verdad que ya vi opciones pero ninguna me ayuda mucho tambien pensaba exportar de QReport a word, pero igual siento que mucho mas complicado y hay un hilo donde Marcozorrilla decia que no se podia, asi que me olvido de esa alternativa.

Creo que esta forma de pasar los datos es la mejor, solo necesito saber como enviarlos a un archivo ya creado.

Hojala me pueda dar una idea estimado roman.

De antemano gracias...como siempre confiando en los expertos.
Responder Con Cita
  #2  
Antiguo 22-07-2006
rafita rafita is offline
Miembro
 
Registrado: ago 2003
Ubicación: Cuenca- España.
Posts: 309
Poder: 24
rafita Va por buen camino
Hola compañeros
Yo aporto un trozo de código donde se abre un documento de word existente (como requiere Crack-neon) y sustituyo un "Marcador" del documento y después añado unos datos en columnas (mediante tabuladores). Al final de código intentaba convertir ese trozo del documento en una tabla, pero como me fallaba lo he borrado (y le he explicado al usuario como puede hacerlo él desde word.
Código Delphi [-]
 
procedure TFConsultas.GenerarDocumentoWord;
var Fichero, SoloLectura, SalvarCambios, FormatoOriginal, Ruta, Marcador, Contenido : OleVariant;
    MiDocumento : _document;
 begin
  // Conexión con Word
  try
    MiWord.Connect;
  except
    ShowMessage('WordXP (o posterior) no está instalado en este equipo');
    Abort;
  end;
  // selección del documento base
  Fichero:='Z:\Informatica\delphi\Bomberos-Personal\Informe de un día.doc';
  // abrir el documento seleccionado con los parámetros necesarios
  SoloLectura:=True;
  MiDocumento:=MiWord.Documents.Open(Fichero, EmptyParam, SoloLectura,
               EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
               EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  // sustituir el marcador de la fecha
  Marcador:='FechaTitulo';
  Contenido:=FechaLiteral(Label2.Caption);
  if MiDocumento.Bookmarks.Exists(Marcador) then MiDocumento.Bookmarks.Item(Marcador).Range.InsertBefore(Contenido);
  // insertamos los campos de la consulta en la tabla
  MiDocumento.Paragraphs.Last.Range.Font.Size:=12;
  ADOQuery1.First;
   if ADOQuery1.RecordCount>0 then
     While Not ADOQuery1.Eof do
     begin
       MiDocumento.Paragraphs.Last.Range.Text:=ADOQuery1.FieldByName('Apellidos').AsString+', '+ADOQuery1.FieldByName('Nombre').AsString+#9
       +ADOQuery1.FieldByName('Categoria').AsString+#9
       +wManiobras+wHorasExtras+wReduccion+wDiaLibre+wBaja+#9
       +ADOQuery1.FieldByName('Observaciones').AsString+#13;
       ADOQuery1.Next;
     end;
  // aquí habría que seleccionar el trozo de documento y convertirlo en tabla, pero como ya he dicho, no lo h conseguido
  // maximizamos la ventana de Word y desconectamos
  MiWord.WindowState:=wdWindowStateMaximize;
  MiWord.ActiveWindow.WindowState:=wdWindowStateMaximize;
  MiWord.PrintPreview;
  MiWord.Visible:=True;
  SalvarCambios:=wdDoNotSaveChanges;
  FormatoOriginal:=unAssigned;
  Ruta:=unAssigned;
  try
    MiWord.Disconnect;
  except
    on e:Exception do
    begin
      ShowMessage('Se ha producido el error '+e.Message);
      MiWord.Disconnect;
    end;
  end;
end;

Espero te sirva para algo.
Saludos
__________________
Rafita.
Responder Con Cita
  #3  
Antiguo 24-07-2006
crack_neon crack_neon is offline
Miembro
 
Registrado: abr 2006
Posts: 28
Poder: 0
crack_neon Va por buen camino
Gracias....

Gracias rafita, justo lo que buscaba, ya terminé de implementar el código y todo salio a la perfección.

Otro problema resuelto.

Saludos nuevamente.

Última edición por crack_neon fecha: 24-07-2006 a las 20:00:25.
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


La franja horaria es GMT +2. Ahora son las 02:29:52.


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