yprk.pas
来自「完整的delphi书籍源代码,大家有空的时候自己慢慢看看」· PAS 代码 · 共 298 行
PAS
298 行
unit YPRK;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RVClass,RVProj,RVCsStd,StdCtrls, Grids, DBGrids, DB, ADODB, ComCtrls, ExtCtrls, DBCtrls,
Mask, RpCon, RpConDS, RpDefine, RpRave;
type
TYPRKFrm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
ADOTable1: TADOTable;
Button3: TButton;
ADOQuery2: TADOQuery;
GroupBox1: TGroupBox;
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Label3: TLabel;
Label8: TLabel;
Label7: TLabel;
Label5: TLabel;
Label6: TLabel;
Label9: TLabel;
Label10: TLabel;
Label4: TLabel;
DBComboBox1: TDBComboBox;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Button1: TButton;
Button2: TButton;
Button4: TButton;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
RadioButton1: TRadioButton;
Edit4: TEdit;
RadioButton2: TRadioButton;
Edit5: TEdit;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Edit6: TEdit;
Edit7: TEdit;
Button5: TButton;
Button6: TButton;
DBGrid2: TDBGrid;
DataSource2: TDataSource;
DBNavigator2: TDBNavigator;
Button7: TButton;
procedure FormCreate(Sender: TObject);
procedure TabSheet1Show(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 TabSheet2Show(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
YPRKFrm: TYPRKFrm;
implementation
uses Login, Main;
{$R *.dfm}
procedure TYPRKFrm.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 TYPRKFrm.TabSheet1Show(Sender: TObject);
begin
edit2.text:=datetostr(Date);
edit3.text:=LoginFrm.edit1.Text;
end;
procedure TYPRKFrm.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 TYPRKFrm.DBEdit4Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TYPRKFrm.DBEdit5Change(Sender: TObject);
begin
if (dbedit4.text<>'')and (dbedit5.text<>'')then
DBEdit6.text:=floattostr(strtofloat(dbedit4.text)*strtofloat(dbedit5.text));
end;
procedure TYPRKFrm.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 YPRK (RKDH,RKRQ,JSR,YPMC,YPBH,YPLB,JLDW,GRSL,GRDJ,ZFJE)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 YPRK where RKDH='+''''+edit1.text+'''');
open;
first;
end;
showmessage('此条记录保存成功!');
end;
end;
procedure TYPRKFrm.Button2Click(Sender: TObject);
begin
with ADOQuery2 do
begin
close;
sql.clear;
sql.add('select top 1 * from YPRk order by RKDH desc');
open;
first;
if fieldbyname('RKRQ').asstring=datetostr(Date) then
edit1.text:=floattostr(fieldbyname('RKDH').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 YPRK where RKDH='+''''+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:='GRSL';
DBgrid1.Columns[5].FieldName:='GRDJ';
DBgrid1.Columns[6].FieldName:='ZFJE';
end;
end;
procedure TYPRKFrm.Button4Click(Sender: TObject);
begin
YPRKFrm.hide;
end;
procedure TYPRKFrm.Button6Click(Sender: TObject);
begin
YPRKFrm.hide;
end;
procedure TYPRKFrm.Button5Click(Sender: TObject);
var query:string;
begin
query:='';
if Radiobutton1.checked=true then
if edit4.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPRK where RKDH like'+''''+'%'+edit4.text+'%'+'''';
if Radiobutton2.checked=true then
if edit5.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPRK where JSR like'+''''+'%'+edit5.text+'%'+''''+'order by RKDH desc';
if Radiobutton3.checked=true then
if edit6.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPRK where RKRQ ='+''''+edit6.text+''''+'order by RKDH desc';
if Radiobutton4.checked=true then
if edit7.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPRK where YPMC like'+''''+'%'+edit7.text+'%'+''''+'order by RKDH 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:='RKDH';
DBgrid2.Columns[1].FieldName:='YPBH';
DBgrid2.Columns[2].FieldName:='YPMC';
DBgrid2.Columns[3].FieldName:='YPLB';
DBgrid2.Columns[4].FieldName:='JLDW';
DBgrid2.Columns[5].FieldName:='GRSL';
DBgrid2.Columns[6].FieldName:='GRDJ';
DBgrid2.Columns[7].FieldName:='ZFJE';
DBgrid2.Columns[8].FieldName:='RKRQ';
DBgrid2.Columns[9].FieldName:='JSR';
Groupbox3.caption:='查询结果共'+floattostr(recordcount)+'条记录'
end;
end;
end;
end;
procedure TYPRKFrm.TabSheet2Show(Sender: TObject);
begin
edit6.Text:=datetostr(date);
radiobutton1.checked:=true;
end;
procedure TYPRKFrm.Button3Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('YPRKReport');
MainFrm.RvProject1.Close;
end;
procedure TYPRKFrm.Button7Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('RKCXReport');
MainFrm.RvProject1.Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?