![]() |
Puedo Eliminar una columna de un dataset?
e estado un buen rato buscando y nada...
al grano... 1. tengo en un dataset el resultado de una consulta Y * ----> (digamos un select * from persona) 2. que me retorna X cantidad de columnas ----> (digamos Cedula,Nombre,Apellido1,Apellido2) 3. pero requiero tener en el dataset unicamente Z valores ---->(Digamos que la cedula,nombre y apellido1 unicamente) Ahora bien lo que deseo es en este ejemplo eliminar del dataset, la columna apellido2, lo requiero eliminar del dataset,pues posteriormente guardo el resultado enun archivo xml... directamente del dataset... Espero haber podido darme a entender, con mi consulta... Nota: No puedo modificar el script a ejecutar, pues este podria ser un procedure almacenado, o un select o una vista, lo que sea que me devuelva valores _________________________________________________________ *(la consulta es variable, no es siempre la misma) |
En el dataset da clic derecho y en el menú contextual escoge "Fields Editor...". En la ventanita que se abre vuelve a dar clic derecho y en el menú selecciona "Add all fields". La ventanita se llenará con la lista de todos los campos. Ahora selecciona el que desees quitar y bórralo con Supr.
// Saludos |
Gracias por tu pronta respuesta
soloexiste un pequeno inconveniente con esto...
los campos son variables en cada ejecucion... osea se ejecuta un escript en tiempo de ejecucion... y los valores que me devuelve tambien son variables... por ejemplo en lugar de: nombre, apellido1,apellido2 podria contener : Casa,ubicacion,Terreno y el campo a eliminar tambien varia, de acuerdo a un txt de configuracion que recibo... por lo que debo eliminar en tiempo de ejecucion... |
y si talves...?
No se tal ves se me ocurre, si no es posible eliminar una columna en tiempo de ejecucion...
se podria copiar en un dataset temporal, solo las columnas que deseo, y luego volver a asignar el resultado al dataset original? no se si es posible... agradescode antemano la ayuda que me brinden... |
Podrias cambiar la propiedad de los campos que no deseas a Visible:=False, y modificar tu rutina de exportacion a XML, verificando que si el campo es Visible lo exporte.
Si un campo tiene su propiedad Visible a False, en una grilla no sera mostrado.
Es solo una idea. |
podria servir
elproblema es que para guaradr en XML, utilizo simplemente
si conocieses alguna otra forma de realizarlo... te agradesco mucho |
Entonces lo que podrias hacer seria eliminar los campos de la definicion del ClientDataset.
Saludos. |
gracias
una pregunta... como declaro la vatriable index ?
de que tipo? debe ser global? gracias... por tu prontarespuesta, y tu ayuda... |
No me fije que no la habia definido. Ahora si.
Saludos |
Gracias de nuevo
Probando tu solucion me encuentro con que...
XXX antes y despues del delete sigue conteniendo la misma cantidad de columnas... alguna otra idea? |
alguien?
tengo exacto el mismo problema... alguien sabe que se puede hacer? una copa de vino para quien lo solucione...
|
Encontre la respuesta...
al final encontre una forma en que funiona... obviamente antes el dataset debe estar abierto... por aquello...
esto para retroalimentar con la respuesta, pues al menos a mi me costo llegarle... |
| La franja horaria es GMT +2. Ahora son las 22:13:48. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi