Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-09-2006
Renees Renees is offline
Miembro
 
Registrado: feb 2005
Posts: 53
Poder: 20
Renees Va por buen camino
consulta con un dbgrid

buenas tardes a todos, mi cosnsulta es la sigueinte:

Como puedo hacer para bloquear mi dbgrid para que permita adiccionar registro, pero que permita modificar. Utilizo interbase y componentes TIBdataset.

Una consultita mas, necesito tenes dentro del dbgrid un CheckBox1 se puede, desde ya muchisimas gracias.
Responder Con Cita
  #2  
Antiguo 28-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Buenos días desde el otro lado del charco..

El "bloqueo" para no permitir modificar no lo haces a nivel del grid, que es un simple contenedor de los datos.

Podes en el evento BeforeEdit del IBDataSet que mencionas, poner el siguiente código:

Código Delphi [-]
begin
  Abort;
end;

Ahora será imposible modificar uno de los registros ya ingresados.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate

Última edición por jachguate fecha: 28-09-2006 a las 18:56:38.
Responder Con Cita
  #3  
Antiguo 28-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No estoy muy de acuerdo. El DBGrid, si bien, como dices, no es más que un contenedor de datos (más bien un visor, contenedor sería el dataset), tampoco es que sea inválido. El DBGrid tiene su propiedad ReadOnly que sirve para impedir cualquier clase de edición (supresión, inserción o modificación de registros) desde el grid. Ademas, cada columna del grid también tiene su propiedad ReadOnly que nos permite impedir la edición del campo correspondiente.

Estas opciones podrían ser más convenientes- según sea el caso -porque el método del BeforeEdit evitaría cualquier tipo de edición, aún desde código, y quizá sólo se desea que el usuario no edite.

Por otro lado, yo he entendido que lo que se quiere es poder editar pero no agregar. En tal caso sería más adecuado abortar el BeforeInsert.

// Saludos
Responder Con Cita
  #4  
Antiguo 28-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cita:
Empezado por roman
no es más que un contenedor de datos (más bien un visor, contenedor sería el dataset)
¡Llevas toda la razón!
Cita:
Empezado por roman
Por otro lado, yo he entendido que lo que se quiere es poder editar pero no agregar. En tal caso sería más adecuado abortar el BeforeInsert.
Yo entendí lo contrario, que se quiere permitir insertar pero no modificar. Ahora que lo veo detenidamente, Renees no dice ni una cosa ni la otra... mas bien todo lo contrario...
Cita:
Empezado por Renees
para que permita adiccionar registro, pero que permita modificar.
Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 28-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Sí, es un poco enredada la redacción, pero olvidaste parte de la frase:

Cita:
Empezado por Renees
bloquear mi dbgrid para que permita adiccionar registro, pero que permita modificar
es decir, bloquear eso: permitir adicionar registro. Si se bloquea un permiso, ¿no es lo mismo que denegar?



En fin, ya Renees nos dirá.

// Saludos
Responder Con Cita
  #6  
Antiguo 28-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Renees entiendo esto:
Cita:
que permita adiccionar registro, que permita modificar.
Para esto lo mas simple es poner un componente DBNavigator que tiene todas las funciones, insertar, borrar, modificar etc., este lo conectas con el Datasource del DBgrid y Ya.
Con respecto al CHeckBox, este lo puedes poner fuera e ira siguiendo los registros segun el dbGrid, asi no necesitas nadamas que uno.
Si no es esto, por favor explicate mejor, puesto que la pregunta esta a mi parecer mal planteada.
Saludos a los Maestros Jachguate y Roman
Saludos
Responder Con Cita
  #7  
Antiguo 28-09-2006
Renees Renees is offline
Miembro
 
Registrado: feb 2005
Posts: 53
Poder: 20
Renees Va por buen camino
mil disculpa por haberme comido una palabra

Todos tiene razon quedo mal formulada la pregunta porque me comi una palabra.

Como puedo hacer para bloquear mi dbgrid para que NO permita adiccionar registro, pero que permita modificar. Utilizo interbase y componentes TIBdataset.


Mil discupla agradesco por la mal redaccion.
Responder Con Cita
  #8  
Antiguo 28-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola Renees
El NO era importante.
Con respecto al DBgrid, Este ve solo lo que hay en la tabla, si no esta unido a un dbnavigator o a algun codigo que indique lo contrario, el dbgrid solo vera repito lo que esta en la tabla, no se podra insertar o ADICIONAR registros en el, pero si se podran MODIFICAR los mismos.
Mi duda es por que o como puedes insertar o ADICIONAR registros sin estas premisas anteriores.?
Puesto que lo que pides ya lo hace sin mas el dbgrid.
Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta con un campo de un dbgrid Ivan_25 C++ Builder 6 18-11-2005 09:27:39
Consulta sobre DBGrid diegofhernando Conexión con bases de datos 4 10-11-2004 18:09:25
Consulta en DbGrid trex2000 Varios 1 02-03-2004 19:31:48
consulta volcada a DBGrid ronson Conexión con bases de datos 16 20-02-2004 12:50:12
Consulta DBGrid servicomp Conexión con bases de datos 0 19-12-2003 01:59:08


La franja horaria es GMT +2. Ahora son las 08:22:32.


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
Copyright 1996-2007 Club Delphi