📄 sell.pas
字号:
unit Sell;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, RVClass,RVProj,RVCsStd,StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids,
ComCtrls;
type
TSellFrm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Button3: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label8: TLabel;
Label7: TLabel;
Label5: TLabel;
Label6: TLabel;
Label9: TLabel;
Label10: TLabel;
Label4: TLabel;
Label11: TLabel;
Edit1: TEdit;
Edit2: TEdit;
DBComboBox1: TDBComboBox;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Button1: TButton;
DBComboBox2: TDBComboBox;
DBComboBox3: TDBComboBox;
Button2: TButton;
Button4: TButton;
TabSheet2: TTabSheet;
GroupBox2: TGroupBox;
RadioButton1: TRadioButton;
Edit4: TEdit;
RadioButton2: TRadioButton;
Edit5: TEdit;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Button5: TButton;
Button6: TButton;
Edit3: TEdit;
GroupBox3: TGroupBox;
DBGrid2: TDBGrid;
DBNavigator2: TDBNavigator;
Button7: TButton;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
ADOTable1: TADOTable;
ADOQuery2: TADOQuery;
DataSource2: TDataSource;
ADOTable2: TADOTable;
DateTimePicker1: TDateTimePicker;
procedure FormCreate(Sender: TObject);
procedure TabSheet1Show(Sender: TObject);
procedure DBComboBox2Change(Sender: TObject);
procedure DBComboBox3Change(Sender: TObject);
procedure DBEdit4Change(Sender: TObject);
procedure DBEdit5Change(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure TabSheet2Show(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SellFrm: TSellFrm;
implementation
uses Main;
{$R *.dfm}
procedure TSellFrm.FormCreate(Sender: TObject);
begin
pagecontrol1.activepage:=tabsheet1;
ADOtable1.first;
while not ADOtable1.eof do
begin
dbcombobox1.items.insert(-1,ADOtable1.fieldbyname('CustomerName').asstring);
ADOtable1.Next;
end;
dbcombobox1.items.insert(-1,'零售散户');
ADOtable2.first;
while not ADOtable2.eof do
begin
dbcombobox2.items.insert(-1,ADOtable2.fieldbyname('ProductName').asstring);
dbcombobox3.items.insert(-1,ADOtable2.fieldbyname('ProductCode').asstring);
ADOtable2.Next;
end;
end;
procedure TSellFrm.TabSheet1Show(Sender: TObject);
begin
edit2.text:=datetostr(Date);
end;
procedure TSellFrm.DBComboBox2Change(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select * from Product where ProductName='+''''+DBComboBox2.text+'''');
open;
first;
DBComboBox3.text:=fieldbyname('ProductCode').asstring;
DBEdit1.text:=fieldbyname('Spec').asstring;
DBEdit2.text:=fieldbyname('Unit').asstring;
DBEdit3.text:=fieldbyname('RFSellPrice').asstring;
end;
end;
procedure TSellFrm.DBComboBox3Change(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select * from Product where ProductCode='+''''+DBComboBox3.text+'''');
open;
first;
DBComboBox2.text:=fieldbyname('ProductName').asstring;
DBEdit1.text:=fieldbyname('Spec').asstring;
DBEdit2.text:=fieldbyname('Unit').asstring;
DBEdit3.text:=fieldbyname('RFStockPrice').asstring;
end;
end;
procedure TSellFrm.DBEdit4Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TSellFrm.DBEdit5Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TSellFrm.Button2Click(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select top 1 * from Sell order by SellID desc');
open;
first;
if fieldbyname('SellDate').asstring=datetostr(Date) then
edit1.text:=floattostr(fieldbyname('SellID').asfloat+1)
else
edit1.text:=floattostr(strtofloat(formatdatetime('yyyy""mm""dd',Date))*10000+1);
end;
with ADOQuery1 do
begin
close;
sql.clear;
sql.add('select * from Sell where SellID='+''''+edit1.text+'''');
open;
first;
end;
end;
procedure TSellFrm.Button1Click(Sender: TObject);
begin
if dbcombobox1.text='' then
showmessage('请选择客户!')
else
if dbcombobox2.text='' then
showmessage('请选择销售货品!')
else
if dbedit4.text='' then
showmessage('请填写销售数量!')
else
if dbedit5.text='' then
showmessage('请填写销售单价!')
else
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('insert into Sell (SellID,SellDate,CustomerName,ProductName,');
sql.add('ProductCode,Spec,Unit,RFSellPrice,UnitPrice,Quantity,Payment)values (' );
sql.add(''''+edit1.text+''''+','+''''+edit2.text+''''+',');
sql.add(''''+dbcombobox1.text+''''+','+''''+dbcombobox2.text+''''+',');
sql.add(''''+dbcombobox3.text+''''+','+''''+dbedit1.text+''''+',');
sql.add(''''+dbedit2.text+''''+','+''''+dbedit3.text+''''+',');
sql.add(''''+dbedit4.text+''''+','+''''+dbedit5.text+''''+',');
sql.add(''''+dbedit6.text+''''+')');
execsql;
end;
with ADOQuery1 do
begin
close;
sql.clear;
sql.add('select * from Sell where SellID='+''''+edit1.text+'''');
open;
first;
end;
showmessage('此货品销售成功!');
end;
end;
procedure TSellFrm.Button4Click(Sender: TObject);
begin
SellFrm.hide;
end;
procedure TSellFrm.Button6Click(Sender: TObject);
begin
SellFrm.hide;
end;
procedure TSellFrm.Button5Click(Sender: TObject);
var query:string;
begin
query:='';
if Radiobutton1.checked=true then
if edit3.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from Sell where Sell ID like'+''''+'%'+edit3.text+'%'+'''';
if Radiobutton2.checked=true then
if edit4.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from Sell where CustomerName like'+''''+'%'+edit4.text+'%'+''''+'order by SellID desc';
if Radiobutton3.checked=true then
query:='select * from Sell where SellDate ='+''''+datetostr(DateTimePicker1.date)+''''+'order by SellID desc';
if Radiobutton4.checked=true then
if edit5.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from Sell where ProductName like'+''''+'%'+edit5.text+'%'+''''+'order by SellID desc';
if query<>'' then
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add(query);
open;
first;
if recordcount=0 then
showmessage('对不起,没有符合条件的查询结果!请重新查询!')
else
Groupbox3.caption:='查询结果共'+floattostr(recordcount)+'条记录'
end;
end;
end;
procedure TSellFrm.TabSheet2Show(Sender: TObject);
begin
DateTimePicker1.date:=date;
radiobutton1.checked:=true;
end;
procedure TSellFrm.Button3Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('SellReport');
MainFrm.RvProject1.Close;
end;
procedure TSellFrm.Button7Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('SellQueryReport');
MainFrm.RvProject1.Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -