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

Preencher dataset com table


Gafanhoto

Pergunta

Achei milhares de exemplo na internet, mas não consegui encaixar na minha aplicação.

Eu tenho o esse código:

Function BindingSource() As DataSet

        'Criando o Dataset
        Dim myDataSet As New DataSet("indexadores")

        'Criando a tabela
        Dim tblUsuario As New DataTable("indexadoresFederal")

        myDataSet.Tables.Add(tblUsuario)

        tblUsuario.Columns.Add("cod", GetType(Integer))
        tblUsuario.Columns.Add("categoria", GetType(String))
        tblUsuario.Columns.Add("nome", GetType(String))
        tblUsuario.Columns.Add("telefone", GetType(String))
        tblUsuario.Columns.Add("data", GetType(Date))
        tblUsuario.Columns.Add("link", GetType(String))

        'Criando Registros
        Dim dtrUsuario As DataRow

        Dim enc As New encrypt

        '''''''''''''''''''''''''''''''''''''''''''

        dtrUsuario = tblUsuario.NewRow
        tblUsuario.Rows.Add(dtrUsuario)

        dtrUsuario.Item("cod") = 1
        dtrUsuario.Item("categoria") = "Escritório"
        dtrUsuario.Item("nome") = "João da Silva"
        dtrUsuario.Item("telefone") = enc.Encrypt("99795641", "guilherme")
        dtrUsuario.Item("data") = Date.Today
        dtrUsuario.Item("link") = "1"

        dtrUsuario = tblUsuario.NewRow
        tblUsuario.Rows.Add(dtrUsuario)

        dtrUsuario.Item("cod") = 2
        dtrUsuario.Item("categoria") = "Cliente"
        dtrUsuario.Item("nome") = "Joaquim Bragança"
        dtrUsuario.Item("telefone") = enc.Encrypt("99657691", "guilherme")
        dtrUsuario.Item("data") = Date.Today
        dtrUsuario.Item("link") = "2"

        dtrUsuario = tblUsuario.NewRow
        tblUsuario.Rows.Add(dtrUsuario)

        dtrUsuario.Item("cod") = 3
        dtrUsuario.Item("categoria") = "Cliente"
        dtrUsuario.Item("nome") = "Gisele Falcão"
        dtrUsuario.Item("telefone") = enc.Encrypt("34515346", "guilherme")
        dtrUsuario.Item("data") = Date.Today
        dtrUsuario.Item("link") = "3"

        dtrUsuario = tblUsuario.NewRow
        tblUsuario.Rows.Add(dtrUsuario)

        dtrUsuario.Item("cod") = 4
        dtrUsuario.Item("categoria") = "Escritório"
        dtrUsuario.Item("nome") = "Joana Salazar"
        dtrUsuario.Item("telefone") = enc.Encrypt("33730000", "guilherme")
        dtrUsuario.Item("data") = Date.Today
        dtrUsuario.Item("link") = "4"

        'Retornando DataSet
        Return myDataSet

Ele tá criando a tabela e tá fungando beleza com minha function pra encriptar.

Como eu faço pra pegar esse código e ao invés de gerar uma tabela, preencher com uma table do SQL Server e em determinada coluna usar minha função encrypt?

A estrutura da table que quero pegar é:

idTabela INTEGER

nomeTabela VARCHAR

link VARCHAR ( É nessa que quero usar a função )

Editado por Gafanhoto
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Olha só... essa function tá fungando. Como eu faço pra colocar minha função ENCRYPT no campo link?

ela funciona colocando encrypt ("STRING","guilherme"), no caso seria encrypt(link,"guilherme")

Function dataset() As DataSet

        Dim enc As New encrypt()

        Dim strConn As String = "Data Source=TI;Initial Catalog=lefisc;Integrated Security=True"
        Dim strSQL As String = "SELECT idTabela, nomeTabela, link FROM indexadoresFederais"
        Dim da As New SqlDataAdapter(strSQL, strConn)

        Dim ds As New DataSet()
        da.Fill(ds, "indexadoresFederais")

        Return ds

    End Function

Até tentei usar um

Dim strSQL As String = "SELECT idTabela, nomeTabela, " + encrypt(+"link," + "guilherme") + " FROM indexadoresFederais"

mas não fungou

Editado por Gafanhoto
Link para o comentário
Compartilhar em outros sites

  • 0

Desculpa a minha ignorância, mas só consegui fazer com uma SUB, e uma SUB não retorna nada.

Só consigo encriptar os dados e retornar em uma msgbox.

Como eu faço pra transformar essa sub abaixo em uma function que vai me retornar um dataset abastecido com o campo LINK encriptado?

Private Sub CarregaDados()

        Dim enc As New encrypt

        Dim conn As New SqlConnection()
        Dim DR As SqlDataReader

        conn.ConnectionString = "Data Source=TI;Initial Catalog=lefisc;Integrated Security=True"
        Dim cmd As SqlCommand = conn.CreateCommand

        cmd.CommandText = "SELECT idTabela, nomeTabela, link FROM indexadoresFederais"
        conn.Open()

        DR = cmd.ExecuteReader()

        While DR.Read
            MsgBox(enc.Encrypt(DR.Item(0), "guilherme"))
        End While

        dr.Close()
        conn.Close()

    End Sub

Editado por Gafanhoto
Link para o comentário
Compartilhar em outros sites

  • 0

Olha só... consegui fazer funcionar beleza o código acima.

Mas quero tratar um dos campos em tempo de execução. Até olhei um artigo teu quintelab, bem antigo já aqui da script brasil mesmo.

http://scriptbrasil.com.br/forum/index.php?showtopic=132091

To fazendo assim:

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound

        Dim enc As New encrypt

        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim vLink As String = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "link"))
            vLink = enc.Encrypt(vLink, "guilherme")
            e.Row.Cells(1).Text = vLink
        End If

    End Sub

Tá funcionando, mas na realidade eu queria fazer o seguinte:

e.Row.Cells(1).NavigateURL = vLink

Mas não existe.... Quero que o link do campo TITULO receba essa variável vLink

Como faço isso?

Editado por Gafanhoto
Link para o comentário
Compartilhar em outros sites

  • 0

Eu até consegui fazer ele gerar o link usando uma variável de sessão:

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound

        Dim enc As New encrypt
        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim vLink As String = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "link"))
            vLink = enc.Encrypt(vLink, "guilherme")
            Session("NDF") = vLink
        End If
    End Sub

Daí lá no navigateURL eu pus session("NDF")

Mas não sei porque a primeira linha não pega a session, só da segunda em diante.

Editado por Gafanhoto
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...