Fórum ERRO DE SINTAXE... #169152

13/07/2003

0

:oops: :oops: :oops: O CÓDIGO ABAIXO DEVERIA ATUALIZAR O MEU ESTOQUE, NO ENTANTO, SÓ RECEBO ESTA MENSAGEM DE ERRO:

[b:3d90d88bad][color=red:3d90d88bad]ERRO DE SINTAXE (OPERADOR FALTANDO) NA EXPRESSÃO DE CONSULTA´(QUANTIDADE+?) WHERE CODPROD=?´[/color:3d90d88bad][/b:3d90d88bad]
POR FAVOR ME AJUDEM !!!!!!!!!

O CÓDIGO ESTÁ DESCRITO LOGO ABAIXO:

procedure TFrmPedidos.SpeedButton1Click(Sender: TObject);
var
SomaT: Real;
NPed: Integer;
Begin
SomaT:= 0;
NPed:= datamodule2.AdotabPedidoCodPedido.AsInteger;
If Trim (DBEdit3.Text) <> ´´ Then
Begin
With DataModule2 Do
Begin
ADOQrEstoque.Active:= False;
ADOQrEstoque.SQL.Clear;
ADOQrEstoque.SQL.Add(´Select Distinct (CodProd),Qde, PrecoUnit´);
ADOQrEstoque.Sql.Add(´From TabItems Where CodPedido = ´);
ADOQrEstoque.SQL.Add (IntToStr(NPed));
ADOQrEstoque.Active:= True;
ADOQrEstoque.First;
While Not ADOQrEstoque.Eof Do
Begin
SomaT:= SomaT + ADOQrEstoque.FieldByName(´Qde´).Value * ADOQrEstoque.FieldByName(´PrecoUnit´).Value;
DataModule2.ADOTabPedido.Edit;
DBEdit4.Text:= FloatToStrF(SomaT, Fffixed, 9,2);
ADOQrAtualizaEstoque.Active:= False;
ADOQrAtualizaEstoque.Parameters.ParamByName(´Codigo´).Value:= ADOQrEstoque.FieldByName(´CodProd´).AsInteger;
ADOQrAtualizaEstoque.Parameters.ParamByName(´Quant´).Value:= ADOQrEstoque.FieldByName(´Qde´).AsInteger;
ADOQrAtualizaEstoque.ExecSQL;
DataModule2.ADOTabProduto.Refresh;
ADOQrEstoque.Next;
End;
End;
End
Else
Application.MessageBox(´faltando a Data de Recebimento´,´Atenção´,MB_OK);
end;


Alexandretavares

Alexandretavares

Responder

Posts

13/07/2003

Edilcimar

provavelmente ele esteja calculado o select distinct apenas para quem está entre parenteses e tentado executar um cálculo com o que está fora do mesmo, no caso qde e precounit


Responder

Gostei + 0

13/07/2003

Ruysalles

Muito provavelmente, esta expressão:

NPed:= datamodule2.AdotabPedidoCodPedido.AsInteger

não está retornando valor.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar