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


    [Resolvido]Executar Loop em recordset para um ID específico

    avatar
    Convidado
    Convidado


    [Resolvido]Executar Loop em recordset para um ID específico Empty Executar Loop em recordset para um ID específico

    Mensagem  Convidado Sex 12 Ago - 7:43

    Amigos pretendo executar um loop no recordset, escrevendo um Log do registro a cada Loop.. no entando é para um RecordSet Filtrado... Consegui executar o Loop e escrever os Log's, porém está executando o Loop em todo o recordSet..

    Como executar o Loop apenas no ID específico...

    Obs.: no Campo ID_Digital são vários registros para o mesmo ID, Ex:

    Detento ID =1 - Polegar
    Detento ID =1 - Inficador
    Detento ID =1 - Medio e assim sucessivamente até no Máximo 1O (Dedos das Mãos)

    Fico grato pela Ajuda

    Código:
    rs.FindFirst "ID_Detento = " & Me.CboDetento.Column(0) ' Encontrar primeiro registro com o código do detento.
            If rs.NoMatch Then ' Se o código ainda não está cadastrado...
                EscreveLog ("Não há registros para este Detento em Digitais")
               
            Else ' ... caso contrário...
                            EscreveLog ("Foram encontrado os seguintes registros para este Detento:")
        rs.FindFirst "ID_Detento = " & Me.CboDetento.Column(0) ' Encontrar primeiro registro com o código do detento.
        Do While Not rs.EOF
                EscreveLog ("" & rs!Dedo & "" & " " & "" & rs!Mao & "")
                rs.MoveNext
               
        Loop
    avatar
    Convidado
    Convidado


    [Resolvido]Executar Loop em recordset para um ID específico Empty Re: [Resolvido]Executar Loop em recordset para um ID específico

    Mensagem  Convidado Sex 12 Ago - 10:10

    Bem amigos, para resolver este tópico, já carreguei o recordSet com a SQL filtrada pela cláusula WHERE.

    Portanto:

    Código:
    Private Sub CboDetento_AfterUpdate()
    On Error GoTo TrataErro

    Parametros_de_Inicializacao "SysPen.par"
    Dim db As DAO.Database
    Dim ws As DAO.Workspace
    Dim rs As DAO.Recordset
    Dim NomeBD As String
    Dim StrPath As String
    Dim StrSQLDigital As String

    NomeBD = "Bio_be.accdb"
       
        'String com path para conexão com a base de dados.
        StrPath = DirBancoDados & NomeBD    ' Conecta ao banco de dados comum
        Set db = OpenDatabase(StrPath)
       
    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(DirBancoDados & "\Bio_Be.accdb", False, False, "MS Access;PWD=senha")

        StrSQLDigital = ("SELECT * FROM tblDigital WHERE ID_Detento =" & Me.CboDetento.Column(0) & "")
                 
    Set rs = db.OpenRecordset(StrSQLDigital)

    rs.FindFirst "ID_Detento = " & Me.CboDetento.Column(0) ' Encontrar primeiro registro com o código do detento.
         
            If rs.NoMatch Then ' Se o código ainda não está cadastrado...
                EscreveLog ("Não há registros para este Detento em Digitais")
               
            Else ' ... caso contrário...
                EscreveLog ("Foram encontrado os seguintes registros para este Detento:")
                Do While Not rs.EOF
                EscreveLog ("" & rs!Dedo & "" & " " & "" & rs!Mao & "")
                rs.MoveNext
        Loop
    End If
    End Sub

    Saudações

      Data/hora atual: Qui 28 Mar - 4:11