Ver Mensaje Individual
  #2  
Antiguo 18-02-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por vtdeleon
Necesito que al cerra el form de consulta, este transfiera el Codigo selecionadao de un empleado "X" al edit1 del formulario que lo llamo (form1,Form2 o form3).
Mejor deja que el formulario que lo llamó tome el valor él mismo.

En tu formulario de consultas agrega una propiedad pública para el código del empleado:

Código Delphi [-]
type
  TFormaConsultas = class(TForm)
  private
    FCodigo: Integer;

  public
    property Codigo: Integer read FCodigo write Codigo;
  end;

En el evento OnCloseQuery de FormaConsultas asignas a FCodigo el valor que que corresponda al empleado seleccionado. Por ejemplo, si usas un Table para mostrar los empleados en FormaConsultas sería algo como:

Código Delphi [-]
procedure TFormaConsultas.FormCloseQuery(...);
begin
  if ModalResult = mrOk then
    FCodigo := TablaEmpleados.FieldByName('cod_empleado').AsInteger;
end;

Así, cuando el formulario de consultas se cierre, ya tendrás en Codigo el valor adecuado. De esta manera, desde cualquier formulario donde requieras seleccionar un empleado haces:

Código Delphi [-]
var
  FormaConsultas: TFormaConsultas;

begin
  FormaConsultas := TFormaConsultas.Create(nil);
  try
    if FormaConsultas.ShowModal = mrOk then
      Edit1.Text := FormaConsultas.Codigo;
  finally
    FormaConsultas.Free;
  end;
end;

Si observas, con esta metodología, el formulario de consultas podrás usarlo en cualquier parte sin que éste tenga que preocuparse por quién lo llama y por dónde hay que colocar el dato.

// Saludos
Responder Con Cita