{ =============================================================================== Copyright (©) 2002. 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: 05-12-2002 Versión actual: 1.0.0 Fecha versión actual: 05-12-2002 =============================================================================== Modificaciones: Fecha Comentarios --------------------------------------------------------------------------- =============================================================================== } unit Instaladores; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Grids, DBGrids, ComCtrls, IBDatabase, ToolWin, ExtCtrls, IBCustomDataSet, IBQuery, RXDBCtrl, RdxPaneles, RdxBarras, RdxBotones, Mensajes, RdxFrameInstaladores, Configuracion, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxEdit, cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, RdxFrame, Menus, am2000menuitem, am2000popupmenu, am2000, StdCtrls, AdvPanel, ActnList, am2000utils, cxDataStorage, cxContainer, cxTextEdit; type TfrInstaladores = class(TRdxFrameInstaladores) brSeleccion: TRdxBarraInferior; bSeleccionar: TRdxBoton; bCancelar: TRdxBoton; dsInstaladores: TDataSource; BarraSuperior: TRdxBarraSuperior; bConsultar: TRdxBotonSuperior; bEliminar: TRdxBotonSuperior; bModificar: TRdxBotonSuperior; bAnadir: TRdxBotonSuperior; gridInstaladores: TcxGrid; gridInstaladoresDBTableView1: TcxGridDBTableView; gridInstaladoresLevel1: TcxGridLevel; MenuOpciones: TPopupMenu2000; mnuAnadir: TMenuItem2000; mnuModificar: TMenuItem2000; mnuEliminar: TMenuItem2000; mnuConsultar: TMenuItem2000; pnlCuerpo: TPanel; Acciones: TActionList; actAnadir: TAction; actModificar: TAction; actEliminar: TAction; actConsultar: TAction; actSeleccionar: TAction; actCancelar: TAction; imgSombra: TImage; Panel1: TPanel; eNombre: TLabel; Buscar: TcxTextEdit; bLimpiar: TRdxBoton; procedure gridInstaladoresRefreshButton(Sender: TObject); procedure RdxFrameInstaladoresShow(Sender: TObject); procedure bLimpiarClick(Sender: TObject); procedure actAnadirExecute(Sender: TObject); procedure actModificarExecute(Sender: TObject); procedure actEliminarExecute(Sender: TObject); procedure actConsultarExecute(Sender: TObject); procedure actSeleccionarExecute(Sender: TObject); procedure actCancelarExecute(Sender: TObject); procedure gridInstaladoresDBTableView1DblClick(Sender: TObject); procedure BuscarPropertiesChange(Sender: TObject); private procedure ActualizarBotones; protected procedure BuscarInstalador; override; procedure FreeContenido; override; public constructor Create (AOwner : TComponent); override; destructor Destroy; override; published property TablaInstaladores; property Entidad; end; var frInstaladores: TfrInstaladores; implementation {$R *.DFM} uses Variants, BaseDatos, Entidades, TablaInstaladores, Instalador; constructor TfrInstaladores.Create (AOwner : TComponent); begin inherited Create(AOwner); Entidad := entInstalador; BaseDatos := dmBaseDatos.BD; Transaccion := dmBaseDatos.Transaccion; TablaInstaladores := TIBDataSet.Create(Self); dsInstaladores.DataSet := TablaInstaladores; with TablaInstaladores do begin DisableControls; Database := BaseDatos; Transaction := Transaccion; SelectSQL.Assign(dmTablaInstaladores.sqlGrid); Prepare; Open; ActualizarBotones; EnableControls; end; dmTablaInstaladores.InicializarGridInstaladores(gridInstaladoresDBTableView1); gridInstaladoresDBTableView1.Controller.GoToFirst; end; destructor TfrInstaladores.Destroy; begin TablaInstaladores.Close; TablaInstaladores.UnPrepare; TablaInstaladores.Free; inherited; end; procedure TfrInstaladores.BuscarInstalador; begin with TablaInstaladores do begin DisableControls; Close; Open; ActualizarBotones; EnableControls; if not Locate('CODIGO', CodigoInstalador, []) then gridInstaladoresDBTableView1.Controller.GoToFirst else gridInstaladoresDBTableView1.Controller.TopRowIndex := gridInstaladoresDBTableView1.Controller.FocusedRowIndex; end; end; procedure TfrInstaladores.FreeContenido; begin if (Contenido is TRdxFrameInstaladores) then CodigoInstalador := (Contenido as TRdxFrameInstaladores).CodigoInstalador; inherited FreeContenido; //gridInstaladores.SetFocus; end; procedure TfrInstaladores.ActualizarBotones; begin if BaseDatos.IsReadOnly then begin actAnadir.Enabled := False; actModificar.Enabled := False; actEliminar.Enabled := False; actConsultar.Enabled := True; Exit; end; if TablaInstaladores.RecordCount = 0 then begin actAnadir.Enabled := True; actModificar.Enabled := False; actEliminar.Enabled := False; actConsultar.Enabled := False; end else begin actAnadir.Enabled := True; actModificar.Enabled := True; actEliminar.Enabled := True; actConsultar.Enabled := True; end; end; procedure TfrInstaladores.gridInstaladoresRefreshButton(Sender: TObject); begin BuscarInstalador; end; procedure TfrInstaladores.RdxFrameInstaladoresShow(Sender: TObject); begin Buscar.SetFocus end; procedure TfrInstaladores.bLimpiarClick(Sender: TObject); begin Buscar.Text := ''; end; procedure TfrInstaladores.actAnadirExecute(Sender: TObject); begin Contenido := TfrInstalador.Create(Self); Contenido.Modo := Anadir; end; procedure TfrInstaladores.actModificarExecute(Sender: TObject); begin Contenido := TfrInstalador.Create(Self); Contenido.Modo := Modificar; end; procedure TfrInstaladores.actEliminarExecute(Sender: TObject); begin Contenido := TfrInstalador.Create(Self); Contenido.Modo := Eliminar; end; procedure TfrInstaladores.actConsultarExecute(Sender: TObject); begin Contenido := TfrInstalador.Create(Self); Contenido.Modo := Consultar; end; procedure TfrInstaladores.actSeleccionarExecute(Sender: TObject); begin CodigoInstalador := TablaInstaladores.FieldByName('CODIGO').AsString; CloseFrame; end; procedure TfrInstaladores.actCancelarExecute(Sender: TObject); begin FCodigoInstalador := NULL; CloseFrame; end; procedure TfrInstaladores.gridInstaladoresDBTableView1DblClick( Sender: TObject); begin if Modo = Seleccionar then actSeleccionar.Execute else actModificar.Execute; end; procedure TfrInstaladores.BuscarPropertiesChange(Sender: TObject); begin FiltrarGrid(gridInstaladores, Buscar.Text); end; end.