📄 goodsedunit.pas
字号:
unit GoodsEdUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, DB, DBTables, ADODB, Mask, DBCtrls;
type
TGoodsEdForm = class(TForm)
PanelBkGnd: TPanel;
Panel_button: TPanel;
Bevel_button: TBevel;
OKBtn: TButton;
CancelBtn: TButton;
FlatPanel_edit: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label5: TLabel;
Label4: TLabel;
Label7: TLabel;
ADOQuery_data: TADOQuery;
ADOCommand_data: TADOCommand;
ADOQuery_temp: TADOQuery;
E_NAME: TEdit;
E_type: TEdit;
E_ID: TEdit;
E_unit: TEdit;
E_price: TEdit;
E_sellprice: TEdit;
procedure E_NAMEKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
procedure OKBtnClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CancelBtnClick(Sender: TObject);
private
{ Private declarations }
public
P_state: integer;
{ Public declarations }
end;
var
GoodsEdForm: TGoodsEdForm;
implementation
uses MainUnit, FunctionUnit, GoodsSelectUnit, DMUnit;
{$R *.dfm}
procedure TGoodsEdForm.E_NAMEKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = 13) or (key = 40) then { 判断是按执行键}
begin
key := 0;
perform(WM_NEXTDLGCTL, 0, 0); {移动到下一个控件}
end;
end;
procedure TGoodsEdForm.FormCreate(Sender: TObject);
begin
adoquery_data.Connection := dm.ADOCon;
end;
procedure TGoodsEdForm.OKBtnClick(Sender: TObject);
begin
{
if trim(E_name.Text) = '' then
begin
messagedlg(Errormsg0002, mtError, [mbok], 0);
E_name.SetFocus;
exit;
end;
if trim(E_type.Text) = '' then
begin
messagedlg(Errormsg0002, mtError, [mbok], 0);
E_name.SetFocus;
exit;
end;
if trim(E_ID.Text) = '' then
begin
messagedlg(Errormsg0002, mtError, [mbok], 0);
E_id.SetFocus;
exit;
end; }
if P_state = 0 then //增加数据
begin
with adoquery_data do
begin
close;
sql.Clear;
sql.Text := 'select * from goods where id="' + uppercase(E_id.Text) + '"';
try
open;
except
messagedlg(Errormsg0001 , mtError, [mbok], 0);
close;
self.Close;
end;
if RecordCount > 0 then //编号已存在
begin
messagedlg(Errormsg0003, mtError, [mbok], 0);
E_id.SetFocus;
close;
exit;
end
else //编号不存在则增加
begin
{with adoquery_data do
begin
close;
sql.Clear ;
sql.Text:='insert into goods (name,type,id,unit,price,sellprice,memo) values (:name,:type,:id,:unit,:price,:sellprice,:memo)';
Parameters.Items[0].Value :=e_name.Text ;
Parameters.Items[1].Value :=e_type.Text ;
Parameters.Items[2].Value :=e_id.Text ;
Parameters.Items[3].Value :=e_unit.Text ;
Parameters.Items[4].Value :=e_price.Text ;
Parameters.Items[5].Value :=e_sellprice.Text ;
Parameters.Items[6].Value :=e_memo.Text ;
prepared:=true;
execsql;
messagedlg('保存成功!', mtInformation, [mbok], 0);
self.Close;
end;
end;
end;}
with adoquery_data do
begin
close;
sql.Clear;
sql.Text:='insert into goods (name,type,id,unit,price,sellprice) values (:name,:type,:id,:unit,:price,:sellprice)';
Parameters.Items[0].Value :=e_name.Text ;
Parameters.Items[1].Value :=e_type.Text ;
Parameters.Items[2].Value :=e_id.Text ;
Parameters.Items[3].Value :=e_unit.Text ;
Parameters.Items[4].Value :=e_price.Text ;
Parameters.Items[5].Value :=e_sellprice.Text ;
Prepared:=true;
ExecSQL;
end;
end;
end;
end
else if P_state = 1 then //修改数据
begin
with adoquery_data do
begin
close;
sql.Clear ;
sql.Text := 'update goods set name=:name,type=:type,unit=:unit,price=:price,sellprice=:sellprice where id:='''+e_id.Text+''' ';
{sql.Add('insert into goods(name,type,id,unit,price,sellprice,memo)');
sql.Add('values(:name,:type,:id,:unit,:price,:sellprice,:memo)'); }
Parameters.Items[0].Value :=e_name.Text ;
Parameters.Items[1].Value :=e_type.Text ;
Parameters.Items[2].Value :=e_id.Text ;
Parameters.Items[3].Value :=e_unit.Text ;
Parameters.Items[4].Value :=e_price.Text ;
Parameters.Items[5].Value :=e_sellprice.Text ;
prepared:=true;
execsql;
messagedlg('保存成功!', mtInformation, [mbok], 0);
self.Close;
end;
end;
if P_state = 0 then //继续增加
begin
e_name.SetFocus;
e_type.Text := '';
e_unit.Text := '';
e_price.Text := '';
e_sellprice.Text := '';
end
else
self.Close;
end;
procedure TGoodsEdForm.FormShow(Sender: TObject);
var
B_find: boolean;
I_temp: integer;
begin
end;
procedure TGoodsEdForm.CancelBtnClick(Sender: TObject);
begin
self.Close;
end;
end .
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -