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

📄 unit23.pas

📁 人寿保险的管理信息系统
💻 PAS
字号:
unit Unit23;

interface

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

type
  TF_comp = class(TForm)
    Panel1: TPanel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    Panel2: TPanel;
    Splitter1: TSplitter;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    Label5: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label6: TLabel;
    DateTimePicker2: TDateTimePicker;
    Label7: TLabel;
    Edit5: TEdit;
    Label8: TLabel;
    Edit6: TEdit;
    Label9: TLabel;
    Edit7: TEdit;
    Label10: TLabel;
    ComboBox1: TComboBox;
    Label11: TLabel;
    ComboBox2: TComboBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    DBGrid1: TDBGrid;
    procedure FormShow(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);

    procedure SpeedButton4Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DateTimePicker2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit5KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit6KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit7KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ComboBox2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button3Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
    punum:string;
  end;

var
  F_comp: TF_comp;
  change:boolean;
implementation
   uses unit11, Unit24;
{$R *.dfm}

procedure TF_comp.FormShow(Sender: TObject);
var
   i:integer;
begin
   speedbutton1.Enabled :=true;
   speedbutton2.Enabled :=true;
   speedbutton3.Enabled :=true;
   edit1.Enabled :=false;
   edit2.Enabled :=false;
   edit3.Enabled :=false;
   edit4.Enabled :=false;
   edit5.Enabled :=false;
   edit6.Enabled :=false;
   edit7.Enabled :=false;
   edit1.Clear;
   edit2.Clear;
   edit3.Clear;
   edit4.Clear;
   datetimepicker1.Date;

     with mydm.compquery do
   begin
     Close;
     with SQL do
     begin
       Clear;
       Add('select * from compensation');

     end;
      Open;
   end;
   if combobox1.Enabled=true then
    combobox1.SetFocus;
   Combobox1.ItemIndex:=-1;
   Combobox1.clear;
    for i:=0 to mydm.empsrc.DataSet.RecordCount-1 do
   begin
      Combobox1.Items.Add(mydm.empQuery.Fields[1].asstring);
      mydm.empsrc.DataSet.Next;
    end;
   mydm.empsrc.DataSet.First;

end;

procedure TF_comp.SpeedButton1Click(Sender: TObject);
   var
   datefen:string;
begin
   speedbutton1.Enabled :=false;
   speedbutton2.Enabled :=false;
   speedbutton3.Enabled :=false;
   edit1.Enabled :=true;
   edit2.Enabled :=true;
   edit3.Enabled :=true;
   edit4.Enabled :=true;
   edit5.Enabled :=true;
   edit6.Enabled :=true;
   edit7.Enabled :=true;
   edit2.Clear;
   edit3.Clear;
   edit4.Clear;
   datetimepicker1.Date;
   Mydm.compquery.Last;
   Datefen:='';
   Punum:='';
   datefen:=Formatdatetime('yyyymmdd',now());//格式化的年月日
   mydm.comp1src.DataSet.Last;
  if Trim(mydm.compsrc.DataSet.Fields[0].AsString)<>'' then
    Punum:=inttostr(strtoint(copy(Trim(mydm.compsrc.DataSet.Fields[0].AsString),9,2))+1);//Punum定义的字符串型全局变量
  if (1<=length(punum)) and (length(punum)<2) then
    punum:='0'+punum;
  if length(punum)<1 then
    punum:='01';
  if length(punum)=3 then
    punum:='01';
  Edit1.Text:=datefen+punum;//日期+两位编号
  //Punum:=Edit1.Text;
  edit1.Enabled :=false;
  edit2.SetFocus;
  button1.Enabled:=true;
  button2.Enabled:=true;

end;

procedure TF_comp.SpeedButton2Click(Sender: TObject);
begin
  Edit1.Clear;
  Edit2.Clear;
  Edit3.Clear;
  Edit4.Clear;
  edit5.Clear;
  edit6.Clear;
  edit7.Clear;
  Edit1.Enabled:=True;
  Edit2.Enabled:=True;
  Edit3.Enabled:=true;
  edit4.Enabled:=true;
  edit5.Enabled:=true;
  edit6.Enabled:=true;
  edit7.Enabled:=true;
  combobox1.Enabled :=true;
  combobox2.Enabled :=true;
  datetimepicker1.Enabled :=true;
  datetimepicker2.Enabled :=true;
  Speedbutton1.Enabled:=False;
  Speedbutton2.Enabled:=False;
  Speedbutton3.Enabled:=False;
  Button1.Enabled:=true;
  Button2.Enabled:=true;

  begin
    Edit1.Text:=mydm.compsrc.DataSet.Fields[0].AsString;//记录在TEdit组件中显示
    Edit2.Text:=mydm.compsrc.DataSet.Fields[1].AsString;
    datetimepicker2.Date:=mydm.compsrc.DataSet.Fields[2].AsDateTime;
    edit5.Text:=mydm.compsrc.DataSet.Fields[3].AsString;
    edit6.Text:=mydm.compsrc.DataSet.Fields[4].AsString;
    edit7.Text:=mydm.compsrc.DataSet.Fields[5].AsString;
    combobox1.Text:=mydm.compsrc.DataSet.Fields[6].AsString;
    combobox2.Text:=mydm.compsrc.DataSet.Fields[7].AsString;



  end;

  Change:=True;//定义判断是否为修改状态的全局变量
end;



procedure TF_comp.SpeedButton4Click(Sender: TObject);
begin
  Button2.Click;
  Close;
end;

procedure TF_comp.Button1Click(Sender: TObject);
begin
  if change<>True then
  begin
    mydm.find.Close;
    mydm.find.SQL.Clear;
    mydm.find.SQL.Add('select*from compensation where  comp_id='''+Trim(Edit1.text)+'''');
    mydm.find.Open;
    if mydm.find.RecordCount>0 then//查找是否有重复记录有则退出
    begin
      Application.MessageBox('编号重复。','提示!',mb_ok);
      Exit;
    end;
  end;
  if ((Edit1.Text<>'') and (Edit2.Text<>'') and (Edit5.Text<>'' ) and (Edit6.Text<>'')
      and (edit7.text<>'') and (ComboBox1.Text<>'') and (combobox2.Text<>'') ) then
  begin
    if change=True then mydm.compsrc.DataSet.Delete;
    with mydm.compQuery do //插入新记录
    begin
      Close;
      with SQL do
      begin
        Clear;
        Add('insert into compensation values(:p0,:p1,:p2,:p3,:p4,:p5,:p6,:p7)');
        Parameters[0].Value:=Edit1.Text;
        Parameters[1].Value:=Edit2.Text;
        Parameters[2].Value:=DateTimePicker2.Date;
        Parameters[3].Value:=edit5.text;
        Parameters[4].Value:=Edit6.Text;
        Parameters[5].Value:=edit7.Text;
        parameters[6].Value:=combobox1.Text;
        Parameters[7].Value:=combobox2.Text;
      end;
      Execsql;
    end;
  //刷新表
    with mydm.compQuery do
    begin
      Close;
      with sql do
      begin
        Clear;
        Add('select * from compensation');
        
      end;
      Open;
      Change:=False;
      Button2.Click;
    end;
  end
  else
  begin
    Application.MessageBox('输入必要信息','提示',64);
    Exit;
  end;
  Edit1.Enabled:=False;
  Edit2.Enabled:=False;
  edit3.Enabled:=false;
  edit4.Enabled:=false;
  edit5.Enabled:=false;
  edit6.Enabled:=false;
  edit7.Enabled:=false;
  Speedbutton1.Enabled:=True;
  Speedbutton2.Enabled:=True;
  Speedbutton3.Enabled:=True;
  button1.Enabled:=False;
  button2.Enabled:=False;
end;

procedure TF_comp.Button2Click(Sender: TObject);
begin
  Edit1.Clear;
  Edit2.Clear;
  edit3.Clear;
  edit4.Clear;
  edit5.clear;
  edit6.Clear;
  edit7.clear;
  datetimepicker1.Date;
  datetimepicker2.Date;
  Edit1.Enabled:=false;
  Edit2.Enabled:=false;
  edit3.Enabled:=false;
  edit4.Enabled:=false;
  edit5.Enabled:=false;
  edit6.Enabled:=false;
  edit7.Enabled:=false;
  Button2.Enabled:=false;
  Button1.Enabled:=false;
  Speedbutton1.Enabled:=true;
  Speedbutton2.Enabled:=true;
  Speedbutton3.Enabled:=true;
  change:=False;
end;

procedure TF_comp.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;



procedure TF_comp.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.Edit4KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.DateTimePicker2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.Edit5KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.Edit6KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.Edit7KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    selectnext(sender as twincontrol,true,true);
end;

procedure TF_comp.ComboBox2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then
    button1.setfocus;
end;

procedure TF_comp.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=13 then
   button1click(button1);
end;

procedure TF_comp.Button3Click(Sender: TObject);
begin
   F_baoshow.show;
end;

procedure TF_comp.SpeedButton3Click(Sender: TObject);
begin
 if Application.MessageBox('是否删除?','提示',mb_yesno)=6 then
  begin
    try
      mydm.compsrc.DataSet.Delete;
    except//如果删除不成功将弹出以下对会框
      Application.MessageBox('删除不成功!','提示',mb_ok);
    end;
  end;
end;

end.

⌨️ 快捷键说明

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