📄 p_sp.pas
字号:
unit p_sp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,p_mc, StdCtrls, Buttons, Grids, DBGrids, DBCtrls, SUIDBCtrls,
Mask, ExtCtrls;
type
Tf_sp = class(Tf_mc)
Bevel1: TBevel;
PAN: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label5: TLabel;
Label9: TLabel;
sph: TsuiDBEdit;
spm: TsuiDBEdit;
spfl: TsuiDBLookupComboBox;
spxh: TsuiDBLookupComboBox;
suiDBMemo1: TsuiDBMemo;
DBGrid1: TDBGrid;
b_add: TBitBtn;
b_edit: TBitBtn;
b_save: TBitBtn;
b_del: TBitBtn;
b_cancel: TBitBtn;
b_exit: TBitBtn;
Label4: TLabel;
procedure b_addClick(Sender: TObject);
procedure b_editClick(Sender: TObject);
procedure b_delClick(Sender: TObject);
procedure b_saveClick(Sender: TObject);
procedure b_cancelClick(Sender: TObject);
procedure b_exitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_sp: Tf_sp;
implementation
uses p_dm,db,p_gl;
{$R *.dfm}
procedure Tf_sp.b_addClick(Sender: TObject);
var
i,j:integer;
s:string;
begin
inherited;
i:=0;
dm.T_sp.Requery;
dm.T_sp.Filtered:=false;
if dm.T_sp.RecordCount<>0 then
begin
dm.T_sp.Last;
i:=dm.T_sp['sph'];
end;
s:=inttostr(i+1);
for j:=1 to 6-length(s) do
begin
s:='0'+s;
end;
dm.T_sp.Append;
dm.t_sp['sph']:=s;
if dm.T_spfl.RecordCount<>0 then
begin
dm.T_SPFL.First;
dm.t_sp['spflh']:=dm.t_spfl['spflh'];
end;
if dm.T_spxh.RecordCount<>0 then
begin
dm.T_SPXH.First;
dm.t_sp['xhh']:=dm.t_spxh['xhh'];
end;
b_add.Enabled:=false;
b_edit.Enabled:=false;
b_del.Enabled:=false;
b_save.Enabled:=true;
b_cancel.Enabled:=true;
pan.Enabled:=true;
pan.Font.Color:=$00990000;
spm.SetFocus;
end;
procedure Tf_sp.b_editClick(Sender: TObject);
begin
inherited;
dm.T_sp.edit;
b_edit.Enabled:=false;
b_add.Enabled:=false;
b_del.Enabled:=false;
b_save.Enabled:=true;
b_cancel.Enabled:=true;
pan.Enabled:=true;
pan.Font.Color:=$00990000;
spm.SetFocus;
end;
procedure Tf_sp.b_delClick(Sender: TObject);
begin
inherited;
if application.MessageBox('您确认删除该记录吗?','提问',mb_yesno+mb_iconquestion)=idno then
begin
exit;
end;
try
dm.T_sp.Delete;
except
application.MessageBox('数据库删除不成功!','数据删除失败',mb_ok+mb_iconstop);
end;
dm.T_sp.Filtered:=false;
dm.Query.Close;
dm.Query.Open;
dbgrid1.OnCellClick(dbgrid1.Columns.Items[dbgrid1.SelectedRows.count]);
end;
procedure Tf_sp.b_saveClick(Sender: TObject);
begin
inherited;
if (trim(sph.Text)='')or(trim(spfl.Text)='')or(trim(spxh.Text)='')or(trim(spm.Text)='') then
begin
application.MessageBox('商品编号、分类、型号必须输入!','提示',mb_ok+mb_iconinformation);
exit;
end;
try
dm.T_sp.post;
except
application.MessageBox('数据库增加或修改不成功!','提交数据失败',mb_ok+mb_iconstop);
end;
b_add.Enabled:=true;
b_edit.Enabled:=true;
b_del.Enabled:=true;
b_save.Enabled:=false;
b_cancel.Enabled:=false;
pan.Enabled:=false;
pan.Font.Color:=clwindowtext;
dm.Query.Close;
dm.Query.Open;
dbgrid1.OnCellClick(dbgrid1.Columns.Items[dbgrid1.SelectedRows.count]);
end;
procedure Tf_sp.b_cancelClick(Sender: TObject);
begin
inherited;
dm.T_sp.cancel;
b_add.Enabled:=true;
b_edit.Enabled:=true;
b_del.Enabled:=true;
b_save.Enabled:=false;
b_cancel.Enabled:=false;
pan.Enabled:=false;
pan.Font.Color:=clwindowtext;
end;
procedure Tf_sp.b_exitClick(Sender: TObject);
begin
inherited;
close;
end;
procedure Tf_sp.FormCreate(Sender: TObject);
begin
inherited;
with dm do
begin
t_sp.Open;
t_spfl.Open;
t_spxh.Open;
QUERY.SQL.Clear;
QUERY.SQL.Add('select * from sp_info,spfl_info,spxh_info where sp_info.spflh=spfl_info.spflh AND sp_info.xhh=spxh_info.xhh');
Query.Open;
end;
end;
procedure Tf_sp.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
dm.t_sp.Cancel;
if dm.Query.RecordCount<>0 then
psph:=dm.query['sph']
else psph:='';
dm.Query.Close;
dm.t_sp.Close;
dm.T_SPFL.Close;
dm.T_SPXH.Close;
end;
procedure Tf_sp.DBGrid1CellClick(Column: TColumn);
begin
inherited;
with dm do
begin
b_cancel.OnClick(self);
t_sp.Filter:='sph='''+query['sph']+'''';
t_sp.Filtered:=true;
// t_ffry.Filtered:=false;
end;
end;
procedure Tf_sp.DBGrid1DblClick(Sender: TObject);
begin
inherited;
if sjsp then
begin
close;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -