MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro...

    avatar
    Roberto Duailibe
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 20/03/2018

    [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro... Empty [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro...

    Mensagem  Roberto Duailibe em 24/7/2019, 21:26

    BOA TARDE GENTE

    Após a ajuda do Bruno Luiz Maia, cheguei a esse código que funcionou perfeitamente para meu banco - Login: Roberto Duailibe Senha: Rjsdm2018#

    Private Sub Salvar_Memo_Click()
    Dim dbOrc As Database, rs1 As DAO.Recordset
    Dim x As Integer

    If MsgBox("Deseja DUPLICAR o Memo Atual??", vbYesNo + vbQuestion, "Duplicação de Memorando") = vbYes Then
       Set dbOrc = CurrentDb
       Set rs1 = dbOrc.OpenRecordset("Cons_Memo_Interno", dbOpenDynaset)
           With rs1
               x = DMax("Cod_Memo_Int", "Interno_Tab_Memo")    'O memorando é colocado como o maior valor
               .AddNew                                         'acrescenta novo registro
               .Fields("Cod_Memo_Int") = x + 1                 'memorando acrescido de 1 após o último
               ![Cod_De_Interno] = Me.Cod_De_Interno
               ![De_Interno] = Me.De_Interno
               ![Cod_Para_Iterno] = Me.Cod_Para_Iterno
               ![Para_Int] = Me.Para_Int
               ![texto] = Me.texto
               ![Data] = Date                                  'O campo data do registro atual permanece igual, mas o novo registro recebe a data do sistema
               ![Cod_Com_Copia] = Me.Cod_Com_Copia
               ![Cod_Com_Copia_1] = Me.Cod_Com_Copia_1
               ![Cod_Com_Copia_2] = Me.Cod_Com_Copia_2
               ![Tratamento] = Me.Tratamento
               ![Matrícula] = Me.Matrícula
               ![login] = Me.login
               ![Setor] = Me.Setor
               .Update                                         'atualiza o novo registro com os valores acima
           End With
       Set dbOrc = Nothing
       MsgBox "Duplicação do Memo realizada com sucesso. ", vbInformation, "Duplicação"
       DoCmd.Close
    Else
       DoCmd.CancelEvent
       DoCmd.Close
    End If
    End Sub
    Anexos
    [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro... AttachmentSistema Memorando resolvido.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.1 Mb) Baixado 1 vez(es)


    Última edição por Roberto Duailibe em 4/8/2019, 17:40, editado 1 vez(es)
    avatar
    brunoluizmaia
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 24/04/2019

    [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro... Empty Re: [Resolvido]3ª Tentativa de acordo com o fórum, mas sem solução para duplicar registro...

    Mensagem  brunoluizmaia em 1/8/2019, 11:02

    Olá,

    Eu utilizo o código abaixo para duplicar, abro o registro que quero duplicar e clico no botão duplicar que dispara esse código.

    Private Sub btn_duplicate_Click()


    Dim dbOrc As Database, rs1, rs2, rs3 As DAO.Recordset

    If MsgBox("Do you want to double the budget??", vbYesNo + vbQuestion, "Duplicate") = vbYes Then

    Set dbOrc = CurrentDb

    Set rs1 = dbOrc.OpenRecordset("DB_orcamento", dbOpenTable)

    With rs1

    .AddNew
    ![Num_Orc] = DMax("Num_orc", "DB_orcamento") + 1 'Me.idOrcamento + 1
    ![Num_cliente] = Me.Num_cliente
    ![nm_cliente] = Me.nm_cliente
    ![Nm_ramo] = Me.Nm_ramo
    ![Nm_comercial] = Me.Nm_comercial
    ![Nm_contacto] = Me.Nm_contacto
    ![Nm_email] = Me.Nm_email
    ![Num_Contacto_1] = Me.Num_Contacto_1
    ![Num_Contacto_2] = Me.Num_Contacto_2
    ![Nm_filial] = Me.Nm_filial
    ![dt_orc] = Date
    ![status] = "Pending"
    .Update

    End With


    Set rs2 = dbOrc.OpenRecordset("SELECT * FROM DB_Sub_orcamento WHERE Num_orcam=" & Me.Num_Orc)
    Set rs3 = dbOrc.OpenRecordset("DB_Sub_orcamento", dbOpenTable)


    While (Not rs2.EOF)
    With rs3
    .AddNew
    ![Num_orcam] = DMax("Num_orc", "DB_orcamento")
    ![Seq_orcamento] = rs2![Seq_orcamento]
    ![num_molde] = rs2![num_molde]
    ![tp_mat_plas1] = rs2![tp_mat_plas1]
    ![Num_brl_plast1] = rs2![Num_brl_plast1]
    ![qtd_prof1] = rs2![qtd_prof1]
    ![qtd_rem_mat1] = rs2![qtd_rem_mat1]
    ![Num_ang_saida1] = rs2![Num_ang_saida1]
    ![tp_mat_plas2] = rs2![tp_mat_plas2]
    ![Num_brl_plast2] = rs2![Num_brl_plast2]
    ![qtd_prof2] = rs2![qtd_prof2]
    ![qtd_rem_mat2] = rs2![qtd_rem_mat2]
    ![Num_ang_saida2] = rs2![Num_ang_saida2]
    ![tp_mat_plas3] = rs2![tp_mat_plas3]
    ![Num_brl_plast3] = rs2![Num_brl_plast3]
    ![qtd_prof3] = rs2![qtd_prof3]
    ![qtd_rem_mat3] = rs2![qtd_rem_mat3]
    ![Num_ang_saida3] = rs2![Num_ang_saida3]
    ![Setor] = rs2![Setor]
    ![vlr_ajuste] = rs2![vlr_ajuste]
    ![vlr_orc_molde] = rs2![vlr_orc_molde]
    ![dias_orc] = rs2![dias_orc]
    .Update
    rs2.MoveNext
    End With
    Wend

    rs1.Close
    Set rs1 = Nothing

    rs2.Close
    Set rs2 = Nothing

    rs3.Close
    Set rs3 = Nothing

    Set dbOrc = Nothing

    MsgBox "Budget doubled successfully. ", vbInformation, "Duplicate"

    Me.Requery

    Else

    DoCmd.CancelEvent

    End If



    End Sub


      Data/hora atual: 17/9/2019, 16:11