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


3 participantes

    Erro ao abrir recordset

    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Erro ao abrir recordset

    Mensagem  ilvecchio 31/7/2014, 22:39

    Buenas!

    Esta parte do código, ao clicar num botão do formulário, parou de funcionar. E já havia funcionado.

    Dim rstAgenda As Recordset

    Set rstAgenda = CurrentDb.OpenRecordset("CS_AgendaHora")

    With rstAgenda
    ' Populate Recordset.
    .MoveLast
    .MoveFirst

    O erro ocorre na linha Set rstAgenda = CurrentDb.OpenRecordset("CS_AgendaHora") :
    Erro em tempo de execução '3061'. Parâmetros insuficientes. Eram esperados 1.
    Mostra (= Nothing) quando posiciono o cursor sobre Set rstAgenda.

    Se clicar na consulta CS_AgendaHora ela mostra os dados corretamente:

    AgendaData AgendaHora
    31/07/2014 08:00:00
    31/07/2014 08:40:00
    31/07/2014 09:20:00
    31/07/2014 10:00:00
    31/07/2014 10:40:00
    31/07/2014 11:20:00
    31/07/2014 12:00:00
    31/07/2014 12:40:00
    31/07/2014 13:20:00
    31/07/2014 14:00:00
    31/07/2014 14:40:00
    31/07/2014 15:20:00
    31/07/2014 16:00:00
    31/07/2014 16:40:00
    31/07/2014 17:20:00
    31/07/2014 18:00:00
    31/07/2014 18:40:00

    O que está ocorrendo?
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3880
    Registrado : 04/04/2010

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  Avelino Sampaio 31/7/2014, 23:23

    Ola!

    Acrescente o DAO

    Dim rstAgenda As DAO.Recordset

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  ilvecchio 1/8/2014, 14:24

    Buenas!
    Avelino, alterei mas o erro persiste.
    Substitui a consulta por uma tabela com os mesmos registros.
    Mostrou este erro: Erro em tempo de execução '3251'. Operação não suportada para este tipo de objeto.
    O erro passou para outra parte do código, veja:

      Dim rstAgenda As DAO.Recordset
      Dim VPosicao As Long
     
      Set rstAgenda = CurrentDb.OpenRecordset("TB_AgendaHora")

      With rstAgenda
         ' Populate Recordset.
         .MoveLast
         .MoveFirst

         ' Enumerate Recordset.
         Do While Not .EOF
            'Display current record information. Add 1 to AbsolutePosition value because it is zero-based.
           
           If !AgendaData = Me.AgendaData And !AgendaHora = Me.AgendaHora Then
              VPosicao = (.AbsolutePosition + 1)   >>>>>>>>>>>>>>>>  esta linha fica marcada

    e este texto aparece ao posicionar o cursor:   .AbsolutePosition =< Operação não suportada para este tipo de objeto.>
    Julio Lustosa
    Julio Lustosa
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 203
    Registrado : 23/02/2011

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  Julio Lustosa 1/8/2014, 16:02

    Olá.
    O melhor é você postar o seu BD para termos uma melhor ideia do que está acontecendo.
    Abraços.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  ilvecchio 1/8/2014, 16:25

    Buenas!
    Também acho. Mas, as tabelas contém informações que não posso publicar.

    Vou explicar, então, o que espero do código:

    O código deve me fornecer a posição (= número inteiro entre 1 e 199) de um registro na tabela, ou na consulta, cujos campos, AgendaData e AgendaHora
    sejam iguas aos campos de mesmo nome no formulário em que se encontra o botão que dispara este código.

    A partir dessa posição, que o código salva numa variável (VPosicao), posiciono um outro formulário no registro (Vposicao) com o comando
    DoCmd.GoToRecord , , acGoTo, VPosicao, mas isto já não faz parte do problema.

    Obrigado por querer me ajudar.
    Julio Lustosa
    Julio Lustosa
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 203
    Registrado : 23/02/2011

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  Julio Lustosa 1/8/2014, 16:33

    Pelo que entendi, você quer um identificado em específico que esteja amarrado à uma das datas que você tem em uma tabela, ou consulta, com este identificador você faz o filtro em outro form, certo?

    Para fazer o filtro e achar o identificado, qual o critério de pesquisa? Que dados você está usando para fazer a pesquisa na tabela? As datas e os horários?
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  ilvecchio 1/8/2014, 18:28

    Buenas!
    Sim, as duas informações: AgendaData e AgendaHora.
    Esse mesmo procedimento eu uso em outro formulário, onde a consulta me traz apenas as datas (AgendaData), e funciona.
    Para posicionar o formulario na data que coincide com o registro (VPosicao), uso este comando:

    DoCmd.GoToRecord acDataForm, "FO_Principal", acGoTo, VPosicao

    E, como eu mostrei, o erro acontece muito antes de tentar posicionar o formulário no registro = VPosicao.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  ilvecchio 1/8/2014, 19:11

    Buenas!
    Consegui fazer funcionar.
    Criei uma tabela temporária com a AgendaData e AgendaHora, tal qual listado anteriormente, e usei-a na consulta.
    Assim funcionou. O que eu acho que causou o erro:

    Na consulta inicial eu tinha um critério  para a data: = Formulários![FO_Principal]![AgendaData], e era uma consulta agrupada.
    Nessa última, não há critério algum, pois a tabela é criada exclusivamente com os registros necessários.

    O que eu tenho:

    1) O comando para posicionar o formulário no registro VPosicao é um botão no FO_Principal;
    2) Nele tenho um subformulário contínuo, SF_Tarefas, onde estão listados os registros compostos por AgendaData, AgendaHora e outros;
    3) Clicando no botão no FO_Principal, o SF_ Tarefas "rola" até o registro representado por VPosicao;

    Para melhorar o meu aplicativo:

    1) A partir do formulário onde eu tenho o código que encontra o valor de VPosicao, posicionar o SF_Tarefas, que está no FO_Principal,
       no registro correspondente;
    2) Ou seja, fazer a mesma coisa que o botão no FO_Principal faz;  
    3) Assim não preciso mais do botão;
    4) Isso eu não consegui.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  ilvecchio 1/8/2014, 21:16

    Buenas!
    Encontrei isto:

    A subform is not part of the Forms collection. Try

    Forms![4-ProceduresDetailForm].SetFocus
    Forms![4-ProceduresDetailForm]![StepsChild subform].SetFocus
    RunCommand acCmdRecordsGoToNext


    Então, adaptei:

    Forms![FO_Principal].SetFocus
    Forms![FO_Principal]![SF_Tarefas].SetFocus
    DoCmd.GoToRecord , , acGoTo, VPosicao

     Very Happy 

    Gracias!





    Conteúdo patrocinado


    Erro ao abrir recordset Empty Re: Erro ao abrir recordset

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 08:12