kd.bos.form

## 接口 IClientViewProxy

-     public interface IClientViewProxy

  前段交互代理，把一些内部使用的方法，从IFormView接口，剥离出来，避免误导插件使用； 把IFormView提供的一些方法，打包为前端指令；

- - ### 方法概要

    所有方法 实例方法 抽象方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | `addAction(java.lang.String actionName, java.lang.Object arg)` 添加？
    `void` | `addAction(java.lang.String actionName, java.lang.Object arg, java.lang.String callbackid)`
    `void` | `addRuleAction(java.lang.String ruleActionId, int index)`
    `void` | `appendRow(java.lang.String entryKey, java.util.List<java.lang.Object> rowData)` 给单据体追加行
    `TreeView.TreeState` | `checkNodes(java.lang.String key, java.util.List<TreeNode> nodes)` 检查节点状态
    `TreeView.TreeState` | `checkNodesWithoutChild(java.lang.String key, java.util.List<TreeNode> nodes)`
    `void` | `clearControlsState()` 清除控件状态
    `void` | `deleteRows(java.lang.String entrykey, int[] row)` 在单据体中 删除行
    `void` | `focusCell(java.lang.String entryKey, int rowIndex, java.lang.String colKey)` 选中单元格
    `java.util.List<java.lang.Object>` | `getActionResult()` 返回全部的指令, 包括元素和分录属性刷新
    `AbstractGrid.GridState` | `getEntryState(java.lang.String entryKey)` 获取单据体状态
    `FilterGrid.FilterGridState` | `getFilterGridState(java.lang.String filterGridKey)` 获取过滤器表格状态
    `java.lang.Object` | `getLockState(java.lang.String key)` 获取锁定状态
    `TreeView.TreeState` | `getTreeState(java.lang.String key)` 获取树形状态
    `java.lang.Object` | `getViewState(java.lang.String key)` 获取视图状态
    `java.lang.Object` | `getVisibleState(java.lang.String key)` 获取可见状态
    `void` | `insertRow(java.lang.String entryKey, int row, java.util.List<java.lang.Object> rowData)` 在单据体中插入行
    `void` | `invokeControlMethod(java.lang.String key, java.lang.String methodName, java.lang.Object... parameters)` 在更新控件状态后调用控件方法
    `void` | `loadViewStates()` 加载保存到缓存中的控件状态
    `void` | `moveDown(java.lang.String entrykey, int[] row, int rowCount)` 下移
    `void` | `moveUp(java.lang.String entrykey, int[] row)` 上移
    `void` | `postBack(java.lang.String key, java.lang.Object state)`
    `void` | `preInvokeControlMethod(java.lang.String key, java.lang.String methodName, java.lang.Object... parameters)` 在更新控件状态前调用控件方法
    `void` | `removeAction(java.lang.String actionName)`
    `void` | `removeInvokeControlMethod(java.lang.String key, java.lang.String methodName)` 移除调用控件方法
    `AbstractGrid.GridState` | `selectRows(java.lang.String entrykey, int[] selRows, int focusRow)` 选中多行记录
    `void` | `setEntryFieldProperty(java.lang.String entryKey, java.lang.String key, java.lang.String property, java.lang.Object v)` 设置单据体字段属性
    `void` | `setEntryFieldValue(AbstractGrid grid, java.lang.String key, int rowIndex, java.lang.Object v)` 设置单据体字段值
    `void` | `setEntryProperty(java.lang.String key, java.lang.String property, java.lang.Object v)` 设置单据体属性
    `void` | `setFieldProperty(java.lang.String key, java.lang.String property, java.lang.Object v)` 设置字段属性
    `void` | `setFocus(java.util.Map<java.lang.String,java.lang.Object> para)`
    `void` | `setLockState(java.lang.String key, java.lang.Object value)` 设置锁定状态
    `void` | `setNumFmtInfo(java.lang.String propName, java.util.Map<java.lang.String,java.lang.Object> info)` 设置num格式化信息，num是什么？
    `void` | `setNumFmtInfos(java.util.Map<java.lang.String,java.lang.Object> info)` 设置多个num格式化信息，num是什么？
    `void` | `setTimeZone(java.lang.String propName, java.util.Map<java.lang.String,java.lang.Object> info)`
    `void` | `setTimeZones(java.util.Map<java.lang.String,java.lang.Object> info)`
    `void` | `setVisibleState(java.lang.String key, java.lang.Object value)` 设置可见状态
    `void` | `updateCellFmt(java.lang.String entryGridKey, java.lang.String fieldKey, int rowIndex)` 更新单元格格式化信息

- - ### 方法详细资料

    - #### loadViewStates

          void loadViewStates()

      加载保存到缓存中的控件状态

    - #### postBack

          void postBack(java.lang.String key,
                        java.lang.Object state)

    - #### getViewState

          java.lang.Object getViewState(java.lang.String key)

      获取视图状态
      参数:
        `key` -
      返回:

    - #### getLockState

          java.lang.Object getLockState(java.lang.String key)

      获取锁定状态
      参数:
        `key` -
      返回:

    - #### getVisibleState

          java.lang.Object getVisibleState(java.lang.String key)

      获取可见状态
      参数:
        `key` -
      返回:

    - #### setLockState

          void setLockState(java.lang.String key,
                            java.lang.Object value)

      设置锁定状态
      参数:
        `key` - 控件标识
        `value` - 设置值

    - #### setVisibleState

          void setVisibleState(java.lang.String key,
                               java.lang.Object value)

      设置可见状态
      参数:
        `key` - 控件标识
        `value` - 设置值

    - #### clearControlsState

          void clearControlsState()

      清除控件状态

    - #### getEntryState

          AbstractGrid.GridState getEntryState(java.lang.String entryKey)

      获取单据体状态
      参数:
        `entryKey` - 单据体标识
      返回:

    - #### getFilterGridState

          FilterGrid.FilterGridState getFilterGridState(java.lang.String filterGridKey)

      获取过滤器表格状态
      参数:
        `filterGridKey` - 过滤器表格标识
      返回:

    - #### setFocus

          void setFocus(java.util.Map<java.lang.String,java.lang.Object> para)

    - #### getActionResult

          java.util.List<java.lang.Object> getActionResult()

      返回全部的指令, 包括元素和分录属性刷新
      返回:

    - #### setFieldProperty

          void setFieldProperty(java.lang.String key,
                                java.lang.String property,
                                java.lang.Object v)

      设置字段属性
      参数:
        `key` - 控件标识
        `property` - 属性值
        `v` - 设置值

    - #### setEntryProperty

          void setEntryProperty(java.lang.String key,
                                java.lang.String property,
                                java.lang.Object v)

      设置单据体属性
      参数:
        `key` - 控件标识
        `property` - 属性值
        `v` - 设置值

    - #### setEntryFieldProperty

          void setEntryFieldProperty(java.lang.String entryKey,
                                     java.lang.String key,
                                     java.lang.String property,
                                     java.lang.Object v)

      设置单据体字段属性
      参数:
        `entryKey` - 单据体标识
        `key` - 控件标识
        `property` - 属性值
        `v` - 设置值

    - #### setEntryFieldValue

          void setEntryFieldValue(AbstractGrid grid,
                                  java.lang.String key,
                                  int rowIndex,
                                  java.lang.Object v)

      设置单据体字段值
      参数:
        `grid` - 单据体分录
        `key` - 单据体标识
        `rowIndex` - 行号
        `v` - 字段值

    - #### updateCellFmt

          void updateCellFmt(java.lang.String entryGridKey,
                             java.lang.String fieldKey,
                             int rowIndex)

      更新单元格格式化信息
      参数:
        `entryGridKey` - 单据体分录标识
        `fieldKey` - 字段标识
        `rowIndex` - 行号

    - #### removeAction

          void removeAction(java.lang.String actionName)

    - #### addAction

          void addAction(java.lang.String actionName,
                         java.lang.Object arg)

      添加？
      参数:
        `actionName` -
        `arg` -

    - #### addAction

          void addAction(java.lang.String actionName,
                         java.lang.Object arg,
                         java.lang.String callbackid)

    - #### addRuleAction

          void addRuleAction(java.lang.String ruleActionId,
                             int index)

    - #### preInvokeControlMethod

          void preInvokeControlMethod(java.lang.String key,
                                      java.lang.String methodName,
                                      java.lang.Object... parameters)

      在更新控件状态前调用控件方法
      参数:
        `key` - 控件标识
        `methodName` - 方法名
        `parameters` - 参数

    - #### invokeControlMethod

          void invokeControlMethod(java.lang.String key,
                                   java.lang.String methodName,
                                   java.lang.Object... parameters)

      在更新控件状态后调用控件方法
      参数:
        `key` - 控件标识
        `methodName` - 方法名
        `parameters` - 参数

    - #### removeInvokeControlMethod

          void removeInvokeControlMethod(java.lang.String key,
                                         java.lang.String methodName)

      移除调用控件方法
      参数:
        `key` - 控件标识
        `methodName` - 方法名

    - #### appendRow

          void appendRow(java.lang.String entryKey,
                         java.util.List<java.lang.Object> rowData)

      给单据体追加行
      参数:
        `entryKey` - 单据体标识
        `rowData` - 行数据

    - #### insertRow

          void insertRow(java.lang.String entryKey,
                         int row,
                         java.util.List<java.lang.Object> rowData)

      在单据体中插入行
      参数:
        `entryKey` - 单据体标识
        `row` - 行号
        `rowData` - 行数据

    - #### deleteRows

          void deleteRows(java.lang.String entrykey,
                          int[] row)

      在单据体中 删除行
      参数:
        `entrykey` - 单据体标识
        `row` - 多个行号

    - #### moveUp

          void moveUp(java.lang.String entrykey,
                      int[] row)

      上移
      参数:
        `entrykey` - 单据体标识
        `row` - 多个行号

    - #### moveDown

          void moveDown(java.lang.String entrykey,
                        int[] row,
                        int rowCount)

      下移
      参数:
        `entrykey` - 单据体标识
        `row` - 多个行号
        `rowCount` - 行数

    - #### selectRows

          AbstractGrid.GridState selectRows(java.lang.String entrykey,
                                            int[] selRows,
                                            int focusRow)

      选中多行记录
      参数:
        `entrykey` - 单据体标识
        `selRows` - 选择行的行号
        `focusRow` - 焦点聚集的行号
      返回:
        表格

    - #### setNumFmtInfos

          void setNumFmtInfos(java.util.Map<java.lang.String,java.lang.Object> info)

      设置多个num格式化信息，num是什么？
      参数:
        `info` - 格式化信息组

    - #### setNumFmtInfo

          void setNumFmtInfo(java.lang.String propName,
                             java.util.Map<java.lang.String,java.lang.Object> info)

      设置num格式化信息，num是什么？
      参数:
        `propName` - 属性名
        `info` - 格式化信息组

    - #### setTimeZones

          void setTimeZones(java.util.Map<java.lang.String,java.lang.Object> info)

    - #### setTimeZone

          void setTimeZone(java.lang.String propName,
                           java.util.Map<java.lang.String,java.lang.Object> info)

    - #### getTreeState

          TreeView.TreeState getTreeState(java.lang.String key)

      获取树形状态
      参数:
        `key` -
      返回:

    - #### checkNodes

          TreeView.TreeState checkNodes(java.lang.String key,
                                        java.util.List<TreeNode> nodes)

      检查节点状态
      参数:
        `key` -
        `nodes` - 节点列表
      返回:

    - #### checkNodesWithoutChild

          TreeView.TreeState checkNodesWithoutChild(java.lang.String key,
                                                    java.util.List<TreeNode> nodes)

    - #### focusCell

          void focusCell(java.lang.String entryKey,
                         int rowIndex,
                         java.lang.String colKey)

      选中单元格
      参数:
        `entryKey` - 单据体标识
        `rowIndex` - 行号
        `colKey` - 列号