Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Funcion Locate en Delphi 2009 (https://www.clubdelphi.com/foros/showthread.php?t=64277)

ledesmarc 25-03-2009 13:37:49

Funcion Locate en Delphi 2009
 
Buenos dias gente del foro, resulta que acabo de mudar mi aplicacion hecha en delphi 7 e interbase 6.5 a delphi 2009 y luego de solucionar varios problemas (Pchar, Pansichar,etc) veo que la funcion Locate no funciona y genera este error en tiempo de ejecucion "unsupported feature":eek:. rarisimo porque en delphi 7 funcionaba todo perfecto!!.
Este es mi codigo

UDM.DM.Empleados.open;
UDM.DM.Empleados.Locate('NOMBRE',Form1.CUsuarios.Text,[]);
etc etc...

En todos lados donde use Locate me genera este error, y lo mas raro aun es que desde el sistema se conecta bien a la base de datos de hecho puedo ver los datos sin problemas.
Desde ya muchas gracias por cualquier informacion...

Kipow 25-03-2009 14:21:19

Algo se te esta pasando seguramente. podrias probar quitando colocando la propiedad fixedchar del campo nombre a false. Aunque te digo a mi me dio eso tambien pero pense que era por el uso de firebird. hay un parche talvez te funcione.

https://forums.codegear.com/thread.jspa?threadID=3591

ledesmarc 25-03-2009 16:00:31

Hola, probe de poner la propiedad en false pero sigo con el mismo error, y el link a la actualizacion tampoco anda, podrias pasarme algun otro link? de que se trata esa actualizacion? es de interbase o delphi?
Mil GRACIAS...

Kipow 25-03-2009 16:20:18

Código Delphi [-]
hange line 1346 of IBSQL.pas from
 
     varOleStr, varString :
 
to
 
     varOleStr, varString, varUString:
 
and statically link in IBSQL.pas to your project (add it to your project).

Esto es lo que tenes que hacer, busca en la linea 1346, del archivo IBSQL.pas y modificas segun dice ahi. luego agregas esa unidad a tu proyecto, a mi si me funciono eso.

Ahora bien si eso no funciona vas a tener que utilizar otro metodo diferente a Locate, yo en lo personal no lo utilizo ya que al haber mucha data se vuelve algo lento por el tipo de busqueda que hace.

Kenobi 25-03-2009 16:37:31

Tengo una duda
 
Hola ... si no usas locate cual usas en su lugar ....

ledesmarc 25-03-2009 16:40:30

Cita:

Empezado por Kipow (Mensaje 342659)
Esto es lo que tenes que hacer, busca en la linea 1346, del archivo IBSQL.pas y modificas segun dice ahi. luego agregas esa unidad a tu proyecto, a mi si me funciono eso.



Ahora bien si eso no funciona vas a tener que utilizar otro metodo diferente a Locate, yo en lo personal no lo utilizo ya que al haber mucha data se vuelve algo lento por el tipo de busqueda que hace.

Perfecto me funciono!! muchisimas gracias!, y que me recomendas usar para reemplazar el Locate??

Kipow 25-03-2009 17:13:46

Cita:

Empezado por Kenobi (Mensaje 342661)
Hola ... si no usas locate cual usas en su lugar ....

Cita:

Empezado por ledesmarc (Mensaje 342662)
Perfecto me funciono!! muchisimas gracias!, y que me recomendas usar para reemplazar el Locate??


Podrian usar la propiedad Filter por ejemplo. o en mi caso lo hago directamente en la propiedad SelectSQL de los TIBDataset, en el caso de los Clientdataset lo hago en el TIBQuery siempre en la propiedad SQL.


La franja horaria es GMT +2. Ahora son las 01:11:01.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi