this.define是一个方法,您在脚本中您可以通过this.define()来定义自己的方法。
通过这种方式定义方法,在不同的应用使用相同的方法名称也不会造成冲突。
Syntax
this.define(name, fun, overwrite)
Parameters
-
name
String
定义的方法名称。
-
fun
function
定义的方法
-
overwrite
Boolean
<optional>
定义的方法是否能被覆盖重写。默认值为true。
Examples
样例一:在通用脚本中定义一个通用的方法去获取公文管理所有的文种,在查询语句中根据该方法来拼接JPQL。
1、在内容管理应用中有一个fileRes的应用,在该应用中创建一个脚本,命名为FileSql,并定义方法。
//定义一个方法
this.define("getFileSQL",function(){
var application = ["公司发文","部门发文","党委发文"];
var appSql = " ( ";
for(var i=0;i<application.length;i++){
if(i==application.length-1){
appSql = appSql + " o.applicationName = '"+application[i]+"' "
}else{
appSql = appSql + " o.applicationName = '"+application[i]+"' OR "
}
}
appSql = appSql + " ) ";
return appSql;
}.bind(this));
2、在查询语句中使用该方法。
this.include({
type : "cms",
application : "fileRes",
name : "FileSql"
})
var sql = this.getFileSQL();
return "SELECT o FROM com.x.processplatform.core.entity.content.Task o WHERE "+sql