vms Postado Agosto 27, 2008 Denunciar Share Postado Agosto 27, 2008 ola pessoalo que há de errado nesse codigo Dinicio := DateToStr(DateTimePicker1.Date); Dfinal := DateToStr(DateTimePicker2.Date); Dm.QImpressao.close; Application.ProcessMessages; Dm.QImpressao.SQL.Clear; Dm.QImpressao.SQL.Text := ('select * from Cad_Cheque where Vencimento >=:pInicial and Vencimento <=:pFinal order by +titulocheque); Dm.QImpressao.ParamByName('pInicial').AsDateTime := StrToDate(Dinicio); Dm.QImpressao.ParamByName('pFinal').AsDateTime := StrToDate(Dfinal); Dm.QImpressao.Prepare; Dm.QImpressao.Open;ele dar o seguinte errotype mismatch in expression Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 shini Postado Agosto 27, 2008 Denunciar Share Postado Agosto 27, 2008 (editado) Acredito que o erro esta aqui, " Vencimento >=:pInicial and Vencimento <=:pFinal", o q é esse dois pontos ':' ?,faltou fechar aspas no final, esse '+' o q ta fazendo? Dm.QImpressao.SQL.Text := ('select * from Cad_Cheque where Vencimento >=:pInicial and Vencimento <=:pFinal order by +titulocheque); Editado Agosto 27, 2008 por shini Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 vms Postado Agosto 27, 2008 Autor Denunciar Share Postado Agosto 27, 2008 vartitulocheque : string;begintitulocheque := 'campo da tabela';esse '+' é pra ordenar a tabela e a descrição dos campos estar em varios radiobuttonenquanto ao ':' não sei explicar, peguei essa dica na net desse jeito e tentei usarQuery1.Close; Query1.SQL.Clear; Query1.SQL.Text := 'SELECT Nome,Empresa,FoneRes,FoneCom,Mala FROM Contatos WHERE Data >=:pInicial and Data<=:pFinal ORDER BY Nome'; Query1.ParamByName('pInicial').AsDateTime := StrToDate(Inicio); Query1.ParamByName('pFinal').AsDateTime := StrToDate(Final); Query1.Prepare; Query1.Open; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Carlos Gonçalves Postado Agosto 27, 2008 Denunciar Share Postado Agosto 27, 2008 (editado) Tente assim :Query1.SQL.Clear; Query1.SQL.Text := 'SELECT Nome,Empresa,FoneRes,FoneCom,Mala FROM Contatos WHERE Data between :pInicial and :pFinal ORDER BY Nome'; Query1.ParamByName('pInicial').Value := DateTimePicker1.Date; Query1.ParamByName('pFinal').Value := DateTimePicker2.Date; Query1.Open;esses ":" é para definir que você esta usando ali um parametro que sera mostrado mais abaixo, e não o que esta escrito é o nome do campo em si.Voce esta convertendo uma data em string, e depois voltando a string para data, mas porque ?Tenta fazer direto para ver.Abraços Editado Agosto 27, 2008 por Carlos Gonçalves Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 vms Postado Agosto 29, 2008 Autor Denunciar Share Postado Agosto 29, 2008 consegui, valeu! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
vms
ola pessoal
o que há de errado nesse codigo
ele dar o seguinte erro
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.