André Alves de Lima

Talking about Software Development and more…

Ativando o Crystal Reports no Visual Studio 2015

No meu último vídeo eu mostrei como ativar o Report Viewer no Visual Studio 2015. Aproveitando essa onda de relatórios, no vídeo de hoje eu resolvi mostrar como ativar o Crystal Reports no Visual Studio 2015.

O Crystal Reports é uma ferramenta de geração de relatórios poderosíssima e super conhecida no mercado. Existe uma versão gratuita praticamente sem limitações e que pode ser instalada em conjunto com o Visual Studio (inclusive na edição Community!). Veja só como ativá-lo neste vídeo:

O procedimento é muito simples. Basta acessarmos a página de downloads do Crystal Reports para Visual Studio e baixarmos o “Support Pack” mais atual. A instalação é muito tranquila, no famoso estilo “next, next, finish“.

Na última etapa da instalação o instalador vai perguntar se você quer instalar a runtime do Crystal Reports (que é necessária para conseguirmos visualizar os relatórios em tempo de execução). Eu costumo pular essa etapa e instalar manualmente as runtimes (colunas “MSI 32 Bit” e “MSI 64 Bit” da página de downloads). Faço isso de forma manual, primeiro a 32 bits e depois a 64 bits, porque antigamente existia um bug que, se você instalasse primeiro a runtime 64 bits, você não conseguiria instalar a runtime 32 bits depois. Não sei se esse bug já foi corrigido, mas, para evitar problemas, eu continuo fazendo essa instalação manual.

E no Visual Studio 2017?

No momento da gravação desse vídeo (fevereiro de 2017), o Visual Studio 2017 ainda não era suportado. Porém, como a SAP já colocou uma informação na página de downloads falando que essa versão ainda não é suportada, acredito que com um próximo “Support Pack” eles adicionarão o suporte ao Visual Studio 2017. Tudo indica que o processo de instalação continuará o mesmo.

Assine a minha newsletter

Antes de me despedir, convido você a inscrever-se na minha newsletter. Ao fazer isso, você terá acesso aos projetos de exemplo utilizados nos artigos, receberá um e-mail toda semana sobre o artigo publicado e ficará sabendo também em primeira mão sobre o artigo da próxima semana, além de receber dicas “bônus” que eu só compartilho por e-mail. Inscreva-se utilizando o formulário logo abaixo.

Até a próxima!

André Lima

Photo by Peter Shanks used under Creative Commons
https://pixabay.com/en/startup-start-up-notebooks-creative-593327/

Song Rocket Power Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0 License
http://creativecommons.org/licenses/by/3.0/

Newsletter do André Lima

* indicates required



Powered by MailChimp

4 thoughts on “Ativando o Crystal Reports no Visual Studio 2015

  • Oduvaldo de Oliveira disse:

    Bom dia, André.

    Estou com problema na execução dos relatório Crystal na máquina do cliente, sempre me retorna falha ao carregar as informações do banco de dados. Na maquina de desenvolvimento isso não ocorre. abaixo um fragmento do meu código com os dados que estou passando para o rpt.

    rpt.Load(rPath);
    crConnectionInfo.Type = ConnectionInfoType.CRQE;
    crConnectionInfo.ServerName = “192.162.12.13”;
    crConnectionInfo.DatabaseName = “Base_Transplastico”;
    crConnectionInfo.UserID = “sa”;
    crConnectionInfo.Password = “visual”;

    crConnectionInfo.AllowCustomConnection = false;
    crConnectionInfo.IntegratedSecurity = false;

    CrTables = rpt.Database.Tables;
    foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
    {
    CrTable.LogOnInfo.ConnectionInfo = crConnectionInfo;
    crtableLogoninfo = CrTable.LogOnInfo;

    crtableLogoninfo.ReportName = rpt.Name;
    crtableLogoninfo.TableName = CrTable.Name;
    CrTable.ApplyLogOnInfo(crtableLogoninfo);
    }
    rpt.SetDatabaseLogon(crConnectionInfo.UserID, crConnectionInfo.Password, crConnectionInfo.ServerName, crConnectionInfo.DatabaseName);

    SqlConnection objConexao = new SqlConnection(connStr);
    SqlCommand objCommand = new SqlCommand(MsgSQL, objConexao);
    SqlDataAdapter objAdapter = new SqlDataAdapter();
    DataSet objDataSet = new DataSet();

    objCommand.Connection = objConexao;
    objAdapter.SelectCommand = objCommand;

    Os relatório ficam em loop pedindo os dados para acesso o banco de dados.

    Será que você já viu esse erro em algum momento. Por enquanto obrigado. E suas dicas/exemplos sempre me ajudam no dia a dia de desenvolvimento. Valeu.

    • andrealveslima disse:

      Olá Oduvaldo!

      Aparentemente o seu código está correto.. Você testou no computador de desenvolvimento apontando exatamente para o mesmo banco de dados que você está utilizando em produção? Pode ser que tenha alguma diferençazinha no schema entre o banco que você está testando e o banco de produção, o que costuma causar esse tipo de comportamento..

      Algumas coisas que você pode tentar:

      – Abrir o relatório no Crystal e dar um “Verify Database”
      – No código, coloque uma chamada para reportDocument.VerifyDatabase
      – Tente adicionar (se você ainda não tiver adicionado) uma chamada para seuControleCrystal.Refresh
      – Se você já tiver uma chamada para Refresh (item anterior), tente remover

      Tente esses procedimentos e me avisa se algum deles funcionou.. Outra opção seria carregar os dados em um DataSet e enviá-los para o relatório através do método reportDocument.SetDataSource.. Dessa forma o relatório nem precisaria saber onde é que está o banco de dados (os dados seriam passados através do DataSet que já estaria preenchido)..

      Abraço!
      André Lima

  • bonifacio disse:

    Bom dia, André

    Eu tou a ter um problema no Crystal Report pretendo fazer uma impressao em simultanio de recibo de salarios sem repitir o trabalhador.
    ou melhor imprimir salarios dos trabalhadoros em simultanio. Imprimir Recibos em massa dos trabalhador nao um a um.

    • andrealveslima disse:

      Olá Bonifácio!

      Não consegui entender muito bem o que você está querendo fazer.. Será que você poderia tentar explicar de outra forma? Você tem uma lista de trabalhadores com os seus salários, aí você quer imprimir essas informações com o Crystal Reports? Qual é a dificuldade exatamente?

      Abraço!
      André Lima

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *