## 类的使用
kd.bos.entity.EntityType

- 使用EntityType的程序包
  程序包 | 说明
  --- | ---
  kd.bos.entity |
  kd.bos.entity.botp.plugin.args |
  kd.bos.entity.datamodel |
  kd.bos.entity.filter |
  kd.bos.entity.formula |
  kd.bos.entity.list |
  kd.bos.entity.plugin |
  kd.bos.form |
  kd.bos.list |
  kd.bos.servicehelper.basedata |

- - ### kd.bos.entity中EntityType的使用

    kd.bos.entity中EntityType的子类
    限定符和类型 | 类和说明
    --- | ---
    `class` | `BasedataEntityType` 基础资料实体类型
    `class` | `BillEntityType` 单据实体类型
    `class` | `EntryType` 分录实体类型
    `class` | `FlexEntityType`
    `class` | `LinkEntryType` 关联子实体
    `class` | `MainEntityType` ORM实体描述
    `class` | `ParameterEntityType` 参数实体类型
    `class` | `PublicParameterEntityType` 参数实体类型
    `class` | `QueryEntityType`
    `class` | `RefEntityType`
    `class` | `SubEntryType` 子单据体实体类型
    `class` | `TreeEntryType` 子单据体实体类型

    返回EntityType的kd.bos.entity中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | EntityType.`getSubEntityType(java.util.Collection<java.lang.String> properties)` 根据实体属性构造一个新的属性

    返回变量类型为EntityType的类型的kd.bos.entity中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `java.util.Map<java.lang.String,EntityType>` | MainEntityType.`getAllEntities()`

    参数类型为EntityType的kd.bos.entity中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `static java.util.List<ListField>` | EntityTypeUtil.`getAllListField(EntityType entityType, java.util.List<ListField> listFields, boolean isNeedKeyFields)`
    `static kd.bos.dataentity.metadata.IDataEntityProperty` | EntityTypeUtil.`getDataEntityProperty(java.lang.String fieldKey, EntityType dataType)` 返回实体属性
    `static kd.bos.dataentity.metadata.IDataEntityProperty` | EntityTypeUtil.`getDataEntityProperty(java.lang.String fieldKey, EntityType dataType, boolean isThrowException)` 返回实体属性
    `static java.util.List<EntryEntityDto>` | EntityTypeUtil.`getEntryEntities(EntityType entityType)` 返回实体所有分录
    `static java.util.List<EntryEntityDto>` | EntityTypeUtil.`getEntryEntitiesForForQing(EntityType entityType)`
    `static FieldProp` | EntityTypeUtil.`getFieldProp(java.lang.String fieldKey, EntityType dataType)` 返回字段属性
    `static FieldProp` | EntityTypeUtil.`getFieldProp(java.lang.String fieldKey, EntityType dataType, boolean isThrowException)` 返回字段属性
    `static java.util.List<ListField>` | EntityTypeUtil.`getKeyFields(EntityType entityType)`
    `static FieldName` | EntityTypeUtil.`getORMFieldName(java.lang.String fieldKey, EntityType dataType)` 返回ORM查询时需要的名称，ORM查询时要带分录
    `static java.util.List<ListField>` | EntityTypeUtil.`getValidPkFields(EntityType entityType, java.util.List<ListField> listFields)`

  - ### kd.bos.entity.botp.plugin.args中EntityType的使用

    返回EntityType的kd.bos.entity.botp.plugin.args中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | BeforeCreateArticulationRowEventArgs.`getEntity()` 当前关联主实体
    `EntityType` | AfterCalcWriteValueEventArgs.`getEntity()` 关联主实体
    `EntityType` | BeforeExcessCheckEventArgs.`getSrcEntity()` 上游源单，关联主实体
    `EntityType` | AfterExcessCheckEventArgs.`getSrcEntity()` 上游源单，关联主实体
    `EntityType` | AfterCommitAmountEventArgs.`getSrcEntity()` 上游源单，关联主实体
    `EntityType` | BeforeExcessCheckEventArgs.`getTargetEntity()` 下游目标单关联主实体
    `EntityType` | AfterExcessCheckEventArgs.`getTargetEntity()` 下游目标单关联主实体
    `EntityType` | AfterCommitAmountEventArgs.`getTargetEntity()` 下游目标单关联主实体

    参数类型为EntityType的kd.bos.entity.botp.plugin.args中的构造器
    构造器和说明
    `AfterCalcWriteValueEventArgs(EntityType entity, kd.bos.dataentity.entity.DynamicObject activeRow, WriteBackRuleElement rule, WriteBackFormula ruleItem, java.math.BigDecimal val, java.lang.Object cVal)`
    `AfterCommitAmountEventArgs(WriteBackRuleElement rule, WriteBackFormula ruleItem, BillEntityType srcSubMainType, EntityType srcEntity, kd.bos.dataentity.entity.DynamicObject srcActiveRow, java.lang.String srcFieldKey, java.math.BigDecimal currVal, java.math.BigDecimal realVal, java.lang.Object currCVal, EntityType targetEntity, kd.bos.dataentity.entity.DynamicObject targetActiveRow)`
    `AfterExcessCheckEventArgs(WriteBackRuleElement rule, BillEntityType srcSubMainType, EntityType srcEntity, kd.bos.dataentity.entity.DynamicObject srcActiveRow, EntityType targetEntity, kd.bos.dataentity.entity.DynamicObject targetActiveRow)`
    `BeforeCreateArticulationRowEventArgs(EntityType entity, kd.bos.dataentity.entity.DynamicObject activeRow, kd.bos.dataentity.entity.DynamicObjectCollection linkRows)`
    `BeforeExcessCheckEventArgs(WriteBackRuleElement rule, BillEntityType srcSubMainType, EntityType srcEntity, kd.bos.dataentity.entity.DynamicObject srcActiveRow, EntityType targetEntity, kd.bos.dataentity.entity.DynamicObject targetActiveRow)`

  - ### kd.bos.entity.datamodel中EntityType的使用

    返回EntityType的kd.bos.entity.datamodel中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | IListModel.`getDataEntityType()`

    参数类型为EntityType的kd.bos.entity.datamodel中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | IListModel.`setDataEntityType(EntityType entityType)`

  - ### kd.bos.entity.filter中EntityType的使用

    参数类型为EntityType的kd.bos.entity.filter中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `static kd.bos.orm.query.QFilter` | PermissionFilterUtil.`getApprovedFilter(EntityType type)` 获取已审核过滤条件
    `static kd.bos.orm.query.QFilter` | PermissionFilterUtil.`getUsedFilter(EntityType type)` 获取启用过滤条件

  - ### kd.bos.entity.formula中EntityType的使用

    返回EntityType的kd.bos.entity.formula中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | RowDataModel.`getEntityType()` 焦点实体

    参数类型为EntityType的kd.bos.entity.formula中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `static int` | RowDataModel.`compareEntityLevel(EntityType e1, EntityType e2)` 比较两个实体的等级，如果e1是父级，返回-1; 如果e1是子级，则返回1;

  - ### kd.bos.entity.list中EntityType的使用

    返回EntityType的kd.bos.entity.list中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | IListDataProvider.`getEntityType()`

    参数类型为EntityType的kd.bos.entity.list中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | IListDataProvider.`setEntityType(EntityType entityType)`

  - ### kd.bos.entity.plugin中EntityType的使用

    参数类型为EntityType的kd.bos.entity.plugin中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | OperationServicePlugInProxy.`setSubEntityType(EntityType entityType)`

  - ### kd.bos.form中EntityType的使用

    参数类型为EntityType的kd.bos.form中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `static TreeNode` | FormMetadataCache.`getEntityTypeTree(EntityType dt)`

  - ### kd.bos.list中EntityType的使用

    返回EntityType的kd.bos.list中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `EntityType` | BillList.`getEntityType()` 获取实体元数据类型

    参数类型为EntityType的kd.bos.list中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | TemplateTextListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | MergeListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entryType)`
    `void` | ListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | IListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | FlexListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | DynamicTextListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | DecimalListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | DateListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | ComboListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | CheckBoxListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | AbstractListContainerColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `void` | AbstractListColumn.`addFieldSet(java.util.Map<java.lang.String,ListField> fieldSet, EntityType entityType)`
    `static java.util.List<IListColumn>` | ViewCommonUtil.`getEntityFields(EntityType entityType, java.util.List<IListColumn> controlItems, java.util.List<EntryEntityDto> entryEntityDtos)` 获取列表当前指定分录要显示的字段列表
    `static java.util.List<IListColumn>` | ViewCommonUtil.`getEntityFields(EntityType entityType, java.util.List<IListColumn> controlItems, java.lang.String entryEntity, java.util.List<EntryEntityDto> entryEntityDtos)` 获取列表当前指定分录要显示的字段列表
    `static java.lang.String` | ViewCommonUtil.`getFirstEntryEntity(EntityType entityType, java.util.List<EntryEntityDto> entryEntityDtos)` 获取第一个分录
    `static java.util.List<EntryEntityDto>` | ViewCommonUtil.`getValidEntryListByFilterColumn(EntityType entityType, java.util.List<FilterColumn> filterColumns)`
    `static java.util.List<EntryEntityDto>` | ViewCommonUtil.`getValidEntryListByListColumn(EntityType entityType, java.util.List<IListColumn> controlItems)` 获取有效分录(有些单据分录在列表设置器没有配置列表字段，所以要去掉)

  - ### kd.bos.servicehelper.basedata中EntityType的使用

    参数类型为EntityType的kd.bos.servicehelper.basedata中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | CreateBDUseRegTable.`create(EntityType baseDataEntity)`
    `void` | CreateBDExcTable.`create(EntityType baseDataEntity)`