Pergunta

Se você possui duas versões do mesmo relatório (.rpt) e deseja estabelecer quais são as diferenças exatas, qual a melhor forma de fazer isso?Já vi algumas ferramentas comerciais para fazer isso, mas não estou muito interessado em desembolsar dinheiro por algo que deveria ser relativamente simples.Posso conectar-me à API Crystal e simplesmente listar todas as propriedades de cada campo ou algo assim?Por favor, alguém me diga que existe um projeto Open Source em algum lugar que faz isso...@:-)

@Kogus, diferenciar as saídas como texto não ocultaria quaisquer diferenças de formatação?

@ladoucep, não consigo exportar o relatório sem dados.

Foi útil?

Solução

Posso conectar -me à API de cristal e simplesmente listar todas as propriedades de todos os campos ou algo assim?Por favor, alguém me diga que há um projeto de código aberto em algum lugar que faça isso ...@:-)

Na verdade, existe essa API.Eu escrevi um aplicativo VB6 para fazer exatamente o que você pediu e muito mais.Acho que até migrei para VB.Net.Como era para meu próprio uso, não perdi muito tempo deixando-o 'polido'.Estava pensando em lançá-lo, mas não tive tempo...

Outra abordagem que usei no passado foi criar um aplicativo do Access para ajudar a gerenciar grandes projetos de desenvolvimento de relatórios.Um de seus muitos recursos inclui a capacidade de extrair as tabelas usadas pelo relatório e as instruções SQL usadas por seus comandos e expressões SQL.Sua intenção é fornecer uma perspectiva global de quais relatórios usam quais tabelas.Provavelmente ainda o tenho em algum lugar...

**editar 1 **

BusinessObjects Enterprise XI (R?) possui um recurso chamado 'Meta Manager'.Ele examinará periodicamente o conteúdo do Repositório e salvará os resultados em um banco de dados.Ele usa o Report-Application Service (RAS) para gerar os metadados.É uma licença adicional de 5 dígitos, é claro.

**editar 2 **

Considere usar o PowerShell para fazer o trabalho: PsCrystal.

Outras dicas

Uma técnica útil é gerar ambas as versões do relatório em texto simples e, em seguida, comparar essas saídas.

Você poderia escrever algo usando o componente Crystal Report para descrever cada propriedade do relatório, como você descreveu.Então você poderia produzir que para texto e diferença aqueles.Não conheço nenhuma ferramenta de código aberto que faça isso por você, mas não seria muito difícil escrevê-la.

@pergunta na postagem:Diferenciar as saídas só mostraria alterações de formatação se o relativo as posições mudaram.Por exemplo, se eu tivesse isso:

antes:Nome, sobrenome, endereços

depois:Sobrenome, Nome, Endereço

Então isso apareceria como uma diferença.

Mas se eu tivesse apenas aumentado a coluna de endereço em alguns pixels ou alterado de texto simples para negrito, você está certo, isso não apareceria.

Uma técnica que usei com grande efeito no passado é imprimir relatórios de ambas as versões com base nos mesmos dados.Pego então a primeira página de cada versão, coloco uma em cima da outra (é importante não confundi-las) e seguro-as contra uma janela.Geralmente é muito fácil ver quaisquer diferenças, e essas diferenças podem ser anotadas manualmente com um instrumento de escrita adequado, como um lápis.Repita para cada página do relatório.

É certo que, para relatórios grandes, isso pode consumir muito tempo e ser propenso a erros, mas essas limitações podem ser superadas com paciência e cuidado.

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