none
tela de login no crystal RRS feed

  • Pergunta

  • Alguém sabe me dizer o que fazer quando o crystal pede uma tela de login para mostar o relatório quando está executando o sistema ???


    terça-feira, 23 de setembro de 2008 19:11

Respostas

  • Diego,

     

    Como vc está definindo o DataSource no Report?

     

    Eu faço da seguinte forma:

     

    crio um dataset para fazer o designer do relatório e depois faço uma rotina para carregar os dados para o relatório.

     

    Criei um tópico fixo no fórum MSDN com algumas dicas  sobre a construção de relatórios com Crystal Reports e ReportView (incluindo 2 vídeos com vários exemplos de como construir relatórios com os componentes, licença, distribuição, service packs, etc.):

     

    Um exemplo em VB.NET (ASP.NET)

    Code Snippet

    'referências do banco de dados

    Imports System.Data.SqlClient

    Imports System.Data

    'referências do crystal reports

    Imports CrystalDecisions.CrystalReports.Engine

    Imports CrystalDecisions.Shared

    'referência ConnectionStrings web.config

    Imports System.Web.Configuration.WebConfigurationManager

    'referência imagem

    Imports System.IO

    Imports System.IO.Path

    Imports System.Drawing

     

     

    Code Snippet

    Private Sub ListaProdutos()

    Dim crReportDocument As New ReportDocument

    Dim strConexao As String = ConnectionStrings("AWorks").ConnectionString()

    Dim oConn As New SqlConnection

    Dim strSQL As New StringBuilder

    Dim oTable As New DataTable()

    Try

    '1 passo: carregar o relatório

    Dim strPathreport As String = Server.MapPath("~\CrystalReports\rptProdutos.rpt")

    crReportDocument.Load(strPathreport)

    'configurando para impressão em Landscape

    'crReportDocument.PrintOptions.PaperOrientation = PaperOrientation.Landscape

    '2 passo: passar os dados para o relatório (datatable)

    'abrindo conexão com o banco de dados

    oConn.ConnectionString = strConexao

    oConn.Open()

    'carregando os dados

    strSQL.Append(" SELECT ")

    strSQL.Append(" Production.Product.ProductID, ")

    strSQL.Append(" Production.Product.Name, ")

    strSQL.Append(" Production.Product.Color, ")

    strSQL.Append(" Production.Product.ListPrice, ")

    strSQL.Append(" Production.ProductSubcategory.Name AS NameSubcategory ")

    strSQL.Append(" FROM ")

    strSQL.Append(" Production.Product INNER JOIN Production.ProductSubcategory ")

    strSQL.Append(" ON Production.Product.ProductSubcategoryID = Production.ProductSubcategory.ProductSubcategoryID ")

    Dim oDA As New SqlDataAdapter(strSQL.ToString, oConn)

    oDA.Fill(oTable)

    'definindo o DataSource do relatório

    crReportDocument.SetDataSource(oTable)

    'visualizando o relatório

    crPrintPreview.DisplayGroupTree = False

    crPrintPreview.HasCrystalLogo = False

    crPrintPreview.ReportSource = crReportDocument

    Catch ex As Exception

    System.Diagnostics.Debug.WriteLine(ex.Message)

    Finally

    'liberando os objetos

    oConn.Dispose()

    oTable.Dispose()

    oConn = Nothing

    oTable = Nothing

    End Try

    End Sub

     

     

    Ajude a melhorar o nosso Fórum!
    Não esqueça de marca a mensagem como "útil", caso tenha ajudado.

     

    terça-feira, 23 de setembro de 2008 20:03
    Moderador