?? spjcxxgl.~pas
字號:
unit spjcxxgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, Buttons;
type
TForm7 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
Panel3: TPanel;
Label1: TLabel;
Label3: TLabel;
Label8: TLabel;
Label6: TLabel;
Label9: TLabel;
Label13: TLabel;
Edit10: TEdit;
Edit9: TEdit;
Label11: TLabel;
Edit8: TEdit;
Label10: TLabel;
Edit7: TEdit;
Edit6: TEdit;
Edit11: TEdit;
Label5: TLabel;
Edit5: TEdit;
Edit4: TEdit;
Edit2: TEdit;
Label2: TLabel;
Label4: TLabel;
Edit3: TEdit;
Edit1: TEdit;
procedure BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Panel2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure BitBtn3Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure EditClear;
Procedure DisableEdit;
procedure Edit7KeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);//數據初始化
procedure EditValue;
procedure Edit11KeyPress(Sender: TObject; var Key: Char);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit11KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit5KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit7KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit8KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit9KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit10KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);//為編輯框賦值
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
aa: Boolean = False ;//設置保存按鈕是否可用
implementation
uses data2;
{$R *.dfm}
procedure TForm7.BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Screen.Cursor := -21;
TBitBtn(Sender).Font.Color := clRed;
end;
procedure TForm7.Panel2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Screen.Cursor := -2;
BitBtn1.Font.Color := clBlue;
BitBtn2.Font.Color := clBlue;
BitBtn3.Font.Color := clBlue;
BitBtn4.Font.Color := clBlue;
BitBtn5.Font.Color := clBlue;
BitBtn6.Font.Color := clBlue;
BitBtn7.Font.Color := clBlue;
BitBtn8.Font.Color := clBlue;
end;
procedure TForm7.BitBtn3Click(Sender: TObject);
var
s,m: String;
i: integer;
begin
EditClear;
Edit7.Enabled := True;
Edit8.Enabled := True;
Edit9.Enabled := True;
aa := True;
BitBtn5.Enabled := False;
BitBtn6.Enabled := False;
s:= 'S'+ FormatDateTime('yyyymmdd',Now());
With Datam.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select max(商品編號) as ss From 商品基礎信息表 ');
Open;
end;
If Datam.ADOQuery1.FieldByName('ss').Value = null then
s := s + '001'
else
begin
m:= Trim(Datam.ADOQuery1.FieldByName('ss').Value) ;
i:= StrToInt(Trim(Copy(m,10,5))) ;
if i<9 then
s:= s + '00'+ InttoStr(i +1)
else if i<99 then
s:= s + '0'+ InttoStr(i +1)
else
s:= s +InttoStr(i +1);
end;
Edit1.Text := Trim(s);
Edit2.SetFocus;
end;
procedure TForm7.Edit1Change(Sender: TObject);
begin
if (Trim(Edit1.Text)<>'')and (Trim(Edit2.Text)<>'')and(Trim(Edit3.Text)<>'')and
(Trim(Edit4.Text)<>'') and(Trim(Edit5.Text)<>'')and(Trim(Edit6.Text)<>'')and
(Trim(Edit7.Text)<>'')and(Trim(Edit8.Text)<>'')and(Trim(Edit9.Text)<>'')and
(Trim(Edit10.Text)<>'')and(aa = True)then
BitBtn4.Enabled := True
else
BitBtn4.Enabled := False;
end;
procedure TForm7.BitBtn1Click(Sender: TObject);
begin
if Not Datam.ADOQuery2.Bof then
begin
Datam.ADOQuery2.Prior;
EditValue;
end
else
BitBtn1.Enabled := False;
BitBtn2.Enabled := True;
BitBtn5.Enabled := True;
DisableEdit;
BitBtn6.Enabled := True;
BitBtn4.Enabled := False;
end;
procedure TForm7.BitBtn2Click(Sender: TObject);
begin
if Not Datam.ADOQuery2.Eof then
begin
Datam.ADOQuery2.Next;
EditValue;
end
else
BitBtn2.Enabled := False;
BitBtn1.Enabled := True;
BitBtn5.Enabled := True;
DisableEdit;
BitBtn6.Enabled := True;
BitBtn4.Enabled := False;
end;
procedure TForm7.BitBtn5Click(Sender: TObject);
begin
Try
if Application.MessageBox('確實要修改該條記錄嗎?','提示',MB_YESNO )= ID_Yes then
begin
with Datam.ADOQuery2 do
begin
DisableEdit;
Edit;
BitBtn4.Enabled := False;
FieldByName('商品編號').Value := Edit1.Text;
FieldByName('商品名稱').Value := Edit2.Text ;
FieldByName('簡稱').Value := Edit3.Text;
FieldByName('規格').Value := Edit4.Text ;
FieldByName('產地').Value := Edit5.Text ;
FieldByName('單位').Value := Edit6.Text ;
FieldByName('保質期').Value := StrToInt(Trim(Edit11.Text)) ;
FieldByName('進價').Value := StrToFloat(Edit7.Text);
FieldByName('批發價').Value := StrToFloat(Edit8.Text) ;
FieldByName('零售價').Value := StrToFloat(Edit9.Text) ;
FieldByName('備注').Value := Edit10.Text ;
Post;
Application.MessageBox('修改成功。','提示',0+64);
end;
end
else
EditValue;
Except
Application.MessageBox('系統出錯。','提示',0+64);
Close;
end;
end;
procedure TForm7.BitBtn6Click(Sender: TObject);
begin
BitBtn4.Enabled := False;
Try
if Application.MessageBox('確實要刪除該條記錄嗎?','提示',MB_YESNO )= ID_Yes then
begin
with Datam.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('delete 商品基礎信息表 where 商品編號 = :a');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
ExecSQL;
end;
Application.MessageBox('該條記錄已經刪除。','提示',0+64);
OnShow(Sender);
end;
Except
Application.MessageBox('系統出錯。','提示',0+64);
Close;
end;
end;
procedure TForm7.BitBtn7Click(Sender: TObject);
begin
Self.OnShow(Sender);
BitBtn4.Enabled := False;
BitBtn6.Enabled := True;
BitBtn5.Enabled := True;
BitBtn2.Enabled := True;
DisableEdit;
end;
procedure TForm7.BitBtn4Click(Sender: TObject);
begin
With Datam.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 商品基礎信息表 where 商品編號 = :a');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
Open;
end;
if Datam.ADOQuery1.RecordCount > 0 then
begin
Application.MessageBox('該商品已經存在。','提示',0+64);
Exit;
end;
if StrToFloat(Trim(Edit8.Text))>StrToFloat(Trim(Edit9.Text))then
if Application.MessageBox('批發價確實要大于零售價嗎?','提示',MB_YESNO)<> ID_Yes then
Exit;
Try
With Datam.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('Insert 商品基礎信息表 values ( :a,:b,:c,:d,:e,:f,:h,:i,:j,:k,:m )');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
Parameters.ParamByName('b').Value := Trim(Edit2.Text);
Parameters.ParamByName('c').Value := Trim(Edit3.Text);
Parameters.ParamByName('d').Value := Trim(Edit4.Text);
Parameters.ParamByName('e').Value := Trim(Edit5.Text);
Parameters.ParamByName('f').Value := Trim(Edit6.Text);
Parameters.ParamByName('h').Value := StrToInt(Trim(Edit11.Text));
Parameters.ParamByName('i').Value := StrToFloat(Trim(Edit7.Text));
Parameters.ParamByName('j').Value := StrToFloat(Trim(Edit8.Text));
Parameters.ParamByName('k').Value := StrToFloat(Trim(Edit9.Text));
Parameters.ParamByName('m').Value := Trim(Edit10.Text);
ExecSQL;
end;
Application.MessageBox('保存成功。','提示',0+64);
BitBtn1.Enabled := True;
BitBtn2.Enabled := True;
self.OnShow(Sender);
Except
Application.MessageBox('系統出錯。','提示',0+64);
Close;
end;
end;
procedure TForm7.EditClear;
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit6.Clear;
Edit7.Clear;
Edit8.Clear;
Edit9.Clear;
Edit10.Clear;
Edit11.Clear;
end;
procedure TForm7.Edit7KeyPress(Sender: TObject; var Key: Char);
var
m: Boolean;
begin
m := (key <#8)or(Key>#8)and(key < #46)or(key>#46)and(key <#48)or(key > #57);
if m then
key := #0;
end;
procedure TForm7.FormShow(Sender: TObject);
begin
with Datam.ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 商品基礎信息表');
Open;
end;
If Datam.ADOQuery2.FieldByName('商品編號').Value = null then
begin
Application.MessageBox('該表數據為空,請向該表中插入數據。','提示',0+64);
BitBtn1.Enabled := False;
BitBtn2.Enabled := False;
BitBtn5.Enabled := False;
BitBtn6.Enabled := False;
BitBtn7.Enabled := False;
end
else
EditValue;
DisableEdit;
end;
procedure TForm7.EditValue;
begin
if Datam.ADOQuery2.FieldByName('商品編號').Value <> null then
begin
Edit1.Text := Datam.ADOQuery2.FieldByName('商品編號').Value;
Edit2.Text := Datam.ADOQuery2.FieldByName('商品名稱').Value;
Edit3.Text := Datam.ADOQuery2.FieldByName('簡稱').Value;
Edit4.Text := Datam.ADOQuery2.FieldByName('規格').Value;
Edit5.Text := Datam.ADOQuery2.FieldByName('產地').Value;
Edit6.Text := Datam.ADOQuery2.FieldByName('單位').Value;
Edit11.Text:= IntToStr(Datam.ADOQuery2.FieldByName('保質期').Value);
Edit7.Text := FloatToStr(Datam.ADOQuery2.FieldByName('進價').Value);
Edit8.Text := FloatToStr(Datam.ADOQuery2.FieldByName('批發價').Value);
Edit9.Text := FloatToStr(Datam.ADOQuery2.FieldByName('零售價').Value);
Edit10.Text := Datam.ADOQuery2.FieldByName('備注').Value;
end
else
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
Edit7.Clear;
Edit8.Clear;
Edit9.Clear;
Edit10.Clear;
Edit11.Clear;
end;
end;
procedure TForm7.Edit11KeyPress(Sender: TObject; var Key: Char);
var
m: Boolean;
begin
m := (key <#8)or(Key>#8)and(key <#48)or(key>#57);
if m then
key := #0;
end;
procedure TForm7.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit2.SetFocus;
end;
procedure TForm7.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit3.SetFocus;
if key = vk_up then
Edit1.SetFocus;
end;
procedure TForm7.Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit11.SetFocus;
if key = vk_up then
Edit3.SetFocus;
end;
procedure TForm7.Edit11KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit5.SetFocus;
if key = vk_up then
Edit4.SetFocus;
end;
procedure TForm7.Edit5KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit6.SetFocus;
if key = vk_up then
Edit11.SetFocus;
end;
procedure TForm7.Edit7KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit8.SetFocus;
if key = vk_up then
Edit6.SetFocus;
end;
procedure TForm7.Edit8KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit9.SetFocus;
if key = vk_up then
Edit7.SetFocus;
end;
procedure TForm7.Edit9KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit10.SetFocus;
if key = vk_up then
Edit8.SetFocus;
end;
procedure TForm7.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
Edit4.SetFocus;
if key = vk_up then
Edit2.SetFocus;
end;
procedure TForm7.Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_return)and(Edit7.Enabled = True) then
Edit7.SetFocus;
if key = vk_up then
Edit5.SetFocus;
end;
procedure TForm7.Edit10KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_up)and(Edit9.Enabled = True) then
Edit9.SetFocus;
end;
procedure TForm7.DisableEdit;
begin
Edit7.Enabled := False;
Edit8.Enabled := False;
Edit9.Enabled := False;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -