Qual Crystal Reports e SSRS (SQL Server Reporting Services) é melhor usar?
Qual Crystal Reports e SSRS (SQL Server Reporting Services) é melhor usar?
Respostas:
Por um lado, o Crystal Reports é uma pilha fumegante de cocô de burro caro e exagerado e, por outro lado, o SSRS realmente cumpre todas as promessas que o marketing de RC faz - e é gratuito.
Meu desprezo pelo RC vem de muitos anos sendo obrigado a usar a coisa horrível. Não há realmente nenhum ponto em detalhar a odiosidade absoluta de RC quando eu posso dar a você referências como Clubbing the Crystal Dodo ou Crystal Reports Sucks Donkey Dork (não tão engraçado, mas sim mais literário e fundamentado em detalhes técnicos).
Livre?! Sim. Você nem mesmo precisa comprar o MS SQL Server para obtê-lo - você pode instalar o SQL Express com Advanced Services. Ele está disponível como um download que inclui o SQL Server Reporting Services . Embora o SQL Express seja limitado no número de usuários simultâneos que pode suportar, as seguintes observações são salientes:
A licença para SSRS obtida como parte do SQL Express requer apenas que seja implantada como parte do SQL Express. Não há nada que impeça a conexão com outras fontes de dados ou exigindo que um relatório obtenha dados do SQL Server.
A versão acima mencionada do SSRS não tem restrições intrínsecas às conexões do usuário. Todas as limitações são impostas ao mecanismo de banco de dados SQL Express.
O SSRS usa ADO.NET, que inclui, fora da caixa, drivers para Oracle, Jet (Access), OLEDB e ODBC
Assim, você pode conectar a versão gratuita do SSRS a qualquer back-end ao qual seja possível conectar o ADO.NET, que inclui (por exemplo) MySQL. Rory me disse em um comentário abaixo que isso "não é compatível". Isso é verdade, mas não consigo encontrar nada na licença que proíba isso e, embora os drivers não sejam fornecidos pelo SSExpress, eles certamente são fornecidos pela maioria das versões do Visual Studio e você pode enviá-los em seu kit de instalação. Esta pode não ser uma configuração expressamente suportada, mas e daí? Mesmo se você tivesse uma licença MSSQL completa, seria um pouco demais esperar que a Microsoft o ajudasse a conversar com algum banco de dados de terceiros (para não mencionar que é um pouco estranho).
Eu uso o SSRS extensivamente no trabalho, tanto para relatórios internos quanto para relatórios externos incorporados em aplicativos ASP.NET que fornecem serviços de bureau para um grande número de clientes pagantes. Em nosso caso, acontece que o armazenamento de apoio é uma cópia licenciada do Microsoft SQL Server 2008, mas isso é secundário aos méritos técnicos de nossa solução de relatórios.
Existe uma longa lista de recursos que o Crystal Reports afirma oferecer suporte, mas que não funcionam ou exigem uma licença extremamente cara se você quiser mais de cinco usuários. Você não pode nem mesmo confiar no CR para fazer SQL corretamente. SELECT COUNT(*) FROM SOMETABLE WHERE 1=0
deve produzir um resultado de zero, mas produz um . O mecanismo de consulta embutido está com defeito, e uma equipe que estraga algo que um bando de amadores pode fazer de graça (por exemplo, MySQL) não tem esperança de obter algo que você descreveria como desempenho de seu código.
E eles não fazem. A coisa má vaza memória como um balde sem fundo, e se você usar ferramentas de criação de perfil SQL, vai descobrir que é espetacularmente ineficiente.
Quanto ao alegado suporte, posso atestar pessoalmente que os bugs de redimensionamento do diálogo não foram corrigidos por décadas após terem sido documentados publicamente pela primeira vez. Se você pegar seu cartão de crédito e pagar os resgates extorsivos exigidos (eu também gostaria de um bom pagamento para sustentar tal horror), você se verá conversando com alguém que afirma se chamar David, mas inexplicavelmente o pronuncia "Dah-feet", e quem nem entende sua pergunta, muito menos tem uma resposta.
A situação de suporte do SSRS é bastante semelhante, mas na verdade funciona, então você não precisa de muito.
O SSRS, por outro lado, faz tudo o que o CR afirma fazer. Não é sem bugs, mas eles são deliciosamente poucos e raramente sobrevivem a mais de um ciclo de lançamento.
A UI do designer SSRS é hospedada no IDE do Visual Studio. Ele é apresentado de maneira atraente no estilo típico da Microsoft, mas mais do que isso, é muito bem pensado, incorporando vários desvios simples, mas fundamentais, dos designers de relatórios tradicionais. Por exemplo, para apresentar dados tabulares, você define uma tabela em vez de ficar mexendo em caixas de texto individuais. Como resultado, você não precisa se atrapalhar tentando alinhá-los, e colocar bordas neles é um exercício de folha de estilo trivial.
O SSRS realmente faz todas as coisas que o CR afirma, é barato, há uma extensa documentação técnica confiável, é projetado para ser estendido (também documentado) e você pode conectá-lo a qualquer coisa para o qual possa obter um driver ODBC. Este é um acéfalo.
Na verdade, parece que a sobreposição de grupos também pode ser feita com o SSRS2005, embora eu nunca soubesse disso. Será que alguém já resolveu o problema de posicionamento relativo do fundo?
Tenho usado o Crystal Report até a versão 10 e sempre fazia coisas que queria com sucesso junto com os aplicativos ASP.NET. Sua saída na web é muito boa como WYSIWYG e as exportações para Excel e PDF também são precisas. A impressão também é maravilhosamente correta.
Recentemente, tenho trabalhado no SSRS 2005 por cerca de um ano e tenho vivido para testemunhar tantas lacunas que devem ter sido fornecidas prontamente. A saída da Web do SSRS varia muito com diferentes navegadores e resoluções de diferenças e facilmente deixaria um desenvolvedor doente. Além disso, os problemas de rolagem com o visualizador de relatórios deixariam o usuário final louco muito cedo, pois ele é baseado em HTML usando um IFRAME. ( Nota: o Crystal 13 usa um IFRAME no visualizador da web que sofre de problemas de quebra de texto e sobreposição esporádicos) As exportações não são nada boas. Você não pode alinhar as imagens à esquerda ou ao centro nas células e não pode especificar as cores de fundo das imagens. Você não pode centralizar o corpo do relatório completo. Por possibilidade, eu brinquei com o HTML renderizado por horas e descobri substituições exatas para fazer isso funcionar, mas essas correções simples não eram conhecidas pelos desenvolvedores de SSRS, eu acho porque provavelmente, eles nunca usaram SSRS para si.
Além disso, em aplicativos da web, você precisa suportar a interface do usuário ruim para parâmetros prontos para uso. Eu simplesmente o removi completamente e o custo de criá-lo em páginas ASPX me fez pensar em criar relatórios tabulares em DataGrids em vez de usar ObjectDataSource e técnica de paginação de banco de dados. Você não pode organizar os parâmetros de acordo com as suas necessidades. Bugs nas seções de parâmetros postback concluem relatórios sem nenhuma alteração. A paginação com agrupamento funciona com um truque, mas a classificação falha no conjunto de dados completo. Para cada bit de nível médio a avançado de requisito de IU, o SSRS custa tanto tempo para descobrir que simplesmente não é possível. Como há menos usuários do SSRS, a comunidade online não tem boas soluções para problemas simples. Sem esquecer que o lado bom do SSRS é sua implantação, notificações embutidas, cache e configuração, mas nenhuma IU para vencer.
O resumo é que eu vi o SSRS frustrando você apenas devido à falta de resposta da equipe de suporte da Microsoft quando eles têm que dizer 'desculpe! não agora 'depois de um mês. O SSRS 2008 também não tem muitos desses problemas corrigidos imediatamente. Além disso, mudar para o SSRS '08 também significa uma migração completa de plataformas de back-end. Mantendo a equação em mente que quanto mais você usa um software, mais ele amadurece com o tempo, o Crystal é de qualquer forma uma escolha muito melhor porque o SSRS logo acumula custos para corrigir seus bugs por você mesmo.
Você pode implantar um aplicativo usando Reporting Services incluindo 3 arquivos DLL. É um grande benefício. (Observação - você deve obter um dos 3 arquivos DLL do GAC.)
Com o Crystal Reports, você deve instalar o tempo de execução em cada máquina que executará o aplicativo (um site ou aplicativo cliente).
Reporting Services tem todos os recursos de que a maioria das pessoas precisa e a implantação é MUITO mais fácil. Nunca usarei o Crystal Reports, a menos que seja necessário.
Uma vez que este tópico foi aberto novamente, adicionarei meus dois centavos. Tive que usar o Crystal por cerca de três anos durante a versão 7 e 8 dias. Odeio cada minuto disso. Eu vi um pouco das versões mais recentes e ainda não gosto.
Não gosto tanto disso que me dói dizer o seguinte: pela minha experiência, o Crystal é mais adequado do que o SSRS para relatórios complexos. Um colega de trabalho e eu tentamos desesperadamente fazer um layout de relatório moderadamente complexo funcionar no SSRS e desistimos. Minha impressão sobre o produto - apenas minha opinião, veja bem - é que ele ainda não está pronto para o horário nobre.
O Crystal vai fazer você odiar sua vida e procurar outro emprego, mas há um motivo pelo qual é tão difundido: funciona.
Reporting Services é muito melhor na minha experiência. É um ambiente melhor, mas o melhor de todas as conexões (fontes de dados) são separadas do relatório e podem ser compartilhadas. Isso torna a implantação muito mais simples entre ambientes.
Eu usei os dois, vou adicionar alguns pontos ao que já foi dito:
Para coisas simples, eu recomendo o SSRS por padrão. Crystal é um pouco inchado e peculiar.
O Crystal pode exportar facilmente para o formato MS Word (.doc). Os clientes querem isso com bastante frequência na minha experiência.
Se a formatação for importante, o Crystal pode ser melhor. Por exemplo, os relatórios do SSRS não podem ter mais de um tipo de texto em uma única caixa de texto. O que significa que você não pode ter, digamos, um comentário no topo do relatório que contenha itálico e texto normal. Crystal pode fazer isso:
Nota: Este relatório contém dados da data de início à data de término, incluindo essas datas.
SRSS não pode (sem várias caixas de texto sobrepostas). Certa vez, recebi um documento de 20 páginas, para ser convertido em um relatório com dados para cerca de uma dúzia de gráficos e tabelas. Comecei no SSRS, mas percebi que no Crystal eu poderia simplesmente copiar e colar as partes codificadas do relatório direto do Word, com títulos coloridos e tudo, e economizei dias de trabalho. Portanto, Crystal tem um "designer" melhor em muitos aspectos.
Atualização:
Aparentemente, esses dois problemas foram corrigidos no SRSS atual. Alguém se importa em comentar mais sobre isso?
Eu concordo com @Carlton em parte pelas razões que ele descreve. Também acho que os serviços de relatórios são um produto mais maduro (embora o Crystal Reports já exista há mais tempo). O modelo de teste e implantação é bastante robusto e a capacidade integrada de rastrear o uso de relatórios é muito útil.
Também acho muito mais fácil projetar relatórios no Reporting Services - a Microsoft aprendeu como construir um bom IDE, enquanto o Crystal IDE sempre pareceu uma reflexão tardia (embora seja melhor do que uma placenta, que é o que costumava ser) .
Edit: Pensamentos adicionais Eu também acho que em uma loja do Windows, o SSRS oferece todos os tipos de integrações doces com o sistema operacional e o SQL Server. Você pode contar com assemblies SQL para reutilização de código interno com bastante facilidade no SSRS, e a integração com o modelo de segurança do Active Directory torna a proteção de seus relatórios muito fácil.
Cara ... minha empresa tem tantos relatórios de cristal ... e a empresa anterior também tinha muitos. Da versão 8.5 à 11.5. Eles meio que já estão com o pé na porta, por assim dizer. Acho que o CrystalReportViewer é um lixo fumegante, mas funciona (na maior parte).
Depois de ler algumas dessas respostas, estou mudando para o SSRS em meu próximo projeto de relatório! A escrita está na parede ... MS retirará Crystal do VS e substituirá por SSRS. A única coisa que vai ser ruim é quando o MS começar a cobrar por ele.
EDIT: Brincando com o SSRS hoje e parece bastante promissor. Devo dizer que o designer está demorando um pouco para se acostumar ... O CR Designer supera a facilidade de uso. Você pode dizer que isso foi projetado para programadores, enquanto o CR é voltado para designers de relatórios.
EDIT2: SSRS realmente falha em atender às minhas necessidades de relatórios. Projetar relatórios é uma merda quando você deseja visualizar e nenhum prompt de parâmetro disponível para autônomo. Existe uma maneira melhor de projetá-los ... de preferência não no VS?
Você pensou em uma alternativa? Se você quiser usar os recursos do Crystal Reports, mas não quiser pagar muito por isso, dê uma olhada no Crystal-Clear que é uma ferramenta de relatório baseada em Java que também oferece suporte a modelos do Crystal Reports. Ele vem com um designer de GUI e as fontes de dados também são configuráveis por sistema. (Quase como ODBC, basta definir um nome para a conexão e a conexão é configurada no sistema.)
Eu me pergunto por que ninguém mencionou um grande problema com CR - que ele simplesmente falha no controle de origem ou no ambiente de equipe. Corrija-me se eu estiver errado, mas eu realmente procurei muito por qualquer ferramenta de comparação de relatórios. Há um (lançado há cerca de um ano), mas simplesmente não funciona bem - não porque seja ruim, mas (eu acho) porque o CR simplesmente não expõe a estrutura do relatório corretamente ou algo assim ... Tentei exportar .rpt para XML, mas é desajeitado e errado. Até tentei escrever meu próprio comparador .rpt.
Não se trata apenas de desenvolvimento de equipe; mesmo que haja um único desenvolvedor, é um pesadelo manter as versões dos relatórios e se o seu cliente decidir adicionar algumas coisas ou alterar algumas cores, você agora está condenado a rastrear cada caixa de texto, já que não há absolutamente nenhuma maneira de descobrir as mudanças.
O formato RDL é muito mais limpo e aberto. E isso pode ser uma grande vantagem.
Eu usei os dois por anos. O Crystal Reports cobra muito caro e tento usar o SSRS sempre que possível. No entanto, o SSRS não suporta firefox ou qualquer outro navegador, apenas o IE, isso é um problema. Os relatórios no Crystal parecem mais bonitos e as exportações são mais poderosas, os usuários querem uma boa exportação para o Word. Se você é um programador java, eu usaria Jasper Reports, é gratuito e usa a linguagem Java para funções.
Usei ambos (Crystal Reports 2008 e SSRS 2008) porque não percebi esse tópico a tempo.
Além da configuração que foi um pouco mais fácil com o CR, não pude notar um único recurso em que o CR está pelo menos no mesmo nível do SSRS. Sim, o Crystal Reports é realmente ruim.
Na minha opinião, a pior parte em CR é o IDE. Mas há também outros recursos matadores, como baixo desempenho do SQL e gráficos de aparência horrível (pelo menos na versão CR que vem com o VS 2008) também são recursos "matadores" notáveis.
Trabalhei com CR e SSRS e foi isso que encontrei.
O Crystal Reports é executado em sua própria memória, enquanto o SSRS é executado na memória limitada do SQL Server.
O Crystal Report é muito caro. Recentemente, eles reduziram seu preço para 250 $, eu acho, em resposta ao lançamento do SSRS 2008.
O SSRS é gratuito.
O maior motivo do sucesso do Crystal Report:
Você pode criar 80% dos relatórios em um projeto usando SSRS. Mas para os 20% restantes, você terá que usar alguma outra ferramenta de relatório. Esses relatórios de 20% são usados por ninguém menos que gerentes de nível superior, diretores e CEO. Sua exigência nunca pode ser minada e o CR faz um trabalho maravilhoso nisso.
O Crystal Report ainda é baseado em COM. que é uma dor no a **.
O Crystal Report não tem falta de recursos ou recursos. É o cavalo de trabalho da SAP. Mas muitas de suas classes são protegidas e não fornecem acesso a programadores. Isso é intencional. O pessoal da SAP é tão ganancioso que deseja manter todos os recursos sob controle e cobra uma fortuna extra para expor as cláusulas e objetos aos desenvolvedores sob acordo de licença especial. Apenas depure e observe rapidamente o objeto ReportDocument no VS você saberá apesar de tudo disponível no objeto, você dificilmente poderá usá-los em seu código !!
No que diz respeito a questões de GUI e CSS, esperar um objeto COM projetado para impressão de precisão, renderizar corretamente em cada navegador é um ponto discutível, pois até mesmo um div simples é renderizado de maneira diferente em navegadores diferentes.
Tenho trabalhado com Crystal Reports há 7 anos e xingando isso o tempo todo, enquanto exploro ativamente todas as outras alternativas. Mas ainda estou para encontrar algo tão flexível como o Cystal Report. Para a maior parte do trabalho, o SSRS é bom. Mas, para painéis, relatórios complexos com sub-relatórios, balanços e balancetes, nunca perderei meu tempo no SSRS.
Experimente uma pesquisa do Google Trend no Crystal Report. Tem diminuído constantemente desde os últimos 6 anos. certamente o futuro não parece bom para o RC.
Mas ei! MS, SAP e ORACLE ainda endossam o Crystal Report no núcleo de seus aplicativos !! e nenhum produto de BI sai barato.
Eu me sinto como um marciano tendo uma experiência extensa e positiva (mas às vezes complexa) com Crystal Reports, que agora está completamente integrado em nossa interface de usuário (VBA), onde os parâmetros e filtros de relatórios solicitados são herdados de forma transparente da interface de usuário ...
Se você está considerando o SSRS e está preocupado com o fato de que ele é "gratuito", mas precisa comprar uma licença adicional do SQL Server ou distribuir o SQL Express, então você pode estar interessado em Relatórios do Data Dynamics
Ele oferece tudo o que está em SSRS e adiciona relatórios principais, temas, região de dados de calendário, visualização de dados (Databar, Sparkline, Iconset, ColorScale, ...), modelo de objeto completo para máxima flexibilidade de programação, designer de relatório de usuário final livre de royalties, código de barras item de relatório, exportação de modelo do Excel e fusão de dados e muito mais. Você pode baixar uma versão de avaliação do Data Dynamics (agora GrapeCity) e testá-la com poucos relatórios, você não ficará desapontado.
Já trabalhei com os dois e os vi lado a lado. Crystal tem sido bom, mas caro ao longo dos anos. É desajeitado, mas estamos acostumados a ele e familiarizados com a interface. Eu não trabalho no ambiente LAMP, esta casa funciona com MS Dynamics e MAS com alguns clientes bem grandes.
Adoro não ter que me preocupar com a instalação do cliente para SSRS. Distribuir é muito mais fácil e compartilhar fontes de dados e modelos de relatório está funcionando bem.
No que diz respeito ao navegador, vi medidores SSRS 2008 perfeitamente renderizados no Firefox. Eu exportei esses medidores para o Excel sem problemas. Implantei relatórios com e sem MOSS para telefones. A capacidade de usar a autenticação do Windows para implantar relatórios, bem como ocultá-los, é fantástica. O objeto visualizador de relatório no VS 2005 e posterior é ótimo.
Gente, por favor consulte a versão da qual você está falando!
Por exemplo, o relatório RDLC gratuito integrado do VS2008 (o mesmo que o SQL Server 2005 Reporting Services) não oferece suporte a campos de ligação no cabeçalho e rodapé , e é um recurso básico!
Agora estou convertendo um relatório enorme deste VS2008 Reporting / RDLC 2005 para Crystal Report 2008 Basic (que vem com o VS2008) porque ele não tem esse recurso básico.
Estou confiante de que Reporting Services 2.0 / RDLC 2008 (que vem com o Visual Studio 2010) e, melhor ainda, o mais novo Reporting Services 3.0 / RDLC 2010 ( que vem GRATUITO no SQL Server 2008 R2 Express com Advanced Services ) são as melhores soluções de SSRS.
SQL Server R2 Express com Advanced Services (GRATUITO) http://www.microsoft.com/express/Database/InstallOptions.aspx
No momento, estou fazendo uma Prova de Conceito para Reporting Services 3.0 / RDLC 2010 e postarei os resultados.
Reporting Services (SSRS / RDLC) é sempre mais fácil de trabalhar, mas o fácil tem um preço. Para relatórios simples, sempre escolha SSRS / RDLC. Para relatórios complexos com detalhes mestre, controle de página e assim por diante, faça um PoC desses cenários com as versões mais recentes de SSRS / RDLC (2008,2010) e também com Crystal Reports.
Para aqueles que estão comparando o antigo Crystal Reports XI e Reporting Service 1.0, consulte esta postagem de 2005:
SQL Server Reporting Services e Crystal Reports: uma análise competitiva http://www.crystalreportsbook.com/SSRSandCR_Conclusion.asp