📄 unit6.~pas
字号:
unit Unit6;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,Unit3,Unit5,Unit7, Buttons, DB, DBTables, Grids, DBGrids,
DBCtrls;
type
Tqcxlzc = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Label6: TLabel;
Edit6: TEdit;
Label7: TLabel;
Edit7: TEdit;
BitBtn1: TBitBtn;
Bevel1: TBevel;
Label8: TLabel;
Label9: TLabel;
Edit8: TEdit;
Edit9: TEdit;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Panel1: TPanel;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Label10: TLabel;
Edit10: TEdit;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
Bevel2: TBevel;
DBNavigator1: TDBNavigator;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
BitBtn5: TBitBtn;
Table1: TTable;
Table1BDEDesigner: TStringField;
Table1BDEDesigner2: TStringField;
Table1BDEDesigner3: TStringField;
Table1BDEDesigner4: TStringField;
Table1BDEDesigner5: TFloatField;
Table1BDEDesigner6: TStringField;
Table1BDEDesigner7: TIntegerField;
Table1BDEDesigner8: TDateTimeField;
Table1BDEDesigner9: TDateTimeField;
Table1BDEDesigner10: TDateTimeField;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
ComboBox1: TComboBox;
Label23: TLabel;
Query1: TQuery;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Edit10KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
qcxlzc: Tqcxlzc;
implementation
{$R *.dfm}
procedure Tqcxlzc.BitBtn1Click(Sender: TObject);
begin
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
end;
procedure Tqcxlzc.BitBtn3Click(Sender: TObject);
begin
edit8.Clear;
edit9.Clear;
end;
procedure Tqcxlzc.BitBtn4Click(Sender: TObject);
begin
Table1.Active:=false;
Table1.Active:=true;
if edit1.Text='' then
begin
edit1.SetFocus;
messagebeep(0);
showmessage('"修理单号"不能为空!!');
exit;
end;
if edit2.Text='' then
begin
edit2.SetFocus;
messagebeep(0);
showmessage('"工号"不能为空!!');
exit;
end;
if edit3.Text='' then
begin
edit3.SetFocus;
messagebeep(0);
showmessage('"牌号"不能为空!!');
exit;
end;
if edit4.Text='' then
begin
edit4.SetFocus;
messagebeep(0);
showmessage('"修理项目"不能为空!!');
exit;
end;
if edit8.Text='' then
edit8.SetFocus
else
begin
if edit9.Text='' then
begin
edit9.SetFocus;
messagebeep(0);
showmessage('请输入零件数量');
exit;
end;
end;
if qcdj.Table1.Locate('牌号',edit3.Text,[locaseinsensitive]) then
next
else
begin
edit3.SetFocus;
messagebeep(0);
showmessage('此汽车牌号');
exit;
end;
if worker.Table1.Locate('工号',edit2.Text,[locaseinsensitive]) then
next
else
begin
edit2.SetFocus;
messagebeep(0);
showmessage('没有此修理工号');
exit;
end;
if ljkcgl.Table1.Locate('零件号',edit8.Text,[locaseinsensitive]) then
begin // 断是否有此零件
with ljkcgl.Table1 do
begin
open;
if fieldbyname('零件号').AsString=edit8.Text then //断是否此零件号
begin
edit;
if fieldvalues['库存量']-strToint(Trim(edit9.Text))<0 then
begin
messagebeep(0);
showmessage('此零件已不足'); //判断是否有足够的零件数量
edit9.SetFocus;
exit;
end
else
fieldvalues['库存量']:=fieldvalues['库存量']-strToint(Trim(edit9.Text));
end;
Table1.Active:=false;
Table1.Active:=true;
//录入记录
Table1.AppendRecord([Edit1.Text,Edit2.Text,Edit3.Text,edit4.text,Edit5.text,
Edit8.text,Edit9.text,edit6.Text,edit7.Text,now()]);
Table1.Filtered:=false;
Table1.Filter:='修理单号'+'='+''''+edit1.Text+'''';
Table1.Filtered:=true;
with Query1 do
begin
close;
SQL.Clear;
SQL.Add('insert os_log values(:a,:b,:c,:d)');
parambyName('a').AsString:=Label23.Caption;
parambyName('b').AsString:=Trim(edit1.Text);
parambyName('c').AsString:=dateTostr(now);
parambyName('d').AsString:=timeTostr(now);
ExecSQL;
end;
messagebeep(0);
if messagedlg('还要继续添加零件吗??',mtconfirmation,[mbYes,mbNO],0)=mryes then
begin //确认添加零件
Edit8.Clear;
Edit9.Clear;
Edit8.SetFocus;
exit;
end;
end;
end
else
begin
edit8.SetFocus;
messagebeep(0);
showmessage('没有此零件号');
exit;
end;
BitBtn1.Click ;
edit1.SetFocus;
edit8.Clear;
edit9.Clear;
end;
procedure Tqcxlzc.BitBtn5Click(Sender: TObject);
begin
Table1.Active:=false;
Table1.Active:=true;
Table1.Filtered:=false;
end;
procedure Tqcxlzc.BitBtn8Click(Sender: TObject);
begin
Table1.Active:=false;
Table1.Active:=true;
if edit10.Text='' then
begin
messagebeep(0);
showmessage('请输入修理单号');
exit;
end;
Table1.Filtered:=false;
if Table1.Locate(ComboBox1.Text,edit10.Text,[locaseinsensitive]) then
begin
Table1.Filter:=ComboBox1.Text+'='+''''+edit10.Text+'''';
Table1.Filtered:=true;
showmessage('查找成功');
edit10.SetFocus;
exit;
end
else
begin
messagebeep(0);
showmessage('没有此记录');
edit10.SetFocus;
exit;
end;
end;
procedure Tqcxlzc.BitBtn9Click(Sender: TObject);
begin
edit10.Clear;
end;
procedure Tqcxlzc.FormCreate(Sender: TObject);
begin
Table1.Active:=false;
Table1.Active:=true;
end;
procedure Tqcxlzc.Edit10KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
BitBtn8.Click
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -