Cita:
Empezado por roman
Es muy sencillo. Creas la plantilla .dot en Word usando campos de tipo DocVariable (menú Insertar|Campo). A cada campo le asignas un nombre al momento de insertarlo. El documento .dot te quedaría más o menos así:
Señor
{ DOCVARIABLE nombre\* MERGEFORMAT }
{ DOCVARIABLE direccion\* MERGEFORMAT }
Estimado, le comunicamos que con fecha { DOCVARIABLE fecha\* MERGEFORMAT }, usted tiene una deuda de { DOCVARIABLE deuda\* MERGEFORMAT }, le rogamos regularizar su situacion.
Atentamen el cobrador
Conviene que actives la visualización de campos en el menú Herramientas|Opciones|Ver.
En Delphi, puedes llenar la plantilla así:
Código Delphi [-]
uses ComObj;
...
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('carta.dot');
Documento := Word.Documents.Item(1);
(* Asignas valores a los campos *)
Documento.Variables.Add('nombre', 'pepe pérez');
Documento.Variables.Add('direccion', 'domicilio conocido');
Documento.Variables.Add('fecha', '1976-02-29');
Documento.Variables.Add('deuda', '$1.00 m.n');
end;
Claro está que los valores que asignes a los campos los puedes tomar de una consulta a la base de datos o de cualquier otra fuente.
// Saludos
|
Agradezco mucho la ayuda. Menos mal que encontré este hilo para enterarme del método que enseñas.
Gracias