📄 unit8.pas
字号:
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, ComCtrls, StdCtrls, Buttons, ExtCtrls;
type
TF_bill = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Splitter1: TSplitter;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DateTimePicker1: TDateTimePicker;
Panel5: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton4: TSpeedButton;
Label5: TLabel;
Edit4: TEdit;
SpeedButton7: TSpeedButton;
Button1: TButton;
Label6: TLabel;
ComboBox1: TComboBox;
Label7: TLabel;
Edit5: TEdit;
SpeedButton3: TSpeedButton;
DBGrid1: TDBGrid;
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure Edit4Change(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SpeedButton3Click(Sender: TObject);
procedure Edit5Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
punum:string;
end;
var
F_bill: TF_bill;
change:boolean;
implementation
uses unit11,unit24;
{$R *.dfm}
procedure TF_bill.SpeedButton1Click(Sender: TObject);
var
datefen:string;
i:integer;
begin
edit2.Enabled:=true;
edit3.Enabled:=true;
datetimepicker1.Enabled:=true;
combobox1.Enabled:=true;
speedbutton1.Enabled:=false;
speedbutton2.Enabled:=false;
change:=false;
bitbtn2.Enabled:=true;
bitbtn1.Enabled:=true;
Datefen:='';
Punum:='';
datefen:=Formatdatetime('yyyymmdd',now());//格式化的年月日
mydm.billsrc.DataSet.Last;
if Trim(mydm.billsrc.DataSet.Fields[0].AsString)<>'' then
Punum:=inttostr(strtoint(copy(Trim(mydm.billsrc.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;//日期+两位编号
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_bill.BitBtn1Click(Sender: TObject);
begin
Edit1.Clear;
edit2.Clear;
Edit3.Clear;
datetimepicker1.Date;
combobox1.Clear;
edit1.Enabled:=false;
Edit2.Enabled:=false;
Edit3.Enabled:=false;
datetimepicker1.Enabled:=false ;
combobox1.Enabled:=false;
speedbutton1.Enabled:=true;
speedbutton2.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=false;
change:=False;
end;
procedure TF_bill.BitBtn2Click(Sender: TObject);
begin
if ((edit1.text<>'') and (edit2.Text<>'') and (edit3.Text<>'') ) then
begin
if change=true then mydm.Billsrc.DataSet.Delete;
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('insert into bill values(:p0,:p1,:p2,:p3,:p4)');
end;
parameters[0].Value:=Trim(edit1.Text);
parameters[1].Value:=Trim(edit2.Text);
parameters[2].Value:=Trim(edit3.Text);
parameters[3].value:=datetimepicker1.date;
Parameters[4].Value:=Trim(combobox1.Text);
execsql;
end;
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('select*from bill');
end;
open;
if change<>true then
change:=false;
bitbtn1.Click;
end;
end
else
begin
Application.MessageBox('输入必要信息。','提示',64);
exit;
end;
bitbtn2.Enabled:=False;
bitbtn1.Enabled:=False;
speedbutton1.Enabled:=True;
speedbutton2.Enabled:=True;
end;
procedure TF_bill.SpeedButton2Click(Sender: TObject);
begin
if mydm.billQuery.RecordCount=0 then
Exit;
edit2.Enabled:=true;
edit3.Enabled:=true;
datetimepicker1.Enabled:=true;
combobox1.Enabled:=true;
change:=true;
bitbtn1.Enabled:=true;
bitbtn2.Enabled:=true;
speedbutton1.Enabled:=false;
speedbutton2.Enabled:=false;
edit1.Text:=mydm.Billsrc.DataSet.Fields[0].AsString;
edit2.Text:=mydm.Billsrc.DataSet.Fields[1].AsString;
edit3.Text:=mydm.Billsrc.DataSet.Fields[2].AsString;
datetimepicker1.Date:=mydm.Billsrc.DataSet.Fields[3].AsDateTime;
combobox1.Text:=mydm.Billsrc.DataSet.Fields[4].AsString;
end;
procedure TF_bill.SpeedButton4Click(Sender: TObject);
begin
Close;
end;
procedure TF_bill.FormShow(Sender: TObject);
var
i:integer;
begin
with mydm.billQuery do
begin
close;
with sql do
begin
clear;
add('select*from bill');
end;
open;
end;
speedbutton7.Enabled:=false;
speedbutton3.Enabled:=false;
speedbutton1.Enabled:=true;
speedbutton2.Enabled:=true;
bitbtn1.Enabled:=false;
bitbtn2.Enabled:=false;
edit1.Enabled:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
datetimepicker1.Enabled:=false;
combobox1.Enabled:=false;
edit1.clear;
edit2.Clear;
edit3.Clear;
datetimepicker1.Date;
combobox1.Clear;
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_bill.SpeedButton7Click(Sender: TObject);
begin
with Mydm.billQuery do
begin
Close;
with SQL do
begin
Clear;
Add('select*from bill');
Add('where bill_id=:p');
end;
Parameters[0].Value:=trim(edit4.Text);
Prepared;
Open;
edit4.Clear;
Speedbutton7.Enabled:=false;
end;
end;
procedure TF_bill.Edit4Change(Sender: TObject);
begin
Speedbutton7.Enabled:=true;
end;
procedure TF_bill.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',Chr(vk_Back),'.']) then
key:=#0;
end;
procedure TF_bill.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=13 then
selectnext(sender as twincontrol,true,true);
end;
procedure TF_bill.SpeedButton3Click(Sender: TObject);
begin
with Mydm.billQuery do
begin
Close;
with SQL do
begin
Clear;
Add('select*from bill');
Add('where policy_id=:p');
end;
Parameters[0].Value:=trim(edit5.Text);
Prepared;
Open;
edit5.Clear;
Speedbutton3.Enabled:=false;
end;
end;
procedure TF_bill.Edit5Change(Sender: TObject);
begin
speedbutton3.Enabled:=true;
end;
procedure TF_bill.Button1Click(Sender: TObject);
begin
F_baoshow.Show;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -