FoxPro/Visual FoxPro - CheckBox que se bloquea en un Grid

   
Vista:

CheckBox que se bloquea en un Grid

Publicado por Franklin Gutierrez franklingut@gmail.com (4 intervenciones) el 02/06/2015 06:31:35
Saludos a todos,

Tengo un CheckBox en una columna de un Grid, el cual se llena con un cursor correctamente al cargar el formulario. El problema es cuando el cursor que llena el grid cambia por alguna selección del usuario en un Combo que tengo en el formulario, recreo el cursor filtrándolo por el valor seleccionado y entonces llamo al método donde formateo el Grid. Luego que se ha llenado el mismo con los registros correspondientes me aparece el CheckBox en la columna correcta pero bloqueado, es decir no se puede hacer click en él.

Que me falta o estoy haciendo mal para que el CheckBox se bloquee de esa forma?

Gracias anticipadas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

CheckBox que se bloquea en un Grid

Publicado por Foxshin (5 intervenciones) el 03/06/2015 00:38:59
Hola.
Esta algo complicado responder acertadamente cuando no se tiene la suficiente información acerca del problema, pero bueno, aventurándome a responder podría decir:
1. Revise el cursor que se crea para el Grid, debe ser uno modificable.
2. Revise el tipo de datos que tiene asociado al CheckBox.
3. Revise que el grid, la columna y el checkbox esten activos y sean de Lectura/Escritura.

Hasta ahi se me ocurre sugerirle por lo pronto, tal vez alguien por aquí se le ocurra algo mas efectivo. :D

Saludos. ;D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CheckBox que se bloquea en un Grid

Publicado por Franklin Gutierrez franklingut@gmail.com (4 intervenciones) el 03/06/2015 01:43:24
Saludos, gracias por responder.

Respecto a lo que sugeriste:

1. El cursor es modificable.
2. El tipo de datos asociado al CheckBoc es numérico, 0 o 1.
3. Tanto el grid, como la columna y el CheckBox son de Lectura/Escritura.

Sigue sin funcionar como quiero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CheckBox que se bloquea en un Grid

Publicado por Foxshin foxshin@gmail.com (5 intervenciones) el 03/06/2015 17:08:39
Hi :-)

Bueno, sigo pensando que el problema debe estar en el origen de datos, pero para darte una manita tendrias tendría que revisar el formulario y asi poder darte algunas sugerencias más.

Saludos. ;D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CheckBox que se bloquea en un Grid

Publicado por Franklin Gutierrez franklingut@gmail.com (4 intervenciones) el 03/06/2015 18:21:59
Ok, voy a enviarte el formulario a tu correo para que lo revises y me puedas ayudar.

Gracias de antemano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CheckBox que se bloquea en un Grid

Publicado por Fidel José (558 intervenciones) el 03/06/2015 17:22:33
Revisá que el orden en que se genera la configuración sea el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
loGrid = thisform.Grid
xpfile = loGrid.recordSource
ccol = < campo boolean o campo N(1,0) o Integer con valores entre cero y 2>
wi = < numero de columna >
with loGrid
 
			.Columns(wi).ControlSource='&xpfile..&ccol'
			.Columns(wi).sPARse=.F.
			IF !PEMSTATUS(loGrid.Columns(wi),"Check1",5)
				.Columns(wi).AddObject("Check1",'CheckBox')
			ENDIF
			.Columns(wi).CurrentControl="Check1"
			.Columns(wi).Check1.Caption=""
			.Columns(wi).Check1.Visible=.t.
Endwith
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CheckBox que se bloquea en un Grid

Publicado por Franklin (4 intervenciones) el 04/06/2015 05:10:53
El problema se solucionó con una sugerencia que me dio Foxshin, de liberar el Grid antes de asignarle el Cursor cuando lo recreaba en tiempo de ejecución, con la propiedad Recordsource vacía:

thisform.Grid1.Recordsource = ""

eso antes de volverle a asignar el cursor nuevo.

También estaba creando el cursor otra vez luego que lo creaba a partir de sql para formatear un campo tipo fecha y asignarle un campo mas; Foxshin me sugirió que lo hiciera de una vez en SQL y así lo hice.

Gracias por su ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar