FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Consulta con un campo de un dbgrid
Hola a tod@s!!!. Mi pregunta es la siguiente. Tengo un DBGrid en un formulario, que me muestra datos de una consulta a una bd access (conexion ADO). Estos datos son Id y Descripcion de proceso. Lo que quiero es que al pinchar en uno de los procesos, me muestre un formulario con todos los candidatos que hay en ese proceso. ¿Como capturo el Id para pasarlo al formulario nuevo para hacer la consulta?. Gracias.
__________________
Un saludo. Iván. |
#2
|
||||
|
||||
en mi humilde opinion, lo mas sencillo que puedes hacer es:
1º en el dbgrid activar la opcion RowSelect a true, con esto solo puedes seleccionar una linea a la vez. 2º cada vez que pinches una linea de esas, te estas posicionando en un registro concreto de la consulta que muestras en el dbgrid, con lo que imagina esto: Cita:
Cita:
__________________
Un saludo Antonio |
#3
|
|||
|
|||
A ver, es que yo creo que no me has entendido bien.
Lo que tu dices es correcto, el problema es que yo no quiero capturar el id del formulario donde muestro los candidatos en el proceso, sino que quiero el id del proceso del formulario padre, y si lo capturo asi como tu dices, ¿como se lo paso luego al formulario hijo para hacer la consulta sql?. Me entiendes o no? Venga nen, nos vemos, a ver si nos invitas ya a Sandra y a mi a algo, macho, jejejeje.
__________________
Un saludo. Iván. |
#4
|
|||
|
|||
Vale, vale, ya funciona, jejejejeje, ya lo he pillado:
String cadena; String cod; this->ADOQCandidatosenproceso->SQL->Clear(); cadena = "SELECT candidatos.Id, Nombre FROM procesos_candidatos, candidatos, descripcionprocesos WHERE descripcionprocesos.id = "; cod = FProcesos->ADOQVerprocesos->FieldByName("id")->AsString; cadena = cadena + cod; cadena = cadena + " AND procesos_candidatos.IdProceso = descripcionprocesos.id AND candidatos.Id = procesos_candidatos.candidato"; ADOQCandidatosenproceso->SQL->Add(cadena); ADOQCandidatosenproceso->ExecSQL(); ADOQCandidatosenproceso->Active = true; this->DSCandidatosenproceso->DataSet = ADOQCandidatosenproceso;
__________________
Un saludo. Iván. |
#5
|
||||
|
||||
pos lo que yo te decia...joe...
segun habia entendido, tenias un dbgrid donde mostrabas el resultado de una consulta. y querias que al pinchar en el dbgrid te salieran unos datos, en funcion de lo que habias pinchado no? pos con lo que yo te habia dicho, tenias los datos de lo que habias pinchado, asi que solo tenias que hacer una nueva consulta a partir de los datos que ya tenias.
__________________
Un saludo Antonio |
#6
|
|||
|
|||
Y otra cosa mas
A ver, he hecho una consulta para obtener datos, y algunos de los datos que obtengo son Si/No, de una base de datos access. Tambien tengo unos campos CheckBox, y quiero que si los datos que obtengo de la consulta estan marcados, me los marque en el checkbox, y si no, pues que no los marque. Yo lo hago asi: CBActivo->Checked = ADOQDatos->FieldByName("Activo"); El problema es que siempre me lo marca como activo. ¿Como lo soluciono? Enga neeeeeeeeeeeeeeeeeeeeeeeeeeeeen.
__________________
Un saludo. Iván. |
#7
|
||||
|
||||
el problema a mi entender es que te falta el tipo de dato...lo raro es que no te de error , deberia ser asi:
Cita:
Si no te funciona, puedes probar esto: Cita:
__________________
Un saludo Antonio |
|
|
|