Boa noite, a todos do grupo!
Estou com um problema para atualizar um array em um controle Grid, preencho os dados de um DBF num array e mostro numa Grid até aí normal e agora eu fiz uma rotina que atualiza o registro que eu der duplo click e mostra uma tela com os dados do registro atual, mas quando eu altero qualquer dado que esta semndo visto na Grid ela não atualiza o que eu alterei e só vai mostrar a mudança quando eu for para outro registro e voltar no registro que eu alterei. Como eu faço para resolver este problema?
Abraços,
Paulo - Jacareí/SP
Como atualizar uma array no Grid
Moderador: Moderadores
-
gilsonpaulo
- Usuário Nível 3

- Mensagens: 135
- Registrado em: 02 Fev 2008 11:30
- Localização: Quatro Barras
Como atualizar uma array no Grid
Bom dia Paulo, se eu entendi deve ser isso que vc quer.
Atente para os cliente.grid_cliente.Cell, pois é ali que atualizo a grid.
Abraços.
Código: Selecionar todos
if cAlterar = .t.
i := cliente.grid_cliente.Value
if i = 0
Return
endif
dbselectarea("ibge")
ordsetfocus("cidade")
go top
seek alltrim(cliente.txt_cidade.Value)
if found()
cliente.txt_ibge.Value := ibge->codigo
else
MsgBox("CIDADE INVALIDA, VERIFIQUE O NOME DA CIDADE")
cliente.txt_cidade.SetFocus
Return
endif
seek(cliente.txt_codigo.Value)
if rlock()
replace cadcli->descli with cliente.txt_descricao.Value
replace cadcli->cepcli with strtran(cliente.txt_cep.Value,"-")
replace cadcli->tipcli with cliente.combo_pessoa.Value
replace cadcli->ibgecli with cliente.txt_ibge.Value
replace cadcli->endecli with cliente.txt_endereco.Value
replace cadcli->numcli with cliente.txt_numero.Value
replace cadcli->comple with cliente.txt_complemento.Value
replace cadcli->baicli with cliente.txt_bairro.Value
replace cadcli->cidcli with cliente.txt_cidade.Value
replace cadcli->ufdcli with cliente.txt_uf.Value
replace cadcli->cgccli with strtran(strtran(strtran(cliente.txt_cnpj_cpf.Value,"."),"-"),"/")
replace cadcli->inscli with cliente.txt_insc_rg.Value
replace cadcli->telcli with strtran(strtran(strtran(cliente.txt_telefone.Value,"("),")"),"-")
replace cadcli->faxcli with strtran(strtran(strtran(cliente.txt_fax.Value,"("),")"),"-")
replace cadcli->celcli with strtran(strtran(strtran(cliente.txt_celular.Value,"("),")"),"-")
replace cadcli->contcli with cliente.txt_contato.Value
replace cadcli->emailcli with cliente.txt_email.Value
replace cadcli->webcli with cliente.txt_web.Value
commit
unlock
endif
cliente.grid_cliente.Cell(i,02) := cliente.txt_descricao.Value
cliente.grid_cliente.Cell(i,03) := cliente.txt_telefone.Value
cliente.grid_cliente.Cell(i,04) := cliente.txt_fax.Value
cliente.grid_cliente.Cell(i,05) := cliente.txt_celular.Value
cliente.grid_cliente.Cell(i,06) := cliente.txt_endereco.Value
cliente.grid_cliente.Cell(i,07) := cliente.txt_numero.Value
cliente.grid_cliente.Cell(i,08) := cliente.txt_bairro.Value
cliente.grid_cliente.Cell(i,09) := cliente.txt_cidade.Value
cliente.grid_cliente.Cell(i,10) := cliente.txt_uf.Value
cliente.grid_cliente.Cell(i,11) := strtran(cliente.txt_cep.Value,"-")
cliente.grid_cliente.Cell(i,12) := cadcli->cgccli
cliente.grid_cliente.Cell(i,13) := cadcli->inscli
cliente.grid_cliente.Cell(i,14) := cadcli->ibgecli
cliente.grid_cliente.Cell(i,15) := cadcli->webcli
cliente.grid_cliente.Cell(i,16) := cadcli->emailcli
cliente.grid_cliente.Cell(i,17) := cadcli->contcli
cliente.grid_cliente.Cell(i,18) := str(cadcli->tipcli)
cliente.grid_cliente.Cell(i,19) := cadcli->comple
cliente.grid_cliente.Setfocus
cAlterar := .f.
cli_bloqueia()
cliente_grid_onchange()
endif
cliente.btn_excluir.Enabled := .t.
cliente.btn_alterar.Enabled := .t.
cliente.btn_sair.Enabled := .t.
cliente.btn_incluir.Enabled := .t.
cliente.btn_pesquisa.Enabled := .t.
cliente.grid_cliente.SetFocusAbraços.
Como atualizar uma array no Grid
Caro amigo fiz as alterações que você me indicou, não deu certo ele não está atualizando o Grid assim que é salvo os dados do registro, só vai atualizar o dado do Grid quando eu voltar no item que eu atualizei os dados.
Estou utilizando o Minigui Extend 2.3.2 e a Clausula no Grid CELLNAVIGATION .T., será que tem alguma coisa ver por eu não estar conseguindo atualizar os dados no Grid?
Abraços,
Paulo - Jacareí/SP
Estou utilizando o Minigui Extend 2.3.2 e a Clausula no Grid CELLNAVIGATION .T., será que tem alguma coisa ver por eu não estar conseguindo atualizar os dados no Grid?
Abraços,
Paulo - Jacareí/SP
-
gilsonpaulo
- Usuário Nível 3

- Mensagens: 135
- Registrado em: 02 Fev 2008 11:30
- Localização: Quatro Barras