DEP中添加一个分录列,同时根据前面的协作清单编号自动.....
金蝶云社区-冯泽宇
冯泽宇
0人赞赏了该文章 584次浏览 未经作者许可,禁止转载编辑于2016年03月15日 23:34:25

做了一个这样的功能


DEP中添加了工作内容说明的列,同时绑定了协作清单中的描述字段。然后在onload的后置方法中写了这样的代码
var resourceItemNumber =pluginCtx.getKDTable("billTable").getColumn("resourceItem").getEditor().getComponent();
var resourceItemChangeEvent = function(event,methodName){
if(methodName == "equals"){ return this == event;}
if(methodName == "editStopping"){
var billTable = pluginCtx.getKDTable("billTable");
var rowIndex =billTable.getSelectManager().getActiveRowIndex();
var colIndex =billTable.getSelectManager().getActiveColumnIndex();

if (billTable.getColumn("resourceItem").getColumnIndex() ==colIndex) {
var resourceItem =billTable.getCell(rowIndex,colIndex).getValue();

if (resourceItemNumber != null){
//billTable.getCell(rowIndex,"resourceItem.description").setValue(resourceItem.getObjectValue("description"));
billTable.getCell(rowIndex,"resourceItem.description").setValue("555555555");
}else{
billTable.getCell(rowIndex,"").setValue(null);
}
}
}
};
pluginCtx.getKDTable("billTable").addKDTEditListener(resourceItemChangeEvent);

竟然实现了这个功能,根据前面协作清单编号自动带入劳务协作清单中的描述字段值,,,billTable.getCell(rowIndex,"resourceItem.description").setValue("555555555");这一句我一直在想setValue中应该用怎么写,怎么能获取到劳务协作清单中的值,但是我测试的时候写555555他竟然自动带出来了,,我真心没懂是为什么啊。。。。。。而且导出这个方案以后到正式环境中,就报错,说调用不了getComponent方法,,,求大神给我解释下,,好么。setValue里面到底该怎么写,,还有为什么这么写竟然也可以实现??