MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    Copiar campo desacoplado para tabela

    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 3/8/2017, 06:04

    Alguém me ajude por favor. Estou tentando copiar dados de um form para campos desacoplados em outro form, mas recebo sempre a resposta sobre a ausência de campos relacionados no formulário. O que é difícil entender, é que utilizo a mesma função em outro form relacionado e o problema não ocorre.
    Estou postando o banco. O erro ocorre no momento de salvar o formulário "veículos", anexado ao formulário "clientes".
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  FabioPaes 3/8/2017, 14:35

    O Anexo vei com muitos erros e ficou impossivel testar!

    Antes de anexar, teste o arquivo e veja se o erro ocorre e se esta USÁVEL!

    Formulário anexados a formulários principais, vc deve informar o caminho completo... Passando pelo Formulario Principal...

    Forms![NomeFormPrinciapal]![NomeSubFormulario]![NomeCampo]

    Outra coisa, descreve detalhadamente como simular o erro, pois no seu post fiquei em duvida de como simular!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 01:55

    A primeira tela é frm_clientes e a sua chave primária é o CNPJeCPF
    Quando eu clico no ícone com o carrinho, ela abre a segunda tela, que é o frm_veiculos, onde cadastro os automóveis. Neste formulário, a chave primária é a placa do veículo.
    O problema é que quando eu clico no ícone "salvar", ele retorna a mensagem de erro, de que é preciso ter um registro relacionado. Nesse caso, eu estou tentando copiar três campos desacoplados presentes na form_veiculos (com origem na tabela clientes), para a tbl_veículos.
    Mas para abrir o terceiro formulário (frm_cadastroait), onde cadastro as infrações (chave primária codaccessait) o problema não ocorre.
    Estou enviando o banco de dados sem usar o Zipmail, pois talvez o anterior tenha perdido algo duranteo envio, já que o abri normalmente aqui.
    Para salvar o cadastro do veículo e o cadastro de infrações, eu utilizo o seguinte código:

    Private Sub salvarclientes_Click()
    Dim bc As Database
    Dim tbl_veiculos As Recordset
    Set bc = CurrentDb()
    Set tbl_veiculos = bc.OpenRecordset("tbl_veiculos")
    Me!nome = Me.doc2
    Me!codaccesscliente = Me.doc1
    Me!CPFeCNPJ = Me.doc
    Set bc = Nothing
    Set tbl_veiculos = Nothing
    If MsgBox(" Deseja salvar o cadastro deste veículo?", vbOKCancel + vbDefaultButton1 + vbInformation, "Aviso") = vbOK Then
    DoCmd.Save
    DoCmd.RunCommand acCmdRefresh
    MsgBox " Cadastro salvo com sucesso !", vbOKOnly, "Aviso"
    Else
    MsgBox " Veículo não cadastrado ", vbInformation, "Aviso"  
    End If
    End Sub
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 01:59

    Segue novamente o arquivo em WinZip. Não consegui enviá-lo no modo normal.
    Anexos
     Copiar campo desacoplado para tabela AttachmentSISTEMA TRANSIT.zip
    Copiar campo desacoplado para tabela
    Você não tem permissão para fazer download dos arquivos anexados.
    (553 Kb) Baixado 16 vez(es)
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 02:08

    Print das  telas
    Anexos
     Copiar campo desacoplado para tabela Attachmentmaximus.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (445 Kb) Baixado 6 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  FabioPaes 4/8/2017, 15:24

    Olha, o erro descrito e devido a falta do Codigo do Cliente...



    Porem... Nesse seu arquivo que me mandou, nao encontrei qualquer erro!
    Testei incluindo novo Cliente e com clientes ja cadastrados, depois cliquei no carrinho... Cadastrei novo veiculo, salvei....
    Nao deu erro algum e os dados foram gravados!

    Teste novamente nesse arquivo que me mandou!

    Meu access é 2013 32bits


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 16:21

    Fiz o teste com o mesmo arquivo e problema persiste.
    E agora entendo menos, já que a mesma função não apresentou o problema com você.
    E repito que entendo menos ainda, porque a mesma função está perfeita para entrar na outra tabela.
    Para esclarecer como estou fazendo, todas as vezes que cadastro um novo veículo, preciso abrir a tabela veículos e inserir manualmente o nome, CNPJeCPF e código do cliente, o que se tornará inviável quando outras pessoas tiverem que utilizar o serviço.
    Eu utilizo o Access 2003.
    Inclusive, tenho outro programa onde utilizo essa mesma função várias vezes sem problemas.
    Temo que minha próxima opção, será descontruir e reconstruir o programa a partir do zero.
    De qualquer forma, agradeço por sua ajuda e se identificar algum erro que estou cometendo, ou se houver outra opção para essa colagem de campos, ficarei muito grato.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  FabioPaes 4/8/2017, 16:36

    Caso alguém tenha o Access 2003 e puder testar... Pq aqui não tenho e não obtive nenhum erro!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  FabioPaes 4/8/2017, 16:48

    Agora analisando mais o seu codigo, eu nao entendi uma coisa:

    Vc abre um Recordset na tabela tbl_veiculos e não realiza nenhuma manipulação com os dados...
    Veja que se remover o código em vermelho, ainda irá funcionar, pois utiliza formulário/campos vinculados!

    Private Sub salvarclientes_Click()
    Dim bc As Database
    Dim tbl_veiculos As Recordset
    Set bc = CurrentDb()
    Set tbl_veiculos = bc.OpenRecordset("tbl_veiculos")

    Me!nome = Me.doc2
    Me!codaccesscliente = Me.doc1
    Me!CPFeCNPJ = Me.doc
    Set bc = Nothing
    Set tbl_veiculos = Nothing

    If MsgBox(" Deseja salvar o cadastro deste veículo?", vbOKCancel + vbDefaultButton1 + vbInformation, "Aviso") = vbOK Then
    DoCmd.Save
    DoCmd.RunCommand acCmdRefresh
    MsgBox " Cadastro salvo com sucesso !", vbOKOnly, "Aviso"
    Else
    MsgBox " Veículo não cadastrado ", vbInformation, "Aviso"
    End If
    End Sub


    A menos que tenha outro objetivo que eu não percebi... Esse Código é desnecessário!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 23:20

    Eu irei tentar essa nova forma que você me está me orientando. Quanto ao objetivo, é o que creio que você interpretou. Necessito que esses três campos oriundos da tabela clientes, sejam colados na tabela veículos, a partir de sua exibição no formulário veículos.
    Vou testar e lhe dou uma posição.
    Obrigado por enquanto.
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 4/8/2017, 23:40

    O erro persiste.
    Mudei na tabela clientes a chave primária de CNPJeCPF para código do cliente, assim como o relacionamento correspondente. Deletei os campos nome e CNPJeCPF da tabela veículos para que copiasse apenas o código do cliente. Mudei também todos os relacionamentos nas consultas para evitar conflitos.
    Mesmo assim, ele continua dando o mesmo erro.

    Os dados na tabela veículos são utilizados para gerar um documento em Word e um e-mail. Mas posso mudar a origem desses dados para a tabela clientes. Portanto, não me importo se tiver os dados apenas para exibição no formulário veículos, desde que claro, eu consiga copiar pelo menos o campos "codaccesscliente" para a tabela veículos.
    Anexos
     Copiar campo desacoplado para tabela Attachmenttelas.zip
    tabela e formulário com erros
    Você não tem permissão para fazer download dos arquivos anexados.
    (414 Kb) Baixado 9 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  FabioPaes 5/8/2017, 21:13

    Olha, claramente o problema esta no Office 2003. Pois aqui no meu 2013 funcionou normalmente!

    infelizmente, somente alguém com Office 2003 ou com experiente com essa versao poderá lhe ajudar, pois não utilizei nada no 2003.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 6/8/2017, 02:00

    Ok! Fábio.
    Sei que fez tudo ao seu alcance para me ajudar.
    Irei esperar por alguém que seja especialista em 2003 para tentar ajustar esse quebra-cabeças.

    Desejo um bom domingo pra você.

    Julimar
    Julimar Alves
    Julimar Alves
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 24/03/2017

     Copiar campo desacoplado para tabela Empty Copiar campo desacoplado para tabela

    Mensagem  Julimar Alves 17/8/2017, 16:05

    No evento antes de atualizar do frm_veiculos, está copiando apenas um dos campos. Se eu acrescentar outro campo, a mensagem sobre ausência de campo relacionado volta a surgir.

    Private Sub Form_BeforeUpdate(Cancel As Integer)
    Dim bc As Database
    Dim tbl_veiculos As Recordset
    Set bc = CurrentDb()
    Set tbl_veiculos = bc.OpenRecordset("tbl_veiculos")
    Me!codaccesscliente = Me.doc1
    Set bc = Nothing
    Set tbl_veiculos = Nothing
    End Sub

    Conteúdo patrocinado


     Copiar campo desacoplado para tabela Empty Re: Copiar campo desacoplado para tabela

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 00:50