Usuário com melhor resposta
Instanciar objeto para arquivo rdlc do reportViewer

Pergunta
-
Estou desenvolvendo relatórios com winforms e com o crystal faço a chamada do relatório assim:
Dim crReportDocument As New rpt_NomedoRelatorio 'aqui onde digo qual rpt vou utilizar.
'carregar o dataset
'código para carregar o dataset, não coloquei aqui
' mostrar o relatório
' crReportDocument.SetDataSource(ds)
'visualizar o relatório
cr_viewer.ReportSource = crReportDocument
gostaria de fazer o mesmo com o reportViewer. Vi que nos exemplos funciona somente chamando o path do arquivo rdlc...
mas ai é complicado porque tenho que ter os arquivos na máquina do usuário, isso é um problema caso o usuário apague ou modifique o arquivo.
tem com instanciar um objeto para o arquivo rdlc da mesma forma que faço para o crystal?
vlw as dicas desde já.
Respostas
-
Cássio,
Os arquivos do Crystal Reports (.rpt) e do ReportViewer (.rdlc) ficam no mesmo diretório de instalação da aplicação. Ou seja, mesmo criando uma instância do (.rpt) você ainda precisa ter o arquivo no diretório da aplicação.
Se você está preocupado com a segurança dos arquivos (e caso seja um item critico para sua solução), neste caso, faça a construção dos relatórios usando o Reporting Services do SQL Server (2005 ou 2008) e faça o printpreview pelo ReportViewer.
Ajude a melhorar o nosso Fórum!
Não esqueça de marca a mensagem como "útil", caso tenha ajudado.Por que devo classificar uma postagem?
http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=1020123&SiteID=21
Valeu!
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54
-
Cássio,
...Tenho outras aplicações funcionando com crystal e com certeza não tem os arquivos rpt na pasta da aplicação do cliente, somente o executável do programa...
Resposta: Sim também funcionada sem problema, neste caso TODOS os relatórios serão incluídos dentro do executável da aplicação (o que torna o executável maior).
Eu faço diferente, tenho uma pasta com os relatórios dentro da aplicação o que facilita na hora de fazer uma manutenção em um determinado relatório. Dessa forma eu consigo atualizar apenas o arquivo (.rpt para Crystal Reports e .rdlc para ReportView) no cliente, sem a necessidade de fazer um deploy completo da aplicação.
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54
-
Cássio,
... acho ruim é que os arquivos ficam "Abertos" para o usuário, podendo este apagar os arquivos e até editá-lo, o que é o pior.. pois pode mexer no design do retatório...
Resposta: neste caso é só criar uma permissão de “leitura” no diretório onde estão armazenados os relatórios, dessa forma, nenhum usuário vai conseguir modificar ou excluir os relatórios da aplicação.
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54
Todas as Respostas
-
Cássio,
Os arquivos do Crystal Reports (.rpt) e do ReportViewer (.rdlc) ficam no mesmo diretório de instalação da aplicação. Ou seja, mesmo criando uma instância do (.rpt) você ainda precisa ter o arquivo no diretório da aplicação.
Se você está preocupado com a segurança dos arquivos (e caso seja um item critico para sua solução), neste caso, faça a construção dos relatórios usando o Reporting Services do SQL Server (2005 ou 2008) e faça o printpreview pelo ReportViewer.
Ajude a melhorar o nosso Fórum!
Não esqueça de marca a mensagem como "útil", caso tenha ajudado.Por que devo classificar uma postagem?
http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=1020123&SiteID=21
Valeu!
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54
-
Olá Laercio.
Cara, desculpe mas com com toda humildade do mundo terei que descordar de você;
Tenho outras aplicações funcionando com crystal e com certeza não tem os arquivos rpt na pasta da aplicação do cliente, somente o executável do programa.
Apenas instancio um objeto para o relatório (como coloquei no meu exemplo) e tudo funciona, mas não consegui fazer isso no ReportViewer.
Desculpe se eu estiver errado e Mais uma vez, obrigado pela sua ajuda.
Abraço -
Cássio,
...Tenho outras aplicações funcionando com crystal e com certeza não tem os arquivos rpt na pasta da aplicação do cliente, somente o executável do programa...
Resposta: Sim também funcionada sem problema, neste caso TODOS os relatórios serão incluídos dentro do executável da aplicação (o que torna o executável maior).
Eu faço diferente, tenho uma pasta com os relatórios dentro da aplicação o que facilita na hora de fazer uma manutenção em um determinado relatório. Dessa forma eu consigo atualizar apenas o arquivo (.rpt para Crystal Reports e .rdlc para ReportView) no cliente, sem a necessidade de fazer um deploy completo da aplicação.
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54
-
Olá Laercio.
Obrigado pelo retorno.
Pois é, mas também uma coisa que acho ruim é que os arquivos ficam "Abertos" para o usuário, podendo este apagar os arquivos e até editá-lo, o que é o pior.. pois pode mexer no design do retatório.
vlw. -
Cássio,
... acho ruim é que os arquivos ficam "Abertos" para o usuário, podendo este apagar os arquivos e até editá-lo, o que é o pior.. pois pode mexer no design do retatório...
Resposta: neste caso é só criar uma permissão de “leitura” no diretório onde estão armazenados os relatórios, dessa forma, nenhum usuário vai conseguir modificar ou excluir os relatórios da aplicação.
- Sugerido como Resposta AndreAlvesLimaModerator sexta-feira, 2 de julho de 2010 16:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 12 de julho de 2010 23:54