queryView对象可在视图中可用。它的很多方法与form类似。(仅前端脚本可用)
Usable Range
QueryView
Syntax
//您可以在视图中,通过this来获取queryView对象,如下:
var queryView = this.queryView;
Source
Methods
static
getParentEnvironment() → {MWF.xScript.Environment|MWF.xScript.CMSEnvironment}
当视图被嵌入到门户页面、流程表单或内容管理表单的时候,可以在视图可以写脚本的地方中通过这个方法来获取页面或表单的上下文。
Syntax
this.queryView.getParentEnvironment();
Returns
-
MWF.xScript.Environment
MWF.xScript.CMSEnvironment
页面或表单的上下文.
Example
var env = this.queryView.getParentEnvironment(); //当视图被嵌入到页面的时候,可以在视图里获取页面的上下文
env.page.toPortal( "公文门户" ); //调用page的toPage() 跳转到其他门户
Source
static
getViewInfor() → {Object}
获取查询的配置信息。
Syntax
this.queryView.getViewInfor();
Returns
-
Object
视图的配置信息.
{ "application": "db9fc893-7dbc-4e0f-a617-99089d2c6323", //视图所在应用 "query": "db9fc893-7dbc-4e0f-a617-99089d2c6323", //视图所在应用,同application "name": "视图自定义测试", //视图名称 "viewName": "视图自定义测试", //视图名称,同name "isExpand": "no", //如果有分类,默认是否展开开 "id": "705ce967-2f9c-425c-8873-3bd729249e1d", //视图id "alias": "", //视图别名 "description": "", //视图描述 "display": true, //视图是否显示 "type": "cms", //视图嵌入的数据类型, cms 或 process "count": 2000, //最多返回2000条 "pageSize": 20, //每页的条数 "createTime": "2019-09-02 10:18:27", "updateTime": "2020-03-26 15:53:03" }
Source
static
getPageInfor() → {Object}
获取视图当前页的基本信息。
Syntax
this.queryView.getPageInfor();
Returns
-
Object
当前页的信息,格式如下:
{ "pages": 3, //总页数 "perPageCount": 50, //每页的条数 "currentPageNumber": 1 // 当前页数 }
Source
static
getPageData() → {Array.<Object>}
获取当前页的数据。
Syntax
var data = this.queryView.getPageData();
Returns
-
Array.<Object>
当前页数据。
没有分类时候,数据格式如下:
有分类的时候,数据格式如下:[ { "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId "data": { //视图中配置的数据 "title": "考勤管理-配置-统计周期设置", //列名称及列值 "time": "2018-08-25 11:29:45" } }, ... ]
[ { "group": "工作日志", //分类1 "list": [ //分类下的数据 { "bundle": "001257be-725a-43cf-9679-3892bbab696a", //cms 的 documentId, process 的 jobId "data": { //视图中配置的数据 "title": "标题", //列名称及列值 "time": "2018-07-31 15:39:13", "category": "工作日志" } }, ... ] }, ... ]
Source
static
toPage(pageNumber, callbackopt)
跳转到指定的页面。
Syntax
var data = this.queryView.toPage( pageNumber, callback );
Parameters
-
pageNumber
Number
需要跳转的页码。
-
callback
function
<optional>
跳转的页面数据加载完成以后的回调方法。
Example
// 跳转到第2页并且获取该页的数据。
this.queryView.toPage( 2, function(){
var data = this.queryView.getPageData();
}.bind(this) )
Source
static
selectAll()
当视图设置了允许多选的时候,可以通过这个方法全部选中当前页面的条目。
Syntax
this.queryView.selectAll();
Source
static
unSelectAll()
当视图设置了允许多选的时候,可以通过这个方法取消选中的条目。
Syntax
this.queryView.unSelectAll();
Source
static
getSelectedData() → {Array.<Object>}
获取选中的条目的数据。
Syntax
var data = this.queryView.getSelectedData();
Returns
-
Array.<Object>
选中的条目的数据。
格式如下:[ { "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId "data": { //视图中配置的数据 "title": "考勤管理-配置-统计周期设置", //列名称及列值 "time": "2018-08-25 11:29:45" } }, ... ]
Source
static
setFilter(filteropt, callbackopt)
设置视图的过滤条件,该方法不能修改视图中默认的过滤条件(在开发视图的时候添加的过滤条件),而是在这上面新增。
Syntax
this.queryView.setFilter( filter );
Parameters
-
filter
Array.<ViewFilter>
|ViewFilter
|Null
<optional>
过滤条件。
当不传参数、参数为null或为空数组的情况下,表示清空非视图默认的过滤条件。
如果传入对象或者非空数组的时候,参数如下:[ { "logic":"and", "path":"$work.title", "comparison":"like", "value":"7月", "formatType":"textValue" } ]
-
callback
function
<optional>
过滤完成并重新加载数据后的回调方法。
Source
static
switchView(options)
把当前视图切换成另外一个视图。
Syntax
this.queryView.switchView( options );
Parameters
-
options
Object
需要跳转的参数配置。参数说明如下:
下列说明的filter属性参考ViewFilter{ "application": application, //必选,视图的所在应用id "viewName": viewName, //必选,视图的名称 "filter": [ { "logic":"and", "path":"$work.title", "comparison":"like", "value":"7月", "formatType":"textValue" } ], //可选,增加视图的过滤条件(ViewFilter),如果不传,则使用原视图的配置;如果需要去掉原视图的配置,则传入空数组 [] "isTitle": "yes", //可选,是否显示t视图的标题行,可选值有:yes no "select": "none", //可选,是否允许新视图选择,如果不传,则使用原视图的配置, 可选值有: 不允许选择 none, 单选 single,多选 multi "titleStyles": { "color" : "red", "font-size" : "14px" }, //可选,标题行样式,如果不传,则使用原视图的配置 "itemStyles": { "color" : "#333", "font-size" : "12px" }, //可选,内容行样式,如果不传,则使用原视图的配置 "isExpand": "no", //可选,默认是否展开分类,如果不传,则使用原视图的配置, 可选值有:yes no }
Source
static
reload()
重新加载视图。
Syntax
this.queryView.reload( callback );
Source
static
getApp()
获取打开当前页面的component对象。
Source
static
node()
获取queryView对应的DOM对象。
See
Source
static
confirm()
弹出一个确认框。
Source
static
alert()
显示一个带关闭按钮的信息框。
Source
static
notice()
显示一个信息框。
Source
static
dialog()
打开一个对话框
Source
static
selectOrg()
打开人员组织选择界面
Source
static
addEvent()
给视图添加事件。
Source
static
openWork()
打开一个在流转或已完成的流程实例。
Source
static
openJob()
根据流程的jobId打开工作。
Source
static
openDocument()
打开一个内容管理文档。
Source
static
openPortal()
打开一个门户页面。
Source
static
openCMS()
打开一个内容管理栏目。
Source
static
openProcess()
打开一个流程应用。
Source
static
openApplication()
打开一个任意一个component应用。
Source
static
createDocument()
创建一个内容管理文档。
Source
static
startProcess()
启动一个流程实例。
Source
static
getSelectedData() → {Array.<Object>}
获取选中的条目的数据。
Syntax
var data = this.target.getSelectedData();
Returns
-
Array.<Object>
选中的条目的数据。
格式如下:[ { "bundle": "099ed3c9-dfbc-4094-a8b7-5bfd6c5f7070", //cms 的 documentId, process 的 jobId "data": { //视图中配置的数据 "title": "考勤管理-配置-统计周期设置", //列名称及列值 "time": "2018-08-25 11:29:45" } }, ... ]