Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho um sistema em Delphi 7 que ao carregar uma tela gera o erro abaixo.
---------------------------
Mister Way - Versão 9.0.2
---------------------------
qry_ListaEquipes: Type mismatch for field 'EMPRE_CODIGO', expecting: Integer actual: Float
---------------------------
OK
---------------------------
O erro é gerado tanto em Oracle quanto em SQL Server.
O que acontece: Se removo os campos e insiro novamente na query, para Oracle, dá o erro no SQL.
Se removo e insiro novamente, para SQL Server, gera o erro no Oracle.
Porém, o erro acontece somente nesta query, nesta tela. O sistema tem outras queries para Oracle/SQL e não acontece o erro.
Segue o código onde o erro acontece:
qry_ListaEquipes.Close;
qry_ListaEquipes.SQL.Clear;
qry_ListaEquipes.SQL.Add('SELECT CAST(EMPRE_CODIGO AS NUMBER(9)) EMPRE_CODIGO, CAST(EQUIP_CODIGO AS NUMBER(9)) EQUIP_CODIGO, EQUIP_DESCRICAO');
qry_ListaEquipes.SQL.Add('FROM CALLCENTER_EQUIPE');
qry_ListaEquipes.SQL.Add('WHERE EMPRE_CODIGO = :EMPRE_CODIGO');
qry_ListaEquipes.SQL.Add('UNION');
if (UpperCase(dbs_Base.DriverName) = 'ORACLE') then
qry_ListaEquipes.SQL.Add('SELECT CAST(0 AS NUMBER(9)) EMPRE_CODIGO, CAST(0 AS NUMBER(9)) EQUIP_CODIGO, ' + QuotedStr('SEM EQUIPE') + ' EQUIP_DESCRICAO FROM DUAL')
else
begin
qry_ListaEquipes.SQL.Add('SELECT :EMPRE_CODIGO EMPRE_CODIGO, 0 EQUIP_CODIGO, ' + QuotedStr('SEM EQUIPE') + ' EQUIP_DESCRICAO');
end;
qry_ListaEquipes.Open;Carregando comentários...