GARANTIR DESCONTO

Fórum Rave reports fechando o aplicativo #351160

27/12/2007

0

quem ja viu o Rave reports fechar o aplicativo ao tentar dar um Preview?


Mahdak

Mahdak

Responder

Posts

28/12/2007

Mahdak

desisti de tentar encontrar a solução....
fiz os relatórios no word mesmo... só que pintou um probleminha
gera o erro quando o aplicativo vai ler a linha abaixo:

Doc.Selection.MoveRight(12);
erro: ´Method ´Selection´ not supported by automation object´

por via das duvidas vou postar aqui o metodo de acesso ao word.
a idéia é que eu tenho uma tabela com varios dados entao no laço while abaixo eu vou até a variavel da primeira coluna da tabela que quero começar a inserir os dados e dali em diante eu vou pulando de celula em celula e inserindo os dados.

se alguem puder me dar uma mão fico muito agradecido..

var
Doc,Docs,WinWord: Variant;
arquivo,DocGerado : String;
begin
    // Pega o nome do arquivo...
  arquivo := ExtractFilePath(Application.ExeName) + ´Laudo.doc´;


  try
    WinWord := CreateOleObject(´Word.Application´);
  except
    raise Exception.Create(´Não foi possível iniciar o MS Word!´);
  end;


    WinWord.Visible := false;     //Não Mostra o Word
    Docs := WinWord.Documents;    // Pega uma interface para o objeto que manipula documentos
    Doc := Docs.Open(arquivo);    // Abre um Documento

    //Capa
    Doc.Content.Find.Execute(FindText := ´@NumeroLaudo´, ReplaceWith := cdsAmostraNumeroLaudo.AsString);
    Doc.Content.Find.Execute(FindText := ´@Amostra´, ReplaceWith := cdsAmostraAmostra.AsString);
    Doc.Content.Find.Execute(FindText := ´@Classe´, ReplaceWith := cdsClassificacaoClasse.AsString);


frmClass3RRes.cdsTox.First;
    while not frmClass3RRes.cdsTox.Eof do
    begin

      if frmClass3RRes.cdsToxParametro.AsString = ´´ then
      begin
        Doc.Content.Find.Execute(FindText := ´@PLix´, ReplaceWith := ´´);
        Doc.Selection.MoveRight(12);
      end
        else
          begin
            Doc.Content.Find.Execute(FindText := ´@PLix´, ReplaceWith := frmClass3RRes.cdsToxParametro.AsString);
            Doc.Selection.MoveRight(12);
          end;

      if frmClass3RRes.cdsToxResultado.AsString = ´´ then
      begin
        Doc.Selection.TypeText(Text := ´´);
        Doc.Selection.MoveRight(12);

      end
        else
          begin
            Doc.Selection.TypeText(Text := frmClass3RRes.cdsToxResultado.AsString);
            Doc.Selection.MoveRight(12);

          end;
end;
.
.
.
WinWord.Quit; // Fecha o Word
end;



abraços a todos[/b]


Responder

Gostei + 0

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

Aceitar