⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uchangedb.pas

📁 这个程序软件很不错很不错的
💻 PAS
字号:
unit uchangedb;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Base, StdCtrls, ExtCtrls, Grids, DBGridEh, DB, DBClient;

type
  Tfrmchangedb = class(TfrmBase)
    Image1: TImage;
    DBGridEh1: TDBGridEh;
    Bevel1: TBevel;
    btnok: TButton;
    btnexit: TButton;
    dsqmaster: TDataSource;
    Label2: TLabel;
    usercode: TEdit;
    Label3: TLabel;
    password: TEdit;
    CDSadb: TClientDataSet;
    CDSadbaccountname: TWideStringField;
    CDSadbdatabasename: TWideStringField;
    CDSadbremark: TWideStringField;
    CDSadbfid: TIntegerField;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure btnexitClick(Sender: TObject);
    procedure btnokClick(Sender: TObject);
    procedure CDSadbAfterScroll(DataSet: TDataSet);
  private
    procedure refenceDatabase;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmchangedb: Tfrmchangedb;

implementation

uses Data, Global, main;

{$R *.dfm}

procedure Tfrmchangedb.FormCreate(Sender: TObject);
begin
  inherited;
  password.Text:='';
  usercode.Text:='';
  usercode.Text:=gs_Usercode;
  image1.Picture.LoadFromFile(Extractfilepath(Application.ExeName)+'picture\system\Hxtitle.jpg');
end;

procedure Tfrmchangedb.refenceDatabase;
begin
   with datam.adoqmaster do
    begin
      close;
      sql.Clear;
      sql.Add('Use Master');
      sql.add(' Select * from [Master]..creativejxc order by fid');
      open;
    end;

  With CDSadb do
    begin
      Close;
      FieldDefs.Add('fid',ftinteger,0);
      FieldDefs.Add('accountname',ftwideString,30);
      FieldDefs.Add('databasename',ftwideString,20);
      FieldDefs.Add('remark',ftwideString,60);
      Createdataset;
    end;

  datam.adoqmaster.First;
  while not Datam.adoqmaster.Eof do
  begin
    with datam.adoqmaster do
      begin
        CDSadb.AppendRecord([fieldbyname('fid').AsInteger,
                            fieldbyname('accountname').asString,
                            fieldbyname('databasename').asstring,
                            fieldbyname('remark').asString]);
      end;
    datam.adoqmaster.Next;
  end;

end;

procedure Tfrmchangedb.FormShow(Sender: TObject);
begin
  inherited;
  refenceDatabase;
end;

procedure Tfrmchangedb.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  frmchangedb:=nil;
end;

procedure Tfrmchangedb.btnexitClick(Sender: TObject);
begin
  inherited;
  Close;
end;

procedure Tfrmchangedb.btnokClick(Sender: TObject);
begin
  inherited;
  if (AccountName='') or (Datam.adoqmaster.RecordCount=0) then
  begin
      Messagedlg('请先指定一个帐套名称 !',mtWarning,[mbok],0);
      Exit;
  end;

  if (length(trim(usercode.Text))=0) then
  begin
      Messagedlg('用户名称不能为空 !',mtWarning,[mbok],0);
      Exit;
  end;

  if (length(trim(password.Text))=0) then
  begin
      Messagedlg('密码不能为空 !',mtWarning,[mbok],0);
      Exit;
  end;

       try
        With Datam.adoqmasters do
          begin
            close;
            sql.Clear;
            sql.Add('Use '+AccountName);
            ExecSql;
          end;
       except
        on E:Exception do
          begin
            messagedlg(pchar(AccountName+'数据库不存在或是SQL SERVER 没有启动 ! '),mtError,[mbok],0);
            Exit;
          end;
       end;

       with datam.adoqlogin do
        begin
                close;
                sql.Clear;
                sql.Add('select * from tuser where fcode=:fcode');
                parameters.ParamValues['fcode']:=Trim(usercode.Text);
                open;
        end;

          if uppercase(Trim(datam.adoqlogin.FieldByName('fpwd').AsString))=
                                                  uppercase(Trim(Password.Text)) then
                begin
                      gs_userid:=datam.adoQlogin.fieldbyname('fid').AsInteger;
                      gs_usercode:=datam.adoQlogin.fieldbyname('fcode').AsString;
                      gs_username:=datam.adoQlogin.fieldbyname('fname').AsString;
                      gs_password:=Trim(password.Text);
                      gs_admin:=datam.adoQlogin.fieldbyname('fadmin').AsBoolean;

                      frmmain.StatusBar.Panels[0].Text:=SystemName;
                      frmmain.StatusBar.Panels[1].Text:='当前用户 : '+gs_username;
                      frmmain.StatusBar.Panels[2].Text:='当前使用帐套 : '+AccountName;

                      p_writeMainini('login','UserCode',gs_UserCode);
                      gs_ISadoconnect(Createadoconn(AccountName));                      
                      close;

                end
                else
                begin
                       messagedlg('当前密码错误 , 请输入正确的用户名 ! ',mtError,[mbok],0);
                       password.Text:='';
                       password.SetFocus();
                end;

end;

procedure Tfrmchangedb.CDSadbAfterScroll(DataSet: TDataSet);
begin
  inherited;

  AccountName:='';
  AccountName:=CDSadb.fieldbyname('accountName').AsString;

end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -