Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   como bloquear para borrar en tablas Paradox (https://www.clubdelphi.com/foros/showthread.php?t=16518)

Mario1980 30-11-2004 23:42:42

como bloquear para borrar en tablas Paradox
 
hola, me pregunto si alguno sabe como se saca la posicion de un elemento en un dbgrid, porque quiero elimiar y bloquear la tabla para que cuando haga esto los demas no puedan ingresar, ya que al poner la tabla en exclusive = TRUE tengo que deshabilitar la propiedad acitve. pero aviso que esta tabla esta relacionada con otra es decir que cuando hago click en la tabla maestra la de detalle muestra un contenido en particular, y si desactivo la tabla pierdo el contenido en pantalla del dato que quiero eliminar por eso se me ocurrio hacer esto pero si saben una solucion mejor soy todo oidos. Chau y gracias
PD: uso delphi 2

marcoszorrilla 01-12-2004 07:49:00

Creo que estás confundiendo vaciar la tabla:
Código Delphi [-]
Table1.Empty;

Con eliminar un registro:
Código Delphi [-]
Table1.Delete;

Para esto último no hay más que posicionarse sobre el registro y borrarlo.
1. Lo pones en modo edición y si lo logras ya está bloqueado para el resto de usuarios.

Puedes mirarte el evento OnEditError.

Otra cosa es si tiene registros en la tabla detalle.

Lo primero que se debe hacer es comprobar si tiene o no registros en la tabla detalle y si es así pedir conformidad al usuario para eliminar el detalle y luego el maestro.

Un Saludo.

Mario1980 01-12-2004 12:50:09

hola
 
No es que confunda vaciar la tabla con eliminar, es que cuando desactivo la tabla ya no veo el contenido, hago esto para bloquear la tabla y despues borrar, pero con respecto a lo que pusiste solamente con poner la tabla en edicion alcanza para que a otro usuario le aparezca la tabla como bloqueada?, si es asi por favor decime, gracias.

marcoszorrilla 01-12-2004 15:02:24

Con lo que puse, lo que aparece como bloqueado es el registro y no la tabla, por eso te decía la diferencia entre borrar por registros o vaciar la tabla, no es lo mismo eliminar todos los registros de una tabla con Delete que hacer un Empty.Table.

Un Saludo.

Lepe 01-12-2004 15:17:51

Ampliando lo dicho por Marcos, supón que dos usuarios estan viendo el mismo registro en pantalla, desde un ordenador le das a tabla.Delete, simplemente, sin tocar nada más. El otro usuario intenta modificarlo, pero como ha sido borrado, obtendrá un error en la aplicación tuya.

Para que salga un mensaje diciendo ... " el registro ha sido borrado por otro usuario del sistema" tienes que programar el evento OnEditError que Marcos ha comentado.

En este hilo, marcos proporcionó la rutina para centralizar los errores:
http://www.clubdelphi.com/foros/show...light=eKeyViol

Saludos


La franja horaria es GMT +2. Ahora son las 06:55:01.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi