kd.bos.entity.datamodel

## 接口 IEntryOperate

- 所有已知子接口:
    IBaseModel, IBillModel, IDataModel
  所有已知实现类:
    AbstractFormDataModel, DynamicFormModelProxy

      public interface IEntryOperate

- - ### 方法概要

    所有方法 实例方法 抽象方法
    限定符和类型 | 方法和说明
    --- | ---
    `int[]` | `appendEntryRow(java.lang.String entryKey, int row, int count)` 批量追加分录行 （特别是 树表 F7返回数据时 需要在分录中间追加同级行，插入行是插入下级行，所以单独抽出了）
    `int[]` | `batchCreateNewEntryRow(java.lang.String entityKey, kd.bos.dataentity.entity.DynamicObject dataentity_template, int rowCount)` 批量创建行数以指定的行模板
    `int[]` | `batchCreateNewEntryRow(java.lang.String entityKey, int rowCount)` 批量新建分录行
    `void` | `copyEntryRow(java.lang.String entryKey, int[] row, boolean isCopyLinkEntry)` 复制分录行
    `int` | `createNewEntryRow(java.lang.String entrykey)` 新建分录/含子分路数据行
    `int` | `createNewEntryRow(java.lang.String entrykey, kd.bos.dataentity.entity.DynamicObject obj)`
    `int` | `createNewEntryRow(java.lang.String entityKey, int row, kd.bos.dataentity.entity.DynamicObject obj)` 创建一个新的分录行。
    `void` | `deleteEntryData(java.lang.String entrykey)` 清除分录数据包
    `void` | `deleteEntryRow(java.lang.String entryKey, int rowIndex)` 删除分录行
    `void` | `deleteEntryRows(java.lang.String entryKey, int[] rows)` 批量删除分录行
    `int` | `getEntryCurrentRowIndex(java.lang.String entryKey)` 获取分录当前行行号
    `kd.bos.dataentity.entity.DynamicObjectCollection` | `getEntryEntity(java.lang.String entryKey)` 获取单据体（包含子单据体）分录对应的数据集合
    `kd.bos.dataentity.entity.DynamicObject[]` | `getEntryEntity(java.lang.String entryKey, int startRowIndex, int endRowInex)`
    `int` | `getEntryNextRowCount(java.lang.String entryKey, int row)` 树表F7返回数据后，需要判断后面有没有足够同级行 不够就appendEntryRow（不能insert，因为insert是插入下级行）
    `int[]` | `getEntryNextRows(java.lang.String entryKey, int row, boolean includeSelf)` 当前节点后面的同级节点
    `int` | `getEntryRowCount(java.lang.String entryKey)` 获取分录行数量
    `kd.bos.dataentity.entity.DynamicObject` | `getEntryRowEntity(java.lang.String entryKey, int rowIndex)` 获取单据体内的一行数据
    `int` | `insertEntryRow(java.lang.String entrykey, int row)` 插入分录行
    `void` | `moveEntryRowDown(java.lang.String entryKey, int rowIndex)` 分录行下移
    `void` | `moveEntryRowsDown(java.lang.String entryKey, int[] rowIndexs)` 批量分录行下移
    `void` | `moveEntryRowsUp(java.lang.String entryKey, int[] rowIndexs)` 批量分录行上移
    `void` | `moveEntryRowUp(java.lang.String entryKey, int rowIndex)` 分录行上移
    `void` | `setEntryCurrentRowIndex(java.lang.String entryKey, int row)`

- - ### 方法详细资料

    - #### getEntryCurrentRowIndex

          int getEntryCurrentRowIndex(java.lang.String entryKey)

      获取分录当前行行号
      参数:
        `entryKey` -
      返回:

    - #### setEntryCurrentRowIndex

          void setEntryCurrentRowIndex(java.lang.String entryKey,
                                       int row)

    - #### getEntryRowCount

          int getEntryRowCount(java.lang.String entryKey)

      获取分录行数量
      参数:
        `key` - 单据体分录标识
      返回:
        返回总行数

    - #### getEntryEntity

          kd.bos.dataentity.entity.DynamicObject[] getEntryEntity(java.lang.String entryKey,
                                                                  int startRowIndex,
                                                                  int endRowInex)

    - #### createNewEntryRow

          int createNewEntryRow(java.lang.String entrykey,
                                kd.bos.dataentity.entity.DynamicObject obj)

    - #### createNewEntryRow

          int createNewEntryRow(java.lang.String entrykey)

      新建分录/含子分路数据行
      参数:
        `key` - 单据体分录标识

    - #### createNewEntryRow

          int createNewEntryRow(java.lang.String entityKey,
                                int row,
                                kd.bos.dataentity.entity.DynamicObject obj)

      创建一个新的分录行。
      参数:
        `entity` - 要插入的分录。
        `row` - 所在行索引，可以是-1，表示加入到末尾。
        `obj` - 如果指定此参数，表示外部已经构建了数据。

    - #### batchCreateNewEntryRow

          int[] batchCreateNewEntryRow(java.lang.String entityKey,
                                       int rowCount)

      批量新建分录行
      参数:
        `key` -
        `rowCount` - 批量创建行数

    - #### batchCreateNewEntryRow

          int[] batchCreateNewEntryRow(java.lang.String entityKey,
                                       kd.bos.dataentity.entity.DynamicObject dataentity_template,
                                       int rowCount)

      批量创建行数以指定的行模板
      参数:
        `key` - 分录标识
        `rowDataEntity` - 行数据模板
        `rowCount` - 行数

    - #### deleteEntryData

          void deleteEntryData(java.lang.String entrykey)

      清除分录数据包
      参数:
        `key` - 单据体分录标识

    - #### insertEntryRow

          int insertEntryRow(java.lang.String entrykey,
                             int row)

      插入分录行
      参数:
        `key` - 单据体分录标识
        `row` - 分录行号
      返回:

    - #### appendEntryRow

          int[] appendEntryRow(java.lang.String entryKey,
                               int row,
                               int count)

      批量追加分录行 （特别是 树表 F7返回数据时 需要在分录中间追加同级行，插入行是插入下级行，所以单独抽出了）
      参数:
        `entryKey` -
        `row` -
        `count` -
      返回:

    - #### getEntryNextRowCount

          int getEntryNextRowCount(java.lang.String entryKey,
                                   int row)

      树表F7返回数据后，需要判断后面有没有足够同级行 不够就appendEntryRow（不能insert，因为insert是插入下级行）
      参数:
        `entryKey` -
        `row` -
      返回:

    - #### getEntryNextRows

          int[] getEntryNextRows(java.lang.String entryKey,
                                 int row,
                                 boolean includeSelf)

      当前节点后面的同级节点
      参数:
        `entryKey` -
        `row` -
        `includeSelf` -
      返回:

    - #### copyEntryRow

          void copyEntryRow(java.lang.String entryKey,
                            int[] row,
                            boolean isCopyLinkEntry)

      复制分录行
      参数:
        `entryKey` - 单据体分录标识
        `row[]` - 选择的分录行号
        `isCopyLinkEntry` - 是否复制关联单据体??

    - #### deleteEntryRow

          void deleteEntryRow(java.lang.String entryKey,
                              int rowIndex)

      删除分录行
      参数:
        `key` - 单据体分录标识
        `row` - 要删除的行

    - #### deleteEntryRows

          void deleteEntryRows(java.lang.String entryKey,
                               int[] rows)

      批量删除分录行
      参数:
        `key` - 单据体分录标识
        `row` - 要批量删除的行

    - #### moveEntryRowUp

          void moveEntryRowUp(java.lang.String entryKey,
                              int rowIndex)

      分录行上移
      参数:
        `key` - 单据体分录标识
        `rowIndex` - 要移动的行号

    - #### moveEntryRowsUp

          void moveEntryRowsUp(java.lang.String entryKey,
                               int[] rowIndexs)

      批量分录行上移
      参数:
        `key` - 单据体分录标识
        `rowIndexs` - 要移动的批量行号

    - #### moveEntryRowDown

          void moveEntryRowDown(java.lang.String entryKey,
                                int rowIndex)

      分录行下移
      参数:
        `key` - 单据体分录标识
        `rowIndex` - 要移动的批量行号

    - #### moveEntryRowsDown

          void moveEntryRowsDown(java.lang.String entryKey,
                                 int[] rowIndexs)

      批量分录行下移
      参数:
        `key` - 单据体分录标识
        `rowIndex` - 要移动的批量行号

    - #### getEntryRowEntity

          kd.bos.dataentity.entity.DynamicObject getEntryRowEntity(java.lang.String entryKey,
                                                                   int rowIndex)

      获取单据体内的一行数据
      参数:
        `entryName` - 实体名称
        `rowIndex` - 行索引
      返回:

    - #### getEntryEntity

          kd.bos.dataentity.entity.DynamicObjectCollection getEntryEntity(java.lang.String entryKey)

      获取单据体（包含子单据体）分录对应的数据集合
      参数:
        `entryKey` - 实体定义 数据包
      返回:
        分录数据集合