Usuário com melhor resposta
Atualizar datagrid com banco.mdb vb.net

Pergunta
-
Estou com um problema aqui sobre atualizar dados no projeto usando .mdb que não to conseguindo entender...funciona assim:
Tenho um datagrid no projeto que mostra o conteudo de uma tabela do banco.mdb.
Estou fazendo alterações direto no .mdb pelo access so que as atualizações não estão sendo atualizadas no projeto enquanto ele esta em execução.
Eu preciso saber como devo proceder para que quando eu alterar algo no .mdb pelo access e o aplicativo estiver aberto(em execução) já fossem sendo mostrados?
Obs.: Bom...por enquanto estou alterando, fazendo, as alterações do .mdb direto pelo accesse mesmo pq estou testando o projeto ainda, quando tudo tiver certinho vou criar um form para fzr as alterações.
O motivo das alterações constantes no grid é o seguinte:
O grid mostra promoções de materiais a todo momento, então, eu faço uma promoção no banco.mdb direto pelo access e gravo, dai precisava que o grid já mostrasse esta nova promoção, e assim por diante.
Se alguém ai puder me ajudar agradeço...
- Editado AAB D quinta-feira, 7 de março de 2013 20:55 faltava algo
Respostas
-
Coloque um controle Timer no seu formulário para atualizar a grid de tempo em tempo.
http://www.macoratti.net/09/08/vbn_cron1.htm
Leonardo Garcia
pensouweb@hotmail.com
- Editado Leonardo.Garcia quinta-feira, 7 de março de 2013 21:50
- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:42
-
AAB D pelo que eu entendi você precisa de algo que atualize na hora.
Minha sugenstão e você criar um serviço no Windowns que rode a cada 5 segundo, e esse serviço irá atualizar a grid.
O problema e fazer esse código rsrs, segue o link:
http://www.macoratti.net/vbn5_csw.htm- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:42
-
Também não foi fácil, mais como pra tudo se da um jeito consegui assim...
Coloca o código no evento do button ou timer
Call carregaDados()
Call CarregaGrid()
a maneira acima indica que estou carregando um datagrid de forma tradicional
Coloca o código no evento do button ou timer
a maneira abaixo eu preencho o datagrid através da conexão por DLL tipo. projeto em 3 camadas
DataGrid1.DataSource = cConexao.cTabEventos
a variriável abaixa "PermaneceCELL captura a cell selecionada e mantem esta cell selecionada depois q o grid é atualizado.
O código abaixo é muito legal pra q quando vc esta lá no meio do grid numa cell e clica em Salvar ou atualizar o focu não sai desta cell.
Public Sub PermaneceCELL()
Try
'REM obtenho a coluna e a celula atual...
Dim value = DataGrid1.CurrentRow.Index.ToString
Dim value2 = DataGrid1.CurrentCell.ColumnIndex.ToString
DataGrid1.DataSource = cConexao.cTabEventos
DataGrid1.CurrentCell = DataGrid1.Rows(Convert.ToInt32(value)).Cells(Convert.ToInt32(value2))
Catch ex As Exception
End Try
End SubE...Uma vez vc achava aqui no fórum mais pessoas disposta a ajudar mais agora eu andei postando umas perguntas e foi mesmo que não postar. Será que o pessoal foi todo embora?
As vzs é melhor postar nem que seja perguntas bobas pra obter ajuda, assim mantém o fórum sempre aberto. ABRAÇOS...
- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:43
Todas as Respostas
-
Coloque um controle Timer no seu formulário para atualizar a grid de tempo em tempo.
http://www.macoratti.net/09/08/vbn_cron1.htm
Leonardo Garcia
pensouweb@hotmail.com
- Editado Leonardo.Garcia quinta-feira, 7 de março de 2013 21:50
- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:42
-
Ok Leonardo, entendi oq vc quer dizer só não consigo entender qual é o código para atualizar o grid.
Note que eu estou com o access aberto e a aplicação, dai eu altero algo na tebala do access e preciso que já mostre as alterações no grid em tempo de execução.
Você poderia só me mostra o código, dai eu crio o timer.
-
Niguém sabe ai se tem uma maneira de atualizar o datagrid sempre que eu alterar uma tabela diretamente no Access?
Preciso disso pq estou trabalhando com o access aberto para fzr as alterações no banco e preciso que, quando alterar já reflita o resultado no aplicativo que esta em execução.
-
AAB D pelo que eu entendi você precisa de algo que atualize na hora.
Minha sugenstão e você criar um serviço no Windowns que rode a cada 5 segundo, e esse serviço irá atualizar a grid.
O problema e fazer esse código rsrs, segue o link:
http://www.macoratti.net/vbn5_csw.htm- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:42
-
Obrigado Ninho, mais não preciso de algo assim...se for pra ir para este lado dai, desenvolvo o form para fzr as alterações, só queria saber se tinha uma meneira fácil de alterar algo no access e já ir atualizando o grid na aplicação em execução na hora. VALEU.
-
É o seguinte...criei um form pra fzr as alterações no banco.mdb quando altero algo neste form1 ele grava blz, mais não esta atualizando no outro form2 aberto que mostra os dados no grid também. alguém ai sabe como fazer para sempre ir mostrando os dados atualizados no form2?
-
-
Também não foi fácil, mais como pra tudo se da um jeito consegui assim...
Coloca o código no evento do button ou timer
Call carregaDados()
Call CarregaGrid()
a maneira acima indica que estou carregando um datagrid de forma tradicional
Coloca o código no evento do button ou timer
a maneira abaixo eu preencho o datagrid através da conexão por DLL tipo. projeto em 3 camadas
DataGrid1.DataSource = cConexao.cTabEventos
a variriável abaixa "PermaneceCELL captura a cell selecionada e mantem esta cell selecionada depois q o grid é atualizado.
O código abaixo é muito legal pra q quando vc esta lá no meio do grid numa cell e clica em Salvar ou atualizar o focu não sai desta cell.
Public Sub PermaneceCELL()
Try
'REM obtenho a coluna e a celula atual...
Dim value = DataGrid1.CurrentRow.Index.ToString
Dim value2 = DataGrid1.CurrentCell.ColumnIndex.ToString
DataGrid1.DataSource = cConexao.cTabEventos
DataGrid1.CurrentCell = DataGrid1.Rows(Convert.ToInt32(value)).Cells(Convert.ToInt32(value2))
Catch ex As Exception
End Try
End SubE...Uma vez vc achava aqui no fórum mais pessoas disposta a ajudar mais agora eu andei postando umas perguntas e foi mesmo que não postar. Será que o pessoal foi todo embora?
As vzs é melhor postar nem que seja perguntas bobas pra obter ajuda, assim mantém o fórum sempre aberto. ABRAÇOS...
- Marcado como Resposta Levi DomingosModerator domingo, 17 de março de 2013 12:43