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

📄 ygxx.pas

📁 欢迎大家相互学习。delphi系统 四个文件夹分别对应书中的四个实例
💻 PAS
字号:
unit ygxx;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, ExtCtrls, DB, DBTables;

type
  Tygxx_Form = class(TForm)
    bh_LEdit: TLabeledEdit;
    xm_LEdit: TLabeledEdit;
    Label1: TLabel;
    gzrq_DTP: TDateTimePicker;
    Label2: TLabel;
    bmdm_CBox: TComboBox;
    Label3: TLabel;
    zwdm_CBox: TComboBox;
    Label4: TLabel;
    zcdm_CBox: TComboBox;
    bz_LEdit: TLabeledEdit;
    cmdok: TButton;
    cmdclose: TButton;
    procedure cmdcloseClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure cmdokClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  ygxx_Form: Tygxx_Form;

implementation

uses yggl;

{$R *.dfm}

procedure Tygxx_Form.cmdcloseClick(Sender: TObject);
begin
    Close;
end;

procedure Tygxx_Form.FormCreate(Sender: TObject);
begin
    Caption:=yggl_form.xcaption;
    with TQuery.Create(nil) do
    try
    Close;
    SQL.Clear;
    SQL.Add('select * from bmdm order by bmdm');
    Open;
    First;
    while not Eof do
    begin
        bmdm_cbox.Items.Add(fieldbyname('bmmc').AsString);
        Next;
    end;
    bmdm_CBox.ItemIndex:=0;
    Close;
    SQL.Clear;
    SQL.Add('select * from zwdm order by zwdm');
    Open;
    First;
    while not Eof do
    begin
        zwdm_cbox.Items.Add(fieldbyname('zwmc').AsString);
        Next;
    end;
    zwdm_CBox.ItemIndex:=0;
    Close;
    SQL.Clear;
    SQL.Add('select * from zcdm order by zcdm');
    Open;
    First;
    while not Eof do
    begin
        zcdm_cbox.Items.Add(fieldbyname('zcmc').AsString);
        Next;
    end;
    zcdm_CBox.ItemIndex:=0;
    finally
    Free;
    end;
    if yggl_form.modi then
    begin
        bh_LEdit.Text:=yggl_form.Query1.fieldbyname('bh').AsString;
        xm_LEdit.Text:=yggl_form.Query1.fieldbyname('xm').AsString;
        bz_LEdit.Text:=yggl_form.Query1.fieldbyname('bz').AsString;
        zcdm_CBox.ItemIndex:=yggl_form.Query1.fieldbyname('zcdm').AsInteger;
        zwdm_CBox.ItemIndex:=yggl_form.Query1.fieldbyname('zwdm').AsInteger;
        bmdm_CBox.ItemIndex:=yggl_form.Query1.fieldbyname('bmdm').AsInteger;
        gzrq_DTP.DateTime:=yggl_form.Query1.fieldbyname('gzrq').AsDateTime;
    end;
end;

procedure Tygxx_Form.cmdokClick(Sender: TObject);
var
    id,bh,xm,gzrq,bz,bmdm,zcdm,zwdm,sqlstr,sqlstr1:string;
begin
    bh:=trim(bh_LEdit.Text);
    if length(bh)<1 then
    begin
        ShowMessage('请输入员工编号!');
        exit;
    end;
    xm:=trim(xm_LEdit.Text);
    if length(xm)<1 then
    begin
        ShowMessage('请输入员工姓名!');
        exit;
    end;
    bz:=trim(bz_ledit.Text);
    bmdm:=inttostr(bmdm_CBox.ItemIndex);
    zcdm:=inttostr(zcdm_CBox.ItemIndex);
    zwdm:=IntToStr(zwdm_CBox.ItemIndex);
    gzrq:=datetostr(gzrq_DTP.Date);
    if yggl_form.modi then
    begin
        id:=yggl_form.Query1.fieldbyname('id').AsString;
        sqlstr1:='select * from ygb where(bh='''+bh+''')and(id<>'''+id+''')';
        sqlstr:='update ygb set bh='''+bh+''',xm='''+xm;
        sqlstr:=sqlstr+''',gzrq='''+gzrq+''',bmdm='''+bmdm;
        sqlstr:=sqlstr+''',zcdm='''+zwdm+''',zwdm='''+zwdm;
        sqlstr:=sqlstr+''',bz='''+bz+''' where(id='''+id+''')';
    end
    else
    begin
        sqlstr1:='select * from ygb where(bh='''+bh+''')';
        sqlstr:='insert into ygb(bh,xm,gzrq,bmdm,zwdm,zcdm,bz)';
        sqlstr:=sqlstr+'values('''+bh+''','''+xm+''','''+gzrq;
        sqlstr:=sqlstr+''','''+bmdm+''','''+zwdm+''','''+zcdm+''','''+bz+''')';
    end;
    with TQuery.Create(nil) do
    try
    Close;
    SQL.Clear;
    SQL.Add(sqlstr1);
    Open;
    if RecordCount > 0 then
    begin
        ShowMessage('员工的编号有重复,请重新输入!');
        exit;
    end;
    Close;
    SQL.Clear;
    SQL.Add(sqlstr);
    ExecSQL;
    finally
    Free;
    end;
    yggl_form.cmdok.Click;
    Close;
end;

end.

⌨️ 快捷键说明

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