Hola que tal....
Normalmente para buscar un elemento en una tabla uso locate y para buscar un elemento en un query lo hago parametrizando la consulta...
Código Delphi
[-]query.params.paramvalues['NombreParametro']:=ValorABuscar;
ahora bien lo que quiero es hacer algo generico, me gustaria parametrizar las tablas algo asi
Código Delphi
[-]Function Buscar_Registro(CampodelaTabla:Variant;Tabla:TDataSet):boolean;
begin
Abrir(Tabla);
If Tabla.Locate(QuotedStr(CampodelaTabla),Codigo,[]) then Result:=true
else
Begin
Application.MessageBox('Registro no encontrado','Aviso al Usuario',MB_ICONWARNING+MB_OK);
Result:=false;
End;
end;
el problema con este codigo es eso muchos parametros, lo que quisiera es poder parametrizar la tabla
Código Delphi
[-]Function Buscar_Registro(Valor:string;Tabla:TDataSet):boolean;
begin
Tabla.Close
Tabla.param.paramvalues(Quotedstr(NombreParametro):=valor
Tabla.open;
if not Tabla.eof the Result:=true
else
Begin
Application.MessageBox('Registro no encontrado','Aviso al Usuario',MB_ICONWARNING+MB_OK);
Result:=false;
End;
end;
el problema es que el tipo tabla no me acepta la propiedad params sin embargo si dentro de cualquier procedure hago esto
Código Delphi
[-] Gente.Close
Gente.param.paramvalues(Quotedstr(NombreParametro):=valor
Gente.open;
funciona, la unica diferencia es que estoy llamando la tabla por su nombre y no de forma generica .....
Gracias por sus comentarios ....