delphi代码问题,请高手指点

yoyoxu 2006-05-25 07:16:45
为什么这两段代码不起作用??(这段代码用于判断工号是否在表里,如果在,则MaskEdit2.Text的值为65,否则为0,另外一段类同,但是他们都不起作用,也就是不管工号在不在表里,MaskEdit2.Text的值都为0,怎么回事?)
procedure TformSal.edtEmpNOExit(Sender: TObject);
begin
formDateModule.CDSGetInsuranceByNo.Active:=False;
formDateModule.CDSGetInsuranceByNo.Params.ParamByName('@parNo').Value:=Trim(edtEmpNo.Text);
formDateModule.CDSGetInsuranceByNo.Active:=True;
if formdateModule.CDSGetInsuranceByNo.RecordCount>0 then
MaskEdit2.Text:='65' else MaskEdit2.Text:='0';
end;
DBEdit5.Text:=Trim(edtYear.Text);
formDateModule.CDSGetBreadByGh.Active:=false;
formDateModule.CDSGetBreadByGH.Params.ParamByName('@parGH').Value:=Trim(edtEmpNo.Text);
formDateModule.CDSGetBreadByGH.Active:=True;
if formDateModule.CDSGetBreadByGH.RecordCount>0 then
DBEdit3.Text:='0' else DBEdit3.Text:='70';
end;
...全文
151 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
playwarcraft 2006-05-26
  • 打赏
  • 举报
回复
存储过程这样写
CREATE PROCEDURE procGetInsuranceByNo @parNo char(10)AS
/*declare @parNo char(10)
set @parNo='007446'*/
select * from tblInsurance where [no]=ltrim(rtrim(@parNo))

GO
(另外一个类同)

瞎试试看,把store procedure 改为user defined function
yoyoxu 2006-05-26
  • 打赏
  • 举报
回复
存储过程这样写
CREATE PROCEDURE procGetInsuranceByNo @parNo char(10)AS
/*declare @parNo char(10)
set @parNo='007446'*/
select * from tblInsurance where [no]=ltrim(rtrim(@parNo))

GO
(另外一个类同)
wzghh 2006-05-26
  • 打赏
  • 举报
回复
原:formDateModule.CDSGetInsuranceByNo.Params.ParamByName('@parNo').Value:=Trim(edtEmpNo.Text);
可能应是这样的吧(把Params去掉):
formDateModule.CDSGetInsuranceByNo.ParamByName('@parNo').Value:=Trim(edtEmpNo.Text);
zzq4823 2006-05-25
  • 打赏
  • 举报
回复
SQL语句怎么写的?

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧