CommandArg

CommandArg为二次开发方法被调用时,形式参数的类型。在运行时该类中的成员变量的具体值由CommandArgOption注解来决定

argObject

argObject在以下几种情况下有值 plugin的数据传递 formCmd的数据传递 jsCallPlugin的数据传递

Object obj = arg.argObject;
//例如:在pluginRadioItemSelect_ 方法内 获取到的值是 当前Radio选中的值

formParam

窗体自身的参数

FormParam formParam = arg.formParam;
  • callerCommandArg:访问窗体的CommandArg,父窗体的CommandArg

    CommandArg callerCommandArg = arg.formParam.callerCommandArg;
    //例如:从A画面打开B画面  在B画面的按钮方法内 获取到 A画面的arg
    
  • callerFormId:访问窗体的formId

    String callerFormId = arg.formParam.callerFormId;
    
  • callerKey:访问窗体的key 可以在OpenFormArg中指定 如果未做特别指定,则为MenuItemButton的@name ,如果同一个画面多次被打开时callerkey完全一致,则不重新打开画面,而是将原来打开的画面前置,popup的画面除外,如果callerkey不用,则重新打开一个新的画面

    String callerKey = arg.formParam.callerKey;
    
  • callerLookupField:当前窗口是下拉画面时 访问窗体的下拉字段名称

    String callerLookupField = arg.formParam.callerLookupField;
    
  • callerMenuItemId:访问窗体的menuItemId

    String callerMenuItemId = arg.formParam.callerMenuItemId;
    
  • callerType:访问窗体对当前窗体的访问类型

    CallerType callerType = arg.formParam.callerType;
    
  • formId:当前窗体的formId

    String formId = arg.formParam.formId;
    
  • joinTableAlias:访问窗体中的关联表的别名

    String joinTableAlias = arg.formParam.joinTableAlias;
    
  • joinTableName:访问窗体中的关联表的表名

    String joinTableName = arg.formParam.joinTableName;
    
  • menuItemId:窗体的menuItemId

    String menuItemId = arg.formParam.menuItemId;
    
  • paramObject:如果通过OpenFormArg打开的Form,可以指定paramObject 注意 将被弃用

    Object paramObject = arg.formParam.paramObject;
    
  • paramString:窗体的参数(字符串形式) 如果未做特别指定,则取GOT树中MenuItem的参数Parameters的值 (当使用openForm打开画面时,paramObject传参数,paramString传"ImportTable_Course",即打开导入控制台相关信息的画面,在导入类中使用this.formParam.paramObject获取。)

    String paramString = arg.formParam.paramString;
    
  • argObject:argObject在以下几种情况下有值 plugin的数据传递 formCmd的数据传递 jsCallPlugin的数据传递

    Object argObject = arg.argObject;
    
  • contextMap:contextMap中存放客户端画面上存储的内容。仅在当前客户端存储。可在二次开发中存放当前客户端的参数

    Map<String, Object> contextMap = arg.contextMap;
    
  • defaultGroupAlias:标志了在调用方法getGroupInfo时,取到的是哪一个FormDataSourceGroup

    String defaultGroupAlias = arg.defaultGroupAlias;
    
  • joinGroup:当前主Group关联的FormDataSourceGroup

    CommandArgGroupInfo joinGroup = arg.joinGroup;
    
  • mapEditors:mapEditors包含了画面上所有无数据源控件的值,key为控件的名字,值为控件的值。(前提是CommandArgOption注解标志了这些无数据源控件的值被传到服务端,详见CommandArgOption)

    Map<String, Object> mapEditors = arg.mapEditors;
    
  • mapGroups:mapGroups涵盖了数据源组的信息,key为数据源组的别名(主数据源的name),值为CommandArgGroupInfo的实例

    Map<String, Object> mapGroups = arg.mapGroups;
    

getAllMaps

得到画面上所有记录(包括DataMethod这样不在表中存在的字段)返回值是一个List,List中是Map 一个Map即一条记录 Map的Key值即字段名或者DataMethod字段的名

方法签名

List<Map<String,Object>> allMaps = arg.getAllMaps()

方法入参

getAllRecords

得到画面上所有记录 返回一个List ,List中是GongqiRecord对象 可以强转成对应表对象

方法签名

List<? extends GongqiRecord> allRecords = arg.getAllRecords();

方法入参

getCurrentMap

得到当前选中记录(包括DataMethod这样不在表中存在的字段)返回值为一个Map,Map的Key值即字段名或者DataMethod字段的名

方法签名

Map<String, Object> currentMap = arg.getCurrentMap();

方法入参

getCurrentRecord

得到画面上当前的选中记录 返回 GongqiRecord对象 可以强制成对应表对象

方法签名

GongqiRecord currentRecord = arg.getCurrentRecord();

方法入参

示例代码

//获取到画面上SysUser数据源选中的记录 返回 SysUser对象
SysUser user = (SysUser)arg.getCurrentRecord();

getCurrentRecordOrig

得到数据表中与画面上当前的选中记录所对应的记录。假设记录A中的字段a在数据表里的值为1,因为用户修改在客户端的值为2,则getCurrentRecord得到的该字段的值为2,getCurrentRecordOrig得到的该字段的值为1

方法签名

GongqiRecord currentRecordOrig = arg.getCurrentRecordOrig();

方法入参

示例代码

//获取到画面上SysUser数据源选中的记录 返回 SysUser对象
SysUser user = (SysUser)arg.getCurrentRecordOrig();

getSelectedRecords

得到当前选中的记录

方法签名

List<? extends GongqiRecord> selectedRecords = arg.getSelectedRecords();

方法入参

示例代码

//获取到画面上SysUser数据源选中的记录 返回 SysUser对象
List<SysUser> users = (List<SysUser>)arg.getSelectedRecords();

getSelectedRecordsOrig

得到数据表中与画面上当前的选中记录所对应的记录

方法签名

List<? extends GongqiRecord> selectedRecordsOrig = arg.getSelectedRecordsOrig();

方法入参

示例代码

//获取到画面上SysUser数据源选中的记录 返回 SysUser对象
List<SysUser> users = (List<SysUser>)arg.getSelectedRecordsOrig();

getJoinGroupRecord

得到关联数据源组的关联记录,其中forUpdate参数表示是否对得到的记录做更新,如果要更新,则为true,否则在更新的时候框架会抛出异常。例如,通过menuItemButton从画面A打开画面C,C中的数据随A中的当前选中记录而更新,则C中二次开发方法的CommandArg参数的getJoinGroupRecord可以得到A中的当前记录。要获取JoinGroupRecord需要配合CommandArgOption注解——“joinGroup=yes”使用

方法签名

GongqiRecord joinGroupRecord = arg.getJoinGroupRecord();

方法入参

示例代码

//获取到画面上SysUserRelation数据源选中的记录的关联数据源 返回 SysUserRelation对象
SysUserRelation users = (SysUserRelation)arg.getJoinGroupRecord();

getJoinGroupRecordOrig

得到关联数据源组的在画面上的关联记录所对应的数据表中的记录,同getCurrentRecordOrig

方法签名

GongqiRecord joinGroupRecordOrig = arg.getJoinGroupRecordOrig();

方法入参

示例代码

//获取到画面上SysUserRelation数据源选中的记录的关联数据源 返回 SysUserRelation对象
SysUserRelation users = (SysUserRelation)arg.getJoinGroupRecordOrig();

getCurrentQuery

得到defaultGroupAlias指定的数据源组的当前查询,返回值为QueryTable的一个实例。要获取CurrentQuery需要配合CommandArgOption注解——“groups="current(cq)"”使用,“current”根据画面上的实际情况可改为all或者具体的FormDataSource名字

方法签名

QueryTable currentQuery = arg.getCurrentQuery();

方法入参

getFormQuery

得到defaultGroupAlias所指定的数据源组的FormQuery,在客户端,FormQuery是CurrentQuery的一个备份,它也是一个QueryTable的实例。要获取FormQuery需要配合CommandArgOption注解——“groups="current(fq)"”使用,“current”根据画面上的实际情况可改为all或者具体的FormDataSource名字

方法签名

QueryTable formQuery = arg.getFormQuery();

方法入参

getGroupInfo

得到defaultGroupAlias所指定的数据源组的CommandArgGroupInfo实例。CommandArgGroupInfo封装了特定数据源组的信息,它的方法与属性与CommandArg类似,CommandArg封装了其属性defaultGroupAlias所指定的数据源组的信息,此处不再展开说明

方法签名

CommandArgGroupInfo groupInfo = arg.getGroupInfo();

方法入参

  • String groupAlias:得到指定的数据源组的CommandArgGroupInfo实例

示例代码

//获取到SysUser数据源
CommandArgGroupInfo groupInfo2 = arg.getGroupInfo("SysUser");
QueryTable formQuery2 = arg.getGroupInfo("SysUser").getFormQuery();
QueryTable currentQuery2 = arg.getGroupInfo("SysUser").getCurrentQuery();

getContextMap

得到客户端contextMap对象

方法签名

Map<String, Object> currentMap2 = arg.getCurrentMap();
Object contextValue = arg.getContextMap("key");

方法入参

  • String key : 指定Key

getDialogFieldValue

得到Dialog中的DialogField的值。dialogFieldId为构造Dialog时DialogField的Id

方法签名

Object dialogFieldValue = arg.getDialogFieldValue();

方法入参

  • String key: 指定dialogFieldId

getEditorValue

得到mapEditors中某个Editor的值,controlId为Editor的名字

方法签名

Object editorValue = arg.getEditorValue("controlName");

方法入参

  • String key: 指定controlId

results matching ""

    No results matching ""