FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
CxGrid con CheckBox
Hola amigo del club delphi mi pregunta es la siguiente tengo una cxGrid de QuantumGrid con un lista de facturas por cancelar a determinado cliente, lo que dese es adicionar una columna llamada cancelar con una casilla checbox para que el usuario seleccione q facturas desea cancelar. Pero este campo no existe en la base de datos y deseo q solo exista en memoria este valor para desplegar el form de cancelacion de facturas, el problema es q no se como puedo trabajar con un campo en memoria al tener una consulta, es decri crear un campo de tipo Char y mediante la grilla de la consulta modificar este valor y luego verificar estos valores modificados.
Utilizo firebird 2.0, delphi 7 y los componentes QuantumGrid de DVExpress. Gracias |
#2
|
||||
|
||||
Puedes utilizar el componente TdxMemData que viene en las Quantum. Yo todavía no lo he usado, pero según la ayuda, te crea una tabla en memoria.
__________________
|
#3
|
||||
|
||||
Gracias contraveneno por tu ayuda, no encuentro este componente q dices, lo q deseo es solo crear un campo en memoria no chequeado y q luego el usuario seleccione los registros que quiere chequeandolos y q esta informacion me quede en memoria para saber cuales chequeo.
|
#5
|
||||
|
||||
Como se trabaja en cache no me permite chequear.
|
#6
|
||||
|
||||
Cita:
Y la idea es hacer tu consulta (Query) y ligarla a este componente, en el cuál le puedes definir todo lo que necesites y luego controlarlo desde ahí como si fuera un Dataset normal. El usuario con esta tabla en memoria puede hacerlo todos los cambios que quiera y al final validas cuales están seleccionados... también podrías emplear una tabla temporal y un TClientDataset, pero creo que es mas rollo.
__________________
|
#7
|
||||
|
||||
Tengo la version 5.11 de los cuantum Grid
|
#8
|
||||
|
||||
Hola Vlady, puedes utilizar un ClientDataSet para crearte ese campo en memoria, debes relacionar tu DataSet->DataSetprovider->ClientDataSet y al ClientDataSet es al que le aumentas ese campo en memoria, los datos de ese campo no se almacenan en tu BD ya que el campo no existe, pero puedes trabajarlo en memoria como si fuera otro campo, cuando hagas el AppyUpdates ese campo no se graba ni lo toma en cuenta.
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#9
|
||||
|
||||
Te estas complicando demasiado, el componente QuantumGrid tiene una opción muy sencilla para seleccionar varias filas (registros) y luego saber que filas se seleccionaron. Todo ello sin meterse en broncas de checkboxes y demás. Revisa la documentación que traen, ahi viene un ejemplo precisamente de eso, otra opción es el foro de consultas de los devex, te mandarán seguramente un ejemplito de acuerdo con tu caso.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#10
|
||||
|
||||
Pero cual es el ejemplito?
|
#11
|
||||
|
||||
mmmmm...si tienes una version registrada seguramente la tienes y seguramente tabien tienes acceso al foro de dudas de DevExp...por lo que veo tienes una copia...que no pagaste...ni modo.
Acoto: luego me dicen el caza-piratas. Si adquiriste el componente, tienes derecho a soporte directo de parte de la gente DevExp, el cual incluye acceso al foro donde les puedes poner CUALQUIER duda respecto a como utilizar tal o cual función, o cmo hacer tal o cual cosa. Normalmente te ponene una solución acompañada de un ejemplo de como usarlo y en casos de que no esté implementado toman nota y lo utilizan par la siguiente versión...todo ello obviamente si eres usuario registrado. Hasta ahora es nuestra mejor inversión.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| Última edición por AzidRain fecha: 21-01-2009 a las 02:20:05. |
#12
|
||||
|
||||
Que tal,
La propuesta que hace caro con el CDS es para mi la mas sencilla, que de hecho yo la tengo implementada en un buen numero de ocasiones. Como dice, puedes crear un campo de tipo "internal data", en CDS y a este asignarle la columna del check. Y si utiliza ApplyUpdates para grabar, este simple y sencillamente es ignorado. Saludos.
__________________
Ya tengo Firma! |
#13
|
||||
|
||||
Cita:
Se conocen como InternalCalc. Saludos. Al. |
#14
|
||||
|
||||
pues a mi me parece más sencillo utilizar las funciones del mismo cxGrid y simplemente seleccionar las que se quieren cancelar; es decir, no hay necesidad de campos extra, ni de tablas en memoria, ni de checkboxes.
__________________
|
#15
|
||||
|
||||
Es lo que yo decia contraveneno, ¿verdad que es mas sencillo?
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#16
|
||||
|
||||
¡Hola!
Entiendo que algunas cosas serían más sencillas bajo otro enfoque de interfaz de usuario. De hecho es probable que yo también usaría la selección múltiple en un caso como ese. Pero si el usar cuadros de verificación (check boxes) es un requerimiento de diseño de Vlady, creo que un campo extra de memoria no sería mala idea para cumplir con ese requerimiento. Así lo llegué a usar en un caso donde se requería selección rápida y clara por parte de un cajero. Este caso es para marcar de una lista de deudas las que el deudor puede o quiere pagar (con sus respectivas validaciones de correlación y cronología): Saludos. Al González. |
#17
|
||||
|
||||
Extendiendo el comentario de Al, yo creo que al usuario comun y corriente le es mas intuitivo ver una columna que le indique que hay que checar para que se selecciono y no la multiple seleccion donde ademas interviene la combinacion de teclas simultaneas (shitf, ctrol, flecha arriba o abajo).
Quiza sea un "poco" mas tardado, pero creo que el resultado vale la pena. Saludos
__________________
Ya tengo Firma! |
#18
|
||||
|
||||
Cita:
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. Última edición por Caro fecha: 21-01-2009 a las 19:27:27. |
#19
|
||||
|
||||
Estaba casi segura que en mi comentario había puesto que el campo debe ser InternalCalc, creo que en estos días ando volando.
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#20
|
||||
|
||||
Pues el multiselect viene incluido en el grid que trae por defecto Delphi, si no les gusta usar dos teclas para seleccionar simplemente se cambia la tecla a enter o algo asi y listo. El detalle de meter checkboxes es que el usuario solo podra darse cuenta que ha seleccionado un registro por la marquita, en cambio con multiselect se marca toda la fila, con lo que me parece es más que obvio que está seleccionado. Por otro lado, el usar el multiselect es el estandar que usa windows para todo.
Otra forma es habilitar el multiselect y marcar cada registro con un doble click. Una cosa que podrias hacer si es posible es consultar con los usuarios que tendrá tu sistema y comentarles las opciones que hay para obtener su punto de vista y asi trabajar sobre la opción que se les haga mas fácil de usar. Esta práctica es muy útil y te ayudará a trabajar en lo que efectivamente van a buscar tus usuarios.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| Última edición por AzidRain fecha: 21-01-2009 a las 23:17:21. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problemas con cxGrid | Cheyenne | Varios | 1 | 03-12-2008 13:18:07 |
Combobox en cxGrid | paladincubano | Conexión con bases de datos | 2 | 28-11-2008 17:18:48 |
Checkbox en uno cxGrid | Paulao | Varios | 4 | 05-05-2008 18:32:36 |
Duda con cxGrid | paladincubano | Varios | 2 | 07-02-2008 14:14:31 |
Duda con CxGrid | El_Perrito | Varios | 0 | 12-05-2005 20:08:53 |
|