Olá, estou com uma dúvida em um código em SQL e estou precisando de ajuda.
Criei a seguinte consulta:
Essa consulta me retorna os valores corretamente, Porém estou precisando acessar e manipular ela em código VBA através do CurrentDb.OpenRecordset. Converti o código e acabou assim:
Quando executo o código ele acusa o seguinte erro:
"Erro em tempo de execução '2465':
O Microsoft Access não pode localizar o campo '|1' referido em sua expressão."
Acredito que seja erro de sintaxe, mas olhei o código várias vezes e não encontrei.
Será que alguém poderia ver isso, as vezes é erro simples que o dono da obra acaba não vendo e outros olhos conseguirão.
Agradeço desde já a atenção de todos que lerem esse post.
Criei a seguinte consulta:
- Código:
SELECT [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodCotacao, [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor, clientes.APELIDO, [T/Compras/Improdutivos/Cotacoes].Ganhador, [T/Compras/Improdutivos/Cotacoes].CodProduto, [T/Compras/Improdutivos/Cotacoes].Quantidade, [T/Compras/Improdutivos/Cotacoes/Fornecedores].Preco, [T/Compras/Improdutivos/Cotacoes].Status, [T/Compras/Improdutivos/Cotacoes].DataCompra, [T/Compras/Improdutivos/Cotacoes].Comprador
FROM clientes INNER JOIN ([T/Compras/Improdutivos/Cotacoes/Fornecedores] INNER JOIN [T/Compras/Improdutivos/Cotacoes] ON [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodCotacao = [T/Compras/Improdutivos/Cotacoes].Codigo) ON (clientes.CGC = [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor) AND (clientes.APELIDO = [T/Compras/Improdutivos/Cotacoes].Ganhador)
WHERE ((([T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor)=[Formulários]![F112A-F/Compras/Improdutivos/PedidosCompraDigitacao]![CodFornecedor]) AND (([T/Compras/Improdutivos/Cotacoes].Status)="Aprovado"));
[/b]
Essa consulta me retorna os valores corretamente, Porém estou precisando acessar e manipular ela em código VBA através do CurrentDb.OpenRecordset. Converti o código e acabou assim:
- Código:
Dim varItemCotacao As DAO.Recordset
Set varItemCotacao = CurrentDb.OpenRecordset("SELECT DISTINCTROW [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodCotacao," _
& " [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor," _
& " [clientes].APELIDO," _
& " [T/Compras/Improdutivos/Cotacoes].Ganhador," _
& " [T/Compras/Improdutivos/Cotacoes].CodProduto," _
& " [T/Compras/Improdutivos/Cotacoes].Quantidade," _
& " [T/Compras/Improdutivos/Cotacoes/Fornecedores].Preco," _
& " [T/Compras/Improdutivos/Cotacoes].Status," _
& " [T/Compras/Improdutivos/Cotacoes].DataCompra," _
& " [T/Compras/Improdutivos/Cotacoes].Comprador" _
& " FROM clientes" _
& " INNER JOIN ([T/Compras/Improdutivos/Cotacoes/Fornecedores]" _
& " INNER JOIN [T/Compras/Improdutivos/Cotacoes]" _
& " ON [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodCotacao = [T/Compras/Improdutivos/Cotacoes].Codigo)" _
& " ON clientes.APELIDO = [T/Compras/Improdutivos/Cotacoes].Ganhador" _
& " AND clientes.CGC = [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor" _
& " WHERE [T/Compras/Improdutivos/Cotacoes/Fornecedores].CodFornecedor = " & [Formulários]![F112A-F/Compras/Improdutivos/PedidosCompraDigitacao]![codFornecedor] & "" _
& " AND [T/Compras/Improdutivos/Cotacoes].Status = 'Aprovado';")
varItemCotacao.MoveFirst
Quando executo o código ele acusa o seguinte erro:
"Erro em tempo de execução '2465':
O Microsoft Access não pode localizar o campo '|1' referido em sua expressão."
Acredito que seja erro de sintaxe, mas olhei o código várias vezes e não encontrei.
Será que alguém poderia ver isso, as vezes é erro simples que o dono da obra acaba não vendo e outros olhos conseguirão.
Agradeço desde já a atenção de todos que lerem esse post.