Fórum DÚVIDAS EM COMO REALIZAR CONSULTAS SQL NO DELPHI #371195

14/06/2009

0

Ola, gostaria de saber se alguem tem um código SQL para fazer consultas

Eu preciso de 2, uma para descrição, e o outro para código...

Eu tenho um codigo, mas não consigo faze-lo funcionar :(

Já muedei os parametros, a claúla where, mas ainda acontece a msm coisa, ele lempa todos os campos da GRID e ainda desabilita minha lookupcombobox... :evil:

Se alguem quiser ver meu código:

procedure TPesquisa.Button5Click(Sender: TObject); Var sql, vDesc: string; begin vDesc := trim(EditDesc.Text); sql :=´SELECT PROD_COD, PROD_NM´ + ´FORN_COD, FORN_EMP´ + ´FROM CAD_PRODUTOS INNER JOIN CAD_FORNECEDORES ON´ + ´(PROD_COD_FORN =FORN_COD)´; if(vDesc <>´´)Then sql :=sql +´and(PROD_NM LIKE:PROD_NM)´ ; if(VarIsNull(dbFornecedor.keyvalue)=false)and(VarIsEmpty(dbFornecedor.keyvalue)=false)Then sql:=sql+´and(PROD_COD_FORN =:FORNECEDOR)´ ; DtmProduto.cdsProduto.Close; DtmProduto.cdsProduto.CommandText:= sql; if(vDesc<>´´)Then DtmProduto.cdsProduto.Params.ParamByName(´PROD_NM´).AsString:=´¬´+vDesc+´¬´ ; if(VarIsNull(dbFornecedor.KeyValue)=false)Then DtmProduto.cdsProduto.Params.ParamByName(´FORNECEDOR´).AsInteger:=dbFornecedor.KeyValue ; end;


Ainda não achei o erro, mas se alguem puder me ajudar, agradeço mto mto mto!!!

Tenham um bom dia!!


Juli

Juli

Responder

Posts

14/06/2009

Andepunk

Ola, gostaria de saber se alguem tem um código SQL para fazer consultas Eu preciso de 2, uma para descrição, e o outro para código... Eu tenho um codigo, mas não consigo faze-lo funcionar :( Já muedei os parametros, a claúla where, mas ainda acontece a msm coisa, ele lempa todos os campos da GRID e ainda desabilita minha lookupcombobox... :evil: Se alguem quiser ver meu código: [quote:bb87e21ee2] procedure TPesquisa.Button5Click(Sender: TObject); Var sql, vDesc: string; begin vDesc := trim(EditDesc.Text); sql :=´SELECT PROD_COD, PROD_NM´ + ´FORN_COD, FORN_EMP´ + ´FROM CAD_PRODUTOS INNER JOIN CAD_FORNECEDORES ON´ + ´(PROD_COD_FORN =FORN_COD)´; if(vDesc <>´´)Then sql :=sql +´and(PROD_NM LIKE:PROD_NM)´ ; if(VarIsNull(dbFornecedor.keyvalue)=false)and(VarIsEmpty(dbFornecedor.keyvalue)=false)Then sql:=sql+´and(PROD_COD_FORN =:FORNECEDOR)´ ; DtmProduto.cdsProduto.Close; DtmProduto.cdsProduto.CommandText:= sql; if(vDesc<>´´)Then DtmProduto.cdsProduto.Params.ParamByName(´PROD_NM´).AsString:=´¬´+vDesc+´¬´ ; if(VarIsNull(dbFornecedor.KeyValue)=false)Then DtmProduto.cdsProduto.Params.ParamByName(´FORNECEDOR´).AsInteger:=dbFornecedor.KeyValue ; end;


Ainda não achei o erro, mas se alguem puder me ajudar, agradeço mto mto mto!!!

Tenham um bom dia!![/quote:bb87e21ee2]

tenta assim , nao compilei estou sem delphi aki nesta maquina, posta o resultado....
procedure TPesquisa.Button5Click(Sender: TObject);
Var sql, vDesc: string;
    mDescricao : Boolean;
begin
  vDesc := trim(EditDesc.Text);

  sql :=´SELECT PROD_COD, PROD_NM, FORN_COD, FORN_EMP ´ +
         ´FROM CAD_PRODUTOS INNER JOIN CAD_FORNECEDORES ON ´ +
         ´(PROD_COD_FORN = FORN_COD)´;

mDescricao := false;

if(vDesc <>´´) Then
begin
    mDescricao := True;
    sql := sql +´ where (PROD_NM LIKE ¬ ´ + vDesc + ´ ¬) ´;
end;

if(VarIsNull(dbFornecedor.keyvalue)=false)and(VarIsEmpty(dbFornecedor.keyvalue)=false) and (not mDescricao) Then   
      sql := sql + ´ where (PROD_COD_FORN = ´ + IntToStr(dbFornecedor.KeyValue) + ´)´;  

  DtmProduto.cdsProduto.Close;
  DtmProduto.cdsProduto.CommandText:= sql;
  DtmProduto.cdsProduto.Open;  
  
end;

[/code]


Responder

Gostei + 0

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

Aceitar