kd.bos.entity.botp.runtime

## 类 CRBizRuleAction

- java.lang.Object
- - kd.bos.entity.botp.runtime.CRBizRuleAction

-     public abstract class CRBizRuleAction
      extends java.lang.Object

  BOTP 单据转换、反写引擎，业务规则执行基类

- - ### 构造器概要

    构造器
    构造器和说明
    `CRBizRuleAction()`

  - ### 方法概要

    所有方法 实例方法 抽象方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `boolean` | `checkPreCondition(RowDataModel rowDataModel, kd.bos.dataentity.entity.DynamicObject activeRow)` 判断服务前置条件是否满足
    `void` | `doAction(ExtendedDataEntitySet extDataSet, RowDataModel rowDataModel, ExtendedDataEntity[] extDataEntities)` 单据转换，服务执行入口方法：侧重于批量执行
    `void` | `doAction(RowDataModel rowDataModel, kd.bos.dataentity.entity.DynamicObject activeRow)` 反写引擎，服务执行入口方法：针对本次反写的行，单行处理（本次未反写的其他源单行，不能执行）
    `CRBizRuleElement` | `getBizRule()` 业务规则的配置元数据
    `CRBizRuleContext` | `getBizRuleContext()` 业务规则执行上下文
    `abstract java.lang.String` | `getEntityKey()` 数据主实体：输出本规则针对的实体 特别说明：具体的服务，必须重载此方法，输出实体名；系统取到此实体后，循环处理此实体的全部数据行
    `java.util.Map<java.lang.String,kd.bos.dataentity.metadata.IDataEntityProperty>` | `getFieldProps()` 输出服务中用到的全部字段
    `BillEntityType` | `getMainType()` 单据主实体
    `java.lang.String` | `getPreCondition()` 前置条件表达式
    `void` | `setContext(CRBizRuleContext bizRuleContext)` 设置上下文

    - ### 从类继承的方法 java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造器详细资料

    - #### CRBizRuleAction

          public CRBizRuleAction()

  - ### 方法详细资料

    - #### getBizRuleContext

          public CRBizRuleContext getBizRuleContext()

      业务规则执行上下文
      返回:

    - #### getMainType

          public BillEntityType getMainType()

      单据主实体
      返回:

    - #### getBizRule

          public CRBizRuleElement getBizRule()

      业务规则的配置元数据
      返回:

    - #### getPreCondition

          public java.lang.String getPreCondition()

      前置条件表达式
      返回:

    - #### getFieldProps

          public java.util.Map<java.lang.String,kd.bos.dataentity.metadata.IDataEntityProperty> getFieldProps()

      输出服务中用到的全部字段
      返回:

    - #### setContext

          public void setContext(CRBizRuleContext bizRuleContext)

      设置上下文

    - #### getEntityKey

          public abstract java.lang.String getEntityKey()

      数据主实体：输出本规则针对的实体 特别说明：具体的服务，必须重载此方法，输出实体名；系统取到此实体后，循环处理此实体的全部数据行
      返回:

    - #### checkPreCondition

          public boolean checkPreCondition(RowDataModel rowDataModel,
                                           kd.bos.dataentity.entity.DynamicObject activeRow)

      判断服务前置条件是否满足
      参数:
        `rowDataModel` - 行数据模型
        `activeRow` - 当前数据行
      返回:

    - #### doAction

          public final void doAction(ExtendedDataEntitySet extDataSet,
                                     RowDataModel rowDataModel,
                                     ExtendedDataEntity[] extDataEntities)

      单据转换，服务执行入口方法：侧重于批量执行
      参数:
        `extDataSet` - 单据扩展数据包集合对象
        `extDataEntities` - 待执行服务的实体行数据包

    - #### doAction

          public final void doAction(RowDataModel rowDataModel,
                                     kd.bos.dataentity.entity.DynamicObject activeRow)

      反写引擎，服务执行入口方法：针对本次反写的行，单行处理（本次未反写的其他源单行，不能执行）
      参数:
        `activeRow` - 当前待处理的数据行