Fórum Escrevendo o Cod SQL dentro do Delphi - Prob na igualdade #320284
28/04/2006
0
Olá boa noite a todos ...
Tenho a sequinte instrução de sql e quero escrevela dentro do proprio delphi:
SQLDataSet2.CommandText := ´select a.* from KD_VIEW_APONTAMENTO a´+´ ´+
´INNER JOIN KD_VIEW_PROXIMA_OPERACAO_APONTAR b´+ ´ ´+
´ON A.APONT_PROD_KEY = b.APONT_PROD_KEY´+´ ´+
´and a.res_code = b.res_code´+
´where (CAST(A.RES_CODE AS INTEGER) = 0 OR CAST(a.RES_CODE AS INTEGER) >= 31) and´+
´A.prod_blocked =0 and A.prod_status =´P´´+
´and a.apont_date is null and a.Res_CODE =´000´´+
´ order by a.Prioridade_real desc, A.order_spfd asc´;
O problema e que onde tem P e 000 o delphi trata como fora das aspas simples e não passa como pesquisa para o sql.
Alguem tem alguma ideia de como resolver este tipo de problema.
Grato desde já pela atenção de todos que ler
Ate ++
E.C.S
Tenho a sequinte instrução de sql e quero escrevela dentro do proprio delphi:
SQLDataSet2.CommandText := ´select a.* from KD_VIEW_APONTAMENTO a´+´ ´+
´INNER JOIN KD_VIEW_PROXIMA_OPERACAO_APONTAR b´+ ´ ´+
´ON A.APONT_PROD_KEY = b.APONT_PROD_KEY´+´ ´+
´and a.res_code = b.res_code´+
´where (CAST(A.RES_CODE AS INTEGER) = 0 OR CAST(a.RES_CODE AS INTEGER) >= 31) and´+
´A.prod_blocked =0 and A.prod_status =´P´´+
´and a.apont_date is null and a.Res_CODE =´000´´+
´ order by a.Prioridade_real desc, A.order_spfd asc´;
O problema e que onde tem P e 000 o delphi trata como fora das aspas simples e não passa como pesquisa para o sql.
Alguem tem alguma ideia de como resolver este tipo de problema.
Grato desde já pela atenção de todos que ler
Ate ++
E.C.S
Nasguone
Curtir tópico
+ 0
Responder
Posts
28/04/2006
Nasguone
Bom Nada Como Pensar Um Pouco Né......
total := strtoint(edit1.text);
SQLDataSet2.CommandText := ´select top´+´ ´+IntToStr(total)+´ ´+´a.* from KD_VIEW_APONTAMENTO a´+´ ´+
´INNER JOIN KD_VIEW_PROXIMA_OPERACAO_APONTAR b´+ ´ ´+
´ON A.APONT_PROD_KEY = b.APONT_PROD_KEY´+´ ´+
´and a.res_code = b.res_code´+ ´ ´+
´where (CAST(A.RES_CODE AS INTEGER) = 0 OR CAST(a.RES_CODE AS INTEGER) >= 31) and´+ ´ ´+
´A.prod_blocked =0 and A.prod_status =´´P´´´+´ ´+
´and a.apont_date is null and a.Res_CODE =´´000´´´+´ ´+
´ order by a.Prioridade_real desc, A.order_spfd asc´;
Assim funciona legal o codigo interpreta o P dentro das aspas assim como o Zero
Ps o top naum ten nada a ver com isso e apenas para mim ter a quantia de dados que eu quiser no grid.....
Falow a todos e espero que ajude alguem algum dia isso aqui....hehehe
total := strtoint(edit1.text);
SQLDataSet2.CommandText := ´select top´+´ ´+IntToStr(total)+´ ´+´a.* from KD_VIEW_APONTAMENTO a´+´ ´+
´INNER JOIN KD_VIEW_PROXIMA_OPERACAO_APONTAR b´+ ´ ´+
´ON A.APONT_PROD_KEY = b.APONT_PROD_KEY´+´ ´+
´and a.res_code = b.res_code´+ ´ ´+
´where (CAST(A.RES_CODE AS INTEGER) = 0 OR CAST(a.RES_CODE AS INTEGER) >= 31) and´+ ´ ´+
´A.prod_blocked =0 and A.prod_status =´´P´´´+´ ´+
´and a.apont_date is null and a.Res_CODE =´´000´´´+´ ´+
´ order by a.Prioridade_real desc, A.order_spfd asc´;
Assim funciona legal o codigo interpreta o P dentro das aspas assim como o Zero
Ps o top naum ten nada a ver com isso e apenas para mim ter a quantia de dados que eu quiser no grid.....
Falow a todos e espero que ajude alguem algum dia isso aqui....hehehe
Responder
Gostei + 0
28/04/2006
Amarildo
Ola Edson, ´A.prod_blocked =0 and A.prod_status =´P´´+
´and a.apont_date is null and a.Res_CODE =´000´´+ nao sei se é o caso, nao teria que estar apenas uma aspas em ´000´ e em ´P´, tenho usado duas apas dentro da query quando usa-se uma aspa fora da query procede erro, creio que possa ser isso. Tentar mudar, felicidades e sucesso
´and a.apont_date is null and a.Res_CODE =´000´´+ nao sei se é o caso, nao teria que estar apenas uma aspas em ´000´ e em ´P´, tenho usado duas apas dentro da query quando usa-se uma aspa fora da query procede erro, creio que possa ser isso. Tentar mudar, felicidades e sucesso
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)