![]() |
Realizar una consulta por el campo teléfono de mi tabla
Hola amigos del club delphi, estaba tratando de realizar una consulta por el campo teléfono de mi tabla de la siguiente manera (809)999-9999, pero cuando limpio el mask edit los simbolos ( ) - se limpian y ahí esta el problema, cómo puedo hacer para que me permita digitar el número de teléfono una vez presione limpiar sin que se me quiten los simbolos y no me ocasione ningún error???, o si se puede hacer la consulta del teléfono como un valor entero ej. 809999999, sin que los simbolos ( ) - aún estando el tel. registrado de esta manera (809)999-9999, sean algún problema al momento de realizar la consulta.
Muchas gracias a cualquiera que pueda darme una ayuda con esto...:confused: |
creo que era:
|
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:
y llamarla en el evento en el evento beforePost de la tabla
Y despues puedes consultar el telefono sin normalizar pasando como parámetro el numero normalizado ( permitiendole al usuario que lo escriba como quiera.
Saludos |
Mas Claro
Hice algo mal y no me funcionaron las etiquetas.
Lo repito. ( Esta técnica te da mas flexibilidad tanto a la hora de guardar como a la hora de consultar los números) 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; //la llamas en el evento BeforePost procedure TForm1.Table1BeforePost(DataSet: TDataSet); begin Table1.FieldByName('NormTelefono').Value := NormalizarNumero(Table1.FieldByName('Telefono').AsString); end; // Y consultas pasando como parámetro el número normalizado parametro := NormalizarNumero(Edit1.Text) |
Saludos Anita..
para poner las etquitetas de codigo delphi es [ DELPHI ] contenido [ /DELPHI ] Sin espacios despues del corchete y sin espacios al CERRAR ejemplo:
Cita:
|
La franja horaria es GMT +2. Ahora son las 04:58:06. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi