Pergunta

O que pode ser feito para resolver a exceção:

Crystaldecisions.CrystalReports.Engine.internalexception: Falha ao abrir um lixo.

Foi útil?

Solução

Este é um erro genérico nos relatórios de cristal sempre que a consulta do relatório falha. Pode haver várias causas. Se o seu relatório foi direcionado para um banco de dados específico e, em seguida, o banco de dados foi alterado sem atualizar o relatório, isso pode causá -lo. Também pode ser causado por algo na consulta falhando, como se o relatório for baseado em um procedimento armazenado que não existe no banco de dados em que o relatório está em execução. Tente verificar o banco de dados para o relatório.

Outras dicas

Como dito, este é um erro genérico e, como todos esses erros, é muito frustrante. O problema é que o VS 2003 não possui opção de visualização para relatórios de cristal, por isso é difícil rastrear a fonte do problema. Portanto, a melhor maneira de resolver isso é criar um projeto em branco no VS 2005 ou posterior, importar o relatório de cristal e executar a visualização. Você receberá um erro mais específico então.

Eu tive o mesmo problema e recebi esta mensagem de erro:

Um minério mais campos não pôde ser encontrado no conjunto de resultados. Use o banco de dados verifique se o relatório. Erro no arquivo nome do arquivo {9fee6406-1613-409a-b9bd-c5fda24e3dee} .rpt:

A coluna de linhas não pôde ser encontrada.

Eu estava usando um procedimento armazenado para coletar dados para o relatório e com certeza eu estava passando um parâmetro inválido para o SP. Verifique duas vezes o tipo e o valor dos parâmetros se você estiver usando um SP para preencher os dados do relatório.

Boa sorte!

Também sofri o mesmo erro com o relatório tendo relatórios sub. Problema resolvido enquanto mudo para cada sub -relatório e o faço verificar novamente com o banco de dados/tabelas/views.

Isso é causado por alguma discrepância em suas relações, como as junções da esquerda opostas ou algo semelhante. O CR também tem o mau hábito de criar links 'padrão' cada vez que você modifica a lista de tabelas e visualizações necessárias para o relatório. Às vezes, pode até criar automaticamente links recursivos que podem não ser visualizados 'de uma só vez' na tela de relações.

Se você não consegue encontrar qual (s) relação (s) está causando o problema (às vezes não é tão óbvio), você terá que fazer alguns testes de tentativa e erros adicionando/removendo tabelas do seu relatório.

Toda vez que você adiciona uma nova tabela em cristal, ele adiciona seus próprios links em tabelas já vinculadas, algumas vezes ela vincula os 2 campos da mesma tabela. Certifique -se de conhecer seus links para passar depois de adicionar uma tabela e role todas as mesas para ver qualquer link criado para a mesma tabela

Eu recebi :

CrystalDecisions.CrystalReports.Engine.internalException foi mensagem não tratada = o servidor de aplicativos de relatório falhou

O Google me trouxe aqui. Para aqueles que têm problemas semelhantes.

Para o registro: eu tinha uma matriz de byte [] com uma imagem e removi o log do relatório e o erro parou. Agora tenho que descobrir o que fiz de errado com o logotipo.

Eu tive esse problema - usamos logins SQL para nossa segurança (não integrados / conexões DSN)

Ao conceder permissões de execução ao usuário para o meu procedimento armazenado, corrigi o problema.

Realmente, realmente não podia odiar o Crystal mais por sua exceção mascarada - que isso seja uma lição para todos os programadores;

Try
   'your code here
Catch
   Throw new exception("Hey, here's a really friendly but completely useless error message")
End Try

resultará em dor para futuros desenvolvedores - não faça isso!

Quando você verifica seu banco de dados, pode dizer que está atualizado, nesse caso, você tem mais duas opções para verificar:

a) Atualizando o relatório (um ícone em forma de raio), se você tiver um problema com um campo, como um campo SQL, ele fornecerá o erro e mostrará a janela de edição para o campo.

b) Executando a consulta diretamente no SQL, se houver um problema com a consulta, você também receberá essa mensagem em Crystal, mas o SQL dirá exatamente o que deu errado.

Verificar Alterar informações de logon do banco de dados do Crystal Report no tempo de execução no vs2005 para ajuda.

Linha importante nela é:

table.Location = Database & ".dbo." & table.Name

Para mim, o problema foi corrigido quando eu conectei e conectei de volta ao servidor SQL para o qual o relatório estava se conectando

No procedimento da sua loja, se você estiver usando

SET NOCOUNT ON;

Então basta remover isso

--SET NOCOUNT ON;

Agora verifique o banco de dados do seu relatório, crie e execute sua solução.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top