配置子网格OnLoad事件
对子网格添加Onload事件处理程序,在记录被选中和刷新时会被调用
// 添加子网格onload方法
Xrm.Page.getControl("test_sub").addOnLoad(myFunction);
// 删除子网格onload方法
Xrm.Page.getControl("test_sub").RemoveOnLoad(myFunction);
获取子网格数据
getRows
// 获取子网格对象
var subGrid = Xrm.Page.getControl("test_sub").getGrid();
// 获取子网格所有行
var gridRows = subGrid.getRows();
// 遍历获取每一行的值
gridRows.forEach(function (row, i) {
var gridColumns = row.getData().getEntity().getAttributes();
}
getSelectedRows
// 获取子网格对象
var subGrid = Xrm.Page.getControl("test_sub").getGrid();
// 获取子网格选中行
var gridRows = subGrid.getSelectedRows();
// 遍历获取每一行的值
gridRows.forEach(function (row, i) {
var gridColumns = row.getData().getEntity().getAttributes();
}
getTotalRecordCount
var subGrid = Xrm.Page.getControl("test_sub").getGrid();
// 获取总的记录数
var TotalRecordCount = subGrid.getTotalRecordCount();
GridEntity
// 获取子网格
var subId = Xrm.Page.getControl("test_sub");
// 获取网格
var grid = subId.getGrid();
// 获取所有行集合
var rows = grid.getRows();
// 获取选中行集合
var selectRows = grid.getSelectedRows();
// 获取总记录行数
var rowCount = grid.getTotalRecordCount();
for (var i = 0; i < grid.getTotalRecordCount(); i++) {
// 遍历获取到行
var row = rows.get(i).getData();
// 获取实体
var entity = row.getEntity();
// 获取属性
var name = entity.attributes.get("new_name").getValue();
var ownerid = entity.attributes.get("ownerid").getValue();
}
锁定子网格字段
var Item = "new_name,new_quotationid,new_machinemodel,new_dprice,new_dtotal,new_applytotal,new_procureprice,new_procuretotal".split(',');
for (var i = 0; i < arrItem.length; i++) {
let _filed = entityObjectData.attributes.getByName(arrItem[i]);
if (_filed != null && _filed != undefined) {
_filed.controls.get(0).setDisabled(true);
}
}