Olá boa noite, fiz uma SQL de referencia cruzada para calculos de descontos, fiz primeiro um teste:
Frmteste campos:
Umidade, TxUmidade, Codigo
devieria devolver o resultado para o campo TxTotal.
Eis o meu código
Dim varsql As String
Dim strsql As Recordset
Dim var As String
varsql = "SELECT tblDescontos.Aplicado, TblDesconto_Detail.IdProduto, TblDesconto_Detail.Idfaixa, TblDesconto_Detail.De, TblDesconto_Detail.Ate, TblDesconto_Detail.Desconto FROM tblDescontos INNER JOIN TblDesconto_Detail ON tblDescontos.Código = TblDesconto_Detail.IdProduto WHERE (((tblDescontos.Aplicado) = '&Me.Umidade' And ((TblDesconto_Detail.IdProduto) = '&Me.Codigo') And ((TblDesconto_Detail.De) <= '&Me.TxUmidade') And ((TblDesconto_Detail.Ate) >= '&Me.TxUmidade')))"
Set strsql = CurrentDb.OpenRecordset(varsql)
MsgBox "o valor é " & strsql(0)
Porém quando executo ela retorna ERRO EM TEMPO DE EXECUÇÃO '3021'
nenhum registro atual.
nos campos txUmidade e Desconto possuem valores decimais tipo 14,5 ou 0,75 e por ai
aguado ajuda obrigado
Frmteste campos:
Umidade, TxUmidade, Codigo
devieria devolver o resultado para o campo TxTotal.
Eis o meu código
Dim varsql As String
Dim strsql As Recordset
Dim var As String
varsql = "SELECT tblDescontos.Aplicado, TblDesconto_Detail.IdProduto, TblDesconto_Detail.Idfaixa, TblDesconto_Detail.De, TblDesconto_Detail.Ate, TblDesconto_Detail.Desconto FROM tblDescontos INNER JOIN TblDesconto_Detail ON tblDescontos.Código = TblDesconto_Detail.IdProduto WHERE (((tblDescontos.Aplicado) = '&Me.Umidade' And ((TblDesconto_Detail.IdProduto) = '&Me.Codigo') And ((TblDesconto_Detail.De) <= '&Me.TxUmidade') And ((TblDesconto_Detail.Ate) >= '&Me.TxUmidade')))"
Set strsql = CurrentDb.OpenRecordset(varsql)
MsgBox "o valor é " & strsql(0)
Porém quando executo ela retorna ERRO EM TEMPO DE EXECUÇÃO '3021'
nenhum registro atual.
nos campos txUmidade e Desconto possuem valores decimais tipo 14,5 ou 0,75 e por ai
aguado ajuda obrigado