Fórum Como usar o Preview - documentos feitos em word #209353

25/01/2004

0

Alo galera !

Seguite...

Tenho uma chamada do meu programa ao Word da Microsoft para que o cliente possa digitar um contrato de locacao. O documento chamado é pré-determinado

ShellExecute (0, Nil, ´WinWord.Exe´,´c:\Sis\Doc\Contrato.doc´, Nil, SW_ShowMaximized);

Em um outro button, gostaria de chamar uma espécie de preview onde de lá o cliente possa somente visualizar ou imprimir se desejar. Não gostaria que o cliente usasse o Word para imprimir, pois tenho campos que precisam ser impressos junto.

Perguntas:

1) Será esse o melhor método de criação/impressão de documentos ?

2) Como inserir dados como nome,cpf, endereco etc no documento feito pelo Word durante a impressão?

3)Se tudo isso for obsoleto, favor me passarem dicas melhores.

Atenção! Tenho 12 anos de Clipper e 1 ano de Delphi, favor explicar com riqueza de detalhes ou não vou conseguir por para funcionar.

Mais uma vez....

Obrigado a todos os que se dispuserem a me ajudar.

Emerson - Brasília.


Emerson_

Emerson_

Responder

Posts

25/01/2004

Aroldo Zanela

Colega,

[color=blue:40a3b18c3e]1) Será esse o melhor método de criação/impressão de documentos ? [/color:40a3b18c3e]
Não, verifique OleAutomation ou a paleta servers. No site da Clube Delphi tem exemplos.

[color=blue:40a3b18c3e]2) Como inserir dados como nome,cpf, endereco etc no documento feito pelo Word durante a impressão? [/color:40a3b18c3e]

Antes da impressão com FindText e ReplaceWith. No caso, usando OleAutomation.

[color=blue:40a3b18c3e]3)Se tudo isso for obsoleto, favor me passarem dicas melhores. [/color:40a3b18c3e]

Conforme acima.

[color=blue:40a3b18c3e]Atenção! Tenho 12 anos de Clipper e 1 ano de Delphi, favor explicar com riqueza de detalhes ou não vou conseguir por para funcionar. [/color:40a3b18c3e]

Abaixo um exemplo para ajudar no entendimento:

var Doc: Variant;
begin
Word2k := CrieObjeto(´Word.Application´);
  Doc := Word2k.Documents.Open(´c:\dados\factoring\contrato de factoring.doc´);

  // Contratante
  Doc.Content.Find.Execute(FindText := ´@01´, ReplaceWith := tbCadastroCED_NOME.Value);
.
.
.
  Doc.Content.Find.Execute(FindText := ´@53´, ReplaceWith := Concat(FloatToStrF(rxPromissoria.Value,ffNumber,15,2),´ (´,DinExtenso(rxPromissoria.Value),´)´));


  Word2k.Visible := true;


Utilize o link acima ´Pesquisar´ e procure por OleAutomation para encontrar mais exemplos e detalhes.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar