📄 pas_seller.pas
字号:
unit pas_seller;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls, ComCtrls, Buttons, ToolWin;
type
TForm_seller = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label9: TLabel;
ToolBar1: TToolBar;
select: TSpeedButton;
ToolButton5: TToolButton;
add: TSpeedButton;
ToolButton3: TToolButton;
selecteveryth: TSpeedButton;
ToolButton7: TToolButton;
valid: TSpeedButton;
ToolButton1: TToolButton;
unValid: TSpeedButton;
ToolButton2: TToolButton;
setUnvalid: TSpeedButton;
ToolButton4: TToolButton;
setvalid: TSpeedButton;
Edit_no: TEdit;
Edit_name: TEdit;
Edit_phone: TEdit;
Edit_tel: TEdit;
Edit_addr: TEdit;
Edit_remarks: TEdit;
DBGrid: TDBGrid;
Label3: TLabel;
cb_bm: TComboBox;
procedure cb_bmDropDown(Sender: TObject);
procedure selecteverything();
procedure selectvalid();
procedure selectunvalid();
procedure selectClick(Sender: TObject);
procedure addClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure selecteverythClick(Sender: TObject);
procedure validClick(Sender: TObject);
procedure unValidClick(Sender: TObject);
procedure setUnvalidClick(Sender: TObject);
procedure setvalidClick(Sender: TObject);
procedure DBGridCellClick(Column: TColumn);
procedure DBGridDblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_seller: TForm_seller;
implementation
uses Pas_DM;
{$R *.dfm}
procedure TForm_seller.cb_bmDropDown(Sender: TObject);
var
s:string;
begin
try
with dm.AQ1 do
begin
close;
sql.Clear;
s:='select dp_name from depart';
sql.Add(s);
open;
end;
cb_bm.Items.Clear;
while not dm.AQ1.Eof do
begin
cb_bm.Items.Add(dm.AQ1.Fields.Fields[0].AsString);
dm.AQ1.Next;
end;
except
showmessage('something wrong');
end;
end;
procedure TForm_seller.selecteverything;
begin
with pas_dm.DM.Query_seller do
begin
close;
sql.Clear;
sql.Add('select s_no 销售员编号,s_name 销售员姓名,s_phone 销售员手机,s_tel 销售员电话,s_depart 销售员所属部门,s_addr 销售员地址,s_remarks 销售员备注 from seller ');
open;
end;
end;
procedure TForm_seller.selectunvalid;
begin
with pas_dm.DM.Query_seller do
begin
close;
sql.Clear;
sql.Add('select s_no 销售员编号,s_name 销售员姓名,s_phone 销售员手机,s_tel 销售员电话,s_depart 销售员所属部门,s_addr 销售员地址,s_remarks 销售员备注 from seller where s_validorno=0 ');
open;
end;
end;
procedure TForm_seller.selectvalid;
begin
with pas_dm.DM.Query_seller do
begin
close;
sql.Clear;
sql.Add('select s_no 销售员编号,s_name 销售员姓名,s_phone 销售员手机,s_tel 销售员电话,s_depart 销售员所属部门,s_addr 销售员地址,s_remarks 销售员备注 from seller where s_validorno=1');
open;
end;
end;
procedure TForm_seller.selectClick(Sender: TObject);
var
s:string;
begin
if(trim(edit_name.Text)<>'') then
begin
s:= ' where s_name like ''%'+trim(edit_name.Text)+'%'' ';
end
else
begin
s:='';
end;
with pas_dm.DM.Query_seller do
begin
close;
sql.Clear;
sql.Add(' select s_no as 销售员编号,'+
' s_name as 销售员姓名 ,'+
' s_phone as 手机,'+
' s_tel as 电话,'+
' s_depart as 所属部门,'+
' s_addr as 地址,'+
' s_remarks as 备注'+
' from seller '+s);
open;
end;
end;
procedure TForm_seller.addClick(Sender: TObject);
var
s:string;
begin
if (edit_no.Text='') or (edit_name.Text='') or (edit_phone.Text='')
then
begin
showmessage('编号/中文名/手机不能为空');
exit;
end;
with pas_dm.DM.Query_seller do
begin
try
with pas_dm.DM.Query_seller do
begin
Close;
SQL.Clear;
s:='insert into seller(s_no,s_name,s_ename,s_tel,s_phone,s_addr,s_remarks,s_validorno,s_depart) values('''+trim(edit_no.Text)+''','''+
edit_name.Text+''','''','''+edit_phone.Text+''','''+
edit_tel.Text+''','''+edit_addr.Text+''','''+edit_remarks.Text+''',1,'''+
cb_bm.Text+''')';
SQL.Add(s);
ExecSQL;
showmessage('添加 '+edit_name.Text+' 成功!');
end;
except
showmessage('添加'+edit_name.Text+'失败!可能是编号重复');
end;
selectvalid;
end;
end;
procedure TForm_seller.FormShow(Sender: TObject);
begin
selectvalid;
end;
procedure TForm_seller.selecteverythClick(Sender: TObject);
begin
selecteverything;
end;
procedure TForm_seller.validClick(Sender: TObject);
begin
selectvalid;
end;
procedure TForm_seller.unValidClick(Sender: TObject);
begin
selectunvalid;
end;
procedure TForm_seller.setUnvalidClick(Sender: TObject);
var
s:string;
begin
with pas_dm.DM.Query_seller do
begin
if IDOK=messagebox(handle,pchar('编号为 '+dbgrid.Fields[0].AsString+' 的销售员将被设为无效'),'警告', MB_OKCANCEL)
then
begin
try
s:=dbgrid.Fields[0].AsString;
Close;
SQL.Clear;
SQL.Add('update seller set s_validorno=0 where s_no='''+s+'''');
ExecSQL;
except
showmessage('出错');
end;
if RowsAffected=1 then
begin
showmessage(s+'设置无效成功');
end;
end;
end;
selectvalid();
end;
procedure TForm_seller.setvalidClick(Sender: TObject);
var
s:string;
begin
with pas_dm.DM.Query_seller do
begin
if IDOK=messagebox(handle,pchar('编号为 '+dbgrid.Fields[0].AsString+' 的销售员将被设为无效'),'警告', MB_OKCANCEL)
then
begin
try
s:=dbgrid.Fields[0].AsString;
Close;
SQL.Clear;
SQL.Add('update seller set s_validorno=1 where s_no='''+s+'''');
ExecSQL;
except
showmessage('出错');
end;
if RowsAffected=1 then
begin
showmessage(s+'设置无效成功');
end;
end;
end;
selectvalid();
end;
procedure TForm_seller.DBGridCellClick(Column: TColumn);
begin
with pas_dm.DM.Query_seller do
begin
if dbgrid.FieldCount=0 then
begin
showmessage('没有打开数据库');
exit;
end;
if dbgrid.Fields[0].AsString='' then
begin
showmessage('数据库没有数据');
exit;
end;
edit_no.Text:=Fields.Fields[0].AsString;
edit_name.Text:=Fields.Fields[1].AsString;
edit_phone.Text:=Fields.Fields[2].AsString;
edit_tel.Text:=Fields.Fields[3].AsString;
cb_bm.Text:=Fields.Fields[4].AsString;
edit_addr.Text:=Fields.Fields[5].AsString;
edit_remarks.Text:=Fields.Fields[6].AsString;
end;
end;
procedure TForm_seller.DBGridDblClick(Sender: TObject);
var
s: string;
begin
with pas_dm.DM.Query_seller do
begin
if dbgrid.FieldCount=0 then
begin
showmessage('没有打开数据库');
exit;
end;
if dbgrid.Fields[0].AsString='' then
begin
showmessage('数据库没有数据');
exit;
end;
s:= dbgrid.Fields[0].AsString;
end;
with pas_dm.DM.AQ1 do
begin
close;
sql.Clear;
sql.Add('select s_name,valid= case s_validorno when ''1'' then ''有效'' else ''无效'' end from seller where s_no='''+trim(s)+'''');
open;
showmessage(trim(dm.AQ1.Fields.Fields[0].AsString)+' 是'+dm.AQ1.Fields.Fields[1].AsString+'的');
close;
sql.Clear;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -