[VB6] Ajuda em grid

RitxAngel

Power Member
Boas caros amigos, conheço d elonga data o forun, mas só por necessidade hoje me resgistei, e espero que me ajudem aqui neste problemita

Passa-se o seguinte:
Eu estou a trabalhar com uma grid, e tenho que ir buscar uns dados a duas tabelas. Até aqui nada de mais, o que se passa, e que eu tenho que introduzir dados e guardar, nada demais tambem, o problema está no guardar, ele faz tudo, apenas nao acrescenta a base de dados os dados que introduzi.

Vou deixar aqui o código para voces verem e darem possiveis ajudas, se poderem

Código do botão guardar

Private Sub cmdgravar_Click()
Dim rsrota As ADODB.Recordset

Dim SQL As String

gridrs.AbsolutePosition = 1
gridrota.Action = 15
gridrs.Update


SQL = "select calfecha, calref, cli, REX, Data_Entrada, Hora_Real_Entrada, Data_Saida, Hora_Real_Saida, Inicio_Carga, Fim_Carga, Entrega_Processo, Cais, ArmazemExp, CHEP, EURO, LPR, Outras, Volumes, Rota from Cab "
Set rsrota = getRs(SQL)
While gridrs.EOF
rsrota.Filter = ""
rsrota.Filter = "calref = " & p(gridrs("Referencia")) & " and cli = " & gridrs("cliente")
While rsrota.EOF
rsrota("REX") = gridrs("REX")
rsrota("Data_Entrada") = gridrs("Data_Entrada")
rsrota("Hora_Real_Entrada") = gridrs("Hora_Entr")
rsrota("Data_Saida") = gridrs("Data_Saida")
rsrota("Hora_Real_Saida") = gridrs("Hora_Sai")
rsrota("Inicio_Carga") = gridrs("Ini_Carga")
rsrota("Fim_Carga") = gridrs("Fim_Carga")
rsrota("Entrega_Processo") = gridrs("Entrega_Proc")
rsrota("Cais") = gridrs("Cais")
rsrota("ArmazemExp") = gridrs("Armazem")
rsrota("CHEP") = gridrs("CHEP")
rsrota("EURO") = gridrs("EURO")
rsrota("LPR") = gridrs("LPR")
rsrota("Outras") = gridrs("Outras")
rsrota("Volumes") = gridrs("Volumes")
rsrota.Update
Wend
gridrs.MoveNext
Wend


SQL = "select calfecha, calref, cli, REX, Data_Entrada, Hora_Real_Entrada, Data_Saida, Hora_Real_Saida, Inicio_Carga, Fim_Carga, Entrega_Processo, Cais, ArmazemExp, CHEP, EURO, LPR, Outras, Volumes from CabHist "
Set rsrota = getRs(SQL)
While gridrs.EOF
rsrota.Filter = ""
rsrota.Filter = "calref = " & p(gridrs("Referencia")) & " and cli = " & gridrs("cliente")
While rsrota.EOF
rsrota("REX") = gridrs("REX")
rsrota("Data_Entrada") = gridrs("Data_Entrada")
rsrota("Hora_Real_Entrada") = gridrs("Hora_Entr")
rsrota("Data_Saida") = gridrs("Data_Saida")
rsrota("Hora_Real_Saida") = gridrs("Hora_Sai")
rsrota("Inicio_Carga") = gridrs("Ini_Carga")
rsrota("Fim_Carga") = gridrs("Fim_Carga")
rsrota("Entrega_Processo") = gridrs("Entrega_Proc")
rsrota("Cais") = gridrs("Cais")
rsrota("ArmazemExp") = gridrs("Armazem")
rsrota("CHEP") = gridrs("CHEP")
rsrota("EURO") = gridrs("EURO")
rsrota("LPR") = gridrs("LPR")
rsrota("Outras") = gridrs("Outras")
rsrota("Volumes") = gridrs("Volumes")
rsrota.Update
Wend
gridrs.MoveNext
Wend
gridrota.MaxRows = gridrs.RecordCount
Set gridrota.DataSource = gridrs

End Sub

Desde já os meus melhores cumprimentos
 
eu nao costumo trabalhar assim, mas tenta por logo a seguir ao while onde vais inserir os dados o nome do teu rs.AddNew e mantens tudo o resto.

cumps.
 
Back
Topo