Colegas,
O PROGRAMA: Utilizo o word para geração de relatórios,
pois acho que fica mais fácil para o usuário alterar,
se trata vários modelos de contratos que são abertos,
alterados algumas palavras, impresso e "salvado como".
Para fazer isso utilizo uma thred pois este processo é
demorado e se não fosse assim trava o sistema até o
processo ser finalizado.
Segue abaixo assinatura da minha thred:

unit UTGerarArquivo;
interface
uses
  SysUtils, Variants, Classes, Forms, Dialogs, ComObj,
ESPFuncoes;
type
  TGeraArquivo = class(TThread)
   constructor Create;
   procedure Execute; override;
   procedure CriarContrato();
   procedure AbrirModeloWord(tipoBolsa : string);
   procedure CriarDocWord();
   procedure SubstituiCampos(Arquivo : Variant);
   procedure Salvar();
   procedure Imprimir();
  end;
implementation
Uses UGerarContrato;
var
  //Variáveis relacionadas ao documento Word
   WinWord, Docs, Doc: Variant;
   objWordCriados : Boolean;
   caminhoArq, nomeArq: string;
{ TGeraArquivo }

Utilizo minha thred assim:
procedure TFrmGerarContrato.bbtGeraClick(Sender:
Object);
var ListaArqWord : Array of TGeraArquivo;
begin
   //imprimir contrato corrente
   SetLength(ListaArqWord, nArqWord);
   ListaArqWord[nArqWord-1] := TGeraArquivo.Create;
   Inc(nArqWord);
end;

O PROBLEMA:
Desta forma achei que poderia criar e imprimir vários
contratos sem esperar um fim do processamento de cada
um. Mas quando mando imprimir um arquivo e logo em
seguida mando outro só é impresso o último ou seja
antes do primeiro ser impresso o processo seguinte já
alterou o modelo e ai saí repetido alem disso consome
muita memória pois para cada chamada da thred fica é
criado um processo WINWORD.

Alguem tem uma idéia como posso alterar/melhorar o
procedimento acima?

OBS: Desculpem o destamento, só queria que fosse
entendido.

Desde já agradeço,

Edmilson Pontes


        


        
                
_______________________________________________________ 
Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e 
muito mais. Instale agora! 
www.yahoo.com.br/messenger/


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a