TkbmMWClientQuery有一个ErrorTable属性,用于记录提交Query时返回的错误结果。当用户保存修改的业务数据,出错时,可以用ErrorTable定位出错的记录并提示错误信息。

下面是实现代码:

procedure TForm2.Button4Click(Sender: TObject);
var
  i:TkbmNativeInt;//必须声明为TkbmNativeInt,不然XE3编译出错.
begin

if kbmMWClientQuery1.ErrorTable.RecordCount<=0 then Exit;//无提交错误返回
  kbmMWClientQuery1.CurIndex.SearchRecordID(kbmMWClientQuery1.ErrorTable.FieldByName('KBMMW_RECORDID').AsInteger,i);//快速定位出错记录
  if i<0 then raise Exception.Create('没有找到错误记录号.');
  kbmMWClientQuery1.RecNo:=i+1;//需要加1才是具体的出错记录
  ShowMessage(kbmMWClientQuery1.Fields[0].AsString+kbmMWClientQuery1.ErrorTable.FieldByName('KBMMW_ErrorMessage').AsString);// 显示出错记录的第一个字段+出错信息

end;

实际上,TkbmMWClientQuery的OnResolveError事件,也是在Query向服务器发出请并收到服务器的响应后,根据服务器响应的ErrorTable内容触发的。这里的方法,可完全替带Query的OnResolveError事件。

转载于:https://www.cnblogs.com/xalion/archive/2012/10/05/2712565.html

[转载红鱼儿]kbmmw 开发点滴:ErrorTable用法相关推荐

  1. [转载红鱼儿]kbmmw 开发点滴:TkbmMWLock用法

    TStringList不是线程安全的,当我们在线程用到他是,要做保护.方法有两种,一种是用delphi自带的Critical,另外一种就是kbmMW为我们提供的TkbmMWLock类. 现在我们看看如 ...

  2. [转载红鱼儿]kbmmw 开发点滴:EarlyAuthentication

    kbmmw 开发点滴:EarlyAuthentication 1.kbmMWServer.EarlyAuthentication的作用: 当为真是,当客户端请求时,先触发kbmMWServer的OnA ...

  3. [转载红鱼儿]kbmmw 开发点滴:kbmMW:Unknown property:indexes

    利用kbmMW的QueryServices,对数据集进行提交,当改用JSON格式时,客户端提交时,会产生这个错误,明明已经更新数据库,也产生这个错误!如果换成Bin格式,则正常. 能过查看kbmMWJ ...

  4. [转载红鱼儿]kbmmw 开发点滴:kbmMW 命名查询(Named Query)

    所谓命名查询(Named Query),指客户端的Query通过指定的名称,使用服务器端的Query操作(查.增.删.改)数据库.通过Named Query机制,实现事先在服务器端设置好SQL,达到在 ...

  5. [转载红鱼儿]kbmmw 开发点滴:kbmMW客户端提交事务的现场处理

    多层应用中的事务处理,是必须的,如果处理不好,就会出现各种数据不同步的现象,无法投入使用.以前用ASTA实现的多层应用,是在客户端利用ASTA机 制,将要提交的数据集.执行的SQL及SP,统统生成到一 ...

  6. [转载红鱼儿]kbmmw 开发点滴:Authorization failed.

    开始利用kbmmw实作项目,第一件事就是为的服务端加用户的认证.如果客户端发来的请求无法在服务器端通过认证,即客户端认证失败,会在客户端弹出一个错误提示窗口:Authorization failed. ...

  7. [转载红鱼儿]kbmmw 开发点滴:kbmMWQuery插入记录

    想利用TkbmMWUNIDACQuery插入一条记录,结果遇到问题,显示: 不允许从数据类型 sql_variant 到 varchar 的隐式转换.请使用 CONVERT 函数来运行此查询.这是什么 ...

  8. [转载红鱼儿]delphi 实现微信开发(1)

    大体思路: 1.用户向服务号发消息,(这里可以是个菜单项,也可以是一个关键词,如:注册会员.) 2.kbmmw web server收到消息,生成一个图文消息给微信,在图文消息中做好自己的url,在u ...

  9. kbmMW均衡负载与容灾(3)(转载红鱼儿)

    在kbmMW均衡负载与容灾(1)中,介绍了利用ClientTransport的OnReconnect事件,对联接的应用服务器的地址进行更换,做容灾处理.实际上,作者还给我们提供了另外一种机制,直接在C ...

最新文章

  1. 厉害!苏炳添即将在暨南大学成立短跑实验室
  2. Transaction rolled back because it has been marked as rollback-only分析解决方法
  3. JSP学习笔记(一):JSP语法和指令
  4. asp.net2.0中通过CS代码来动态的指定aspx页面中head中的信息
  5. 操作系统 第四章【存储器管理】【MOOC答案】
  6. OpenWrt安装迅雷成功,实现BT emule等多协议下载
  7. 使用Kotlin开发Android应用初体验
  8. wampserver一系列问题总结
  9. J2SE:Java环境搭建探究环境变量
  10. Perl脚本的调试方法
  11. Alibaba Cloud Linux 2 LTS OS 启动优化实践 | 凌云时刻
  12. r语言html函数,【R语言】《R语言初学者指南》:函数、自定义函数、循环
  13. 非华为电脑安装华为电脑管家步骤
  14. 福大软工 · 第七次作业 - 需求分析报告
  15. 安阳工学院计算机类宿舍,2021年安阳工学院新生宿舍条件和宿舍环境图片
  16. 全国计算机二级考试对选择题有要求吗,全国计算机二级考试攻略
  17. Android8.0多窗口调研
  18. 在处理时有错误发生: sogoupinyin
  19. hbs helper分享
  20. AE 枪口火焰的五毛特效

热门文章

  1. iphone如何信任软件_你还在用大众点评吗?评价软件失去信任还如何活下去
  2. qfdw.xyz sq.php,GitHub - STORMSQ/sqphp: 練習用框架,使用PHP搭建
  3. 华为怎么改输入法皮肤_搜狗输入法皮肤挑花眼?这次皮肤效果也能划着看了
  4. 32位jdk_MyEclipse 10((32/64位)、(MAC)、(Linux))软件安装教程
  5. linux 7 vsftpd 配置,CentOS7 安装并配置使用vsftpd
  6. spark mysql 驱动_spark读取mysql数据库的驱动问题
  7. 使用Python和OpenCV检测图像中的条形码
  8. PyTorch框架:(6)图像识别实战常用模块解读
  9. java与3d建模_3d建模加载,更新和在java中呈现
  10. c++ Lambda