ypxx.pas
来自「完整的delphi书籍源代码,大家有空的时候自己慢慢看看」· PAS 代码 · 共 209 行
PAS
209 行
unit YPXX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RVClass,RVProj,RVCsStd,ComCtrls, DB, ADODB, StdCtrls, Mask, DBCtrls, Grids, DBGrids,
ExtCtrls, RpCon, RpConDS, RpDefine, RpRave;
type
TYPXXFrm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
DBNavigator1: TDBNavigator;
DBEdit1: TDBEdit;
Button1: TButton;
DataSource1: TDataSource;
ADOTable1: TADOTable;
Label2: TLabel;
Label3: TLabel;
DBComboBox1: TDBComboBox;
DBComboBox2: TDBComboBox;
ADOTable2: TADOTable;
ADOTable3: TADOTable;
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
StringGrid1: TStringGrid;
Button3: TButton;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure TabSheet1Show(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TabSheet2Show(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
YPXXFrm: TYPXXFrm;
count:integer;
implementation
uses Main;
{$R *.dfm}
procedure TYPXXFrm.Button1Click(Sender: TObject);
begin
YPXXFrm.Hide ;
end;
procedure TYPXXFrm.TabSheet1Show(Sender: TObject);
var i:integer;
begin
DBgrid1.Columns.Clear;
for i:=1 to 4 do
begin
DBgrid1.Columns.add;
end;
DBgrid1.Columns[1].Width:=100;
DBgrid1.Columns[2].Width:=100;
DBgrid1.Columns[3].Width:=100;
DBgrid1.Columns[0].Title.caption:='药品编号';
DBgrid1.Columns[1].Title.caption:='药品名称';
DBgrid1.Columns[2].Title.caption:='计量单位';
DBgrid1.Columns[3].Title.caption:='药品类别';
DBgrid1.Columns[0].FieldName:='YPBH';
DBgrid1.Columns[1].FieldName:='YPMC';
DBgrid1.Columns[2].FieldName:='JLDW';
DBgrid1.Columns[3].FieldName:='YPLB';
end;
procedure TYPXXFrm.FormCreate(Sender: TObject);
begin
ADOtable2.first;
while not ADOtable2.eof do
begin
dbcombobox1.items.insert(-1,ADOtable2.fieldbyname('DWMC').asstring);
ADOtable2.Next;
end;
ADOtable3.first;
while not ADOtable3.eof do
begin
dbcombobox2.items.insert(-1,ADOtable3.fieldbyname('YPLB').asstring);
ADOtable3.Next;
end;
end;
procedure TYPXXFrm.TabSheet2Show(Sender: TObject);
var i:integer;
begin
with stringgrid1 do
begin
cells[0,0]:='药品编号';
cells[1,0]:='药品名称';
cells[2,0]:='计量单位';
cells[3,0]:='药品类别';
end;
for i:=1 to count do
begin
with stringgrid1 do
begin
cells[0,i]:='';
cells[1,i]:='';
cells[2,i]:='';
cells[3,i]:='';
end;
next;
end;
Radiobutton1.checked:=true;
edit1.text:='';
edit2.text:='';
edit1.setfocus;
end;
procedure TYPXXFrm.Button2Click(Sender: TObject);
var query:string;
i:integer;
begin
for i:=1 to count do
begin
with stringgrid1 do
begin
cells[0,i]:='';
cells[1,i]:='';
cells[2,i]:='';
cells[3,i]:='';
end;
next;
end;
query:='';
if Radiobutton1.checked=true then
if edit1.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXX where YPBH='+''''+edit1.text+'''';
if Radiobutton2.checked=true then
if edit2.text='' then
showmessage('请输入相应查询条件')
else
query:='select * from YPXX where YPMC like'+''''+'%'+edit2.text+'%'+''''+'order by YPBH';
if query<>'' then
begin
with ADOQuery1 do
begin
close;
sql.clear;
sql.add(query);
open;
first;
if recordcount=0 then
begin
showmessage('对不起,没有符合条件的查询结果!请重新查询!');
edit1.setfocus;
end
else
begin
count:=recordcount;
StringGrid1.RowCount:=recordcount+1;
for i:=1 to recordcount do
begin
with stringgrid1 do
begin
cells[0,i]:=fieldbyname('YPBH').asstring;
cells[1,i]:=fieldbyname('YPMC').asstring;
cells[2,i]:=fieldbyname('JLDW').asstring;
cells[3,i]:=fieldbyname('YPLB').asstring;
end;
next;
end;
end;
end;
end;
end;
procedure TYPXXFrm.Button4Click(Sender: TObject);
begin
YPXXFrm.Hide;
end;
procedure TYPXXFrm.Button3Click(Sender: TObject);
begin
MainFrm.RvProject1.Open;
MainFrm.RvProject1.ExecuteReport('YPXXReport');
MainFrm.RvProject1.Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?