在系统里面建立了一个部门表HR_OG_Dep 一个公司表HR_OG_Org 两表多对多关系 所以建立了中间表HR_SubsidiaryDepRelation存储对应关系。在部门和中间表这个页面主从结构,主表部门,从表HR_SubsidiaryDepRelation显示部门所属的所有分公司。为了建立逻辑从属关系,即部门尝试选择链接所属分公司时,希望只显示出母部门已经链接的分公司。为了实现这个目的,我在主页里面额外添加了一个bizdata第二次加载HR_SubsidiaryDepRelation。(因为第一个加载HR_SubsidiaryDepRelation的bizdata是部门表的从属数据,里面数据不全)。trigger里面的事件如下:
mainActivity.trigger1Click = function(event){
var data = justep.xbl('dataMain');
var rowID=data.getCurrentID();
var parentDep=data.getValue('fParentDep', rowID);
var Reladata=justep.xbl('bizData7');
//将data对象传递给弹出窗口
Reladata.filters.setStringVar('fDep', parentDep);
Reladata.refreshData();
justep.xbl('DepOPAct').open({'data':Reladata});
};
接收窗口的代码如下:
var dataJson=event.data.data.getJson();
var data=justep.xbl("main");
alert(data.getCount());
//var dn=event.data.numbe;
data.loadJson(dataJson);
alert(data.getCount());
每次主页点击按钮都报错:
Uncaught Type Cannot read property 'relationDefines' of null
at (http://127.0.0.1:8080/x5/$v7394ce7e36b449a198a79cf03dc94e5b/component/data/data.js?language=zh_CN:1)
68
如果删除代码中的数据源bizData7(二次指向概念HR_SubsidiaryDepRelation),替换为唯一的指向HR_SubsidiaryDepRelation的bizdata,则代码通过,但结果逻辑不对。
求指导