Pessoal, sou novo no fórum e estou com um problema há alguns dias que por mais que pesquise na internet, não encontro solução.
E me parece algo tão básico... :s
Tenho um formulario "Contratos" e um subformulario "Parcelas".
Para faze-los funcionar corretamente (com um botão de "gerar parcelas"), já passei por problemas variados. Então vou tentar ir direto a um determinado ponto que estou empacado agora.
Para salvar o contrato, meu código está assim:
'Só grava em acordos se ainda não tiver gerado as parcelas. Senão é só geração de novas
Set db = CurrentDb()
Set rsAcordos = db.OpenRecordset("access_Acordos", dbOpenDynaset, [dbSeeChanges]) 'Abre Acordos
'Aqui só seto o numero do acordo se for NOVO, senão dá erro no UPDATE
If novo Then
rsAcordos.AddNew
rsAcordos("numAcordo") = Me.numAcordo.Value
Else
rsAcordos.Edit
End If
rsAcordos("nomeEmpresa") = Me.nomeEmpresa
rsAcordos("dataAcordo") = Me.txtDataAcordo
rsAcordos("qtdParcelas") = Me.qtdParcelas
rsAcordos("pastas") = Me.pastas
rsAcordos.Update
rsAcordos.Close
db.Close
MsgBox ("Dados gravados com sucesso.")
Nem vou entrar no mérito do problema que estou tendo nas parcelas (subformulario) agora, mas no caso acima, o que está acontecendo é que ele está atualizando sempre o 1o registro da tabela, não no atual que está na tela.
Eu tenho um campo autonumerico chamado "codAcordo", que quando eu faço um debug, ele nunca está com o valor do registro que está na tela, e sim com o 1o da tabela. Por isso o update sendo feito errado.
Não consigo entender porque ele não assume o valor do que está na tela.
Pergunta
fbaiao
Pessoal, sou novo no fórum e estou com um problema há alguns dias que por mais que pesquise na internet, não encontro solução.
E me parece algo tão básico... :s
Tenho um formulario "Contratos" e um subformulario "Parcelas".
Para faze-los funcionar corretamente (com um botão de "gerar parcelas"), já passei por problemas variados. Então vou tentar ir direto a um determinado ponto que estou empacado agora.
Para salvar o contrato, meu código está assim:
'Só grava em acordos se ainda não tiver gerado as parcelas. Senão é só geração de novas
Set db = CurrentDb()
Set rsAcordos = db.OpenRecordset("access_Acordos", dbOpenDynaset, [dbSeeChanges]) 'Abre Acordos
'Aqui só seto o numero do acordo se for NOVO, senão dá erro no UPDATE
If novo Then
rsAcordos.AddNew
rsAcordos("numAcordo") = Me.numAcordo.Value
Else
rsAcordos.Edit
End If
rsAcordos("nomeEmpresa") = Me.nomeEmpresa
rsAcordos("dataAcordo") = Me.txtDataAcordo
rsAcordos("qtdParcelas") = Me.qtdParcelas
rsAcordos("pastas") = Me.pastas
rsAcordos.Update
rsAcordos.Close
db.Close
MsgBox ("Dados gravados com sucesso.")
Nem vou entrar no mérito do problema que estou tendo nas parcelas (subformulario) agora, mas no caso acima, o que está acontecendo é que ele está atualizando sempre o 1o registro da tabela, não no atual que está na tela.
Eu tenho um campo autonumerico chamado "codAcordo", que quando eu faço um debug, ele nunca está com o valor do registro que está na tela, e sim com o 1o da tabela. Por isso o update sendo feito errado.
Não consigo entender porque ele não assume o valor do que está na tela.
Alguma dica ? :s
Agradeço desde já.
Flávio Baião
http://www.baiaoassessoria.com.br
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
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.