使用范围:UI2
component Data ($UI/system/components/justep/data/data) extends ModelComponent
data组件
数据刷新说明: 原则: 1、limit为-1时表示不分页加载数据,一次全部加载,反之 2、部分刷新函数提供“增量模式”参数,当使用“增量模式”时原修改数据不会覆盖,只是增加新刷新的数据 3、getCount()函数获取的是前端已经加载的记录数,getTotal()函数获取的是全部的记录数,包括分页没有加载的数据。getTotal()函数在refreshData或者loadData后可以使用 主要函数: 1、refreshData刷新首页或者全部数据,受limit影响 2、loadPageData加载指定页数据,limit!=-1时可以使用 3、loadNextPageData根据当前offset加载下一页数据,limit!=-1时可以使用 4、loadAllPageData分页时加载所有数据,limit!=-1时可以使用 数据新增案例参考:Data#newData 数据保存案例参考:Data#saveData 遍历当前.W中的Data案例参考:Data.each、Data.eachAll 统计函数参考:Data.count、Data.sum、Data.avg、Data.min、Data.max 过滤条件设置参考:Data#setFilter 数据查找参考:Data#find
Constructor Top
Data () |
Static Properties & Enumerations Top
Row |
Row
data行 |
Properties Top
boolean |
autoLoad
= false
自动加载数据,与auto-new属性互斥,默认:false | ||
boolean |
autoNew
= false
自动新增数据,与auto-load属性互斥,默认:false | ||
boolean |
confirmDelete
删除确认提示 | ||
string |
confirmDeleteText
删除确认提示文本 | ||
boolean |
confirmRefresh
数据修改后未保存刷新时的确认提示 | ||
string |
confirmRefreshText
未保存数据刷新确认提示文本 | ||
object |
defCols
data的列定义,是运行时data组件js对象上所有列的定义 | ||
object |
deleteDatas
data删除还没有提交数据的可观察数组,可以data.deleteDatas.get()获取Row数组 | ||
boolean |
directDeleteMode
直接删除方式,删除时直接进行数据提交,当为false时删除记录将在saveData时统一提交 | ||
integer |
limit
分页取数据的页记录数,等于-1时不执行分页一次取全部数据,运行时谨慎修改,会影响数据导航条分页取数据状态 | ||
slaveDatas
从data的id数组 | |||
string |
xid
[readonly]data的xid |
Attributes Top
boolean |
autoLoad
= false
自动加载数据,与auto-new属性互斥,默认:false | ||
boolean |
autoNew
= false
自动新增数据,与auto-load属性互斥,默认:false | ||
boolean |
isTree
是否树形数据 | ||
integer |
limit
分页取数据的页记录数,等于-1时不执行分页一次取全部数据,运行时谨慎修改,会影响数据导航条分页取数据状态 | ||
master
主从关系 | |||
XML |
rule
规则,可以定义列的只读规则(readonly)、计算规则(calculate)、必填规则(required)、约束规则(constraint) | ||
treeOption
树参数 |
Methods Top
void | add (object defaultValue, Row parent) | |
object | aggVal (string col) | |
void | applyUpdates () | |
number | avg (string column, function filterCallback) | |
number | avgByAll (string column, function | Row filterCallback) | |
boolean | bof () | |
string | buildFilter () | |
void | cancelUpdates () | |
void | clear () | |
void | clearOrderBy () | |
string | col (string col) | |
Integer | count (Function filterCallback) | |
number | countByAll (function filterCallback) | |
void | deleteAllData (DataConfirmParam options) | |
boolean | deleteData (Array rows, DataConfirmParam options) | |
void | disableRecordChange () | |
void | doDeleteAfter (boolean success, Object options, Object params) | |
void | doRefreshAfter (boolean success, Object options, Object params) | |
void | doSaveAfter (boolean success, Object options, Object params) | |
void | each (function callback, object caller, Row parent) | |
void | eachAll (function callback, object caller, Row parent) | |
void | eachAllByPeek (function callback, object caller, Row parent) | |
void | eachByPeek (function callback, object caller, Row parent) | |
void | enabledRecordChange () | |
boolean | eof () | |
void | exchangeRow (Row row1, Row row2) | |
boolean | exist (String rowID) | |
Array<Row> | find (Array fields, Array values, Boolean first, Boolean caseInsensitive, Boolean partialKey, Boolean all) | |
void | first () | |
object | getAggregateValue (String col) | |
String | getChangedIDs (Data.STATE type, String delim) | |
list<Row> | getChangedRows (Data.STATE type) | |
String | getColumnIDs () | |
integer | getCount (Row parent) | |
void | getCurrentRow (boolean peek) | |
Any | getCurrentRowID () | |
String | getFilter (String name) | |
Row | getFirstRow () | |
Array |
getIDs () | |
string | getInvalidInfo (boolean force) | |
Row | getLastRow () | |
integer | getOffset (Row parent) | |
integer | getOrderBy (string relation) | |
Any | getOriginalValue (string col, Row row) | |
boolean | getReadonly () | |
Row | getRowByID (string rowid) | |
Any | getRowID (Row row,行对象) | |
integer | getRowIndex (Row row) | |
Data.STATE | getRowState (Row row) | |
integer | getTotal (Row parent) | |
object | getTreeOption () | |
object | getUserData (string name, Row row) | |
Any | getValue (String col, Row row) | |
object | getValueByID (String col, String rowid) | |
boolean | isCalculateCol (string col) | |
boolean | isChanged () | |
boolean | isLeaf (Row row) | |
boolean | isSelfChanged () | |
boolean | isSlaveChanged () | |
boolean | isTree () | |
boolean | isValid (boolean force) | |
string | label (string col) | |
void | last () | |
boolean | loadAllPageData (Object options) | |
void | loadData (JSON data, Boolean append, integer index, boolean override) | |
boolean | loadNextPageData (Object options) | |
boolean | loadPageData (integer pageIndex, Object options) | |
number | max (string column, function filterCallback) | |
number | maxByAll (string column, function | Row filterCallback) | |
number | min (string column, function filterCallback) | |
number | minByAll (string column, function | Row filterCallback) | |
List | newData (JSON options) | |
void | next () | |
void | open () | |
void | pre () | |
object | ref (string col, Row row) | |
boolean | refreshData (RefreshDataParam options) | |
void | remove (Row row) | |
Boolean | saveData (Object options) | |
void | setFilter (String name, String filter) | |
void | setOrderBy (string relation, integer type) | |
void | setRowState (Row row, Data.STATE state) | |
void | setTotal (integer count, Row parent) | |
void | setUserData (String name, String value, Row row) | |
void | setValue (String col, Any value, Row row) | |
void | setValueByID (string col, object value, string rowid) | |
void | sort (function callback) | |
Number | sum (String column, function filterCallback) | |
number | sumByAll (string column, function | Row filterCallback) | |
void | to (Row | string row) | |
Object | toJson (JsonParam option) | |
object | val (string col, Row row) |
Operations Top
clear () | ||
void | delete (List.<Row> | Row 删除的行或者行数组,缺省为当前行) | |
void | deleteAll (boolean force) | |
void | firstPage () | |
void | firstRow () | |
void | lastPage () | |
void | lastRow () | |
void | loadAllPage () | |
void | loadNextPage () | |
void | loadPage (integer pageIndex) | |
void | new (Array<Row> defaultValues, integer index) | |
void | newBrother (Row parent) | |
void | newChild (Row parent) | |
void | nextPage () | |
void | nextRow () | |
void | prevPage () | |
void | prevRow () | |
void | refresh (boolean force) | |
void | save () |
Events Top
Constructor details
Top
public
Data
()
data组件
数据刷新说明:
原则:
1、limit为-1时表示不分页加载数据,一次全部加载,反之
2、部分刷新函数提供“增量模式”参数,当使用“增量模式”时原修改数据不会覆盖,只是增加新刷新的数据
3、getCount()函数获取的是前端已经加载的记录数,getTotal()函数获取的是全部的记录数,包括分页没有加载的数据。getTotal()函数在refreshData或者loadData后可以使用
主要函数:
1、refreshData刷新首页或者全部数据,受limit影响
2、loadPageData加载指定页数据,limit!=-1时可以使用
3、loadNextPageData根据当前offset加载下一页数据,limit!=-1时可以使用
4、loadAllPageData分页时加载所有数据,limit!=-1时可以使用
数据新增案例参考:Data#newData
数据保存案例参考:Data#saveData
遍历当前.W中的Data案例参考:Data.each、Data.eachAll
统计函数参考:Data.count、Data.sum、Data.avg、Data.min、Data.max
过滤条件设置参考:Data#setFilter
数据查找参考:Data#find
data组件
数据刷新说明: 原则: 1、limit为-1时表示不分页加载数据,一次全部加载,反之 2、部分刷新函数提供“增量模式”参数,当使用“增量模式”时原修改数据不会覆盖,只是增加新刷新的数据 3、getCount()函数获取的是前端已经加载的记录数,getTotal()函数获取的是全部的记录数,包括分页没有加载的数据。getTotal()函数在refreshData或者loadData后可以使用 主要函数: 1、refreshData刷新首页或者全部数据,受limit影响 2、loadPageData加载指定页数据,limit!=-1时可以使用 3、loadNextPageData根据当前offset加载下一页数据,limit!=-1时可以使用 4、loadAllPageData分页时加载所有数据,limit!=-1时可以使用 数据新增案例参考:Data#newData 数据保存案例参考:Data#saveData 遍历当前.W中的Data案例参考:Data.each、Data.eachAll 统计函数参考:Data.count、Data.sum、Data.avg、Data.min、Data.max 过滤条件设置参考:Data#setFilter 数据查找参考:Data#find
Static Properties & Enumerations Detail Top
data行
Properties Detail Top
public
boolean
autoLoad
= false
false
自动加载数据,与auto-new属性互斥,默认:false
public
boolean
autoNew
= false
false
自动新增数据,与auto-load属性互斥,默认:false
public
boolean
confirmDelete
删除确认提示
public
string
confirmDeleteText
删除确认提示文本
See ConfirmDelete
public
boolean
confirmRefresh
数据修改后未保存刷新时的确认提示
public
string
confirmRefreshText
未保存数据刷新确认提示文本
See ConfirmRefresh
public
object
defCols
data的列定义,是运行时data组件js对象上所有列的定义
public
object
deleteDatas
data删除还没有提交数据的可观察数组,可以data.deleteDatas.get()获取Row数组
public
boolean
directDeleteMode
直接删除方式,删除时直接进行数据提交,当为false时删除记录将在saveData时统一提交
public
integer
limit
分页取数据的页记录数,等于-1时不执行分页一次取全部数据,运行时谨慎修改,会影响数据导航条分页取数据状态
public
slaveDatas
从data的id数组
public
string
xid
[readonly]data的xid
Attributes Detail Top
public
boolean
autoLoad
= false
false
自动加载数据,与auto-new属性互斥,默认:false
public
boolean
autoNew
= false
false
自动新增数据,与auto-load属性互斥,默认:false
public
boolean
isTree
是否树形数据
public
integer
limit
分页取数据的页记录数,等于-1时不执行分页一次取全部数据,运行时谨慎修改,会影响数据导航条分页取数据状态
public
master
主从关系
包括属性: data 主Data对象 column 关联关系 xml格式:
public
XML
rule
规则,可以定义列的只读规则(readonly)、计算规则(calculate)、必填规则(required)、约束规则(constraint)
只读规则包含expr表达式部分,当表达式计算结果为True时只读,当只读定义在rule根下时为整个data的只读规则 计算规则包含expr表达式部分,对应列的值来自于表达式计算结果 必填规则包含expr表达式部分和message提示部分,当表达式计算结果为True时该列为必填,没有填写数据违反必填规则时提示message信息 约束规则包含expr表达式部分和message提示部分,当表达式计算结果为False时违反约束规则提示message信息 xml格式说明:js:true js:true js:$model.slaveData?$model.slaveData.sum('fDecimal',$row):0 js:true fString不能为空 js:$val[0]=='A' fString第一个字符必须为'A'
public
treeOption
树参数
包括属性: parentRelation [attribute] 父关系,形成父子树的父关系 rootFilter [attribute] 根过滤条件,当设置时树形数据将按节点加载数据 delayLoad [attribute] 延迟数据加载,默认值为true nodeKindRelation [attribute] 节点类型关系,data操作时使用指定relation自动记录是否叶子节点信息 xml格式:
See GetTreeOption
Methods Detail Top
前端新增一行数据,状态需要开发者设定
public
object
aggVal
(string col)
获取统计列数据
public
void
applyUpdates
()
进行数据状态的更新,设置data的数据行状态,如:清除删除行,清除编辑状态,版本号维护;通常在数据提交服务端成功后调用
public
number
avg
(string column, function filterCallback)
获取data中指定列的平均值,函数返回的是前端当前已经加载记录的平均值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响(如果从data,只计算和主关联的从数据)
//统计mainData中年龄fAge平均值 var avg = this.comp('mainData').avg('fAge'); //统计mainData中fName姓“李”的年龄fAge平均值 var avg = this.comp('mainData').avg('fAge',function(ev){ var v = ev.source.getValue('fName',ev.row); return v.indexOf('李')==0; });
获取data中指定列的平均值,(如果从data,按全部从数据计算),当Data是从Data时filterCallback可以直接为主Data的Row对象,即计算和主data给定行相关的统计
public
boolean
bof
()
当前是否第一行
public
string
buildFilter
()
生成返回过滤字符串
public
void
cancelUpdates
()
还原data的所有修改数据
public
void
clear
()
清空data的所有数据,会触发data的onDataChanged事件
public
void
clearOrderBy
()
清除data上的OrderBy定义
public
string
col
(string col)
返回列名,用于表达式中使用
public
Integer
count
(Function filterCallback)
获取data的记录数,函数返回的是前端当前已经加载的数据的记录数,不包含分页还没有加载到前端的数据(如果从data,只计算和主关联的从数据)
//统计mainData中记录数 var count = this.comp('mainData').count(); //统计mainData中fName姓“李”的记录数 var count = this.comp('mainData').count(function(ev){ var v = ev.source.getValue('fName',ev.row); return v.indexOf('李')==0; });
public
number
countByAll
(function filterCallback)
获取data的全部记录数(如果从data,按全部从数据计算)
删除data所有数据,感知directDeleteMode和confirmDelete属性设置
业务数据删除方法,当directDeleteMode=true时直接提交后台删除,当confirmDelete=true时会弹出删除确认框
//不提示直接提交后台删除当前行 var data = this.comp('mainData'); var confirmDelete = data.confirmDelete; var directDeleteMode = data.directDeleteMode; try{ data.confirmDelete = false; data.directDeleteMode = true; data.deleteData(data.getCurrentRow()); }finally{ data.confirmDelete = confirmDelete; data.directDeleteMode = directDeleteMode; }
See DirectDeleteMode
See ConfirmDelete
public
void
disableRecordChange
()
禁止data数据修改状态变化
public
void
doDeleteAfter
(boolean success, Object options, Object params)
public
void
doRefreshAfter
(boolean success, Object options, Object params)
public
void
doSaveAfter
(boolean success, Object options, Object params)
遍历当前data的数据,如果是从Data,只遍历和主当前行相关的数据行
var names = []; this.comp('mainData').each(function(param){ names.push(param.row.val('fName')); });
遍历当前data的全部数据
var names = []; this.comp('mainData').eachAll(function(param){ names.push(param.row.val('fName')); });
遍历当前data的全部数据,和eachAll的区别在于eachAllByPeek不会使data的数据行进入依赖链
遍历当前data的数据,如果是从Data,只遍历和主当前行相关的数据行,和each的区别在于eachByPeek不会使data的数据行进入依赖链
public
void
enabledRecordChange
()
启用data数据修改状态变化
public
boolean
eof
()
当前是否最后行
数据行进行交换位置
public
boolean
exist
(String rowID)
判断行是否存在,只判断当前已经加载的数据
public
Array<Row>
find
(Array fields, Array values, Boolean first, Boolean caseInsensitive, Boolean partialKey, Boolean all)
数据查找
根据列和值匹配进行数据查找,可以匹配多列//查找fName中包含"李"的提一条数据 var rows = this.comp('mainData').find(['fName'],['李'],true,true,true); if(rows.length==0) alert('没有符合条件数据'); //查找fName="李四",fAge=18的数据 var rows = this.comp('mainData').find(['fName','fAge'],['李',18]); if(rows.length==0) alert('没有符合条件数据');
public
void
first
()
移动到第一条
public
object
getAggregateValue
(String col)
通过统计列名获取统计值,统计值来源于后端queryAction的aggregate参数定义,详细请参考queryAction
注意: 1、返回都是字符串类型 2、统计值更新依赖refreshData,data设置数据分页加载取后续页数据时不会刺激统计计算更新 后端queryAction的aggregate参数定义:count(SA_OPPerson) as personCount //前端js中获取 this.comp('mainData').getAggregateValue('personCount')
获取指定修改状态的行ID字符串
获取指定修改状态的行数组
public
String
getColumnIDs
()
返回使用','分隔的data所有列名
获取data记录数
public
void
getCurrentRow
(boolean peek)
获取data当前的行
public
Any
getCurrentRowID
()
获取data当前的行ID
public
String
getFilter
(String name)
返回指定名称的过滤表达式
获取data的第一行,没有数据时返回null
public
Array
getIDs
()
获取data所有行的Id数组
public
string
getInvalidInfo
(boolean force)
获取data违反约束的信息
获取data的最后一行,没有数据时返回null
返回data加载数据的偏移量
public
integer
getOrderBy
(string relation)
获取查询排序
通过列名和行获取列的原值,保存前获取修改后列原值,保存后同getValue取的值
public
boolean
getReadonly
()
返回data只读状态
根据行ID获取Row,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
获取data的行Id,默认获取当前行的id
获取data的行索引
获取对应行的状态
返回data的全部记录数,包括分页没有加载的记录数
public
object
getTreeOption
()
获取树的定义信息
获取用户扩展数据
典型用法: 1、当queryAction或者createAction返回Table时通过table.getProperties().put("name", "beijing")设置值可以使用this.comp(dataID).getUserData('name')获取 2、和setUserData函数配合使用扩展data的状态或者行状态 注意:5.2.6及以后版本提供 典型用法1案例: //biz端java中createAction设置扩展属性key public static Table create(Table table, String concept, Map defaultValues, String fnModel) { Table t = BizData.create(table, concept, defaultValues, fnModel); t.getProperties().put("key", "password"); return t; } //前端js中通过data获取 this.comp('mainData').getUserData('key'); 典型用法2案例: //给当前行增加key var data = this.comp('mainData'); var row = data.getCurrentRow(); data.setUserData('key','abcdefg',row); //读取行的key data.getUserData('key', row);
See SetUserData
通过列名和行获取列的值
public
object
getValueByID
(String col, String rowid)
通过列名和行ID获取列的值,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
public
boolean
isCalculateCol
(string col)
判断列是否为计算列
public
boolean
isChanged
()
判断data是否修改,包括从data的修改状态
public
boolean
isLeaf
(Row row)
判断给定行是不是叶子节点
public
boolean
isSelfChanged
()
判断data自身是否修改
public
boolean
isSlaveChanged
()
判断从data是否修改
public
boolean
isTree
()
判断当前data是不是tree数据
public
boolean
isValid
(boolean force)
判断data是否违反约束
public
string
label
(string col)
通过列名获取显示名称
public
void
last
()
移动到最后一条
public
boolean
loadAllPageData
(Object options)
在分页状态加载所有数据
See GetOffset
See $UI/system/components/justep/data/data#setOffset
See Limit
See RefreshData
See LoadPageData
See LoadNextPageData
public
void
loadData
(JSON data, Boolean append, integer index, boolean override)
加载数据
public
boolean
loadNextPageData
(Object options)
加载下一页的数据,受offset、limit影响
See GetOffset
See $UI/system/components/justep/data/data#setOffset
See Limit
See RefreshData
See LoadPageData
See LoadAllPageData
public
boolean
loadPageData
(integer pageIndex, Object options)
分页模式下加载第N页数据
See GetOffset
See $UI/system/components/justep/data/data#setOffset
See Limit
See RefreshData
See LoadNextPageData
See LoadAllPageData
public
number
max
(string column, function filterCallback)
获取data中指定列的最大值,函数返回的是前端当前已经加载记录的最大值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响(如果从data,只计算和主关联的从数据)
//统计mainData中年龄fAge最大值 var min = this.comp('mainData').max('fAge'); //统计mainData中fName姓“李”的年龄fAge最大值 var avg = this.comp('mainData').max('fAge',function(ev){ var v = ev.source.getValue('fName',ev.row); return v.indexOf('李')==0; });
获取data中指定列的最大值,(如果从data,按全部从数据计算),当Data是从Data时filterCallback可以直接为主Data的Row对象,即计算和主data给定行相关的统计
public
number
min
(string column, function filterCallback)
获取data中指定列的最小值,函数返回的是前端当前已经加载记录的最小值,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响(如果从data,只计算和主关联的从数据)
//统计mainData中年龄fAge最小值 var min = this.comp('mainData').min('fAge'); //统计mainData中fName姓“李”的年龄fAge最小值 var avg = this.comp('mainData').min('fAge',function(ev){ var v = ev.source.getValue('fName',ev.row); return v.indexOf('李')==0; });
获取data中指定列的最小值,(如果从data,按全部从数据计算),当Data是从Data时filterCallback可以直接为主Data的Row对象,即计算和主data给定行相关的统计
业务数据新增方法,支持返回多行
//新增两行数据到最后,并且给出sName和sCode的默认值 var data = this.comp('mainData'); var options = { defaultValues : [ {sName:'a1',sCode:'b1'}, {sName:'a2',sCode:'b2'} ] }; data.newData(options);
public
void
next
()
移动到下一条
public
void
open
()
当data.isLoaded()!=true时执行data的refreshData
public
void
pre
()
移动到前一条
通过列名获取列绑定对象
业务数据刷新,会刺激从data级联刷新,当limit!=-1时取第一页数据,当limit=-1时取全部数据,当confirmRefresh=true并且数据是编辑或者新增状态时刷新数据时显示刷新确认提示框
//强制刷新data var data = this.comp('mainData'); var confirmRefresh = data.confirmRefresh; try{ data.confirmRefresh = false; data.refreshData(); }finally{ data.confirmRefresh = confirmRefresh; }
See Limit
See ConfirmRefresh
See LoadPageData
See LoadNextPageData
See LoadAllPageData
移除一行数据,只在前端移除不影响数据库
public
Boolean
saveData
(Object options)
业务数据保存方法,向后端提交修改的数据,包括从Data数据
//保存成功后刷新data this.comp('mainData').saveData( { "onSuccess" : function(event){ event.source.refreshData(); } });
public
void
setFilter
(String name, String filter)
设置指定名称的过滤表达式,所有的过滤将按and连接
var data = this.comp('mainData'); data.setFilter('filter1',"SA_OPPerson.sName like '%李%'"); data.setFilter('filter2',"SA_OPPerson.sCode = :operatorCode() or SA_OPPerson.sCode = :code"); //给变参code赋值 data.filters.setStringVar("code","code_abc"); //最终qureyAction的KSQL中where部分将增加 and ((SA_OPPerson.sName like '%李%') and (SA_OPPerson.sCode = :operatorCode() or SA_OPPerson.sCode = 'code_abc'))
public
void
setOrderBy
(string relation, integer type)
设置查询排序
设置行的状态,特殊说明:不能设置delete状态,使用deleteData函数实现
See DeleteData
设置全部记录数,包括分页没有加载的记录数
设置用户扩展数据
See GetUserData
通过列名和行设置列的值
public
void
setValueByID
(string col, object value, string rowid)
通过列名和行设置列的值,函数会遍历所有数据,不要在循环中大量使用以免引发性能问题
public
void
sort
(function callback)
data的所有数据进行排序
this.comp('mainData').sort(function(row1,row2){ return row1.val('fage')>row2.val('fage')?1:-1; });
public
Number
sum
(String column, function filterCallback)
获取data中指定列的合计,函数返回的是前端当前已经加载记录的合计,不包含分页还没有加载到前端的数据,注意:返回的数值精度受js的number精度影响(如果从data,只计算和主关联的从数据)
//统计mainData中年龄fAge合计 var sum = this.comp('mainData').sum('fAge'); //统计mainData中fName姓“李”的年龄fAge合计 var sum = this.comp('mainData').sum('fAge',function(ev){ var v = ev.source.getValue('fName',ev.row); return v.indexOf('李')==0; });
获取data中指定列的合计(如果从data,按全部从数据计算),当Data是从Data时filterCallback可以直接为主Data的Row对象,即计算和主data给定行相关的统计
移动到指定行
获取data的json格式序列化对象,注:兼容原版本的changed、excludeCalculateCol参数用法
通过列名和行获取值等同于getValue
Operations Detail Top
public
clear
()
清空data的所有数据,会触发data的onDataChanged事件
删除数据
See DeleteData
public
void
deleteAll
(boolean force)
删除全部数据
See DeleteData
public
void
firstPage
()
加载第一页数据,当设置limit有效
public
void
firstRow
()
游标定位到第一条
public
void
lastPage
()
加载最后一页数据,当设置limit有效
public
void
lastRow
()
游标定位到最后一条
public
void
loadAllPage
()
加载剩余所有数据,当设置limit有效
public
void
loadNextPage
()
加载下页数据,当设置limit有效,增量加载
public
void
loadPage
(integer pageIndex)
加载页数据,当设置limit有效
新增数据
See NewData
新增同级数据
See NewData
新增子数据
See NewData
public
void
nextPage
()
加载下一页数据,当设置limit有效
public
void
nextRow
()
游标定位到下一条
public
void
prevPage
()
加载前一页数据,当设置limit有效
public
void
prevRow
()
游标定位到上一条
public
void
refresh
(boolean force)
刷新数据
See RefreshData
public
void
save
()
保存数据
See SaveData
Events Detail Top
[回调型事件]业务数据删除后
[回调型事件]业务数据新增后
[回调型事件]业务数据刷新后
[回调型事件]业务数据保存后,事件在批事务启动后触发,写在这个事件里的biz action请求将在一个批操作完成
[回调型事件]业务数据删除前
[回调型事件]业务数据新增前
[回调型事件]业务数据刷新前
[回调型事件]业务数据保存前,事件在批事务启动后触发,写在这个事件里的biz action请求将在一个批操作完成
[回调型事件]组件创建时
[回调型事件]业务数据删除接管,完全接管delete动作
[回调型事件]业务数据刷新接管,完全接管刷新动作
[回调型事件]业务数据保存接管,完全接管保存动作
[回调型事件]数据发生变化(包括新增、刷新、删除、修改引起的变化),感知从data的变化
[回调型事件]行记录变化
[回调型事件]行记录变化中
[回调型事件]data加载从数据
[回调型事件]业务数据保存事务提交后,数据提交成功
[回调型事件]数据变化
[回调型事件]数据变化后