在一个功能中通过弹出窗口的方式打开另一个功能的表格或者表单

--在表格中选择某条记录,打开一个弹出窗口,显示另一个功能的表单界面,表格的INC示列代码如下:
--参考功能:功能设计器 -- 更多 -- 扩展页面定义
config.eventcfg = {
setFunext: function(){
var records = this.grid.getSelectionModel().getSelections();
if (!JxUtil.selectone(records)) return;
var selfunid = records[0].get('fun_base__fun_id');

//加载Form数据
var hdcall = function(page) {
//设置外键键
page.getForm().fkName = 'fun_ext__fun_id';
page.getForm().fkValue = selfunid;

//加载显示数据
var options = {
where_sql: 'fun_ext.fun_id = ?',
where_type: 'string',
where_value: selfunid,
callback: function(data) {
//如果没有数据则执行新增
if (data.length == 0) {
page.formNode.event.create();
} else {
var r = page.formNode.event.newRecord(data[0]);

page.getForm().myRecord = r;
page.getForm().loadRecord(r);
}
}
};
Jxstar.queryData('fun_ext', options);
};

//显示数据
var define = Jxstar.findNode('fun_ext');
Jxstar.showData({
filename: define.formpage,
title: define.nodetitle,
width: 500,
height: 250,
callback: hdcall
});
}
}

--在表单打开一个弹出窗口,显示另一个功能的表单界面,表单的INC示列代码如下:
config.eventcfg = {
setFunext: function(){
var keyid = this.getPkField().getValue();--取主键值
var myform = this.form;
var selfunid = myform.get("fun_base__fun_id");

--打开表单的方法同上
...
}
}

--在表格中打开一个弹出窗口,显示另一个功能的布局页面,双击表格记录可以切换到表单,表格的INC示列代码如下:
config.eventcfg = {
mywin: function(){
var records = this.grid.getSelectionModel().getSelections();
if (!JxUtil.selectone(records)) return;
//var selfunid = records[0].get('fun_base__fun_id');

//加载Form数据
var hdcall = function(layout) {
//过滤条件
var where_sql = 'store_in.in_id like ?';
var where_type = 'string';
var where_value = '%';//查询条件根据实际情况修改

//加载数据
JxUtil.delay(500, function(){
var grid = layout.getComponent(0).getComponent(0);
if (!grid) {
alert('没有找到表格对象!'); return;
}
Jxstar.loadData(grid, {where_sql:where_sql, where_value:where_value, where_type:where_type});
});
};

//显示数据
var define = Jxstar.findNode('store_in');
Jxstar.showData({
nodedefine: define,
filename: define.layout,
title: define.nodetitle,
width: 900,
height: 650,
callback: hdcall
});
}
}

--在表格中打开一个弹出窗口,显示另一个功能的表格,表格的INC示列代码如下:
--参考功能:系统设置 -- 权限设置 -- 用户注册 -- “所属角色”按钮
config.eventcfg = {
setRole: function(){
var records = this.grid.getSelectionModel().getSelections();
if (!JxUtil.selectone(records)) return;

var pkcol = this.define.pkcol;
var seluserid = records[0].get(pkcol);

//过滤条件
var where_sql = 'sys_user_role.user_id = ?';
var where_type = 'string';
var where_value = seluserid;

//加载数据
var hdcall = function(grid) {
//显示数据
JxUtil.delay(500, function(){
//设置外键值
grid.fkValue = where_value;
Jxstar.loadData(grid, {where_sql:where_sql, where_value:where_value, where_type:where_type});
});
};

var srcDefine = Jxstar.findNode('sys_user_role');
//显示数据
Jxstar.showData({
filename: srcDefine.gridpage,
title: srcDefine.nodetitle,
pagetype: 'subgrid',
nodedefine: srcDefine,
callback: hdcall
});
}
};


0 个评论

要回复文章请先登录注册