RSB语言是知行EDI系统内实施使用的语言,方便用户处理和实现个性化业务。RSB语言依赖知行EDI系统自带的RSB引擎。 更多相关知识可安装下载知行EDI系统后,在HELP界面查看。
RSB语言包含类型
RSB语言中所有的函数以及格式化是针对item或者属性的,取值使用的是方括号[]。
关键字
RSB语言的关键字与其他编程语言不同,所有的关键字前都带有 “rsb:”,使用时将关键字放在一组尖括号中,和标签一样使用,值放在属性value中,也可以放置在两个关键字标签内。
如设置test对象的一个属性name的值为demo,以下两种方式都可以。
1 2 |
<rsb:set attr="test.name" value="demo" /> <rsb:set attr="test.name">demo</rsb:set> |
还有很多其他语言支持的,比如枚举 rsb:enum,跳出循环 rsb:break,switch…case语句 rsb:switch rsb:case等等。
格式化方法
RSB语言中包含了许多格式化的方法,主要分为以下几类:
字符串格式化:支持对字符串的查找,比较以及空格等特殊字符的处理,如将字符串“ABCD”中的A替换为a:
1 2 |
<rsb:set attr="test.string" value="ABCD" /> [test.string | replace('A','a')] |
日期格式化:支持对日期格式的转换,例如将格式为YYMMDD 的日期 200225 转换为 YYYYMMDD的格式 20200225:
1 2 |
<rsb:set attr="test.date" value="200225" /> [test.date | todate('YYYYMMDD','YYMMDD')] |
数字格式化:支持不同类型的数字格式转换,以及数字的运算,计算 4/2 的值:
1 2 |
<rsb:set attr="test.num" value="4" /> [test.num | div(2)] |
文件格式化:支持对文件的处理,获取文件名称:
1 2 |
<rsb:set attr="test.file" value="[File]" /> [test.file | filename()] |
其他特殊格式化:支持对XML, CSV等格式文件的处理。
不同的格式化,所需要的参数和返回类型都不同,需要参考格式化使用指南。
函数
RSB中自带了许多的函数,主要用于处理不同的对象,包括:
- 数据库操作函数:对接数据库和运行数据库SQL;
- EXCEL 操作函数:对EXCEL 的创建,删除,读取等等;
- XML 操作函数:对XML 的创建,删除,读取等等;
- 文件操作函数:对文件的创建,删除,读取等等;
- 其他函数。
不同的函数输入的对象和返回的结果不一样,需要参考操作手册。
RSB语言的使用环境
端口
知行EDI系统中包含的端口,支持自定义脚本,输入的文件会按照自定义脚本处理。比如,用户需要根据业务逻辑,抛出定义的异常,如下。
可以使用rsb:check关键字检查该值是否为空:
1 2 3 4 5 6 7 8 |
<rsb:set attr="test.parameter" value="" /> <rsb:check value="[test.parameter]"> <!--符合条件时的输出或处理逻辑 --> [test.parameter] <rsb:else> <rsb:throw code="Error" desc="This parameter is error!" /> </rsb:else> </rsb:check> |
或者直接使用rsb:try和rsb:catch关键字将可能出现异常的表达式包起来:
1 2 3 4 5 6 |
<rsb:try> [test.parameter | div(2)] <rsb:catch> <rsb:throw code="Error" desc="This parameter is error!" /> </rsb:catch> </rsb:try> |
Event 事件
知行EDI系统中每个端口都有一个Event页面,支持在文件处理前,处理后,转发前等对文件进行处理,处理逻辑则需要使用RSB语言实现。
RSB 文件
RSB引擎会对RSB语句编写的RSB文件进行处理,包括以下几类文件:
- .rst文件:支持在输出,可以直接访问;
- .rsb文件:用于函数以及逻辑的实现,可以被调用和放在其他的rst文件中;
- .rsd文件:放配置数据。
千里之行,始于足下。学会一门语言最好的办法就是开始,快下载知行EDI系统开始你的RSB之旅吧!
注:文案部分图片及内容来源于网络,版权归原创作者所有,如有侵犯到您的权益,请您联系我们进行删除,给您带来困扰,我们深感抱歉。
发表评论
要发表评论,您必须先登录。