Ayuda CheckListBox
Publicado por Belen (5 intervenciones) el 03/12/2016 02:54:53
Hola gente tengo un problema tengo un CheckListBox en el cual necesito poner en check sus item segun el idempleado que selecciono.
Esto funciona de la siguiente manera. Tengo 2 formularios uno llamado listadoEmpleados y el otro fEmpleados
en el listado de empleados tengo un dbgrid en el cual listo empleados que tienen varios puestos de trabajos todo esto se visualiza en ese dbgrid. Luego en darle al boton "modificar" me abre otro formulario "fEmpleados" en el cual se encuentra el checklistbox. Entonces hize el codigo que pondre abajo que funciona de la siguiente manera al eleguir un empleado de la grilla guardo su id en una variable y esa variable la uso para comparar luego que aca es donde esta el problema que lo que necesito es como mensione antes es poner en true los check segun si ese empleado tiene esos puestos asignados
para realizar las consulta uso componentes query de zeos
qEmpleados hace referencia al query que tiene asociado el dbgrid
qGeneral es para realizar dicha consulta y llenar el checklistbox el problema es que se queda vacio este
alguna solucion ?
luego probe hacer lo siguiente cambiar
y el error es el siguiente " access violation at address " y me marca la siguiente linea fempleados.CheckListBox1.Items.Add(fmodulo.qGeneral.FieldByName('nombrepuesto').AsString);
alguna ayuda gracias ?
Esto funciona de la siguiente manera. Tengo 2 formularios uno llamado listadoEmpleados y el otro fEmpleados
en el listado de empleados tengo un dbgrid en el cual listo empleados que tienen varios puestos de trabajos todo esto se visualiza en ese dbgrid. Luego en darle al boton "modificar" me abre otro formulario "fEmpleados" en el cual se encuentra el checklistbox. Entonces hize el codigo que pondre abajo que funciona de la siguiente manera al eleguir un empleado de la grilla guardo su id en una variable y esa variable la uso para comparar luego que aca es donde esta el problema que lo que necesito es como mensione antes es poner en true los check segun si ese empleado tiene esos puestos asignados
para realizar las consulta uso componentes query de zeos
qEmpleados hace referencia al query que tiene asociado el dbgrid
qGeneral es para realizar dicha consulta y llenar el checklistbox el problema es que se queda vacio este
alguna solucion ?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
begin
empleado:= fmodulo.qEmpleados.FieldByName('idempleado').AsInteger;
fmodulo.qGeneral.Close;
fmodulo.qGeneral.SQL.Clear;
fmodulo.qGeneral.SQL.Add('select nombrepuesto from puesto');
fmodulo.qGeneral.SQL.Add('inner join asignado on asignado.idpuesto=puesto.idpuesto');
fmodulo.qGeneral.SQL.Add('inner join empleados on empleados.idempleado=asignado.idempleado');
fmodulo.qGeneral.SQL.Add('where empleados.idempleado= :id');
fmodulo.qGeneral.Open;
fmodulo.qGeneral.ParamByName('id').AsInteger:= empleado;
if not fmodulo.qgeneral.IsEmpty then
begin
fmodulo.qgeneral.First;
while not fmodulo.qGeneral.Eof do
begin
fempleados.CheckListBox1.Items.Add(fmodulo.qGeneral.FieldByName('nombrepuesto').AsString);
fempleados.CheckListBox1.Checked[fempleados.CheckListBox1.Items.Count-1]:= true;
fmodulo.qGeneral.Next;
end;
end;
luego probe hacer lo siguiente cambiar
1
2
fmodulo.qGeneral.SQL.Add('where empleados.idempleado= :id // cambie esta linea por = 1
alguna ayuda gracias ?
Valora esta pregunta
0