您可以通过view对象,获取视图数据或选择视图数据。
Syntax
//您可以在流程表单、内容管理表单或门户页面中,通过this来获取view对象,如下:
var view = this.view;Source
Methods
    static
    
    
    lookup(view, callback, asyncopt) → {Promise}
获取指定视图的数据。
Syntax
//通过回调方法获取数据
this.view.lookup(view, callback, async);
//返回Promise对象后处理
var promise = this.view.lookup( view );
promise.then(function(data){
    //data 为返回的数据。
})Parameters
- 
            
                view
            
            
                
    
        Object要访问的视图信息。数据格式如下: 以下的filter参数参考ViewFilter { "view" : "testView", //(String)必选,视图的名称、别名或ID "application" : "test数据中心应用", //(String)必选,视图所在数据应用的名称、别名或ID "filter": [ //(Array of Object)可选,对视图进行过滤的条件。json数组格式,每个数组元素描述一个过滤条件。 { "logic":"and", "path":"$work.title", "comparison":"like", "value":"7月", "formatType":"textValue" } ] }
- 
            
                callback
            
            
                
    
        function访问成功后的回调函数 
- 
            
                async
            
            
                
    
        Boolean<optional>
 同步或异步调用。true:异步;false:同步。默认为true。 
Returns
- 
            
                Promise返回Promise 
Examples
//获取“财务管理”应用中“报销审批数据”视图中的数据
//过滤条件为标题($work.title)包含包含(like))“7月”。
this.view.lookup({
  "view": "报销审批数据",
  "application": "财务管理",
  "filter": [
      {
          "logic":"and",
          "path":"$work.title",
          "comparison":"like",
          "value":"7月",
          "formatType":"textValue"
      }
  ]
}, function(data){
  var grid = data.grid; //得到过滤后的数据
  var groupGrid = data.groupGrid; //如果有分类,得到带分类的数据
  //......
});//同上,通过返回值获取数据
var promise = this.view.lookup({
  "view": "报销审批数据",
  "application": "财务管理",
  "filter": [
      {
          "logic":"and",
          "path":"$work.title",
          "comparison":"like",
          "value":"7月",
          "formatType":"textValue"
      }
  ]
});
promise.then(function(data){
  var grid = data.grid; //得到过滤后的数据
  var groupGrid = data.groupGrid; //如果有分类,得到带分类的数据
  //......
})//获取“财务管理”应用中“报销审批数据”视图中的数据
//过滤条件为标题($work.title)包含包含(like))“7月”,并且总金额大于500小于5000
this.view.lookup({
  "view": "报销审批数据",
  "application": "财务管理",
  "filter": [
      {
          "logic":"and",
          "path":"$work.title",
          "comparison":"like",
          "value":"7月",
          "formatType":"textValue"
      },
      {
          "logic":"and",
          "path":"amount",
          "comparison":"range",
          "value":500,
          "otherValue":5000,
          "formatType":"numberValue"
      },
  ]
}, function(data){
  var grid = data.grid; //得到过滤后的数据
  var groupGrid = data.groupGrid; //如果有分类,得到带分类的数据
  //......
});Source
    static
    
    
    select(view, callback)
通过视图进行数据选择。
Syntax
this.view.select(view, callback);Parameters
- 
            
                view
            
            
                
    
        Object要访问的视图信息。数据格式如下: 以下的filter参数参考ViewFilter { "view" : "testView", //(String)必选,视图的名称、别名或ID "application" : "test数据中心应用", //(String)必选,视图所在数据应用的名称、别名或ID "isTitle" : true, //(Boolean)可选,是否显示视图标题。默认true "isMulti" : true, //(Boolean)可选,是否允许多选。默认true "width" : 700, //(Number)可选,选择框的宽度。默认700 "height" : 400, //(Number)可选,选择框的高度。默认400 "caption" : "标题", //(String)可选,选择框的标题 "filter": [ //(Array of Object)可选,对视图进行过滤的条件。json数组格式,每个数组元素描述一个过滤条件。 { "logic":"and", "path":"$work.title", "comparison":"like", "value":"7月", "formatType":"textValue" } ] }
- 
            
                callback
            
            
                
    
        function必选,当选择完成,点击“确定”之后的回调函数。 
Example
this.view.select({
   "application": "物业材料",  //数据中心中的应用
   "view": "物业材料视图",     //视图的名称
   "isMulti": false,           //只允许单选
}, function(items) {
   //如果选择了某个数据,将数据赋值给表单输入框
   if (items.length) {
       //物料名称,表单中输入框名为“materialName”, 视图中列的名称为“ylmc”
       this.data.materialName = items[0].data.ylmc;
       //规格,表单中输入框名为“specification”, 视图中列的名称为“gg”
       this.data.specification = items[0].data.gg;
       //单价,表单中输入框名为“price”, 视图中列的名称为“dj”
       this.data.price = items[0].data.dj;
   }
}.bind(this));