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]Identificacão de registro em recordset e mostrar o nome correspondente em outra tabela

    avatar
    Convidado
    Convidado


    [Resolvido]Identificacão de registro em recordset e mostrar o nome correspondente em outra tabela Empty Identificacão de registro em recordset e mostrar o nome correspondente em outra tabela

    Mensagem  Convidado 10/8/2011, 12:42

    Amigos tenho duas tabelas a saber tblDigital e tblDetentos

    O detento tem sua digital gravada na tblDigital, tendo nesta o campo com a ID do detento
    ou seja:

    Se na tabela detentos, ID = 1
    na tabela digital ID_Detento = 1

    pois bem

    em um código de identificação biométrica atraves de um recordset identifico o detento ao se inseir o dedo no leitor e me retorna a identificação do mesmo pela sua ID. Eu poderia ter o nome na tabela Digital, mas se ja o tenho na tabela detentos creio não ser preciso..então no código abaixo:

    EscreveLog1 ("Detento identificado: " & rs!ID_Detento)

    ao se escrever o lo com a identificação e em caso de positiva.. como mostrar no mesmo log o nome dele na tabela detentos?

    ** Pensei no Dlookup, mas ambas as tabelas estao em um Back End...
    Grato..
    avatar
    Convidado
    Convidado


    [Resolvido]Identificacão de registro em recordset e mostrar o nome correspondente em outra tabela Empty Re: [Resolvido]Identificacão de registro em recordset e mostrar o nome correspondente em outra tabela

    Mensagem  Convidado 10/8/2011, 13:07

    Bem amigos consegui da seguinte maneira:

    Criei um segundo recordSet baseado na tabela detentos.. e no código após fazer a identificação da impressão digital na tblDigital, faço a busca correspondente do ID_Detento no recordset para a tabela detentos.. lançando o resultado em uma vsariável e lançando esta variável no log...

    Código:
    Private Sub IdentificaDig()
    '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 rsDet As DAO.Recordset
    Dim NomeBD As String
    Dim StrPath As String
    Dim StrSqlDetentos As String, StrSqlDigital As String
    Dim DetIdent 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")
                    StrSqlDetentos = ("SELECT * FROM Detentos")
                   
    Set rs = db.OpenRecordset(StrSqlDigital)
    Set rsDet = db.OpenRecordset(StrSqlDetentos)

     
    '********DIGITAIS*************************************************************************
         
            If Not MoldeValido() Then
                EscreveLog ("Erro na captura da digital")
            Exit Sub
        End If
            Do While Not r.EOF
                score = 0
                digi = rs!PolDir
                tpt = Deserialize(digi)
                ret = Verifica(score)
            If ret <= 0 Then
                rs.MoveNext
        Else
            Exit Do
            End If
        Loop
        If rs.EOF Then
            EscreveLog1 ("Detento Não identificado")
        Exit Sub
            Else
            rsDet.FindFirst "ID = " & rs!ID_Detento  ' Encontrar primeiro registro com o código do detento."
            DetIdent = rsDet!Nome & Space(1) & rsDet!Sobrenome
            EscreveLog1 ("Detento identificado: " & DetIdent)
            Me.txtScore = score
            Me.txtScore.Visible = True
                If Me.btIdentificar.Caption = "Identificar" Then
                    Me.btIdentificar.Caption = "IDENTIFICADO"
                    Me.btIdentificar.ForeColor = vbRed
                End If
        End If
        Exit Sub
    TrataErro:
        DoCmd.SetWarnings True
        DoCmd.Hourglass False
        MsgBox Error, , "Erro nº" & err & " ao clicar em Cadastrar"
    End Sub


    Saudações

      Data/hora atual: 8/11/2024, 12:32