Ver Mensaje Individual
  #3  
Antiguo 06-12-2008
Avatar de Ana María
Ana María Ana María is offline
Miembro
 
Registrado: ago 2008
Posts: 40
Reputación: 0
Ana María Va por buen camino
Hola, podrías crear otro campo en la tabla con el nombre NorTelefono en el cual se guardará una versión normalizada del número telefónico y podrías utilizar la siguiente función:

Código Delphi [-]
function NormalizarNumero(Cad : string) : string;
 var
 I:integer;
 TempCad : string;
  begin
   Result := Cad;
    for i := 1 to Length(Cad) do
     if not (Cad[i]in['0'..'9']) then
       begin
        TempCad := Result;
        while Pos(Cad[i], TempCad) > 0 do
        Delete(TempCad, Pos(Cad[i], TempCad), 1);
        Result:= TempCad;
       end;
  end;



y llamarla en el evento en el evento beforePost de la tabla

Código Delphi [-]
procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
 Table1.FieldByName('NormTelefono').Value :=
 NormalizarNumero(Table1.FieldByName('Telefono').AsString);
end;



Y despues puedes consultar el telefono sin normalizar pasando como parámetro el numero normalizado ( permitiendole al usuario que lo escriba como quiera.


Código Delphi [-]
parametro := NormalizarNumero(Edit1.Text)


Saludos
Responder Con Cita