?? unit1.pas
字號:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Mask, DBCtrls, DB, ADODB, Grids, DBGrids,
ToolEdit, RXDBCtrl;
type
TForm1 = class(TForm)
Button1: TButton;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
Button2: TButton;
ADOQuery1COUNT: TBCDField;
DBText1: TDBText;
ADOQuery2: TADOQuery;
DBGrid1: TDBGrid;
DataSource2: TDataSource;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
CheckBox1: TCheckBox;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
procedure Button2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function countrestr(const source:string;other:string='、'):Integer;
var
count:Integer;
i,l:Integer;
temp:string;
begin
count:=0;
l:=length(source);
i:=0;
temp:=source;
repeat
temp:=copy(temp,i+1,l);
i:=pos(other,temp);
count:=count+1;
until (i=0) or (i=l);
result:=count
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i:variant; //如字段無空記錄可只用str1
str1:string; //處理后的EXAM_ITEM
j:Integer; //總數
n:string; //姓名
cmd1:string; //SQL
cmd2:string;
cmd3:string;
cmd4:string;
cmd5:string;
cmd6:string;
begin
j:=0;
n:=trim(Edit1.Text);
cmd1:= 'select EXAM_ITEM from ExAM_ITEMS';
with ADOQuery2 do
begin
Close;
SQL.Clear;
if (n<>'') or (CheckBox1.Checked) then //一個被選
begin
cmd2:=' where exam_no in (select exam_no from exam_master where ';
cmd6:=')';
end;
if (n<>'') then //按姓名
cmd3:='req_physician='''+n+'''';
if (n<>'') and (CheckBox1.Checked) then //兩個都被選
cmd4:=' and ';
if (CheckBox1.Checked) then //按日期
cmd5:='(EXAM_DATE_TIME >=:begindate) and (EXAM_DATE_TIME<=:enddate)';
sql.Add(cmd1+cmd2+cmd3+cmd4+cmd5+cmd6); //最終SQL
if (CheckBox1.Checked) then
begin
Parameters.ParamByName('begindate').Value:=StrToDate(DateToStr(DateTimePicker1.Date));
Parameters.ParamByName('enddate').Value:=StrToDate(DateToStr(DateTimePicker2.Date));
end;
Open;
First;
while not eof do
begin
i:=FieldByName('EXAM_ITEM').Value;
if(i<>null) then
begin
str1:=Trim(i);
j:=j+countrestr(str1);
end;
Next;
end;
Label1.Caption:=inttostr(j);
end;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
begin
DateTimePicker1.Enabled:=true;
DateTimePicker2.Enabled:=true;
end
else
begin
DateTimePicker1.Enabled:=false;
DateTimePicker2.Enabled:=false;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Open;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
DateTimePicker1.Date:=Now;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -