Delphi - Lopartialkey

 
Vista:

Lopartialkey

Publicado por Ivan022481 (10 intervenciones) el 01/12/2004 01:17:22
Este es el problema, estoy trabajando con Interbase, tengo IBDataSets con las tablas linkeadas, hago altas, bajas y modificaciones; hasta ahi todo barbaro, cuando quiero BUSCAR, por ejemplo, a un empleado y lo busco por su nombre hago este codigo en el OnKeyPress de un TEdit MDVariables.TablaEmpleados.Locate('N_EMPLEADO', edit1.Text, [lopartialkey]);
Me da el siguiente error Undelceared identifier: 'lopartialkey'
Incompatible types: 'TLocateOption' and 'Integer'.
Y no compila el programa, esto es una burla, ya que el tipo de dato del campo N_EMPLEADO es un String y segun me informa el error dice que es un integer el campo, estoy desorientado y desde ya gracias por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Lopartialkey

Publicado por nadie (43 intervenciones) el 01/12/2004 08:40:22
El error no hace referencia a los tipos de datos de las columnas de tu tabla sino a las opciones de búsqueda. El mensaje está bien claro: dice que no reconoce el identificador "loPartialKey" y que la incompatibilidad se encuentra entre "integer" y "TLocateOption", que es el tipo que Delphi espera encontrar.

El problema está, según creo, en que estás invocando el método Locate desde el Form. Me resultaría bastante largo explicarte la razón por la que es mejor hacer ese tipo de cosas desde el DataModule, así que me limitaré a decirte que, para solucionar tu problema, basta que incluyas en la cláusula "uses" del form la unit en la que está declarada "loPartialKey", que es "DB".

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Lopartialkey

Publicado por Elena (330 intervenciones) el 01/12/2004 13:05:04
También puedes usar el Tabla.Locate('CAMPO',Edit1.Text,[]) e igual te realiza la búsqueda... Otra cosa es que no deberías usar el Locate en el OnKeyPress, ya que este cada vez que escribes una letra en el edit te recorre la tabla completa e imagina esto en una tabla con millones de registros, es preferible en un botón o si quieres en el OnKeyPress valida que sea con alguna tecla en específico como el Enter...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar