91 lines
2.3 KiB
ObjectPascal
91 lines
2.3 KiB
ObjectPascal
unit uConexionBD;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, StdCtrls, ExtCtrls, cxShellBrowserDialog, cxControls,
|
|
cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxButtonEdit, IBServices,
|
|
DB, IBDatabase, uFrameConfiguracion, ADODB;
|
|
|
|
type
|
|
TfrConexionBD = class(TFrameConfiguracion)
|
|
GroupBox1: TGroupBox;
|
|
edtServer: TEdit;
|
|
Label1: TLabel;
|
|
Label3: TLabel;
|
|
bProbar: TButton;
|
|
Label4: TLabel;
|
|
edtUser: TEdit;
|
|
Label5: TLabel;
|
|
edtPassword: TEdit;
|
|
Bevel1: TBevel;
|
|
edtBD: TEdit;
|
|
ADOConnection: TADOConnection;
|
|
procedure bProbarClick(Sender: TObject);
|
|
protected
|
|
procedure Finalize; override;
|
|
public
|
|
procedure Init; override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
uses uDataModuleServer;
|
|
|
|
{$R *.dfm}
|
|
|
|
procedure TfrConexionBD.bProbarClick(Sender: TObject);
|
|
var
|
|
Aux : string;
|
|
begin
|
|
//Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=gft_varela;Data Source=david
|
|
|
|
Aux := 'Provider=SQLOLEDB.1;Persist Security Info=False';
|
|
Aux := Aux + ';Data Source=' + edtServer.Text;
|
|
Aux := Aux + ';User ID=' + edtUser.Text;
|
|
Aux := Aux + ';Password=' + edtPassword.Text;
|
|
Aux := Aux + ';Initial Catalog=' + edtBD.Text;
|
|
|
|
with ADOConnection do
|
|
begin
|
|
LoginPrompt := False;
|
|
Mode := cmRead;
|
|
Provider := 'SQLOLEDB.1';
|
|
ConnectionString := Aux;
|
|
|
|
ShowHourglassCursor;
|
|
try
|
|
Connected := True;
|
|
Application.MessageBox('Conexión válida con la base de datos.', 'Información', MB_OK);
|
|
Connected := False;
|
|
except
|
|
on E : Exception do
|
|
begin
|
|
HideHourglassCursor;
|
|
Aux := 'No se ha podido establecer la conexión con la base de datos.'
|
|
+ #13 + #10 + #13 + #10 + PChar(E.Message);
|
|
Application.MessageBox(PAnsiChar(Aux), 'Error', MB_OK);
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrConexionBD.Init;
|
|
begin
|
|
edtServer.Text := dmServer.FDBServer;
|
|
edtBD.Text := dmServer.FDBName;
|
|
edtUser.Text := dmServer.FDBUser;
|
|
edtPassword.Text := Decrypt(dmServer.FDBPass);
|
|
end;
|
|
|
|
procedure TfrConexionBD.Finalize;
|
|
begin
|
|
dmServer.FDBServer := edtServer.Text;
|
|
dmServer.FDBName := edtBD.Text;
|
|
dmServer.FDBUser := edtUser.Text;
|
|
dmServer.FDBPass := Encrypt(edtPassword.Text);
|
|
end;
|
|
|
|
end.
|