none
DataGridView para report .rdlc RRS feed

  • Discussão Geral

  • Bom dia amigos eu gostaria de saber como passo todos os itens de um DataGridView em um formulario para um relatório ReportViewer eu consegui passar dados de textbox para os parametros no report mas não sei como passar as informações de um DGV para o form com o report e qual objeto usar no report. O código que usei para fazer dos textbox foi esse.

     Private Sub PPImpressao()
            Dim OBJ As New frmRelProcesso
            OBJ.strCliente = lblnomecli.Text
            OBJ.strPasta = txtpasta.Text
            OBJ.strProcesso = txtprocesso.Text
            OBJ.strForum = txtforum.Text
            OBJ.strVara = txtvara.Text
            OBJ.strAndamento = txtandamento.Text
            OBJ.strParteSContraria = txtpartescontraria.Text
            OBJ.strTipoAcao = txttipoacao.Text
            OBJ.Show()
        End Sub

    Imports Microsoft.Reporting.WinForms
    
    Public Class frmRelProcesso
        Public Property strCliente As String
        Public Property strPasta As String
        Public Property strProcesso As String
        Public Property strForum As String
        Public Property strVara As String
        Public Property strAndamento As String
        Public Property strParteSContraria As String
        Public Property strTipoAcao As String
    
    
        Private Sub frmRelProcesso_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            PImpressao()
        End Sub
    
        Private Sub PImpressao()
            'ARRAY PARA VOCÊ ADICIONAR OS PARÂMETROS
    
            Dim listParameter As List(Of ReportParameter) = New List(Of ReportParameter)
    
            'ADICIONANDO OS PARÂMETROS QUE SERÃO APRESENTADOS NO REPORT
            '    OBJETO "ReportParameters"
            '        PRIMEIRO PARÂMETRO NOME DO PARÂMETRO QUE FOI CRIADO NO REPORT
            '        SEGUNDO PARÂMETRO : VALOR QUE SERÁ PASSADO PARA ELE
            listParameter.Add(New ReportParameter(
            "cliente", strCliente))
            listParameter.Add(New ReportParameter(
            "processo", strProcesso))
            listParameter.Add(New ReportParameter(
            "forum", strForum))
            listParameter.Add(New ReportParameter(
            "vara", strVara))
            listParameter.Add(New ReportParameter(
            "andamento", strAndamento))
            listParameter.Add(New ReportParameter(
            "pasta", strPasta))
            listParameter.Add(New ReportParameter(
            "partescontraria", strParteSContraria))
            listParameter.Add(New ReportParameter(
            "tipoacao", strTipoAcao))
    
    
            'VERIFIQUE EXATAMENTE O CAMINHO QUE FOI CRIADO SEU ARQUIVO .RDLC
            '    NAMESPACE + CAMINHO
            '    CASO VOCÊ CRIE O ARQUIVO .RDLC DENTRO DE UMA PASTA, O CAMINHO FICARIA ASSIM:
            '         ** WindowsFormsApp1.pastaCriada.Report1.rdl **            
            Dim nomeRelatorio As String
            nomeRelatorio = "AplicacaoGestProcCHP.rptProcesso.rdlc"
    
            'ATRIBUINDO O CAMINHO DO SEU ARQUIVO .RDLC PARA O COMPONENTE "ReportViewer"
            ReportViewer1.LocalReport.ReportEmbeddedResource = nomeRelatorio
    
            'ENVIANDO OS PARÂMETROS PARA SEU ARQUIVO .RDLC
            For Each parameter As ReportParameter
                In listParameter
                ReportViewer1.LocalReport.SetParameters(parameter)
            Next
            ReportViewer1.RefreshReport()
        End Sub
    End Class

    Outra questão que tenho é como forçar o relatório ser impresso em modo paisagem.

    Agradeço desde ja mestres.



    sexta-feira, 23 de fevereiro de 2018 17:57

Todas as Respostas