none
Atualizar DataTable RRS feed

  • Pergunta

  • Ola pessoal Boa Tarde!

    Estou desenvolvendo um programa que tem 3 camadas

    Apresentação

    Negocio

    Dados

    Meu grande problema é a concorrencia de dados

    Tenho um carrinho de compras que pega e carrega no grid os produtos da compra,com a opção de atualizar ou deletar algum item

    Estou usando um Datatable que é retornado da camada de negocios

    !!!Mais Preciso devolver esses dados atualizados pro banco!!! como faço isso já que não estou usando os assistentes,é tudo no código

    Se alguém  puder me ajudar agradeço!

     

    segunda-feira, 10 de maio de 2010 17:38

Respostas

Todas as Respostas

  • Acho melhor estudar o basico de ADO.Net.

    ADO.Net

    http://www.macoratti.net/ado_net1.htm


    Quem sabe um dia os DataSets se extinguirão?
    segunda-feira, 10 de maio de 2010 19:24
  • Vc sabe como fazer?

    Obrigado

    segunda-feira, 10 de maio de 2010 19:27
  • Vc deve usar o  objeto DataAdapter para atualizar os dados no banco de dados novamente utilizando DataSet.

    Veja este link.

    http://www.macoratti.net/vbn_dts1.htm


    Quem sabe um dia os DataSets se extinguirão?
    segunda-feira, 10 de maio de 2010 19:52
  • Danimar obrigado pela sua atenção!

    Eu penso assim..

    quando o código é todo no form tudo fica mais facil,conforme os links que vc passou..

    Mais quando é em camadas ,que a camada de dados que comtem o TableAdapter?

    Eu uso o metodo da classe lá na camada de negocio que acessa a camada de dados e me traz os rgistros  e eu libero os objetos

     

    O problema ta em convessar com essa camada de negocio e develver o DataTable ok?como?

    pra pegar os daddos é facil,o problema é atualizar com o objeto que usei la na camada de dados que pode nã estar mais ativo

    Se eu estiver muito errado por favor se vc tiver uma solução agradeço ok!

    Obrigado!

    segunda-feira, 10 de maio de 2010 20:07
  • Nao sei se entendi bem. voce pode chamar denovo esta camadas e passar a nova informacao e actualizar.

    Como Ribeiro Disse.....

    Deixa nos ver o codigo.....


    Just Be Humble Malange!
    terça-feira, 11 de maio de 2010 11:18
    Moderador
    • Camadas de Dados..

    Public Function PegaVendaID(ByVal VendaID As Integer) As DataTable
                DtTableCarrinho = Nothing
                Try
                    Conexao = New SqlConnection(StrCon)
                    Conexao.Open()

                    Comando = New SqlCommand()
                    With Comando
                        .Connection = Conexao
                        .CommandType = CommandType.Text
                        .CommandText = "SELECT ProdutoID as cod,Produto as

    nome, Qtd,Preco,Subtotal  from ItensVenda  where VendaID= " & VendaID & "

    and Qtd >0 "
                    End With

                    AdaptadorCarrinho = New SqlDataAdapter(Comando)
                    DtTableCarrinho = New DataTable()
                    AdaptadorCarrinho.Fill(DtTableCarrinho)

                Catch ex As Exception
                    DtTable = Nothing
                    Throw ex
                Finally
                    liberaTodosObjetos()
                End Try
                Return DtTableCarrinho
            End Function

    • Camadas de Negocio..

     Public Function ProdutosVendaID(ByVal VendaID As Integer) As DataTable
            DtTable = Nothing
            Try
                _objProduto = New DALDados
                DtTable = _objProduto.PegaVendaID(VendaID)
            Catch ex As Exception
                Throw ex
            Finally
                _objProduto = Nothing
            End Try
            Return DtTable
        End Function

    • Form...

     Private Sub carregaVendaID(ByVal CodPedido As Integer)
            _objProd = New Negocio.clsProdutos

            DtCarrinho = _objProd.ProdutosVendaID(CodPedido)
            FormataGridCompras()
            dtgrivCompras.DataSource = DtCarrinho
            calculaTotal()
        End Sub

    • botao add

     Dim linha As DataRow = DtCarrinho.NewRow()
                        linha("Cod") =

    ProdutosDataGridView.Rows(e.RowIndex).Cells(0).Value
                        linha("Nome") =

    ProdutosDataGridView.Rows(e.RowIndex).Cells(1).Value
                        linha("Qtd") = valor
                        linha("Preco") =

    ProdutosDataGridView.Rows(e.RowIndex).Cells(2).Value
                        linha("Subtotal") =

    ProdutosDataGridView.Rows(e.RowIndex).Cells(2).Value *

    ProdutosDataGridView.Rows(e.RowIndex).Cells(3).Value
                        DtCarrinho.Rows.Add(linha)

    • A duvida é como devolver esse Datatable para a camada Atualizar
      Ex:eu usei essas funçôes para pegar os dados ,mais como devolver esse

    datatable atraves das camadas?

    terça-feira, 11 de maio de 2010 17:18
  • Ninguém?
    quarta-feira, 12 de maio de 2010 03:19
  • Leonardo,

    Dê uma olhada nesse tutorial:

    http://www.macoratti.net/07/11/vbn5_ucn.htm

    att,

    Fernanda


    “Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.
    quarta-feira, 12 de maio de 2010 13:03
    Moderador
  • Fernanda obrigado pela atenção.

    Na verdade esse link mostra como fazer usando os assistentes ,não é o que eu preciso

    Porem achei um tutorial que resolveu em partes na meu problema

    http://www.macoratti.net/vbn_3cm.htm

    Obrigado a todos!!

     

    quarta-feira, 12 de maio de 2010 14:03