插件开发技术说明(4)---xml编程
来源:互联网 发布:cda数据分析师报名费 编辑:程序博客网 时间:2024/05/17 06:19
以下是sba.pr协议规则文件中2个协议处理的描述.
通过本示例可以了解如何使用l编写xml协议处理脚本,取代编写c++代码。
使用xml协议规则文件的具体的局限和缺陷后续给出。
协议规则文件与插件同名,扩展名为:pr
1.示例
7150-Request:演示如何insert
7151-Request:演示如何查询数据,有条件
sba插件的 sba.pr内容如下:
<?xml version="1.0" encoding="gb2312" standalone="yes" ?><protocol><msgs><!--@加入购物车 --><msg id="7150" type="5" desc="加入购物车"><parameters><parameter><name>EId,UserID,CoEId,GoodsID</name><comment>企业ID,用户ID,供应商ID,商品ID</comment> <type>1</type> <!-- 整型 --><nullable>false</nullable> <!-- 不允许为空 --></parameter><parameter><name>SKUNum,PKNum</name> <comment>单品数,整装数</comment> <type>1</type><nullable>true</nullable> <!--允许为空 --> </parameter><parameter><name>handlerid</name> <comment>HandlerID</comment> <type>3</type> <!--字符串类型 --><nullable>false</nullable> </parameter></parameters><script><action>1</action> <!--必须参数 动作1-Insert 2-update 3-delete 4-query --><table>t_Ven_ShoppingCart</table> <!--除action=4外,必须有此参数 --><vars><var>curdate=DATE()</var> <!-- 定义变量curdate,取值DATE()函数,获取当前时间--></vars><field_bind> <!-- 字段绑定参数和字段的绑定,如果action=4则不需要此节点 --><field><name>EId,UserID,CoEId,GoodsID,SKUQty,PackQty</name> <method>1</method> <!-- 绑定方式: 1-参数值 2-参数编码表 3-常量 4-变量--><value>EId,UserID,CoEId,GoodsID,SKUNum,PKNum</value> </field><field><name>AddTime</name> <method>4</method> <!-- 绑定方式: 1-参数值 2-参数编码表 3-常量 4-变量--><value>curdate</value> </field></field_bind><result><parameters> <!-- 需要显式返回的参数--><parameter><name>handlerid</name><method>1</method><!-- 参数计算方式 1-引用原来的同名参数 2-... 3-变量--></parameter></parameters></result></script></msg><!--@查询购物车(简版) --><msg id="7151" type="5" desc="查询购物车(简版)"><parameters><parameter><name>EId,UserID,TopNum</name> <comment>企业ID,用户ID,查询记录数</comment> <type>1</type> <!-- 1-整数 2-浮点数 3-字符串 4-日期 5-时间 6-日期时间 7-bool(0或1) 8-二进制数据 9-set(集合)--> <!--默认:字符串--><nullable>false</nullable> </parameter></parameters><script><action>4</action> <!--必须参数 动作1-Insert 2-update 3-delete 4-query --><select> <cmd><when>select top @TopNum d.eid,d.ename,a.objectid,a.goodsid,b.brandid,brandname,stype,spec,skuqty as skunum,packqty as pknum,addtime from t_ven_shoppingcart a,t_bas_mygoods b,t_bas_brand c,t_sys_org d where a.coeid=b.eid and a.goodsid=b.goodsid and b.brandid=c.brandid and d.eid=a.coeid and a.eid=@EId and userid=@UserID and a.status=0</when></cmd></select><result><method>1</method> <!-- 1-以行集形式返回 2-以参数形式返回 --></result></script></msg></msgs></protocol>
2.协议定义
对应的协议定义如下.
。加入购物车
协议名称
加入购物车
协议编号
7150
通信模式
请求-确认
请求内容
参数
参数
名称
说明
企业ID
EId
用户ID
UserID
供应商ID
CoEId
商品ID
GoodsID
单品数
SKUNum
整装数
PKNum
返回内容
参数
参数
名称
说明
。查询购物车
协议名称
查询购物车
协议编号
7151
通信模式
请求-确认
请求内容
参数
参数
名称
说明
企业ID
EId
用户ID
UserID
查询记录数
TopNum
返回内容
参数
参数
名称
说明
购物车商品列表
列
名称
说明
供应商ID
EId
供应商名称
EName
记录编号
ObjectID
商品ID
GoodsID
商品名称
GoodsName
品牌ID
BrandID
品牌名称
BrandName
型号
SType
规格
Spec
单品数
SKUNum
单品价
SalePrice
整装数
PKNum
整装价
WholePrice
商品图片
Pic
加入时间
AddTime
0 0
- 插件开发技术说明(4)---xml编程
- 插件开发技术说明(15)---单据处理编程模式
- 插件开发技术说明(2)---rc_finder插件
- 插件开发技术说明(3)---letein插件
- 插件开发技术说明(1)---前言
- 插件开发技术说明(5)---分页处理
- 插件开发技术说明(11)---修改数据
- 插件开发技术说明(12)---面向业务对象编程:2种风格的对比
- 插件开发技术说明(7)---读插件配置
- 插件开发技术说明(17)---应用CRUD开发模式范例
- 插件开发技术说明(6)---分页查询示例
- 插件开发技术说明(14)---服务配置访问
- 插件开发技术说明(15)---文件自动分目录存储
- 插件开发技术说明(16)---消除代码冗余
- 插件开发技术说明(18)---异步任务队列使用
- 插件开发技术说明(19)---通用查询处理
- XML编程技术
- 插件开发技术说明(10)---业务处理示例(加入购物车)
- oracle中的rownum伪列的使用
- C#转换文件大小格式(GB/MB/KB/B)
- NSUserDefaults
- c++头文件
- Android PowerImageView实现,可以播放动画的强大ImageView
- 插件开发技术说明(4)---xml编程
- mybatis整合ehcache
- 第一章 Java程序设计概述
- iOS页面跳转及数据传递
- 有关上拉输入、下了输入、推挽输出、开漏输出、复用开漏输出、复用推挽输出以及、浮空输入、模拟输入区别
- Myeclipse10中导入jquery.js文件报验证异常
- Nginx服务器部署SSL证书手机不信任解决方法
- Makefile 中:= ?= += =的区别
- HDOJ{A}+{B}