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]Comando ou a ação "IrParaRegistro" não está disponível agora

    Compartilhe

    Albergiomelo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 15/09/2015

    [Resolvido]Comando ou a ação "IrParaRegistro" não está disponível agora

    Mensagem  Albergiomelo em 22/11/2017, 18:23

    Boa tarde pessoal.
    Estou com um problema em um Banco de Dados usado para controle de Pastas e documentos. Ele estava funcionado corretamente, entretanto, ao começamos excluir alguns registros, quando alguma pasta física deixam de ser utilizada, a sequencia automática da chave primária é interrompida para aqueles registros que foram excluídos. Pois é ai que começa o problema, tenho um formulário que utiliza um ListBox para pesquisa, sendo que ao clicar em um dos itens dessa lista sou direcionado para outro formulário com os dados completos desse item onde poderei: Editar, Salvar, Excluir etc. Para todos os dados abaixo de qualquer item que foi deletado aparece o erro acima descrito.
    Exemplo: se eu tiver 400 registros e deletar o registro nº 350 quando realizar a pesquisa de um item acima desse numero (350) o código DoCmd.GoToRecord , , acGoTo, Registro vai apresentar erro, ele acaba não localizando o registro, apesar dele existir, apenas houve uma quebra na sequencia inicial.

    Estou utilizando o seguinte código para passar um item específico do ListBox do Formulário pesquisa para o Formulário Dados (detalhado)

    [i]Private Sub Lst_Pesquisa_Click()
    Dim Registro As Variant

    Registro = [Forms]![Frm_Pesquisa]![Lst_Pesquisa]
    DoCmd.OpenForm "Frm_Dados"
    DoCmd.GoToRecord , , acGoTo, Registro
    DoCmd.Close acForm, "Frm_Pesquisa"
    End Sub

    Alguém poderia me ajudar no sentido de:
    1) ajustar meu código para que não apareça o erro e ele consiga abrir o registro escolhido apesar da quebra de sequencia da numeração na Tabela
    2) Uma forma, através de código VBA que toda vez que eu exclua um registro o Access reorganiza a sequencia numérica da tabela para evitar que esse erro ocorra.

    Desde já agradeço qualquer ajuda
    Abraços
    avatar
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 963
    Registrado : 08/02/2011

    Re: [Resolvido]Comando ou a ação "IrParaRegistro" não está disponível agora

    Mensagem  cafpr em 22/11/2017, 23:32

    Veja este exemplo



    Dim strNomeDoDoc As String
    Dim strFiltro As String
    strNomeDoDoc = "Frm_NF_Entrada"
    strFiltro = "[IdEntrada] = [Forms]![Frm_Consulta_NF_Entrada]![IdEntrada]"
    DoCmd.OpenForm strNomeDoDoc, , , strFiltro
    DoCmd.Close acForm, "Frm_Consulta_NF_Entrada"
    Exit_IdEntrada_Click:
    Anexos
    ControleEstoque - Cópia1.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.5 Mb) Baixado 5 vez(es)

    Albergiomelo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 15/09/2015

    Re: [Resolvido]Comando ou a ação "IrParaRegistro" não está disponível agora

    Mensagem  Albergiomelo em 23/11/2017, 10:21

    Vou experimentar ele e dou o retorno logo em seguida.

    Desde já grato

    Albergiomelo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 15/09/2015

    Re: [Resolvido]Comando ou a ação "IrParaRegistro" não está disponível agora

    Mensagem  Albergiomelo em 23/11/2017, 19:39

    Obrigado cafpr.

    Fiz as adaptações necessárias do seu código para o meu e, mesmo com vários registros excluídos da minha Tabela ela não mais apresenta o erro anterior, portanto, RESOLVIDO. Meu código adaptado ficou assim:

    Private Sub Lst_Pesquisa_Click()
    Dim strNomeFrm As String
    Dim strFiltro As String

    strNomeFrm = "Frm_Dados"
    strFiltro = "[Índice] = [Forms]![Frm_Pesquisa]![Lst_Pesquisa]"
    DoCmd.OpenForm strNomeFrm, , , strFiltro
    DoCmd.Close acForm, "Frm_Pesquisa"
    Exit_Índice_Click:

    End Sub

    Obrigado pela atenção
    Abraços

    Albergiomelo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 15/09/2015

    Re: [Resolvido]Comando ou a ação "IrParaRegistro" não está disponível agora

    Mensagem  Albergiomelo em 23/11/2017, 19:43

    santa

      Data/hora atual: 19/8/2018, 20:34