📄 xs.pas
字号:
ComboBox1.Items.Add(FieldByName('PartName').AsString);
Next;
end;
end;
end;
procedure TxsForm.ComboBox1Change(Sender: TObject);
//2ComboBox1的OnChange事件,主要完成在ComboBox2的Items里添加产品型号的功能
begin
ComboBox2.Text:='请选择';
ComboBox2.Items.Clear;
with DM.ADOStoredProc_PartType do
begin
Close;
Parameters[0].Value:=Trim(Combobox1.Text);
Open;
while not Eof do
begin
ComboBox2.Items.Add(FieldByName('PartType').AsString);
Next;
end;
end;
end;
procedure TxsForm.ComboBox2Change(Sender: TObject);
//3ComboBox2的OnChange事件,主要完成得到PartId(产品编号)的功能
begin
with DM.ADOStoredProc_PartId do
begin
Edit19.Clear;
Close;
Parameters[0].Value:=Trim(Combobox1.Text);
Parameters[1].Value:=Combobox2.Text;
Open;
if RecordCount>0 then
Edit19.Text:=FieldByName('PartId').AsString;
end;
Label133.Visible:=True; Edit19.Visible:=True;
Label4.Visible:=True; DBImage1.Visible:=True;
end;
procedure TxsForm.Button1Click(Sender: TObject);
//4库存查询按钮的OnClick事件,完成显示库存数量的功能
var label5cpt:string;
begin
if (ComboBox1.Text='') or (ComboBox1.Text='请选择') then
showmessage('请选择一种产品!')
else if (ComboBox2.Text='') or (ComboBox2.Text='请选择') then
showmessage('请选择产品的一种型号!')
else
with DM.ADOStoredProc_PartNumber do
begin
Close;
Parameters[0].Value:=Edit19.Text;
Open;
label5cpt:='配件名称:'+Trim(ComboBox1.Text);
label5cpt:=label5cpt+'、'+'配件型号:'+ComboBox2.Text;
label5cpt:=label5cpt+' 库存总数量为';
Label5.Width:=505;
Label5.Caption:=label5cpt+FieldByName('Number').AsString+'!!!!!!!!';
showmessage(label5cpt+FieldByName('Number').AsString);
end;
end;
procedure TxsForm.DBEdit3Exit(Sender: TObject);
//5DBEdit3(产品型号)的OnExit事件,完成对DBEdit1(产品编号)的自动编号
var
partid_auto,tempstr:string;
tempint:Integer;
begin
with DM.ADOStoredProc_PartId do
begin
Close;
Parameters[0].Value:=DBEdit2.Text;
Parameters[1].Value:=DBEdit3.Text;
Open;
end;
if DM.ADOStoredProc_PartId.RecordCount=0 then
if DBEdit2.Text='' then
begin
showmessage('请填写产品名称!');
DBEdit2.SetFocus;
end
else if DBEdit3.Text='' then
begin
showmessage('请填写产品型号!');
DBEdit3.SetFocus;
end
else
begin
DM.ADOQuery_xxxg.Close;
DM.ADOQuery_xxxg.SQL.Clear;
DM.ADOQuery_xxxg.SQL.Add('select * from PartName where PartName=:partname');
DM.ADOQuery_xxxg.SQL.Add('order by PartId desc');
DM.ADOQuery_xxxg.Parameters.ParamByName('partname').Value:=Trim(DBEdit2.Text);
DM.ADOQuery_xxxg.Open;
if DM.ADOQuery_xxxg.RecordCount>0 then
begin
partid_auto:=Copy(DM.ADOQuery_xxxg.FieldByName('PartId').AsString,1,2);
tempstr:=Copy(DM.ADOQuery_xxxg.FieldByName('PartId').AsString,3,3);
tempint:=StrToInt(tempstr);
tempint:=tempint+1;
if tempint<10 then
partid_auto:=partid_auto+'00'+IntToStr(tempint)
else if tempint<100 then
partid_auto:=partid_auto+'0'+IntToStr(tempint)
else if tempint<1000 then
partid_auto:=partid_auto+IntToStr(tempint);
DBEdit1.Text:=partid_auto;
end
else //DM.ADOQuery_xxxg.RecordCount=0
begin
DM.ADOQuery_xxxg.Close;
DM.ADOQuery_xxxg.SQL.Clear;
DM.ADOQuery_xxxg.SQL.Add('select * from PartName');
DM.ADOQuery_xxxg.SQL.Add('order by PartId desc');
DM.ADOQuery_xxxg.Open;
tempstr:=Copy(DM.ADOQuery_xxxg.FieldByName('PartId').AsString,1,2);
tempint:=StrToInt(tempstr);
tempint:=tempint+1;
if tempint<10 then
partid_auto:='0'+IntToStr(tempint)+'001'
else if tempint<100 then
partid_auto:=IntToStr(tempint)+'001';
DBEdit1.Text:=partid_auto;
end;
end;
end;
procedure TxsForm.Label10Click(Sender: TObject);
//8信息修改页面的修改图片LabelOnClick事件
begin
if OpenPictureDialog1.Execute then
begin
DM.XxQuery.Edit;
DBImage2.Picture.LoadFromFile(OpenPictureDialog1.FileName);
DM.XxQuery.Post;
end;
end;
procedure TxsForm.TabSheet3Enter(Sender: TObject);
//9产品报价页面的OnEnter事件
begin
ComboBox11.Items.Clear; ComboBox12.Items.Clear;
ComboBox13.Items.Clear;
ComboBox_cpmc.Items.Clear; ComboBox_cpxh.Items.Clear;
Edit17.Clear; Edit18.Clear;
with DM.ADOStoredProc_PartName do
begin
Close;
Open;
while not Eof do
begin
ComboBox_cpmc.Items.Add(FieldByName('PartName').AsString);
Next;
end;
end;
with DM.CpbjQuery0 do
begin
Close;
SQL.Clear;
SQL.Add('select EmpId from Employee,Department');
SQL.Add('where Employee.DepId=Department.DepId');
SQL.Add('and Department.DepName=:dname001');
Parameters.ParamByName('dname001').Value:='销售部';
Open;
while not Eof do
begin
ComboBox11.Items.Add(FieldByName('EmpId').AsString);
ComboBox13.Items.Add(FieldByName('EmpId').AsString);
Next;
end;
end;
end;
procedure TxsForm.ComboBox_cpmcChange(Sender: TObject);
//10产口报价页面的产品名称ComboBox的OnChange事件
begin
ComboBox_cpxh.Clear;
with DM.ADOStoredProc_PartType do
begin
Close;
Parameters[0].Value:=Trim(ComboBox_cpmc.Text);
Open;
while not Eof do
begin
ComboBox_cpxh.Items.Add(FieldByName('PartType').AsString);
Next;
end;
end;
end;
procedure TxsForm.ComboBox_cpxhChange(Sender: TObject);
//11产口报价页面的产品型号ComboBox的OnChange事件
begin
with DM.ADOStoredProc_PartId do
begin
Close;
Parameters[0].Value:=Trim(ComboBox_cpmc.Text);
Parameters[1].Value:=ComboBox_cpxh.Text;
Open;
if RecordCount>0 then
Edit_cpbh.Text:=FieldByName('PartId').AsString;
end;
end;
procedure TxsForm.BitBtnlurubaojiaClick(Sender: TObject);
//12产品报价页面的录入报价按钮的OnClick事件
var message0:string;
begin
if Trim(ComboBox_cpmc.Text)='' then
//如果产品名称为空
begin
showmessage('产品名称不能为空!');
ComboBox_cpmc.SetFocus;
end
else if Trim(ComboBox_cpxh.Text)='' then
//如果产品型号为空
begin
showmessage('产品型号不能为空!');
ComboBox_cpxh.SetFocus;
end
else if Trim(Edit18.Text)='' then
//如果产品报价为空
begin
showmessage('产品报价不能为空!');
Edit18.SetFocus;
end
else if Trim(ComboBox11.Text)='' then
//如果报价员号为空
begin
showmessage('报价员号不能为空!');
ComboBox11.SetFocus;
end
else
begin
with DM.CpbjQuery0 do
begin
Close;
SQL.Clear;
SQL.Add('select * from BaoJia');
SQL.Add('where PartId=:partid002 and PriceDate=:pricedate002');
Parameters.ParamByName('partid002').Value:=Edit_cpbh.Text;
Parameters.ParamByName('pricedate002').Value:=DateTimePickerbjrq.Date;
Open;
if RecordCount>0 then
//如果已经存在该产品当天的报价记录
begin
message0:='已存在配件编号为'+Edit_cpbh.Text;
message0:=message0+ '报价日期为'+DateToStr(DateTimePickerbjrq.Date)+'的记录!';
showmessage(message0);
end
else
//如果不存在该产品当天的报价记录
begin
Close;
SQL.Clear;
SQL.Add('select * from BaoJia');
Open;
Append;
FieldValues['PartId']:=Edit_cpbh.Text;
FieldValues['PriceDate']:=DateTimePickerbjrq.Date;
FieldValues['BaoPrice']:=Trim(Edit18.Text);
FieldValues['EmpId']:=Trim(ComboBox11.Text);
Post;
showmessage('录入报价成功!');
end;
end;
end;
end;
procedure TxsForm.BitBtn13Click(Sender: TObject);
//14产品报价页面中的开始查询按钮的OnClick事件
begin
with DM.CpbjQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select PartId as 配件编号,PriceDate as 报价日期,');
SQL.Add('BaoPrice as 配件报价,EmpId as 报价员号 from BaoJia ');
SQL.Add('where Pricedate >= :pricedate2 and Pricedate <= :pricedate3 ');
Parameters.ParamByName('pricedate2').Value:=DateTimePickerBjrq2.Date;
Parameters.ParamByName('pricedate3').Value:=DateTimePickerBjrq3.Date;
//采用两个DateTimePicker控件来提取时间,且报价时间是必不可少的查询条件
if Trim(ComboBox12.Text)<>'' then
//如果产品编号不为空
begin
SQL.Add('and PartId=:partid003 ');
Parameters.ParamByName('partid003').Value:=Trim(ComboBox12.Text);
end;
if Trim(ComboBox13.Text)<>'' then
//如果报价员号不为空
begin
SQL.Add('and EmpId=:empid003 ');
Parameters.ParamByName('empid003').Value:=Trim(ComboBox13.Text);
end;
Open;
if RecordCount=0 then
//如果符合查询条件的记录数为零
showmessage('没有查找到符合条件的记录!');
end;
end;
procedure TxsForm.BitBtn5Click(Sender: TObject);
//17销售录入页面的全部提交按钮的OnClick事件
begin
if Editxm.Text='' then
begin
showmessage('顾客姓名不能为空!');
Editxm.SetFocus;
end
else if ComboBoxxb.Text='' then
begin
showmessage('顾客性别不能为空!');
ComboBoxxb.SetFocus;
end
else if Editxsqdbh.Text='' then
begin
showmessage('销售清单编号不能为空!');
Editxsqdbh.SetFocus;
end
else if ComboBoxxsygbh.Text='' then
begin
showmessage('销售员工编号不能为空!');
ComboBoxxsygbh.SetFocus;
end
else
begin
with DM.SellerTable do
//对销售总单表添加记录
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('EmpId').Value:=ComboBoxxsygbh.Text;
FieldByName('Customer').Value:=Editxm.Text;
FieldByName('CustSex').Value:=ComboBoxxb.Text;
FieldByName('CustPhone').Value:=Editdh.Text;
FieldByName('CustAddress').Value:=Editdz.Text;
FieldByName('Total').Value:=Editxsjezj.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
Post;
end;
with DM.SellerPartsTable do
//对销售明细表添加记录
begin
if (Editsl.Text<>'') and (Editsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='品牌机';
FieldByName('PartType').Value:=ComboBoxxh.Text;
FieldByName('SellerNumber').Value:=Editsl.Text;
FieldByName('SellPrice').Value:=Editjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editqx.Text;
Post;
end;
if (Editcpusl.Text<>'') and (Editcpusl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='CPU';
FieldByName('PartType').Value:=ComboBoxcpuxh.Text;
FieldByName('SellerNumber').Value:=Editcpusl.Text;
FieldByName('SellPrice').Value:=Editcpujg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editcpuqx.Text;
Post;
end;
if (Editzbsl.Text<>'') and (Editzbsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='主板';
FieldByName('PartType').Value:=ComboBoxzbxh.Text;
FieldByName('SellerNumber').Value:=Editzbsl.Text;
FieldByName('SellPrice').Value:=Editzbjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editzbqx.Text;
Post;
end;
if (Editypsl.Text<>'') and (Editypsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='硬盘';
FieldByName('PartType').Value:=ComboBoxypxh.Text;
FieldByName('SellerNumber').Value:=Editypsl.Text;
FieldByName('SellPrice').Value:=Editypjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editypqx.Text;
Post;
end;
if (Editjxsl.Text<>'') and (Editjxsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='机箱';
FieldByName('PartType').Value:=ComboBoxjxxh.Text;
FieldByName('SellerNumber').Value:=Editjxsl.Text;
FieldByName('SellPrice').Value:=Editjxjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editjxqx.Text;
Post;
end;
if (Editxsqsl.Text<>'') and (Editxsqsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='显示器';
FieldByName('PartType').Value:=ComboBoxxsqxh.Text;
FieldByName('SellerNumber').Value:=Editxsqsl.Text;
FieldByName('SellPrice').Value:=Editxsqjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editxsqqx.Text;
Post;
end;
if (Editdysl.Text<>'') and (Editdysl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='电源';
FieldByName('PartType').Value:=ComboBoxdyxh.Text;
FieldByName('SellerNumber').Value:=Editdysl.Text;
FieldByName('SellPrice').Value:=Editdyjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editdyqx.Text;
Post;
end;
if (Editgqsl.Text<>'') and (Editgqsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='光驱';
FieldByName('PartType').Value:=ComboBoxgqxh.Text;
FieldByName('SellerNumber').Value:=Editgqsl.Text;
FieldByName('SellPrice').Value:=Editgqjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editgqqx.Text;
Post;
end;
if (Editjpsl.Text<>'') and (Editjpsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
FieldByName('PartName').Value:='键盘';
FieldByName('PartType').Value:=ComboBoxjpxh.Text;
FieldByName('SellerNumber').Value:=Editjpsl.Text;
FieldByName('SellPrice').Value:=Editjpjg.Text;
FieldByName('DateTime').Value:=DateTimePickerRQ.Date;
FieldByName('RepairPeriod').Value:=Editjpqx.Text;
Post;
end;
if (Editsbsl.Text<>'') and (Editsbsl.Text<>'0') then
begin
Open;
Append;
FieldByName('SellerId').Value:=Editxsqdbh.Text;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -