U9自定义函数简介

栏目:u9cloud知识作者:用友来源:用友发布:2024-08-20浏览:1

U9自定义函数简介

1. U9的自定义函数种类 分为 表达式函数  与   SQL函数 两种。

2. 分别的用途:

         表达式函数用于表达式计算,对于权限中的增删改权限判断就是表达式计算,还有通知、预警等相应的数据判断也是表达式计算。

         SQL函数 用于 查询时进行代入计算,如权限中的 查询权限可以用的是SQL函数。 

        简单的判断方式: 自己想一想,这个函数所处的运行上下文是在做什么,如果是正在从数据库查询数据时运算,那就是SQL函数,如果是对实体等已经加载对象进行计算判断,那就是表达式函数。

      用错会怎么样:

           目前,如果把SQL函数用到了表达式计算中,会导致计算错误,但没有异常。原因:SQL函数的计算结果就是SQL函数本身串。

            而如果  表达式函数用于SQL函数中,会导致出现异常。 异常是OQL解析的过程中发生。具体错误:

   无法将类型为“UFSoft.UBF.Util.Expression.Scripting.ImperativeInterpreter”的对象强制转换为类型“UFSoft.UBF.Util.Expression.Query.IOQLVisitor”。

3. 注册:

         两种函数都是注册到 ubfScript.xml(U9内部使用) 或 Script.xml(客开第三方使用)  在Portal ApplicationServer 等的bin目录下。 下面分别为表达式函数与SQL函数 注册示例:

             
              
                
             

        

        

4. 出补丁:

        ubfScript.xml 文件补丁只可有 UBF出,位置:  Upgrade/Support/UBF/Files 目录下。

       同时,如果需要在表达式编辑界面能够显示出相应的函数,还需要在数据库表中注册。    相关表: Base_ExpFunction   脚本自己放在自己应用下的  PostSql 中。

 

5、其它

   IIF 是三元判断表达式函数 ,对应的OQL上使用  sqlIIF 函数  .

   其它函数类似,现在要求SQL函数和表达式函数是要分别注册的。

   注意 SQL的函数表达式,select from 等关键字需要用小写。

U9自定义函数简介

1. U9的自定义函数种类 分为 表达式函数  与   SQL函数 两种。2. 分别的用途:         表达式函数用于表达式计算,对...
点击下载文档
标签: # U9C
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息