Creé una rejilla y en la propiedad “Editable” ubique la opción “Sí”, cuando la visualizo en ejecución la rejilla me permite modificar y agregar nuevos registros, pero no me permite eliminar registros.
Saben ustedes si la rejilla no tiene esta propiedad?, ¿tocaría entonces abrir un formulario desde la rejilla para que puedan eliminar?
1.- La que tu comentas, apertura del formulario de baja asignado a la rejilla
2.- Si tienes la rejilla dentro de una vista de datos en el formulario, podrías crear un botón en el formulario que cuando lo pulses ejecute un manejador de eventos que elimine los registros seleccionados.
3.- Utiliza la variable EVENT_PARAMS para saber qué tecla has pulsado y actuar en consecuencia.
Ejemplo para la 3 opción:
En el objeto rejilla:
Creas dos variables:
1- TECLA = Alfabetica
2- EVENT_PARAMS = Alfabetica de tipo Array y 1 dimension
Luego en el manejador de evento: EVENTO_TECLA_PULSADA
Set TECLA,EVENT_PARAMS[1]
Mensaje la variable TECLA para que veas el valor que tiene EVENT_PARAMS[1] cuando pulsas la tecla que deseas controlar.
Posteriormente cuando sepas el valor, pones la bifurcación correspondiente:
if TECLA=valor_que_quiero actúa de la forma que quieras con ese registro.
Crea una conexión de evento en un control rejilla:
La señal: Tecla soltada
Manejador de envento: EVENTO_TECLA_PULSADA
Busca EVENTO_TECLA_PULSADA en el manual del vDevelop y en el foro, debe haber más comentarios al respecto
Ya estuve probando la tercera opción que me indicabas y lo implementé en el localizador, me está funcionando pero me pasa algo con la rejilla…
Cuando hago la instrucción para eliminar el registro “Eliminar la ficha seleccionada sin desactualizar”, en la tabla me elimina el registro sin problemas pero toca cerrar la rejilla y volverla abrir para que no me aparezca el espacio del registro eliminado, si se digita allí no toma este dato de todas formas pero esto puede confundir al usuario.
Habrá alguna instrucción para refrescar esta rejilla una vez se elimine el registro?
Adjunto imagen de como se visualiza la rejilla después de la eliminación.
Usa el localizador para localizar registros y no lo uses para eliminarlos, porque en este caso, el localizador no será refrescado hasta que no salgas y entres de nuevo en él. Haz la prueba.
Buenos días a todos, perdón que me meta pero, por que no simplemente le pones un Eliminar la ficha seleccionada en vez de “Eliminar la ficha seleccionada sin desactualizar”,.
Yo entiendo que al especificar sin desactualizar no refresca. Agradecería que me corrigieseis si estoy equivocada con este comando.
Tal como indica Lydia.dfr, el término ‘refrescar’ es totalmente distinto al término ‘desactualizar’.
Lee el siguiente post y entenderás mejor que la desactualización se refiere cuando tenemos declaradas ‘actualizaciones’ en las tablas. Nunca biene mal dar un repaso…
Buenas tardes, Gracias a ambos por las aclaraciones!!!
Ya realicé los cambios que me indicaron, ubiqué la instrucción “Eliminar ficha seleccionada” y al final ubiqué la instrucción “Interfaz: Recalcular(Rejilla)”, pero de igual forma no me refresca.
Estoy intentando lo que me comentó Velavisual, en cuanto a no hacerlo desde un localizador, creé una vista de datos con la rejilla y en el formulario por medio de un botón estoy intentando eliminar el registro, pero no tengo muy claro como hacerlo.
Estuve probando con varias instrucciones y logré que me eliminara registros de la rejilla pero no me elimina el registro que es, no tengo muy claro como hacerlo.