Gostaria de saber como resolver o problema abaixo:
No SQL do access faço conexão com um "Servidor" nele eu tenho algumas informações sendo uma delas a "Chave" das pessoas que vem do servidor e salva na tabela "X" junto com outras informações, porém não tenho o nome dessas pessoas no "Servidor" e criei a tabela "Z" com o nome das pessoas e do lado tenha a chave de cada uma.
Como faço do SQL para verificar a "Chave" que vem do servidor e procurar na tabela "Z" de qual pessoa pertence a "Chave" e trazer na tabela "X" o nome na coluna "Nome"?
________________________________________________________________________________________________________________________________
A informações que tem no SQL abaixo:
________________________________________________________________________________________________________________________________
Sub Dados()
Conexao
'Tabela = "Servidor"
datax = Format(Now, "dd/0" & Form_Atualizar.lbl_Mes.Caption & "/yyyy")
UltimoDia (datax)
FimMes = CDate("31/12/2017")
FimMes = Format(FimMes, "yyyy-mm-dd 23:59:59")
Set rsADO = New ADODB.Recordset
SQL = "SELECT ""Servidor"".db_Chave, ""Servidor"".""Data-de-Criação"", " & _
""Servidor"".db_produto, ""Servidor"".db_NP, " & _
"FROM ""Servidor"" ""Servidor"" WHERE (""Servidor""."Produto")
rsADO.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
Do While Not rsADO.EOF
Set db = CurrentDb()
LocalSQL = "SELECT * FROM [Tb_X] " & _
"WHERE db_Chave = " & rsADO!db_Chave & " AND [Data-de-Criação]= #" & Format(rsADO("Data-de-Criação"), "mm/dd/yyyy hhss") & "#"
Set sr = db.OpenRecordset(LocalSQL)
If sr.EOF Then
sr.AddNew
Else
sr.Edit
End If
sr!Chave = "" & rsADO!("db_Chave")
sr("Data-de-Criação") = "" & Format(rsADO("Data-de-Criação"), "dd/mm/yyyy hhss")
sr!Chave = "" & rsADO!db_ChaveAnalista
sr!Produto = "" & rsADO("db_Produto")
sr.Update
rsADO.MoveNext
db.Close
Set sr = Nothing
Set db = Nothing
Loop
cn.Close
Set rsADO = Nothing
Set cn = Nothing
Exit Sub
End Sub
________________________________________________________________________________________________________________________________
Informações da tabela:
________________________________________________________________________________________________________________________________
Tb_X
Chave|Produto|Data-criação|Nome
B |45fg44|05/12/2017|
A |45a544|05/12/2017|
D |4545d4|05/12/2017|
B |45s5a4|05/12/2017|
Tb_Z
Chave|Nome
A |Pedro
B |João
C |Maria
D |Francisco
________________________________________________________________________________________________________________________________
No SQL do access faço conexão com um "Servidor" nele eu tenho algumas informações sendo uma delas a "Chave" das pessoas que vem do servidor e salva na tabela "X" junto com outras informações, porém não tenho o nome dessas pessoas no "Servidor" e criei a tabela "Z" com o nome das pessoas e do lado tenha a chave de cada uma.
Como faço do SQL para verificar a "Chave" que vem do servidor e procurar na tabela "Z" de qual pessoa pertence a "Chave" e trazer na tabela "X" o nome na coluna "Nome"?
________________________________________________________________________________________________________________________________
A informações que tem no SQL abaixo:
________________________________________________________________________________________________________________________________
Sub Dados()
Conexao
'Tabela = "Servidor"
datax = Format(Now, "dd/0" & Form_Atualizar.lbl_Mes.Caption & "/yyyy")
UltimoDia (datax)
FimMes = CDate("31/12/2017")
FimMes = Format(FimMes, "yyyy-mm-dd 23:59:59")
Set rsADO = New ADODB.Recordset
SQL = "SELECT ""Servidor"".db_Chave, ""Servidor"".""Data-de-Criação"", " & _
""Servidor"".db_produto, ""Servidor"".db_NP, " & _
"FROM ""Servidor"" ""Servidor"" WHERE (""Servidor""."Produto")
rsADO.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
Do While Not rsADO.EOF
Set db = CurrentDb()
LocalSQL = "SELECT * FROM [Tb_X] " & _
"WHERE db_Chave = " & rsADO!db_Chave & " AND [Data-de-Criação]= #" & Format(rsADO("Data-de-Criação"), "mm/dd/yyyy hhss") & "#"
Set sr = db.OpenRecordset(LocalSQL)
If sr.EOF Then
sr.AddNew
Else
sr.Edit
End If
sr!Chave = "" & rsADO!("db_Chave")
sr("Data-de-Criação") = "" & Format(rsADO("Data-de-Criação"), "dd/mm/yyyy hhss")
sr!Chave = "" & rsADO!db_ChaveAnalista
sr!Produto = "" & rsADO("db_Produto")
sr.Update
rsADO.MoveNext
db.Close
Set sr = Nothing
Set db = Nothing
Loop
cn.Close
Set rsADO = Nothing
Set cn = Nothing
Exit Sub
End Sub
________________________________________________________________________________________________________________________________
Informações da tabela:
________________________________________________________________________________________________________________________________
Tb_X
Chave|Produto|Data-criação|Nome
B |45fg44|05/12/2017|
A |45a544|05/12/2017|
D |4545d4|05/12/2017|
B |45s5a4|05/12/2017|
Tb_Z
Chave|Nome
A |Pedro
B |João
C |Maria
D |Francisco
________________________________________________________________________________________________________________________________