ubxlxsz.pas
来自「很好的汽车管理系统 很实用的 谢谢合作」· PAS 代码 · 共 280 行
PAS
280 行
unit UBXLXSZ;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, Grids, DBGrids;
type
TBXLXSZ = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
Panel2: TPanel;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
DBGrid1: TDBGrid;
SpeedButton5: TSpeedButton;
SpeedButton7: TSpeedButton;
procedure Edit2Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
procedure ENA;
procedure DIS;
procedure CLS;
procedure Posting;
procedure GetAll;
function cansave:boolean;
procedure BH;
{ Public declarations }
end;
var
BXLXSZ: TBXLXSZ;
implementation
uses UDM, UMain;
{$R *.dfm}
procedure TBXLXSZ.BH;//自动编号
var
s,m:string;
begin
with DM.QBXLXSZ do
begin
Close;
SQL.Clear;
SQL.Add('Select max(bh) as 编号 From bxlxsz ');
Open;
end;
if DM.ADODSBXLXSZ.FieldByName('bh').Value=null then
s:=s+'1'
else
begin
DM.ADODSBXLXSZ.Last;
m:=Trim(DM.ADODSBXLXSZ.Fieldbyname('bh').Value);
s:=inttostr(strtoint(m)+1);
end;
Edit1.Text:=s;
end;
function TBXLXSZ.CanSave: Boolean;
begin
if (Edit1.Text='') then
begin
Result:=False;
Application.MessageBox('编号不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
if (Edit2.Text='') then
begin
Result:=False;
Application.MessageBox('保险类型不能为空!','提示信息',0+MB_ICONINFORMATION);
exit;
end;
end;
procedure TBXLXSZ.GetAll;
begin
Edit1.Text:=DM.ADODSBXLXSZ.FieldByName('bh').AsString;
Edit2.Text:=DM.ADODSBXLXSZ.FieldByName('bxlx').AsString;
end;
procedure TBXLXSZ.posting;
begin
if ActionCD='N' then
BEGIN
with DM.QBXLXSZ do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO bxlxsz(bxlx,bh)');
SQL.Add('Values(:保险类型,:编号)');
Parameters.Items[0].Value:=Edit2.Text;
Parameters.Items[1].Value:=Edit1.Text;
Prepared:=True;
ExecSQL;
end;
END else
if ActionCD='M' then
begin
With DM.QBXLXSZ do
begin
Close;
SQL.Clear;
SQL.Add('update bxlxsz Set bxlx=:保险类型 Where BH=:编号');
Parameters.Items[0].Value:=Edit2.Text;
Parameters.Items[1].Value:=DM.ADODSBXLXSZ.FieldByName('bh').AsString;
Prepared:=true;
ExecSQL;
end;
end;
end;
procedure TBXLXSZ.ENA;
var
i:integer;
begin
for i:=ComponentCount-1 downto 0 do
begin
if (Components[i] is TEdit) then
begin
TEdit(Components[i]).Color:=clWindow;
TEdit(Components[i]).ReadOnly:=False;
end;
end;
SpeedButton1.Enabled:=False;
SpeedButton2.Enabled:=False;
SpeedButton3.Enabled:=True;
SpeedButton4.Enabled:=True;
Panel1.Enabled:=True;
SpeedButton7.Enabled:=False;
end;
procedure TBXLXSZ.DIS;
var
i:integer;
begin
for i:=ComponentCount-1 downto 0 do
begin
if (Components[i] is Tedit) then
begin
TEdit(Components[i]).Color:=$00d8d8d8;
TEdit(Components[i]).ReadOnly:=true;
end;
end;
SpeedButton1.Enabled:=True;
SpeedButton2.Enabled:=True;
SpeedButton3.Enabled:=False;
SpeedButton4.Enabled:=False;
Panel1.Enabled:=False;
SpeedButton7.Enabled:=True;
end;
procedure TBXLXSZ.CLS;
var
i:integer;
begin
for i:=ComponentCount-1 downto 0 do
begin
if(Components[i] is tedit) then
TEdit(Components[i]).Clear;
end;
end;
procedure TBXLXSZ.Edit2Change(Sender: TObject);
begin
Edit2.Text:=Trim(Edit2.Text);//去除空字符
end;
procedure TBXLXSZ.FormCreate(Sender: TObject);
begin
with DM.QBXLXSZ do
begin
Close;
SQL.Clear;
SQL.Add('select * from BXLXSZ');
Open;
end;
DM.ADODSBXLXSZ.Open;
end;
procedure TBXLXSZ.FormShow(Sender: TObject);
begin
DIS;
if ActionCD = 'M' then
GetAll
else if ActionCD = 'N' then
begin
CLS;
ENA;
end;
end;
procedure TBXLXSZ.SpeedButton1Click(Sender: TObject);
begin
CLS;
ENA;
ActionCD := 'N';
Edit2.SetFocus;
bh;
end;
procedure TBXLXSZ.SpeedButton2Click(Sender: TObject);
begin
ENA;
ACtionCD := 'M';
end;
procedure TBXLXSZ.SpeedButton3Click(Sender: TObject);
begin
if (cansave) then
begin
Posting;
DIS;
DM.ADODSBXLXSZ.Close;
DM.ADODSBXLXSZ.Open;
Application.MessageBox('保存成功!','提示!',64);
actioncd:='';
BXLXSZ.Close;
end;
end;
procedure TBXLXSZ.SpeedButton7Click(Sender: TObject);
begin
if dm.ADODSBXLXSZ.RecordCount=0 then
begin
Application.MessageBox('已无记录可删除!','提示',0+MB_ICONINFORMATION);
exit;
end;
if dm.ADODSBXLXSZ.IsEmpty then
exit;
if ID_YES=application.MessageBox('确实要删除这条记录吗?','提示',MB_YESNO) then
begin
dm.ADODSBXLXSZ.Delete;
end;
end;
procedure TBXLXSZ.SpeedButton4Click(Sender: TObject);
begin
DIS;
BXLXSZ.GetAll;
actioncd:='';
end;
procedure TBXLXSZ.SpeedButton5Click(Sender: TObject);
begin
Close;
end;
procedure TBXLXSZ.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
GetAll;
end;
procedure TBXLXSZ.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if (key in ['0'..'9','a'..'z','A','Z',#46]) then
key:=#0;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?