Bien vuelvo a explicar mi motivo principal de este mensaje para buscar una solución.
Tengo dos tablas la primera es:
Empleados Que tiene estos campos:
- Cédula (Primary key)
- Nombres
- Apellidos
- Sexo
- Turno
- Cargo
- Fecha de ingreso
- Patología
Y la segunda es:
Turno_Temporal que tiene estos campos:
- Cédula
- FechaIni
- FechaFin
- Estado
- Turno_Temp
- usuario
- fecha
- status
Ahora bien mi problemática consiste en que debo óbtener todas las cédulas de las dos tablas indicadas.
y como parámetros debo evalúar que en la
tabla
Empleados el turno indicado sea igual al
campo turno de la tabla así: (empleado.turno = Indicado por el usuario)
y en la
tabla Turno_Temporal el turno indicado por el usuario sea igual al
campo Turno_Temp y el
campo estado sea igual a
activo
(Turno_Temporal.turno_temp=Indicado por el usuario) and (Turno_Temporal.estado='activo')
Intente hacer esto pero no me funciona, es decir, no me arroja ningún resultado la consulta
Código Delphi
[-]
begin
dm.Query.Close;
dm.Query.SQL.Clear;
dm.Query.SQL.Add('Select a.cedula, b.cedula From Empleados a, Turno_Temporal b');
dm.Query.SQL.Add('Where a.turno = :turno and ((b.turno_temp = :turno) and (b.estado =:estado))');
dm.Query.SQL.Add('Group by a.cedula, b.cedula');
DM.Query.Parameters.ParamByName('estado').DataType:=ftString;
dm.Query.Parameters.ParamByName('estado').Value:='activo';
DM.Query.Parameters.ParamByName('turno').DataType:=ftString;
DM.Query.Parameters.ParamByName('turno').Value:=ComboBox1.Text;
dm.Query.Open;
while not dm.Query.Eof do
Begin
SetLength(Arreglo, n+1);
Arreglo[n]:=dm.Query.fieldbyname('cedula').AsString;
Inc(n);
dm.Query.Next;
end;
end;