EAS Cloud 860编辑表格设置冻结列方案总结(合约规划为例)原创
金蝶云社区-CRU杨少博
CRU杨少博
1人赞赏了该文章 316次浏览 未经作者许可,禁止转载编辑于2022年01月04日 19:13:13

EAS Cloud 860编辑表格设置冻结列方案总结(合约规划为例)


背景:由于EAS冻结列配置不能直接在界面配置,需要写代码完成。因此此处整理出来,供以后同学使用


  1. 打开界面界面配置,添加页面渲染前事件renderBefore

    image.png

  2. renderBefore方法中需要设置冻结列,代码如下

function(e){
	_self.setInitComponentCallBack(function(type, option, el){
		var model = pageModule.currentModel;
		if(type == 'grid') {
			if(option.id == 'conProgGrid' && option.treeGrid) {
				option.ExpandColumn = 'simpleName';
				option.expColInd = 2;
				ReCommonUtil.addExpandedForGridData(model.entries);
				option.colModel[0].frozen = true;
				option.colModel[1].frozen = true;
			}else if(option.id == 'costAccountGrid' && option.treeGrid) {
				option.expColInd = 3;
				option.colModel[0].frozen = true;
				option.colModel[1].frozen = true;
			}
			// 设置冻结列
			option.frozenColumn = true;
			option.frozenColumns = true;
			option.isFrozenColumn = true;
		}
	});
}


注意:

a.编辑表格第一列默认为id,因此如果想冻结合约规划名称字段,则需要将option.colModel[0]、option.colModel[1]

都要设置为冻结

image.png

b.这三个属性必须设置为true,缺一不可

                        option.frozenColumn = true;
			option.frozenColumns = true;
			option.isFrozenColumn = true;



冻结效果如果下:

image.png


赞 1