Altevir 0 Denunciar post Postado Agosto 12, 2010 Bom Dia !! Estou precisando de uma ajuda, porem, estou com duvidas se existe como fazer isso ou nao !!!???? Teria como gerar um Relatorio no Report Viewer do Visual Studio 2008 via codigo ??? Por exemplo, eu efetuo minha consulta SQL, e repasso os parametros para o Report Viewer gerando o relatorio com base na minha instruçao SQL. Gostaria de usar tudo via codigo, pois tem relatorios diferenciados um dos outros. Agradeço se alguem puder me ajudar. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Agosto 13, 2010 Não tem problema nenhum, você terá que usar um DataSet para armazenar seus dados. Somente o relatório que acho um pouco dificil fazer via código, terá que desenhar usando a ferramenta. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
Altevir 0 Denunciar post Postado Agosto 13, 2010 Não tem problema nenhum, você terá que usar um DataSet para armazenar seus dados. Somente o relatório que acho um pouco dificil fazer via código, terá que desenhar usando a ferramenta. Abraços... Opaaa ah beleza, vou te passar o meu codigo, sera que você consegue me ajudar ??? para desenhar o relatorio eu estou fazendo isso, desenho atraves da ferramenta, porem, os valores (os dados), esses sim eu gostaria de pegar da minha instruçao SQL, nao quero usar DataSets Tipados, a minha ideia é alimentar o DataSet como você citou e alimentar o relatorio, estou iniciando agora o trabalho com o Report Viewer, nao sei mexer muito bem na ferramenta ainda, com os DataSets tambem, pra mim é novo, mas ja andei pesquisando alguma coisa na internet. Abaixo o meu codigo, tentei usar um DataTable, mas acho q nao deu certo, como faço pra usar o DataSet agora ??? Dim StrPastaRelatorio As String StrPastaRelatorio = String.Concat(Application.StartupPath.ToString(), "\Clientes.rdlc") StrPastaRelatorio = StrPastaRelatorio.Replace("bin\Debug\", "") ReportViewer1.LocalReport.ReportPath = StrPastaRelatorio Dados da Conexao StrConexao = "Data Source=SERVIDOR" & _ ";Persist Security Info=True" & _ ";Initial Catalog=MEU BANCO" & _ ";User ID=sa" & _ ";Password=123" StrConn.ConnectionString = StrConexao StrConn.Open() String de Consulta StrSQL = "Select CodCliente, Nome From Clientes" Dim Cmd As New SqlCommand(StrSQL, StrConn) Dim DReader As SqlDataReader Converter o DataReader para DataTable Dim DTable As New DataTable("Clientes") DReader = Cmd.ExecuteReader() DTable.Load(DReader) DReader.Close() Definindo o DataSource do Relatorio Dim NewReporDataSource As ReportDataSource = New ReportDataSource("Clientes", DTable) ReportViewer1.LocalReport.DataSources.Clear() ReportViewer1.RefreshReport() Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Agosto 13, 2010 Você até vai conseguir alimentar seus objetos, mas como vai adicionar os campos la no desenho? Vai se basear em que se não for um dataset tipado? Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
Altevir 0 Denunciar post Postado Agosto 13, 2010 Você até vai conseguir alimentar seus objetos, mas como vai adicionar os campos la no desenho? Vai se basear em que se não for um dataset tipado? Abraços... Certo. você poderia me passar algum exemplo ??? Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Agosto 13, 2010 De uma olhada: http://www.macoratti.net/vbn_dst1.htm Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
Altevir 0 Denunciar post Postado Agosto 16, 2010 De uma olhada: http://www.macoratti.net/vbn_dst1.htm Abraços... Opaaa esse link foi de grande ajuda, deu pra entender bem como funciona. Obrigado!!!!! uma coisa que notei no meu visual studio 2008, é que ao tentar adicionar um novo item ( Project > Add New Item ), na template Reporting, eu nao tenho disponivel o Report (.rdlc), somente o crystal report. como faço pra ter essa ferramenta disponivel ??? Compartilhar este post Link para o post Compartilhar em outros sites
Altevir 0 Denunciar post Postado Agosto 30, 2010 Resolvido...abaixo o codigo. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Dim StrConn As New SqlConnection Dim StrConexao As String = "Data Source=PC" & _ ";Initial Catalog=MeuBanco" & _ ";Persist Security Info=True" & _ ";User ID=sa" & _ ";Password=123" Dim DTable As New DataTable() Dim Cmd As SqlCommand = Nothing Try 1° passo, carregar o relatorio Dim StrPath As String StrPath = Replace(Application.StartupPath, "\bin\Debug", "") rvPrintPreview.LocalReport.ReportPath = StrPath & "\RptClientes.rdlc" 2° passo, passar os dados para o relatorio, abrindo a conexao com o banco de dados StrConn.ConnectionString = StrConexao StrConn.Open() 3° passo, definindo o SQL do relatorio Dim sqlClientes As String = "Select * From Clientes" 4° passo, executando o objeto command Cmd = New SqlCommand(sqlClientes, StrConn) Cmd.CommandText = sqlClientes Cmd.CommandType = CommandType.Text 5° passo, executando a instruçao SQL atraves de um DataReader Dim DReader As SqlDataReader = Cmd.ExecuteReader(CommandBehavior.CloseConnection) 6° passo, convertendo o DataReader em DataTable DTable.Load(DReader) 7° passo, definindo uma nova instancia do DataSource do Report, informando o DataSet e o DataTable. Dim MyReportDataSource As ReportDataSource = New ReportDataSource("CadClientes", DTable) rvPrintPreview.LocalReport.DataSources.Add(MyReportDataSource) 8° passo, dando um Refresh no relatorio. rvPrintPreview.RefreshReport() Catch ex As Exception MessageBox.Show(ex.ToString) Finally StrConn.Dispose() DTable.Dispose() StrConn = Nothing DTable = Nothing End Try Compartilhar este post Link para o post Compartilhar em outros sites
Ivair Martins 0 Denunciar post Postado Setembro 9, 2016 Boa tarde, acabei de me cadastrar no forum e queria tirar uma duvida estou usando o codigo que o Altevir postou mas não esta funcionando, só carrega o cabelhaço, não acho o erro, se alguem puder me ajudar agradeco e muito. Obs. a tabela tem dados cadastrados. Obrigado, Compartilhar este post Link para o post Compartilhar em outros sites