2,498
社区成员
发帖
与我相关
我的任务
分享
select * from tb
where 1=1
procedure TForm1.Button1Click(Sender: TObject);
const
arr1: array[1..4] of string=(' and 员工编码=',' and 姓名=',' and 工资=',' and 入厂日期>');
var
i:Integer;
t:TDateTime;
s:string;
G_str:string;
j:Double;
begin
G_str:='select * from [员工信息表] where 1=1' ;
for I := 1 to 4 do
begin
s:=TEdit(Form1.FindComponent('Edit'+inttostr(i))).Text;
if i<4 then begin
if s<>'' then
if i=3 then begin
if TryStrToFloat(s,j) then
G_str:=G_str+arr1[i]+s
else begin
MessageBox(0,'输入的工资格式有误','错误',MB_ICONERROR);
Exit;
end;
end
else
G_str:=G_str+arr1[i]+QuotedStr(s);
end else begin
if s<>'' then
if TryStrToDateTime(s,t) then
G_str:=G_str+arr1[i]+QuotedStr(s)
else begin
MessageBox(0,'输入的入厂日期错误','错误',MB_ICONERROR);
Exit;
end;
end;
end;
with ADOQuery1 do begin
Close;
SQL.Text:=G_str;
Open;
end;
end;
procedure Tquery1frm.Button1Click(Sender: TObject);
function AddPercent(sSource:string):string;
begin
result := sSource;
if Pos('%',sSource)=0 then Result := sSource+'%';
end;
var sqlstr,swhere:string;
begin
sqlstr:='Select PQI_NUMBER,PQI_SUPPLIER,PQI_OSPOP,PQI_CREATER,PQI_CREATEDATE,PQI_APPROVER,PQI_APPROVEDATE,PQI_CURRENCY,PQI_Status,PQI_TEXT,PQI_ID From tblospquota where PQI_NUMBER in(';
sqlstr:=sqlstr+'Select distinct PQI_NUMBER From tblospquota A,tblospquotadt B where A.PQI_ID=B.PQI_ID(+) ';
swhere:='';
if combobox1.Text <> '' then sWhere := sWhere + format(' AND A.PQI_NUMBER LIKE''%s'' ', [ AddPercent(combobox1.Text) ]);
if combobox2.Text <> '' then sWhere := sWhere + format(' AND A.PQI_SUPPLIER LIKE ''%s'' ', [ AddPercent(suppler) ]);
if combobox3.Text <> '' then sWhere := sWhere + format(' AND A.PQI_OSPOP LIKE ''%s'' ', [ AddPercent(combobox3.Text) ]);
if combobox4.Text <> '' then sWhere := sWhere + format(' AND B.QID_ITM_CODE LIKE ''%s'' ', [ AddPercent(combobox4.Text) ]);
if radiogroup1.ItemIndex<>-1 then sWhere := sWhere + format(' AND A.PQI_STATUS LIKE ''%s'' ', [ AddPercent(status) ]);
sqlstr:=sqlstr+swhere;
sqlstr:=sqlstr+')';
with quota_approve.quota_approvefrm.ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(sqlstr);
open;
end;
end;