Em meu projeto (Formulário em GRID- PAI e FILHO). Inseri uma rotina para atualizar um campo do PAI a partir FILHO, segundo condições.
Importa um arquivo TXT para um MDB com mais de 18 mil registros.
Após isso, necessito atualizar alguns campos do PAI que vieram preenchidos no FILHO pela importação.
Nesse exemplo, 4 campos no PAI a serem atualizados:
a) Campo Ident (IDENTIFICADOR do Responsável) que está em UMA LINHA do Grid FILHO (somente um é o respsonsável)
B) Campo Receitas que é a soma de determinada coluna do Grid FILHO;
c) Campo Despesas que é a soma de determinada coluna do Grid FILHO;
e) Campo TotalPessoas que é a contagem das pessoas do Grid FILHO
Com a rotina abaixo esperava atualizar cada registro do PAI um a um e não consegui nem mesmo para o primeiro campo, pois ao rodar a rotina, apenas atuliza o primeiro Ident do PAI e os demais permanecem em branco.
Rotina: (fragmento)
BeginTrans
Set PAI = vgDb.OpenRecordSet("FILHO", dbOpenTable)
If PAI.RecordCount > 0 Then
PAI.MoveFirst
Set FILHO = vgDb.OpenRecordSet("FILHO", dbOpenTable)
If FILHO.RecordCount > 0 Then
FILHO.MoveFirst
Do While Not FILHO.EOF
With PAI
.Edit
If PAI!Codigo = FILHO!Codigo Then
PAI!Ident = FILHO!Ident
PAI!Nome = FILHO!Nome
PAI!ReceitasTotais = FILHO!Receitas
PAI!DespesasTotais = FILHO!Despesas
End If
.Update
.BookMark = .LastModified
End With
End If
FILHO.MoveNext
Loop
End If
End If
CommitTrans
End Sub
Executando a rotina, apenas o PRIMEIRO registro é atualizado dando a impressão que não percorre a TABELA Registro por Registro.
Pergunta
namon
Em meu projeto (Formulário em GRID- PAI e FILHO). Inseri uma rotina para atualizar um campo do PAI a partir FILHO, segundo condições.
Importa um arquivo TXT para um MDB com mais de 18 mil registros.
Após isso, necessito atualizar alguns campos do PAI que vieram preenchidos no FILHO pela importação.
Nesse exemplo, 4 campos no PAI a serem atualizados:
a) Campo Ident (IDENTIFICADOR do Responsável) que está em UMA LINHA do Grid FILHO (somente um é o respsonsável)
B) Campo Receitas que é a soma de determinada coluna do Grid FILHO;
c) Campo Despesas que é a soma de determinada coluna do Grid FILHO;
e) Campo TotalPessoas que é a contagem das pessoas do Grid FILHO
Com a rotina abaixo esperava atualizar cada registro do PAI um a um e não consegui nem mesmo para o primeiro campo, pois ao rodar a rotina, apenas atuliza o primeiro Ident do PAI e os demais permanecem em branco.
Rotina: (fragmento)
Executando a rotina, apenas o PRIMEIRO registro é atualizado dando a impressão que não percorre a TABELA Registro por Registro.
Onde está o meu erro e como corrigir?
namon
Editado por kuroiAdicionar tag CODE
Link para o comentário
Compartilhar em outros sites
7 respostass 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.