This repository has been archived on 2024-12-02. You can view files and clone it, but cannot push or open issues or pull requests.
FactuGES/PantallaAcceso.pas
2007-06-26 08:08:27 +00:00

116 lines
3.0 KiB
ObjectPascal
Raw Permalink Blame History

unit PantallaAcceso;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
cxContainer, cxEdit, cxControls, cxTextEdit, ExtCtrls, StdCtrls,
RdxBotones, RdxPaneles, pngimage, cxMaskEdit, cxDropDownEdit,
cxImageComboBox, cxDBEdit, JvFormPlacement, JvComponent, JvAppStorage,
JvAppRegistryStorage, cxGraphics, JvComponentBase;
type
TfPantallaAcceso = class(TForm)
pnlBarraSuperior: TRdxGradientePanel;
pnlInferior: TPanel;
bSalir: TRdxBoton;
bAceptar: TRdxBoton;
Shape1: TShape;
eBienvenido: TLabel;
eTexto: TLabel;
lblFullName: TLabel;
lblOrg: TLabel;
Image1: TImage;
imgFondo: TImage;
Image2: TImage;
imgSombra: TImage;
Label1: TLabel;
eEmpresa: TLabel;
eVersion: TLabel;
Image3: TImage;
Shape2: TShape;
Usuario: TcxTextEdit;
Clave: TcxTextEdit;
JvAppRegistryStorage1: TJvAppRegistryStorage;
JvFormStorage1: TJvFormStorage;
Timer1: TTimer;
Label2: TLabel;
cbBD: TcxComboBox;
procedure bAceptarClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure JvFormStorage1StoredValues0Save(Sender: TJvStoredValue;
var AValue: Variant);
procedure FormActivate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
FRuta : String;
property Ruta : String read FRuta write FRuta;
public
Version : string;
end;
var
fPantallaAcceso: TfPantallaAcceso;
implementation
{$R *.DFM}
uses
Principal, BaseDatos, IB, Mensajes, Configuracion, StrFunc, SysFunc,
Excepciones;
procedure TfPantallaAcceso.bAceptarClick(Sender: TObject);
begin
dmBaseDatos.NombreBD := cbBD.Text;
try
Ruta := ListaBD.Values[cbBD.Text];
dmBaseDatos.Conectar(Ruta, Usuario.Text, Clave.Text);
JvFormStorage1.SaveFormPlacement;
ModalResult := mrOk;
except
on E : EIBError do begin
TratarExcepcion(E);
Usuario.SetFocus;
end;
end;
end;
procedure TfPantallaAcceso.FormShow(Sender: TObject);
var
i : integer;
begin
eVersion.Caption := 'Versi<73>n: ' + Version;
//Bases de datos
cbBD.Properties.Items.Clear;
for i := 0 to ListaBD.Count - 1 do
cbBD.Properties.Items.Add(ListaBD.Names[i]);
cbBD.Text := cbBD.Properties.Items.Strings[0];
ConfigurarPantallaAcceso(Self);
end;
procedure TfPantallaAcceso.JvFormStorage1StoredValues0Save(
Sender: TJvStoredValue; var AValue: Variant);
begin
AValue := ExtractFilePath(Application.ExeName);
end;
procedure TfPantallaAcceso.FormActivate(Sender: TObject);
begin
JvFormStorage1.RestoreFormPlacement;
// Hacer login autom<6F>tica si hay usuario/password y no hay m<>s de una base
// de datos como opci<63>n para conectarse.
if (cbBD.Properties.Items.Count < 2) and
((not EsCadenaVacia(Usuario.Text)) and (not EsCadenaVacia(Clave.Text))) then
Timer1.Enabled := True;
end;
procedure TfPantallaAcceso.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := False;
bAceptar.Click;
end;
end.