Pesquisa de Cliente

05/11/2017

0

Boa noite a todos!

Estou com esse pequeno problema, quando compilo essa aplicação.

"projeto estoque.exe raised exception class TDBXError with message 'Token unknown - line 1, column 39 ' FAB%"
projeto estoque.exe raised exception class EOleException with message 'Token unknown - line 1, column 39 ' FAB%"

Se alguém poder me ajudar já agradeço desde já!

código da aplicação, Banco de dados em firebird 2.5 delphi 10 Seattles


unit UFrmModelo;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.StdCtrls, Vcl.Grids,
Vcl.DBGrids, Vcl.ExtCtrls, Vcl.ComCtrls;

type
TFrmModelo = class(TForm)
PageControl1: TPageControl;
TabsConsulta: TTabSheet;
Panel1: TPanel;
Label1: TLabel;
EdtPesquisar: TEdit;
BtnProcurar: TButton;
BtnExportar: TButton;
CbCampo: TComboBox;
Panel2: TPanel;
BtnNovo: TButton;
BtnEditar: TButton;
BtnConsultar: TButton;
BtnImprimir: TButton;
BtnHistorico: TButton;
BtnMovimento: TButton;
BtnExcluir: TButton;
DBGrid1: TDBGrid;
TabsCadastro: TTabSheet;
Panel3: TPanel;
BtnFechar: TButton;
BtnSair: TButton;
BtnCancelar: TButton;
BtnSalvar: TButton;
GroupBox2: TGroupBox;
GroupBox4: TGroupBox;
GroupBox1: TGroupBox;
GroupBox3: TGroupBox;
RbComeca: TRadioButton;
RbContem: TRadioButton;
DtsConsulta: TDataSource;
DtsCadastra: TDataSource;
procedure FormShow(Sender: TObject);
procedure BtnProcurarClick(Sender: TObject);
private
_pesquisa : string;
{ Private declarations }
public
procedure PesquisaSQL(txt : string);
{ Public declarations }
end;

var
FrmModelo: TFrmModelo;

implementation

{$R *.dfm}

uses UdmCadastro, UdmPesquisa, Datasnap.DBClient;

procedure TFrmModelo.BtnProcurarClick(Sender: TObject);
begin
if RbContem.Checked then
_pesquisa := CbCampo.Text + 'like' + QuotedStr( '%' + EdtPesquisar.Text + '%') //Esta apontando erro nessa linha com o Like
else if RbComeca.Checked then
_pesquisa := CbCampo.Text + 'like' + QuotedStr(EdtPesquisar.Text + '%');

PesquisaSQL('select * from cliente where');
end;

procedure TFrmModelo.FormShow(Sender: TObject);
var I: Integer;
begin
for I := 0 to DtsConsulta.DataSet.FieldCount - 1 do
begin
if DtsConsulta.DataSet.Fields[I].DataType in [ftString, ftInteger, ftFixedChar, ftWideString] then
CbCampo.Items.Add(DtsConsulta.DataSet.Fields[I].FieldName);
end;

end;

procedure TFrmModelo.PesquisaSQL(txt: string);
begin
with TClientDataSet(DtsConsulta.DataSet) do
begin
close;
CommandText := txt + _pesquisa;
open;
end;
end;
Fabio Silva

Fabio Silva

Responder

Post mais votado

06/11/2017

Já experimentou colocar um espaço antes e depois da palavra 'LIKE', que fica assim ' LIKE ' ?
Acreditando que o CbCampo.Text é obrigatório estar preenchido (ou selecionado).

Outra situação pode ser detectada através de debugação, na linha especifica, experimente acompanhar o processo e verificar o conteúdo da variável "txt" quando entra na "procedure TFrmModelo.PesquisaSQL(txt: string);"
if RbContem.Checked then
   _pesquisa := CbCampo.Text + ' like ' + QuotedStr( '%' + EdtPesquisar.Text + '%') //Esta apontando erro nessa linha com o Like
else if RbComeca.Checked then
   _pesquisa := CbCampo.Text + ' like '  + QuotedStr(EdtPesquisar.Text + '%');




Só lembrando, quando for colar um código não esqueça de colocar as tags, obrigado.

Luiz Vichiatto

Luiz Vichiatto
Responder

Mais Posts

06/11/2017

Fabio Silva

Obrigado, esqueci de colocar a Tags,

Sim, já tentei, so que me e a presentado esta mensagem.

projeto estoque.exe raised exception class TDBXError with message 'Token unknown - line 1, column 3 like'.
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar