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

📄 fuzhu.pas

📁 劳保用品管理系统
💻 PAS
字号:
unit fuzhu;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, ExtCtrls, Db, DBTables, ADODB, ComCtrls, Grids, DBGrids;

type
  Tfuzhufm = class(TForm)
    PageControl1: TPageControl;
    TabSheet7: TTabSheet;
    StatusBar1: TStatusBar;
    TabSheet1: TTabSheet;
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Button2: TButton;
    Panel2: TPanel;
    Panel3: TPanel;
    DBGrid23: TDBGrid;
    Button1: TButton;
    Panel4: TPanel;
    DBGrid17: TDBGrid;
    GroupBox2: TGroupBox;
    ListBox1: TListBox;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Button3: TButton;
    DBGrid1: TDBGrid;
    Label5: TLabel;
    Label6: TLabel;
    Edit4: TEdit;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    procedure Button1Click(Sender: TObject);
    procedure DBGrid23CellClick(Column: TColumn);
    procedure TabSheet7Show(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure Button2Click(Sender: TObject);
    procedure TabSheet1Show(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fuzhufm: Tfuzhufm;
  a: array of Tcombobox;
  b: array of Tlabel;
  ii: integer;
implementation
{$R *.DFM}
uses mylib, adodata;
//打开adoquery通用过程—OPEN方法

procedure OpenADOquery(adoqry: Tadoquery; sqltxt: string);
begin
  ADOQry.Close;
  ADOQry.SQL.Clear;
  ADOQry.SQL.Add(sqltxt);
  ADOQry.open;
end;
//执行adoquery通用过程—EXEC方法

procedure EXECADOquery(adoqry: Tadoquery; sqltxt: string);
begin
  ADOQry.Close;
  ADOQry.SQL.Clear;
  ADOQry.SQL.Add(sqltxt);
  ADOQry.ExecSQL;
end;

procedure Tfuzhufm.Button1Click(Sender: TObject);
var s, s1, s2, s3: string;
begin
  s := 'select * from lkyg';
  openadoquery(adodm.adoquery23, s);
  s := 'select ygbh from lkyg where xb="男"';
  openadoquery(adodm.ADOQuery2, s);
  s1 := inttostr(adodm.ADOQuery23.RecordCount);
  s2 := inttostr(adodm.ADOQuery2.RecordCount);
  s3 := inttostr(adodm.ADOQuery23.RecordCount - adodm.ADOQuery2.RecordCount);
  StatusBar1.Panels[1].Text := s1;
  StatusBar1.Panels[3].Text := s2;
  StatusBar1.Panels[5].Text := s3;
end;

procedure Tfuzhufm.DBGrid23CellClick(Column: TColumn);
var s, s1, s3, s2: string;
begin
  if adodm.adoquery22.RecordCount = 0 then exit;
  s1 := adodm.adoquery22.FieldValues['bmbh'];
  s := 'select * from lkyg where bmbh=''' + s1 + '''';
  openadoquery(adodm.ADOQuery23, s);
  s := 'select ygbh from lkyg where bmbh=''' + s1 + ''' and xb="男"';
  openadoquery(adodm.ADOQuery2, s);
  s1 := inttostr(adodm.ADOQuery23.RecordCount);
  s2 := inttostr(adodm.ADOQuery2.RecordCount);
  s3 := inttostr(adodm.ADOQuery23.RecordCount - adodm.ADOQuery2.RecordCount);
  StatusBar1.Panels[1].Text := s1;
  StatusBar1.Panels[3].Text := s2;
  StatusBar1.Panels[5].Text := s3;
end;

procedure Tfuzhufm.TabSheet7Show(Sender: TObject);
begin
  adodm.adoquery22.Close;
  adodm.adoquery22.open;
end;

procedure Tfuzhufm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  adodm.ADOQuery2.Close;
  adodm.ADOQuery9.Close;
  adodm.ADOQuery22.Close;
  adodm.ADOQuery23.Close;
  adodm.ADOQuery26.Close;
  Action := caFree;
end;

procedure Tfuzhufm.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9', #8, #13]) then key := #0;
  if key = #13 then edit2.SetFocus;
end;

procedure Tfuzhufm.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9', #8, #13]) then key := #0;
  if key = #13 then button2.SetFocus;
end;

procedure Tfuzhufm.Button2Click(Sender: TObject);
var s, s1, s2: string;
begin
  s1 := edit1.Text;
  s2 := edit2.Text;
  if (s1 = '') or (s2 = '') then
  begin
    showmessage('原编号和新编号缺一不可!');
    exit;
  end;
  s := 'select ygbh from lkyg where ygbh=''' + s1 + '''';
  openadoquery(adodm.ADOQuery2, s);
  if adodm.ADOQuery2.RecordCount = 0 then
  begin
    showmessage('原编号不存在!');
    edit1.SetFocus;
    exit;
  end;
  s := 'select ygbh from lkyg where ygbh=''' + s2 + '''';
  openadoquery(adodm.ADOQuery2, s);
  if adodm.ADOQuery2.RecordCount = 1 then
  begin
    showmessage('新编号已存在!');
    edit2.SetFocus;
    exit;
  end;
//更改员工主库编号
  s := 'update lkyg set ygbh=''' + s2 + ''' where ygbh=''' + s1 + '''';
  execadoquery(adodm.ADOQuery2, s);
//更改劳保发放记录中的编号
  s := 'update ffjl set ygbh=''' + s2 + ''' where ygbh=''' + s1 + '''';
  execadoquery(adodm.ADOQuery2, s);
//更改劳保发放临时记录中的编号
  s := 'update fftmp set ygbh=''' + s2 + ''' where ygbh=''' + s1 + '''';
  execadoquery(adodm.ADOQuery2, s);
  showmessage('员工编号更改完毕!');
end;

procedure Tfuzhufm.TabSheet1Show(Sender: TObject);
var sqltxt: string;
  i: integer;
begin
  sqltxt := 'select lbmc from ygglb';
  openadoquery(adodm.adoquery9, sqltxt);
  listbox1.Clear;
  for i := 1 to adodm.ADOQuery9.RecordCount do
  begin
    listbox1.Items.Add(adodm.adoquery9.FieldValues['lbmc']);
    adodm.ADOQuery9.Next;
  end;
end;


procedure Tfuzhufm.Button3Click(Sender: TObject);
var s1, s2, s3: string;
begin
  s3 := 'ygglb';
  s2 := trim(edit3.Text);
  if s2 = '' then exit;
  s1 := 'select * from ygglb where lbmc=''' + s2 + '''';
  openadoquery(adodm.adoquery9, s1);
  if adodm.adoquery9.RecordCount > 0 then
  begin
    showmessage('已存在同名劳保用品!');
    exit;
  end;
  s1 := 'insert into ygglb (lbmc) values(''' + s2 + ''')';
  execadoquery(adodm.ADOQuery9, s1);
  listbox1.Items.Add(s2);
//增加字段
  s1 := 'ALTER table lkyg ADD ' + s2 + ' CHAR(6)';
  execadoquery(adodm.ADOQuery9, s1);
  MessageDlg('添加完毕!请接着为其添加规格!', mtInformation, [mbOk], 0);

end;

procedure Tfuzhufm.ListBox1Click(Sender: TObject);
var s1, sqltxt: string;
begin
  s1 := listbox1.Items[listbox1.ItemIndex];
  if s1 = '' then exit;
  sqltxt := 'select ggg from lbgg where glbmc=''' + s1 + '''';
  openadoquery(adodm.ADOQuery26, sqltxt);
end;

procedure Tfuzhufm.Button4Click(Sender: TObject);
var s1, s2, s3, sqltxt: string;
begin
  if listbox1.ItemIndex = -1 then
  begin
    showmessage('请先选择劳保用品名称!');
    exit;
  end;
  s1 := listbox1.Items[listbox1.ItemIndex];
  s2 := trim(edit4.Text);
  s3 := 'insert into lbgg (glbmc,ggg) values(''' + s1 + ''',''' + s2 + ''')';
  execadoquery(adodm.ADOQuery9, s3);
  MessageDlg('添加完毕!可继续添加!', mtInformation, [mbOk], 0);
  sqltxt := 'select ggg from lbgg where glbmc=''' + s1 + '''';
  openadoquery(adodm.ADOQuery26, sqltxt);
end;

procedure Tfuzhufm.Button5Click(Sender: TObject);
var s1, s2, s3, sqltxt: string;
begin
  if MessageDlg('你真的要删除吗?删除后将无法恢复!', mtWarning, [mbno, mbYes], 0) = mryes then
  begin
    s2 := listbox1.Items[listbox1.ItemIndex];
    s1 := 'delete from ygglb where lbmc=''' + s2 + '''';
    execadoquery(adodm.ADOQuery9, s1);
    s1 := 'delete from lbgg where glbmc=''' + s2 + '''';
    execadoquery(adodm.ADOQuery9, s1);
    s1 := 'ALTER table lkyg drop ' + s2;
    execadoquery(adodm.ADOQuery9, s1);
    MessageDlg('删除完毕!', mtInformation, [mbOk], 0);
    listbox1.Items.Delete(listbox1.ItemIndex);
    adodm.ADOQuery26.Close;
  end;
end;

procedure Tfuzhufm.Button6Click(Sender: TObject);
var s1, s2, s3, sqltxt: string;
begin
  if listbox1.ItemIndex = -1 then
  begin
    showmessage('请先选择劳保用品名称!');
    exit;
  end;
  s2 := adodm.ADOQuery26.FieldValues['ggg'];
  if s2 = '' then exit;
  s1 := listbox1.Items[listbox1.ItemIndex];
  s3 := 'delete from lbgg where glbmc=''' + s1 + ''' and ggg=''' + s2 + '''';
  execadoquery(adodm.ADOQuery9, s3);
  MessageDlg('删除完毕!', mtInformation, [mbOk], 0);
  sqltxt := 'select ggg from lbgg where glbmc=''' + s1 + '''';
  openadoquery(adodm.ADOQuery26, sqltxt);
end;

end.

⌨️ 快捷键说明

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