ypxs.pas
来自「完整的delphi书籍源代码,大家有空的时候自己慢慢看看」· PAS 代码 · 共 289 行
PAS
289 行
unit YPXS;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, RVClass,RVProj,RVCsStd,StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids,
ComCtrls;
type
TYPXSFrm = 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;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
DBComboBox1: TDBComboBox;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Button1: TButton;
Button2: TButton;
Button4: TButton;
TabSheet2: TTabSheet;
GroupBox2: TGroupBox;
RadioButton1: TRadioButton;
Edit4: TEdit;
RadioButton2: TRadioButton;
Edit5: TEdit;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Edit6: TEdit;
Edit7: TEdit;
Button5: TButton;
Button6: TButton;
GroupBox3: TGroupBox;
DBGrid2: TDBGrid;
DBNavigator2: TDBNavigator;
Button7: TButton;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
ADOTable1: TADOTable;
ADOQuery2: TADOQuery;
DataSource2: TDataSource;
procedure FormCreate(Sender: TObject);
procedure TabSheet1Show(Sender: TObject);
procedure TabSheet2Show(Sender: TObject);
procedure DBComboBox1Change(Sender: TObject);
procedure DBEdit4Change(Sender: TObject);
procedure DBEdit5Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
YPXSFrm: TYPXSFrm;
implementation
uses Login, Main;
{$R *.dfm}
procedure TYPXSFrm.FormCreate(Sender: TObject);
begin
ADOtable1.first;
while not ADOtable1.eof do
begin
dbcombobox1.items.insert(-1,ADOtable1.fieldbyname('YPMC').asstring);
ADOtable1.Next;
end;
pagecontrol1.activepage:=tabsheet1;
end;
procedure TYPXSFrm.TabSheet1Show(Sender: TObject);
begin
edit2.text:=datetostr(Date);
edit3.text:=LoginFrm.edit1.Text;
end;
procedure TYPXSFrm.TabSheet2Show(Sender: TObject);
begin
edit6.Text:=datetostr(date);
radiobutton1.checked:=true;
end;
procedure TYPXSFrm.DBComboBox1Change(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select * from YPXX where YPMC='+''''+DBComboBox1.text+'''');
open;
first;
DBEdit1.text:=fieldbyname('YPBH').asstring;
DBEdit2.text:=fieldbyname('YPLB').asstring;
DBEdit3.text:=fieldbyname('JLDW').asstring;
end;
end;
procedure TYPXSFrm.DBEdit4Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TYPXSFrm.DBEdit5Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TYPXSFrm.Button1Click(Sender: TObject);
begin
if dbedit4.text='' then
showmessage('请填写销售数量!')
else
if dbedit5.text='' then
showmessage('请填写销售单价!')
else
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('insert into YPXS (XSDH,XSRQ,JSR,YPMC,YPBH,YPLB,JLDW,XSSL,XSDJ,ZSJE)values (' );
sql.add(''''+edit1.text+''''+','+''''+edit2.text+''''+',');
sql.add(''''+edit3.text+''''+','+''''+dbcombobox1.text+''''+',');
sql.add(''''+dbedit1.text+''''+','+''''+dbedit2.text+''''+',');
sql.add(''''+dbedit3.text+''''+','+''''+dbedit4.text+''''+',');
sql.add(''''+dbedit5.text+''''+','+''''+dbedit6.text+''''+')');
execsql;
end;
with ADOQuery1 do
begin
close;
sql.clear;
sql.add('select * from YPXS where XSDH='+''''+edit1.text+'''');
open;
first;
end;
showmessage('此条记录保存成功!');
end;
end;
procedure TYPXSFrm.Button2Click(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select top 1 * from YPXS order by XSDH desc');
open;
first;
if fieldbyname('XSRQ').asstring=datetostr(Date) then
edit1.text:=floattostr(fieldbyname('XSDH').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 YPXS where XSDH='+''''+edit1.text+'''');
open;
first;
DBgrid1.Columns[0].FieldName:='YPBH';
DBgrid1.Columns[1].FieldName:='YPMC';
DBgrid1.Columns[2].FieldName:='YPLB';
DBgrid1.Columns[3].FieldName:='JLDW';
DBgrid1.Columns[4].FieldName:='XSSL';
DBgrid1.Columns[5].FieldName:='XSDJ';
DBgrid1.Columns[6].FieldName:='ZSJE';
end;
end;
procedure TYPXSFrm.Button4Click(Sender: TObject);
begin
YPXSFrm.hide;
end;
procedure TYPXSFrm.Button6Click(Sender: TObject);
begin
YPXSFrm.hide;
end;
procedure TYPXSFrm.Button5Click(Sender: TObject);
var query:string;
begin
query:='';
if Radiobutton1.checked=true then
if edit4.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXS where XSDH like'+''''+'%'+edit4.text+'%'+'''';
if Radiobutton2.checked=true then
if edit5.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXS where JSR like'+''''+'%'+edit5.text+'%'+''''+'order by XSDH desc';
if Radiobutton3.checked=true then
if edit6.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXS where XSRQ ='+''''+edit6.text+''''+'order by XSDH desc';
if Radiobutton4.checked=true then
if edit7.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXS where YPMC like'+''''+'%'+edit7.text+'%'+''''+'order by XSDH desc';
if query<>'' then
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add(query);
open;
first;
if recordcount=0 then
showmessage('对不起,没有符合条件的查询结果!请重新查询!')
else
begin
DBgrid2.Columns[0].FieldName:='XSDH';
DBgrid2.Columns[1].FieldName:='YPBH';
DBgrid2.Columns[2].FieldName:='YPMC';
DBgrid2.Columns[3].FieldName:='YPLB';
DBgrid2.Columns[4].FieldName:='JLDW';
DBgrid2.Columns[5].FieldName:='XSSL';
DBgrid2.Columns[6].FieldName:='XSDJ';
DBgrid2.Columns[7].FieldName:='ZSJE';
DBgrid2.Columns[8].FieldName:='XSRQ';
DBgrid2.Columns[9].FieldName:='JSR';
Groupbox3.caption:='查询结果共'+floattostr(recordcount)+'条记录'
end;
end;
end;
end;
procedure TYPXSFrm.Button7Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('XSCXReport');
MainFrm.RvProject1.Close;
end;
procedure TYPXSFrm.Button3Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('YPXSReport');
MainFrm.RvProject1.Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?