Ver Mensaje Individual
  #1  
Antiguo 18-12-2013
Kannon Kannon is offline
No confirmado
NULL
 
Registrado: dic 2013
Posts: 14
Reputación: 0
Kannon Va por buen camino
Obtener contenido de celda en DBGrid

Bueno pues tengo una base de datos llamada "Ciudadanos " en la cual hay una tabla llamada "personas" en esta tabla se muestras los campos: código, nombre, edad y genero. en la aplicación de c++ builder (utilizo el XE5) uso un DBGrid para mostrar las búsqueda de un Query.

Una vez realizada esta búsqueda y mostrado su resultado en el DBGrid, cuando se da clic derecho sobre algún registro aparece un Popup en el cual se dan las opciones de: "Modificar Usuario", "Eliminar Usuario" y "Enviar E-mail"( Esto pienso hacerlo mediante Indy SMTP ).

Mi problema es que para poder modificar o eliminar un registro necesito saber en que fila fue el clic, para con ese numero de fila desplazarme hasta la columna 1 ( donde se encuentra el código ) y ahora con este valor poder ejecutar en el query la sentencia: DELETE * FROM personas WHERE idCiudadano= (el valor que recupero del DBGrid). He estado viendo algunas funciones de este pero la verdad no encuentro la forma.

Para la conexión a base de datos ( La cual esta hecha en MySql ) uso: Database, Datasource, Query. Tenia en mente un codigo parecido a este:

Código:
try
	 {
	   Query1->Close();
	   Query1->SQL->Clear();
	   Query1->SQL->Add("DELETE * FROM personas WHERE idCiudadano='"+DBGrid1->Fields->+"'");
	   Query1->Active=true;

	   if(Query1->RecordCount==0)
		{
		  MessageDlg("Error al eliminar el usuario",mtError,TMsgDlgButtons()<< mbOK,0);
		  return;
		}
	 }
	catch(...)
	 {
	   MessageDlg("Error de Eliminación",mtError,TMsgDlgButtons()<< mbOK,0);
	   return;
	 }
	MessageDlg("Usuario Eliminado",mtInformation,TMsgDlgButtons() << mbOK,0);
Pero la verdad no encuentro la manera de poder lograrlo, les agradezco mucho por la ayuda que puedan brindarme ( soy nuevo en el foro y principiante en delphi, espero haberme explicado bien )
Responder Con Cita