[firebase-br] OFF - Exportar dados para Word

Anderson Miranda Barrozo andersonpaduarj em gmail.com
Qua Maio 6 20:48:57 -03 2009


Esta rotina vc passa o nome do .DOC no Word e a tabela dos dados. No word
para vc tem que formatar os campos q vc quer preencher colocando o nome do
respectivo campo da tabela entre [ ].

Exemplo: No cadastro de cliente vc tem os campos CLINOME, CLIENDERECO. Ao
montar o documento no word onde vc quer atualizar o endereço pelo o que esta
na tabela você coloca [CLINOME] e [CLIENDERECO]


Declarar USES o COMOBJ;

procedure GeraWord(wDoc:String;wTabela:TClientDataSet);
var
  MSWord: Variant;
  i:Integer;
begin
  wDoc := InputBox('Documento Word','Documento',wDoc);
  MSWord := CreateOleObject('Word.Application');
  wTabela.First;
  while not wTabela.Eof do
     Begin
       if not fileExists(ExtractFIlePath(Application.ExeName)+'\Word\'+
wDoc+'.doc') then
          begin
            ShowMessage('Arquivo .. [  '+UPPERCASE(wDoc)+'  ] .. não
Encontrado.');
            MSWord.Quit;
            Abort;
          end
       else
MSWord.Documents.Open(ExtractFIlePath(Application.ExeName)+'\Word\'+ wDoc);
       for i := 0 to wTabela.FieldCount - 1 do
          Begin
            MSWord.ActiveDocument.Content.Find.Execute(FindText :=
'['+wTabela.Fields[i].FieldName+']', ReplaceWith := wTabela.Fields[i].Text,
            Replace := 2);
          end;
       // Imprime Documento
       MSWord.ActiveDocument.PrintOut(Copies := 1);
       // Fecha documento
       MSWord.ActiveDocument.Close(SaveChanges := 0);
       // Proximo Registro
       wTabela.Next;
     end;
 // Fecha o Word
 MSWord.Quit;
End;



2009/5/6 Sandro <sandro_rebelo em ibest.com.br>

> Boa Tarde, desculpe pelo off, mas quero ser o mais breve possivel e naum
> sei
> onde começar a procurar isso ( nem no google), e como muitos aki usam
> delphi, talvez me indiquem algum lugar com exemplos.
>
>
> Tenho um cadastro usando firebird claro, e quero altomatica preencher um
> contrato no word com essas informações, utilizo DELPHI 7.
>
> Ex: Partes,  aparecer na posição correta  la  no contrato, endereços...
>  e
> assim por diante.
>
> Grato
>
> Sandro
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
AS Informática
Anderson Miranda Barrozo
(22) 8115-8761
MSN: andersonpaduarj em hotmail.com



Mais detalhes sobre a lista de discussão lista