实例——应用数据库组件.txt

来自「Delphi 7组件应用实例 书籍语言: 简体中文 书籍类」· 文本 代码 · 共 27 行

TXT
27
字号
procedure Tdbquery.AqueryExecute(Sender: TObject; Params: TStrings);
var
  LocateParams:TLocateParams;
begin
  LocateParams:=wdmData.DataSetAdapter1.LocateParamsList.Add;
  LocateParams.AddParam('CustNo',QueryCustno.ActionValue.Values[0]);
  LocateParams.AdapterName:=wdmData.DataSetAdapter1.Name;
end;
当用户输入的客户编号在数据库中找不到时,有两种处理方法,一种是直接引发一个异常,WebSnap会把异常显示在网页中,代码如下:
If not wdmData.DataSetAdapter1.Locate then
    Adapter1.Errors.AddError('该用户编号不存在 '+QueryCustno.ActionValue.Values[0]);
另外一种方法是设定Adapter.Errors属性值来标识失败,再设定CmdAquery的ErrorPageName导向特定的网页。
因此修改后的代码如下:
procedure Tdbquery.AqueryExecute(Sender: TObject; Params: TStrings);
var
  LocateParams:TLocateParams;
begin
  LocateParams:=wdmData.DataSetAdapter1.LocateParamsList.Add;
  LocateParams.AddParam('CustNo',QueryCustno.ActionValue.Values[0]);
  LocateParams.AdapterName:=wdmData.DataSetAdapter1.Name;
If not wdmData.DataSetAdapter1.Locate then
    Adapter1.Errors.AddError('该用户编号不存在 '+QueryCustno.ActionValue.Values[0]);
end;



⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?