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

    Adicionar valores em tres tabelas

    Compartilhe

    amisthero
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 1
    Registrado : 16/12/2014

    Adicionar valores em tres tabelas

    Mensagem  amisthero em Dom 02 Ago 2015, 22:39

    Boa noite

    Sou novato no forum e queria saber se é possivel duplicar um orçamento que vai tocar em 3 tabelas, ou seja

    Tabela 1 --> cabeçalho do documento
    Tabela 2 --> linhas do orçamento
    Tabela 3 --> medidas de linhas de orçamento

    O que se pretente é ao duplicar o orçamento ele duplique toda a informação desde o cabeçalho, linhas de orçamento e as medidas das linhas de orçamento.

    neste momento já consigo duplicar o Cabeçalho e as linhas do orçamento, só falta mesmo duplicar as medidas de linhas de orçamento com o seguinte codigo (retirado aqui do forum e adaptado para mim):

    Private Sub Comando116_Click()
    Dim dbs As DAO.Database, Rst As DAO.Recordset
    Dim F As Form

    ' Retorna variável Database apontando para o banco de dados atual.
    Set dbs = CurrentDb
    Set Rst = Me.RecordsetClone
    On Error GoTo Err_BtCopiar_Click

    ' Propriedade de Tag a ser utilizada mais tarde pela consulta com inserção.
    Me.Tag = [ID_proposta]
    ' Adiciona novo registro ao fim do objeto Recordset.
    With Rst
    .AddNew


    'Coloque aqui os dados do form que serão duplicados
    !N_Proposta = Me!N_Proposta 'Vai ate aqui os dados nesse intervalo coloque tudo que ira ser duplicado, mas do FORM... ok
    !Nome_Cliente = Me!Nome_Cliente
    !Att_Cliente = Me!Att_Cliente
    !Morada_Cliente = Me!Morada_Cliente
    !Localidade = Me!Localidade
    !Cod_Postal = Me!Cod_Postal
    !Desconto_Valor_Geral = Me!Desconto_Valor_Geral
    !Desconto_Percentagem_Geral = Me!Desconto_Percentagem_Geral
    !Data_Proposta = Date
    !Referencia_Cliente = Me!Referencia_Cliente
    !Prazo_Entraga_Dias = Me!Prazo_Entraga_Dias
    !Pagamento_Proposta = Me!Pagamento_Proposta
    !Validade_Proposta = Me!Validade_Proposta
    !Proposta_Iva = Me!Proposta_Iva
    !Proposta_logo = Me!Proposta_logo
    !Vendedor = Me!Vendedor
    !Com_Renting = Me!Com_Renting
    !Email_Cliente = Me!Email_Cliente
    !Telefone_Cliente = Me!Telefone_Cliente
    !OBS_Cliente = Me!OBS_Cliente
    !Proposta_Resumo = Me!Proposta_Resumo
    !Separado = Me!Separado
    !NOTAS_Cliente = Me!NOTAS_Cliente
    '!Anexos = !Anexos
    !PHC_N = Me!PHC_N
    !Status = Me!Status
    !obra = Me!obra
    !a_cardo_cliente = Me!a_cardo_cliente
    !a_cardo_empresa = Me!a_cardo_empresa
    !Orc_Aceite = Me!Orc_Aceite
    !Proposta_ori = Me!Proposta_ori
    !Proposta_ronovacao = Me!Proposta_ronovacao
    !Proposta_nome = Me!Proposta_nome

    .Update ' Salva alterações.
    .Move 0, .LastModified
    End With
    Me.Bookmark = Rst.Bookmark

    ' Executa a consulta com inserção Duplicar Detalhes de Pedido que seleciona todos os
    ' registros de detalhe que têm o Codigo Pedido armazenado na propriedade Tag do formulário
    ' e os acrescenta de volta à tabela de detalhe com O Codigo Pedido do registro de formulário principal duplicado.


    DoCmd.SetWarnings False
    DoCmd.OpenQuery "Adicionar_Artigos_Propostas" ' Aqui vc coloca o nome da sua consulta acrescimo
    DoCmd.SetWarnings True



    'Requer que o subformulário exiba os registros recém-acrescentados.
    Me![Propostas_Hardware].Requery ' Coloque aqui o nome do seu sub form que sera duplicado

    Exit_Comando116_Click:
    Exit Sub

    Err_Comando116_Click:
    MsgBox Error$
    Resume Exit_Comando116_Click:


    End Sub

    Será que alguém me pode ajudar?

      Data/hora atual: Ter 24 Out 2017, 08:33