Bom dia!
Estou com dificuldades para realizar a duplicação de registros. Já pesquisei aqui no fórum as diversas soluções disponibilizadas, porém, não consegui ajustar nenhuma para solucionar o meu problema.
Assim, peço ajuda a todos para colaborar na solução da minha demanda, a qual acredito poderá ser de várias pessoas.
Vamos lá!
Tenho uma tabela denominada tblMovFinanceira e outra tblObsMovFinanceira. Na primeira constam diversos campos para registrar as movimentações financeiras e na segunda consta um campo para registro de observações a respeito de alguma movimentação específica.
Como existem movimentações financeiras que irão se repetir durante todo o ano, inclusive com as respectivas observações, a duplicação desses registros ajudariam, em muito, o trabalho do operador.
Conforme o código abaixo, que extrair da colaboração de outros colegas, consigo duplicar os registros da tblMovFinanceira com tranquilidade. O problema é quando estes possuem também registros vinculados na tblObsMovFinanceira. No caso não consigo duplicar os registros desta tabela (tblObsMovFinanceira), pois não consigo fazer com que o novo registro pegue o novo ID do registro duplicado para ser utilizado como Chave Estrangeira no novo registro da tblObsMovFinanceira.
Dessa forma, colo o código atualmente utilizado, bem como, anexo um BD de teste que preparei para facilitar a ajuda do Fórum!
Lembrando, com esse código só consegui duplicar o registro da tblMovFinanceira, ficando pendente a duplicação do registro vinculado na tblObsMovFinanceira.
Private Sub cmdDuplicar_Click()
Dim bd As DAO.Database
Dim rs As DAO.Recordset
Dim Duplicar As Integer
Dim i As Integer
If IsNull(Me.txtDuplicar) Then
MsgBox "Atenção! Preencha a quantidade de registros a serem duplicados.", , "Atenção!"
Exit Sub
End If
Set bd = CurrentDb
Set rs = bd.OpenRecordset("tblFaturamento")
Duplicar = txtDuplicar
For i = 1 To Duplicar
rs.AddNew
rs.Fields("DataMov") = Me!DataMov
rs.Fields("Fornecedor") = Me!Fornecedor
rs.Update
Next i
rs.Close
bd.Close
Set rs = Nothing
Set bd = Nothing
MsgBox "Registros replicados!", vbInformation, "Replicação!"
End Sub
Estou com dificuldades para realizar a duplicação de registros. Já pesquisei aqui no fórum as diversas soluções disponibilizadas, porém, não consegui ajustar nenhuma para solucionar o meu problema.
Assim, peço ajuda a todos para colaborar na solução da minha demanda, a qual acredito poderá ser de várias pessoas.
Vamos lá!
Tenho uma tabela denominada tblMovFinanceira e outra tblObsMovFinanceira. Na primeira constam diversos campos para registrar as movimentações financeiras e na segunda consta um campo para registro de observações a respeito de alguma movimentação específica.
Como existem movimentações financeiras que irão se repetir durante todo o ano, inclusive com as respectivas observações, a duplicação desses registros ajudariam, em muito, o trabalho do operador.
Conforme o código abaixo, que extrair da colaboração de outros colegas, consigo duplicar os registros da tblMovFinanceira com tranquilidade. O problema é quando estes possuem também registros vinculados na tblObsMovFinanceira. No caso não consigo duplicar os registros desta tabela (tblObsMovFinanceira), pois não consigo fazer com que o novo registro pegue o novo ID do registro duplicado para ser utilizado como Chave Estrangeira no novo registro da tblObsMovFinanceira.
Dessa forma, colo o código atualmente utilizado, bem como, anexo um BD de teste que preparei para facilitar a ajuda do Fórum!
Lembrando, com esse código só consegui duplicar o registro da tblMovFinanceira, ficando pendente a duplicação do registro vinculado na tblObsMovFinanceira.
Private Sub cmdDuplicar_Click()
Dim bd As DAO.Database
Dim rs As DAO.Recordset
Dim Duplicar As Integer
Dim i As Integer
If IsNull(Me.txtDuplicar) Then
MsgBox "Atenção! Preencha a quantidade de registros a serem duplicados.", , "Atenção!"
Exit Sub
End If
Set bd = CurrentDb
Set rs = bd.OpenRecordset("tblFaturamento")
Duplicar = txtDuplicar
For i = 1 To Duplicar
rs.AddNew
rs.Fields("DataMov") = Me!DataMov
rs.Fields("Fornecedor") = Me!Fornecedor
rs.Update
Next i
rs.Close
bd.Close
Set rs = Nothing
Set bd = Nothing
MsgBox "Registros replicados!", vbInformation, "Replicação!"
End Sub
- Anexos
- Duplicar.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (30 Kb) Baixado 7 vez(es)
Última edição por Pretor em 30/6/2021, 14:32, editado 1 vez(es)