Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com Crystal Reports


rodrigo defende

Pergunta

Pessoal tem como eu fazer toda a parte de conexao com base de dados, atribuir os dados, etc no crystal mas usando tudo via codigo, sem usar nenhum componente já pronto de conexao.

se existe como eu faria isso?

é que eu to usando como base Mysql5 então controlar tudo via codigo acredito que seja mais seguro, por causa de caminho de base de dados entre outras cosias.

grato a todos.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest Alessandro Gonzalez

Essa função eu uso com banco SQL Server, adapte ela para o MySql.

'Função que loga...
    Public Shared Sub LogonToReport(ByVal ds As Object)

        Dim logonInfo As New TableLogOnInfo()
        Dim table As CrystalDecisions.CrystalReports.Engine.Table

        For Each table In ds.ReportDocument.Database.Tables
            logonInfo = table.LogOnInfo
            logonInfo.ConnectionInfo.ServerName = GetVarConnection("Data Source")
            logonInfo.ConnectionInfo.DatabaseName = GetVarConnection("Initial Catalog")
            logonInfo.ConnectionInfo.UserID = GetVarConnection("User ID")
            logonInfo.ConnectionInfo.Password = GetVarConnection("password")
            table.ApplyLogOnInfo(logonInfo)
            table.Location = GetVarConnection("Initial Catalog") + ".dbo." + table.Location.Substring(table.Location.LastIndexOf(".") + 1)
        Next table
    End Sub
'Função que lê o web.config
    Shared Function GetVarConnection(ByVal var As String)
        Dim strconn As String = ConfigurationSettings.AppSettings("ConnectionString")
        Dim m() As String = strconn.Split(";")
        Try
            For i As Integer = 0 To m.Length - 1
                If m(i).ToLower Like "*" & var.ToLower & "*" Then
                    Dim m1() As String = m(i).Split("=")
                    Return m1(1)
                End If
            Next
        Catch ex As Exception
            Throw
        Finally
            m = Nothing
        End Try
    End Function
Exemplo de chamada, no caso eu passo os valores dos parametros por Session.
Funcoes.LogonToReport(ds)
        For i As Integer = 0 To UBound(Session("parametros_relatorio")) - 1
            ds.ReportDocument.ParameterFields(i).CurrentValues.AddValue(Session("parametros_relatorio")(i))
        Next

Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

  • 0

Muito legal essa funcao sua - vai ajudar bastante.

mas um detalhe eu notei - para incluir os campos no crystal eu TENHO mesmo que criar um datasete e dai sim arrastar eles para o relatorio. ou existe uma outra maneira?

Porque pelo que eu pesquisei eu não achei uma forma de incluir campos no relatorio e dai de alguma maneira atribuir um datasource neles.

Valeu.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest fulanoides
Pessoal tem como eu fazer toda a parte de conexao com base de dados, atribuir os dados, etc no crystal mas usando tudo via codigo, sem usar nenhum componente já pronto de conexao.

se existe como eu faria isso?

é que eu to usando como base Mysql5 então controlar tudo via codigo acredito que seja mais seguro, por causa de caminho de base de dados entre outras cosias.

grato a todos.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...