This repository has been archived on 2024-11-29. You can view files and clone it, but cannot push or open issues or pull requests.
Tecsitel_FactuGES/Datos/Instaladores.pas
2007-06-21 15:47:20 +00:00

240 lines
6.9 KiB
ObjectPascal

{
===============================================================================
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: 13-05-2002
Versión actual: 1.0.1
Fecha versión actual: 06-03-2004
===============================================================================
Modificaciones:
Fecha Comentarios
---------------------------------------------------------------------------
06-03-2004 Al hacer doble click sobre el grid, se pasará a modificar el
registro o se seleccionará, dependiendo del modo en el que
se encuentre la pantalla.
===============================================================================
}
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, Tipos, Mensajes, RdxFrameInstaladores, dxCntner, dxTL,
dxDBCtrl, dxDBGrid;
type
TfrInstaladores = class(TRdxFrameInstaladores)
pnlGrid: TPanel;
brSeleccion: TRdxBarraInferior;
bSeleccionar: TRdxBoton;
bCancelarGuardar: TRdxBoton;
dsInstaladores: TDataSource;
gridInstaladores: TdxDBGrid;
barraInstaladores: TRdxBarraSuperior;
bBuscar: TRdxBotonSuperior;
bConsultar: TRdxBotonSuperior;
bEliminar: TRdxBotonSuperior;
bModificar: TRdxBotonSuperior;
bAnadir: TRdxBotonSuperior;
imgSombra: TImage;
procedure bAnadirClick(Sender: TObject);
procedure bModificarClick(Sender: TObject);
procedure bEliminarClick(Sender: TObject);
procedure bConsultarClick(Sender: TObject);
procedure bBuscarClick(Sender: TObject);
procedure bSeleccionarClick(Sender: TObject);
procedure bCancelarGuardarClick(Sender: TObject);
procedure gridInstaladoresRefreshButton(Sender: TObject);
procedure gridInstaladoresDblClick(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
BaseDatos, Instalador, BuscarInstalador, TablaInstaladores, Configuracion,
Literales;
constructor TfrInstaladores.Create (AOwner : TComponent);
begin
inherited Create(AOwner);
Entidad := entInstalador;
ConfigurarFrame(Self, Self.Entidad);
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(gridInstaladores);
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;
end;
TablaInstaladores.Locate('CODIGO',CodigoInstalador,[]);
end;
procedure TfrInstaladores.FreeContenido;
begin
if (Contenido is TRdxFrameInstaladores) then
CodigoInstalador := (Contenido as TRdxFrameInstaladores).CodigoInstalador;
inherited;
end;
procedure TfrInstaladores.bAnadirClick(Sender: TObject);
begin
Contenido := TfrInstalador.Create(Self);
Contenido.Modo := Anadir;
end;
procedure TfrInstaladores.bModificarClick(Sender: TObject);
begin
CodigoInstalador := TablaInstaladores.FieldByName('CODIGO').AsString;
Contenido := TfrInstalador.Create(Self);
Contenido.Modo := Modificar;
end;
procedure TfrInstaladores.bEliminarClick(Sender: TObject);
begin
CodigoInstalador := TablaInstaladores.FieldByName('CODIGO').AsString;
Contenido := TfrInstalador.Create(Self);
Contenido.Modo := Eliminar;
end;
procedure TfrInstaladores.bConsultarClick(Sender: TObject);
begin
CodigoInstalador := TablaInstaladores.FieldByName('CODIGO').AsString;
Contenido := TfrInstalador.Create(Self);
Contenido.Modo := Consultar;
end;
procedure TfrInstaladores.bBuscarClick(Sender: TObject);
begin
CodigoInstalador := TablaInstaladores.FieldByName('CODIGO').AsString;
Contenido := TfrBuscarInstalador.Create(Self);
end;
procedure TfrInstaladores.bSeleccionarClick(Sender: TObject);
begin
if TablaInstaladores.RecordCount = 0 then
begin
VerMensaje(msgInsNoHayInstaladores);
exit;
end;
// Para no hacer un BuscarInstalador que no es necesario
// FCodigoInstalador := TablaInstaladores.FieldByName('CODIGO').Value;
if gridInstaladores.SelectedCount = 0 then
FCodigoInstalador := TablaInstaladores.FieldByName('CODIGO').Value
else
FListaInstaladores := dmTablaInstaladores.darListaInstaladores(gridInstaladores, @TablaInstaladores);
CloseFrame;
end;
procedure TfrInstaladores.bCancelarGuardarClick(Sender: TObject);
begin
FCodigoInstalador := Null;
CloseFrame;
end;
procedure TfrInstaladores.ActualizarBotones;
begin
if BaseDatos.IsReadOnly then
begin
bAnadir.Enabled := False;
bModificar.Enabled := False;
bEliminar.Enabled := False;
bConsultar.Enabled := True;
bBuscar.Enabled := True;
Exit;
end;
if TablaInstaladores.RecordCount = 0 then begin
bAnadir.Enabled := True;
bModificar.Enabled := False;
bEliminar.Enabled := False;
bConsultar.Enabled := False;
bBuscar.Enabled := False;
end
else begin
bAnadir.Enabled := True;
bModificar.Enabled := True;
bEliminar.Enabled := True;
bConsultar.Enabled := True;
bBuscar.Enabled := True;
end;
end;
procedure TfrInstaladores.gridInstaladoresRefreshButton(Sender: TObject);
begin
BuscarInstalador;
end;
procedure TfrInstaladores.gridInstaladoresDblClick(Sender: TObject);
begin
if Modo = Seleccionar then
bSeleccionar.Click
else
bModificar.Click;
end;
end.