{
===============================================================================
  Copyright (©) 2001. Rodax Software.
===============================================================================
  Los contenidos de este fichero son propiedad de Rodax Software titular del
  copyright. Este fichero sólo podrá ser copiado, distribuido y utilizado,
  en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
  acuerdo con los términos y condiciones establecidas en el acuerdo/contrato
  bajo el que se suministra.
  -----------------------------------------------------------------------------
  Web:  www.rodax-software.com
===============================================================================
  Fecha primera versión: 01-10-2001
  Versión actual: 1.0.3
  Fecha versión actual: 26-04-2004
===============================================================================
  Modificaciones:

    Fecha         Comentarios
    ---------------------------------------------------------------------------
    07-04-2002    Se ha adaptado a una unica transacción.

    12-05-2002    Adaptación al grid 'TdxDBGrid'.

    26-04-2004    Al hacer doble click sobre el grid, se seleccionará la
                  población automáticamente.
===============================================================================
}

unit Poblaciones;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  RdxFrameProvincias, Db, RdxBotones, RdxBarras, Grids, DBGrids, RXDBCtrl,
  ExtCtrls, RdxPaneles, IBCustomDataSet, IBQuery, BaseDatos,
  RdxFramePoblaciones, dxCntner, dxTL, dxDBCtrl, dxDBGrid;

type
  TfrPoblaciones = class(TRdxFramePoblaciones)
    BarraPoblaciones: TRdxBarraSuperior;
    PanelPrincipal: TPanel;
    brSeleccion: TRdxBarraInferior;
    bSeleccionar: TRdxBoton;
    bCancelarGuardar: TRdxBoton;
    dsPoblaciones: TDataSource;
    gridPoblaciones: TdxDBGrid;
    procedure bSeleccionarClick(Sender: TObject);
    procedure bCancelarGuardarClick(Sender: TObject);
    procedure gridPoblacionesDblClick(Sender: TObject);
  public
    constructor Create (AOwner : TComponent); override;
    destructor Destroy; override;
  published
    property TablaPoblaciones;
    property Entidad;
  end;

var
  frPoblaciones: TfrPoblaciones;

implementation

{$R *.DFM}

uses
  IBDatabase, Configuracion, Tipos, TablaPoblaciones;

constructor TfrPoblaciones.Create (AOwner : TComponent);
begin
  inherited Create(AOwner);
  Entidad := entPoblaciones;
  ConfigurarFrame(Self, Self.Entidad);

  BaseDatos := dmBaseDatos.BD;
  Transaccion := dmBaseDatos.Transaccion;
  TablaPoblaciones := TIBDataSet.Create(Self);
  dsPoblaciones.DataSet := TablaPoblaciones;

  with TablaPoblaciones do
  begin
    Database := BaseDatos;
    Transaction := Transaccion;
    SelectSQL.Assign(dmTablaPoblaciones.sqlGrid);
    Prepare;
    Open;
  end;
  dmTablaPoblaciones.InicializarGridPoblaciones(gridPoblaciones);
end;

procedure TfrPoblaciones.bSeleccionarClick(Sender: TObject);
begin
  inherited;
  CodigoProvincia := TablaPoblaciones.FieldByName('CODIGOPROVINCIA').Value;
  CodigoPoblacion := TablaPoblaciones.FieldByName('CODIGOPOBLACION').Value;
  CloseFrame;
end;

destructor TfrPoblaciones.Destroy;
begin
  TablaPoblaciones.Close;
  TablaPoblaciones.UnPrepare;
  TablaPoblaciones.Free;
  inherited;
end;

procedure TfrPoblaciones.bCancelarGuardarClick(Sender: TObject);
begin
  inherited;
  CloseFrame;
end;

procedure TfrPoblaciones.gridPoblacionesDblClick(Sender: TObject);
begin
  bSeleccionar.Click;
end;

end.
