GARANTIR DESCONTO

Fórum Ok... neste forum ninguem nunca passou por isto? #270216

25/02/2005

0

Tenho um aplicativo shered para 10 maquinas em rede, em 8 delas são gerados relatorios com graficos em quickreport (TQRChart), em duas delas o preview funciona porem qdo imprime ele fecha o programa, alguma alma caridosa q ja tenha passado por isto, por favor me de uma luz.
O sistema operacional é XP, as impressoras estao em rede, o delphi é 7, o erro é Stack OverFlow, ja fui nas variaves dos diretorios temporarios e os diminui de tamanhao ex: c:\temp. Alguem tem uma ideia?


Host

Host

Responder

Posts

25/02/2005

Sanses

Estive ainda hoje no escritório de uma advogada amiga minha que reclamava que seus processos feitos no Word, ao serem enviados para a impressora (uma multifuncional LexMark) simplesmente desligavam o pc dela. Bem quando o documento era aberto o Word exibia uma mensagem de que as margens da seção estavam fora.

O Quick Report não dá essas mensagens, mas vc já experimentou ver as configurações da impressora?? Sim pq se elas estão em rede e for um driver daqueles que acompanham o windows, é complicado, pois na nstalação simplesmente ele copia.

Veja se não é isso, sei que não tem muito a ver, mas em casos como este, onde não temos resposta, vale a pena eliminar todas as possibilidades...

Espero ter sido útil
Sanses


Responder

Gostei + 0

26/02/2005

Isabelct

O sistema operacional é XP, as impressoras estao em rede, o delphi é 7, o erro é Stack OverFlow, ja fui nas variaves dos diretorios temporarios e os diminui de tamanhao ex: c:\temp. Alguem tem uma ideia?


Se está dando StackOverflow, provavelmente o problema é no seu relatório. Este tipo de erro normalmente acontece quando se tem uma função recursiva mal projetada, de forma que ela não tem condição de parada, ou então quando uma rotina ´A´ chama a rotina ´B´ e esta rotina ´B´ torna a chamar a rotina ´A´, e assim elas ficam até a pilha de processamento estourar.

Eu aconselharia você a revisar este relatório para verificar se isso não está acontecendo.


Responder

Gostei + 0

26/02/2005

Sanses

Então, como eu ia dizendo, foi só configurar o tamanho do papel no driver da impressora corretamente que funcionou tudo certo.

quanto a resposta da isabelct, pode até ser mesmo, como o próprio nome do erro diz, mas pq acontece só em duas máquinas e nas outras 8 funciona....

vale a dica de revisar o código, mas checar a configuração da impressora se está igual as outras máquinas que estão funcionando tb é uma saida

Sanses


Responder

Gostei + 0

26/02/2005

Aroldo Zanela

Colega,

Nunca passei por este problema, entretanto, acredito que as ´pistas´ mencionadas fazem sentido, além disso, considere também as configurações do hardware e permissões nas máquinas com problemas. Sugiro ainda, proteger a criação das consultas em blocos try..finally, visando assegurar a correta liberação da memória.

Exemplo:

var Query: TQuery;
begin
  Query := TQuery.Create(Nil);
  try
    Query.DatabaseName:= ´ALIAS´;
    Query.SQL.Text:= ´SELECT * FROM TABELA´;
    Query.Open;
    { Faça algo }
  finally
    FreeAndNil(Query);
  end;
end;



Responder

Gostei + 0

02/03/2005

Host

Ok galera.... nao descobri o pq q so naquelas maquinas acontecia o problema, o q fiz herdar do quickreport e adptar o codigo para o novo objeto..... obrigado .... por todos mas resolvi da melhor forma no braço.. hehe


Responder

Gostei + 0

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

Aceitar