Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

MineiroGH

Passar parametros de conexão para relatório Crystal Report em ASP.NET

Recommended Posts

Pessoal, antes de tudo, sou iniciante em ASP.NET, estou fazendo uma aplicação Web, e em umas das páginas tem o componente CrystalReportViewer, e nele devo abrir vários tipos de relatórios. beleza, ja sei que para ficar trocando de relatório é so alterar a propriedade "Report.FileName" do CrystalReportSource que tambem foi inserido na página para o CrystalReportViewer funcionar. O problema é o seguinte: Esses relatórios que eu coloco no "Report.FileName", quando criados não tem necessariamente a mesma conexão que esta sendo utilizada na página, com isso preciso passar a conexão, ou alterar as configurações de conexão do relatório que estou abrindo (preferivelmente alterar os dados da conexão - server, database, user, password) pq se não, vai tentar conectar com as configurações de onde foi criado.Obs: ASP.NET com C#Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vixi... tem iniciante bom demais aqui hein! rsrsrs... vou rasgar a certificação hoje mesmo!tipow... não entendi!!!você quer assim... ele use uma conexão pra tudo, mas pro crystal outra conexão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vixi... tem iniciante bom demais aqui hein! rsrsrs... vou rasgar a certificação hoje mesmo!tipow... não entendi!!!você quer assim... ele use uma conexão pra tudo, mas pro crystal outra conexão?

Cara, é assim a ideia: monte uma página com o componende de visualização de relatórios. So que em em cada cliente a conexão é de um jeito, são tudo conexão ODBC. Então, os relatórios que desenvolvermos aqui em Crystal Reports, os .rpt da vida, pra personalizar os relatórios solicitados, tem que entender a conexão que a página esta utilizando, ou seja, se eu programar o relatório com o banco de dados de nome BD_Bolinha, e no cliente estiver com o banco DB_Quadrado, o report consiga abrir sem pedir para reconfigurar a conexão. O nome da conexão ODBC é padronizado, tipo SISTEMA_BANCO, criada lá em Fonde de dados ODBC, mas ja fiz testes, e o relatório sempre vem com os dados da conexão no qual foi criado.O que eu estou fazendo:1- Crio o relatório Crystal Report utilizando a conexão ODBC padrão que eu tenho (SISTEMA_BANCO);2- Na minha pagina tenho 4 carinhas: - CrystalReportSource MyCrystalReportSource - que esta com o "Report.FileName" vinculado a um report.rpt vazio, so pra abrir a telinha com o visualizador vazio;- CrystalReportViewer MyCrystalReportViewer - que esta com o "Report Source" amarrado ao MyCrystalReportSource;- DropDownList MyDropDownList - Que tem na lista o nome do relatório;- Button bt_Go - que manda carregar o relatório selecionado do MyDropDownList;3- Ao clicar no botão GO faço o seguinte: protected void bt_Go_Click(object sender, EventArgs e) { switch (MyDropDownList.Text) { case "Relatório 01": { MyCrystalReportSource.Report.Parameters.Clear(); MyCrystalReportSource.Report.FileName = "CrystalReport_01.rpt"; MyCrystalReportSource.ReportDocument.SetDatabaseLogon("MyUser", "MyPass", "MyServer", "MyDB"); break; } case "Relatório 02": { MyCrystalReportSource.Report.Parameters.Clear(); MyCrystalReportSource.Report.FileName = "CrystalReport_02.rpt"; MyCrystalReportSource.ReportDocument.SetDatabaseLogon("MyUser", "MyPass", "MyServer", "MyDB"); break; } default: { MyCrystalReportSource.Report.Parameters.Clear(); MyCrystalReportSource.Report.FileName = "CrystalReport_Default.rpt"; MyCrystalReportSource.ReportDocument.SetDatabaseLogon("MyUser", "MyPass", "MyServer", "MyDB"); break; } } }Problemas:Na ora que eh chamo esse "Relatório 02" por exemplo, abre a tela solicitando a senha da conexão, é isso que eu quero que não aconteça, eu quero que dentro do codigo ja entenda que os dados da conexão são esses que estou passando.Sei que esses métodos podem não ser os corretos, mas eu não sei como falar para o meu "CrystalReport_02.rpt" usar o MyServer, MyDB, MyUser e MyPass como parametros de conexão.Se bem que depois que eu conecto com o banco, na utilização da página não solicita mais os dados para a conexão. Pode ser o caso de ja inicializar a conexão ao carregar a pagina, mas ai volto ao dilema: como eu passo os parametros de conexão...Eu já fuço bastante em C# mas em Windows Aplications, fazer isso eu faria rapidinho, mas em Web Aplication estou patinando grande. Creio que meus problemas sejam mesmo falta de experiência mesmo... talvez seja uma coisa muito bestinha que eu não sei... por isso estou recorrendo aqui.Valew....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.