Ver la Versión Completa : Tomar una cadena numerica
DasGrun
12-04-2011, 18:11:56
Hola A todos, ayuda con lo siguiente.
estoy haciendo una aplicacion en Delphi Win32 2007, de la cual necesito tomar solo unos valores de un campo ó de un DBEdit. me explico?
tengo un campo/DBEdit que contiene OC98285 de este dato solo quiero tomar 98285 quiero ignorar el OC como cree que lo puedo Hacer?
de ante Mano Muchas Gracias.
saludos.
oscarac
12-04-2011, 18:23:44
lo que se me ocurre es lo siguiente
si el dato esta en el campo, podrias crear un edit simple
edit1.Text := Copy(tabla1Campo.value,3,Lenght(tabla1Campo.value))
eso si es que simpre va a tener ese formato de 2 caracteres al inicio, si puede que tengan otros formatos (no se,... quiza mas caracteres no necesariamente al principio o al medio o a la derecha), podrias crear nua rutina que te vaya chequeando caracter por caracter y armes una cadena la cual ira en el edit simple
saludos
DasGrun
12-04-2011, 18:45:31
Gracias Oscarac...
no funciona como tu dices, uso Objetos ADO ya que me conecto a una Base de Datos Sql Server 2003, si todo tiene el mismo Formato OC#######.
seguiré intentando!!! Gracias
oscarac
12-04-2011, 18:51:55
q haces con la informacion del campo
solo mostrarla? o le das algun otro uso
me imagino que usas un DBEDIT para colocar el dato y lo muestras en un formulario
no te sirve usar un EDIT con el dato del DBEDIT ?
ecfisa
12-04-2011, 19:08:22
si todo tiene el mismo Formato OC#######.
Hola DasGrun.
Entonces la sugerencia de oscarac tiene que funcionar perfectamente.
Podrías probar usando:
edit1.Text := Copy(tabla1Campo.value, 3, MaxInt)
Pero no hace diferencia en cuanto al resultado que arroja.
Otra forma (pero más rebuscada) sería:
var
s: string;
begin
s:= tabla1.FieldByName('CAMPO').AsString;
Delete(s,1,2);
ShowMessage( s ); // o lo que hagas con el resultado...
end;
Un saludo.
Edito: ¿ Podrías especificar un poco mas el: 'no funciona' ? Es decir, te da otra cadena de la esperada, un error, ...?
DasGrun
12-04-2011, 20:01:20
de ante mano muchas gracias a cada uno de ustedes.
La Solución esta en:
como el dato esta en un DBEDIT se creo un edit en el mismo formulario de la cual este estara como oculto y por medio del evento Onchange se digito Edit1.Text := Copy(DMTables.DT_ORDEN_COMPRAPONUMBER.AsString, 3, MaxInt);. lo que me dijo el amigo ecfisa. y lo copia correctamente.
esto es lo que andava buscando....
Gracias Gracias...me gusta el Mundo Clubdelphi
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.