永洪社区

标题: 页面跳转后传参组件取数失败 [打印本页]

作者: 感谢论坛的大神    时间: 2022-5-23 10:00
标题: 页面跳转后传参组件取数失败
现在(1)中的参数没有取到,但界面上该组件显示已经取到了“3”,详见附图)

(1)param["机构权限等级范围"]
过滤条件1 → 范围传参组件(值从数据集中取)   【跳转后组件显示值正确,但debug中未取到正确值】   

(2)param["orgidNew"]
页面加载脚本(根据test参数是否为null)→对过滤条件1进行赋值  【取到正确值】

(3)param["test"]/param["test1"]
点击交叉表页面跳转时→将表中参数test/test1传到下一个页面 【跳转后取到正确的值】
作者: _YH_lashi    时间: 2022-5-23 10:00
有问题不能下班 发表于 2022-5-25 11:12
no message resource found for message property msg.function.not.found.in at line 33
line 33 是:   ...

,你试试 这个 自己给自己 设置 一下 自己的数据呢?
//获取范围参数的绑定值并设置值
var b5=getData('机构权限等级范围');
var W5size=b5.size();
var arrb5=new Array();
for(i=W5size-1; i>0; i--){
  arrb5=b5.get(i,0);
}
机构权限等级范围.setSelectedObjects(arrb5,STRING);
作者: 永洪tech-cc    时间: 2022-5-23 10:18
您好,这边正在帮您处理中,麻烦您稍微等下,解决后给您答复。

作者: 永洪tech-cc    时间: 2022-5-23 10:43
能发一下您的完整脚本吗?
作者: 感谢论坛的大神    时间: 2022-5-23 11:04
永洪tech-cc 发表于 2022-5-23 10:43
能发一下您的完整脚本吗?

【装载时】
//写死机构号进行验证
param["orgId"]="A0001"
//用户控制
if(param["orgId"]=="A0001"){
param["orgidNew"] ="A0021"
} else{
param["orgidNew"]=param["orgId"]
}
//跳转传机构号
if(trim(param["test"])=="null"){
param["orgidNew"]=param["orgidNew"]
} else{
param["orgidNew"]=param["test"]
}

if(trim(param["机构权限等级范围"])=='null'){
机构明细图表.visible=false;
图表时间.visible=false;
图表单位.visible=false;
} else{
机构明细图表.visible=true;
图表时间.visible=true;
图表单位.visible=true;
}


【变化时】
//组件显示
var vdata= getData("机构明细图表",DATA);
var empty = vdata.get(2,3)== null;
if(empty){
机构明细图表.mobileVisible=false;
图表单位.mobileVisible=false;
图表时间.mobileVisible=false;
} else{
机构明细图表.mobileVisible=true;
图表单位.mobileVisible=true;
图表时间.mobileVisible=true;
}
clearData();
作者: 感谢论坛的大神    时间: 2022-5-23 11:06
永洪tech-cc 发表于 2022-5-23 10:43
能发一下您的完整脚本吗?

装载:
debug("装载时test1:"+param["test1"])
debug("装载时等级范围:"+param["机构权限等级范围"])
debug("装载时orgidNew:"+param["orgidNew"])
变化:
debug("变化时test1:"+param["test1"])
debug("变化时等级范围:"+param["机构权限等级范围"])
debug("变化时时orgidNew:"+param["orgidNew"])
作者: 我有两只猫    时间: 2022-5-23 14:16
有问题不能下班 发表于 2022-5-23 11:06
装载:
debug("装载时test1:"+param["test1"])
debug("装载时等级范围:"+param["机构权限等级范围"])

可以试试调整一下脚本顺序呢
作者: 感谢论坛的大神    时间: 2022-5-23 15:02
永洪tech-Wlitng 发表于 2022-5-23 14:16
可以试试调整一下脚本顺序呢

请问具体调哪部分脚本顺序呢?我把装载时脚本的三部分随便调了一下,也不行。        之前出现过这个情况,我们发现把if(trim(param["机构权限等级范围"])这部分的脚本放进去就没问题了,实际上这部分脚本我们是不需要的,但删掉之后会出问题。  现在过了几天,即使有这部分脚本也取不到变化时的param["机构权限等级范围"]了。。。
作者: 永洪tech-cc    时间: 2022-5-23 15:10
您是想实现什么场景写这些脚本呢
作者: _YH_lashi    时间: 2022-5-23 15:35
本帖最后由 _YH_lashi 于 2022-5-23 15:41 编辑

有点没看懂,实在不行的话,我远程看看你的问题

作者: 感谢论坛的大神    时间: 2022-5-23 15:42
永洪tech-cc 发表于 2022-5-23 15:10
您是想实现什么场景写这些脚本呢

1.交叉表中对“机构名称”(列1)设置了超链接,点击表中某一个机构后,将所点机构的“机构号”(列2,被隐藏)传给test,再根据判断条件将test赋值给orgidNew;所点机构的"等级加一"被赋值给test1。

2.   ?{机构权限等级范围} 这个参数的过滤条件是机构号=?{orgidNew} (值来源于数据集,我们在数据集里对每一行数据对应的“机构等级”进行了打标。比如某机构是一级机构,那么,“机构等级”=1,“等级加一“=2。作为一个下辖表,一级机构的用户在交叉表里看到的机构应该是二级的)

3.交叉表中涉及的过滤条件是 : ①等级加一 不是 =?{test1} ;② 机构等级 是 =?{机构权限等级范围}  ③机构 是 =?{orgidNew}

现在的问题是:?{机构权限等级范围}没取到数,导致过滤条件失效,没有在表中筛选出我们的目标数据。
作者: 感谢论坛的大神    时间: 2022-5-23 15:44
_YH_lashi 发表于 2022-5-23 15:35
有点没看懂,实在不行的话,我远程看看你的问题

没法远程,我们用的公司内网开发,只能给您发视频或者图片。   您看看下一楼我的描述?
作者: 感谢论坛的大神    时间: 2022-5-23 15:44
有问题不能下班 发表于 2022-5-23 15:44
没法远程,我们用的公司内网开发,只能给您发视频或者图片。   您看看下一楼我的描述? ...

10楼的描述
作者: _YH_lashi    时间: 2022-5-23 17:02
有问题不能下班 发表于 2022-5-23 15:42
1.交叉表中对“机构名称”(列1)设置了超链接,点击表中某一个机构后,将所点机构的“机构号”(列2,被隐 ...

方便拿一下报告看看吗?麻烦从管理系统->资源部署里,导出有问题的报告(数据集),以供我们本地分析一下,谢谢~

作者: 感谢论坛的大神    时间: 2022-5-23 17:13
_YH_lashi 发表于 2022-5-23 17:02
方便拿一下报告看看吗?麻烦从管理系统->资源部署里,导出有问题的报告(数据集),以供我们本地分析一下 ...

可以,怎么给你们?
=
作者: 永洪tech-cc    时间: 2022-5-23 17:26
您直接粘贴附件就可以的,如果不想让其他人下载,可以设置为只能管理员下载
作者: 感谢论坛的大神    时间: 2022-5-23 17:37
永洪tech-cc 发表于 2022-5-23 17:26
您直接粘贴附件就可以的,如果不想让其他人下载,可以设置为只能管理员下载 ...

数据集做了测试版EXCEL的给你们,麻烦您导一下。    原报告数据集是直接连数据库用SQL建的。

想沟通高效一点的话,您可以加我V:Nefelibata12890

作者: 永洪tech-cc    时间: 2022-5-23 18:12
您好,这边正在帮您处理中,麻烦您稍微等下,解决后给您答复。

作者: _YH_lashi    时间: 2022-5-23 18:12
有问题不能下班 发表于 2022-5-23 17:37
数据集做了测试版EXCEL的给你们,麻烦您导一下。    原报告数据集是直接连数据库用SQL建的。

想沟通高效 ...

我看报告的脚本里面没有对这个 param["机构权限等级范围"]) 赋值 ,您先赋值看看是不是 就对了
作者: _YH_lashi    时间: 2022-5-23 18:27
永洪tech-Wlitng 发表于 2022-5-23 14:16
可以试试调整一下脚本顺序呢


作者: 感谢论坛的大神    时间: 2022-5-23 18:28
_YH_lashi 发表于 2022-5-23 18:12
我看报告的脚本里面没有对这个 param["机构权限等级范围"]) 赋值 ,您先赋值看看是不是 就对了 ...

这个值是从组件里取的,有一个范围传参组件,被我隐藏了,是一个拖动条,您在报告里看得到吗?
作者: 感谢论坛的大神    时间: 2022-5-23 18:33
_YH_lashi 发表于 2022-5-23 18:27

我试过把它调到最前面,或者用户控制和跳转机构号中间,也试过变化时运行里放到最前面,均无果。

您说的赋值是开头写死一个值吗?
作者: _YH_lashi    时间: 2022-5-23 18:39
有问题不能下班 发表于 2022-5-23 18:33
我试过把它调到最前面,或者用户控制和跳转机构号中间,也试过变化时运行里放到最前面,均无果。

您说的 ...

或者直接用组件的脚本,getselectedObjects()[0] 试试


作者: 感谢论坛的大神    时间: 2022-5-23 18:50
_YH_lashi 发表于 2022-5-23 18:39
或者直接用组件的脚本,getselectedObjects()[0] 试试

var fselect=机构权限等级范围.getSelectedObjects();
debug(param["fselect"]);


跳转后结果是Null。
作者: _YH_lashi    时间: 2022-5-23 18:52
本帖最后由 _YH_lashi 于 2022-5-23 18:54 编辑
有问题不能下班 发表于 2022-5-23 18:50
var fselect=机构权限等级范围.getSelectedObjects();
debug(param["fselect"]);

这个 debug(fselect) 不需要带 param 了吧,如果是null 说明组件有问题了

作者: 感谢论坛的大神    时间: 2022-5-23 18:55
_YH_lashi 发表于 2022-5-23 18:52
这个 debug(fselect) 不需要带 param 了吧,如果是null 说明组件有问题了

不带param,弹窗报错:[Ljava.lang.Object;@40b02f7f
作者: 感谢论坛的大神    时间: 2022-5-23 18:57
有问题不能下班 发表于 2022-5-23 18:55
不带param,弹窗报错:[Ljava.lang.Object;@40b02f7f

下拉传参组件也有问题,我之前用的是下拉参数组件,设置里选了”默认选中第一个值“,结果执行出来根本不选默认第一个值,才换了范围传参组件。
作者: _YH_lashi    时间: 2022-5-23 19:08
有问题不能下班 发表于 2022-5-23 18:55
不带param,弹窗报错:[Ljava.lang.Object;@40b02f7f

加个 [0] 在后面呢
作者: _YH_lashi    时间: 2022-5-23 19:10
有问题不能下班 发表于 2022-5-23 18:57
下拉传参组件也有问题,我之前用的是下拉参数组件,设置里选了”默认选中第一个值“,结果执行出来根本不 ...

那估计整个组件都有问题
作者: 感谢论坛的大神    时间: 2022-5-24 08:40
_YH_lashi 发表于 2022-5-23 19:08
加个 [0] 在后面呢

加[0],跳转之后获取到的是"undefined"
作者: 感谢论坛的大神    时间: 2022-5-24 09:01
_YH_lashi 发表于 2022-5-23 19:10
那估计整个组件都有问题

组件有问题有方法解决吗?
作者: Fiona    时间: 2022-5-24 09:15
//param["机构权限等级范围"]
您把这段注释加到装载时运行脚本的最前面试一下。
作者: 感谢论坛的大神    时间: 2022-5-24 10:38
Fiona 发表于 2022-5-24 09:15
//param["机构权限等级范围"]
您把这段注释加到装载时运行脚本的最前面试一下。 ...

试了,不行。  
在初始页面能取到组件的数,超链接跳转传参之后就”undefined“。
作者: _YH_lashi    时间: 2022-5-24 11:22
有问题不能下班 发表于 2022-5-24 10:38
试了,不行。  
在初始页面能取到组件的数,超链接跳转传参之后就”undefined“。 ...

我们再看看

作者: Fiona    时间: 2022-5-24 11:31
有问题不能下班 发表于 2022-5-24 10:38
试了,不行。  
在初始页面能取到组件的数,超链接跳转传参之后就”undefined“。 ...

getData("机构权限等级范围",DATA)
这行加到最前面试下呢
作者: 感谢论坛的大神    时间: 2022-5-24 12:00
Fiona 发表于 2022-5-24 11:31
getData("机构权限等级范围",DATA)
这行加到最前面试下呢

在加载时脚本前面加这行之后,跳转后也是"undeifind", 甚至影响到了变化时脚本里对表格可见性的控制,跳转后的表格都被隐藏了。
作者: _YH_lashi    时间: 2022-5-24 12:02
有问题不能下班 发表于 2022-5-24 12:00
在加载时脚本前面加这行之后,跳转后也是"undeifind", 甚至影响到了变化时脚本里对表格可见性的控制,跳 ...

我能远程给你调吗?  看看你的场景 看看 最适合的方式吧


作者: 感谢论坛的大神    时间: 2022-5-24 14:53
_YH_lashi 发表于 2022-5-24 12:02
我能远程给你调吗?  看看你的场景 看看 最适合的方式吧

外网没法远程进我们内网,我昨天下午把jar包发在论坛里,那个您能下载吗?    或者视频给您直播,你指挥我调行吗?
作者: _YH_lashi    时间: 2022-5-24 14:59
有问题不能下班 发表于 2022-5-24 14:53
外网没法远程进我们内网,我昨天下午把jar包发在论坛里,那个您能下载吗?    或者视频给您直播,你指挥 ...

可以,直播吧
作者: 感谢论坛的大神    时间: 2022-5-24 15:08
_YH_lashi 发表于 2022-5-24 14:59
可以,直播吧

加我微信吧 : Nefelibata12890
视频通话
作者: _YH_lashi    时间: 2022-5-24 15:46
有问题不能下班 发表于 2022-5-24 15:08
加我微信吧 : Nefelibata12890
视频通话

加不上
作者: 感谢论坛的大神    时间: 2022-5-24 16:54
_YH_lashi 发表于 2022-5-24 15:46
加不上

看私信?
作者: _YH_lashi    时间: 2022-5-24 17:09
有问题不能下班 发表于 2022-5-24 16:54
看私信?


作者: _YH_lashi    时间: 2022-5-25 09:35
本帖最后由 _YH_lashi 于 2022-5-25 10:20 编辑

机构权限等级范围.getObjects()[0][0]   用这个 东西 再 转一道 参数 给 对应的图表 应该 就可以了 ,问题我们再看看
作者: 感谢论坛的大神    时间: 2022-5-25 10:18
_YH_lashi 发表于 2022-5-25 09:35
我其实不太懂这个 必选 的含义,你取消  机构权限等级范围 组件的必选 好像就可以了 ...

您说的是这里的必选吗?我试着取消掉了,也不行呀。你有改脚本吗?
作者: _YH_lashi    时间: 2022-5-25 10:20
有问题不能下班 发表于 2022-5-25 10:18
您说的是这里的必选吗?我试着取消掉了,也不行呀。你有改脚本吗?

机构权限等级范围.getObjects()[0][0]   用这个 东西 再 转一道 参数 给 对应的图表 应该 就可以了 ,问题我们再看看
作者: 感谢论坛的大神    时间: 2022-5-25 10:32
_YH_lashi 发表于 2022-5-25 10:20
机构权限等级范围.getObjects()[0][0]   用这个 东西 再 转一道 参数 给 对应的图表 应该 就可以了 ,问 ...

是 机构权限等级范围.getSelectedObjects()[0]  吗?   用”机构权限等级范围.getObjects()[0][0]“报错了,没有这个方法。        您是写在组件脚本上还是页面加载脚本上?我咋试不出来呢。
作者: _YH_lashi    时间: 2022-5-25 10:35
有问题不能下班 发表于 2022-5-25 10:32
是 机构权限等级范围.getSelectedObjects()[0]  吗?   用”机构权限等级范围.getObjects()[0][0]“报错 ...

你试试我这个呢?

作者: 感谢论坛的大神    时间: 2022-5-25 10:46
_YH_lashi 发表于 2022-5-25 10:35
你试试我这个呢?

"资源版本比当前系统版本高,无法运行"     我们的版本是9.2.3.2b。  要不您把脚本粘贴给我?
作者: _YH_lashi    时间: 2022-5-25 10:47
本帖最后由 _YH_lashi 于 2022-5-25 10:49 编辑
有问题不能下班 发表于 2022-5-25 10:46
"资源版本比当前系统版本高,无法运行"     我们的版本是9.2.3.2b。  要不您把脚本粘贴给我? ...
范围参数2 是直接 复制的 机构权限等级范围


装载时 :
//写死机构号验证
param["orgId"]="14304"
//用户控制
if(param["orgId"]=="14304"){
param["orgidNew"] ="B4410"
} else{
param["orgidNew"]=param["orgId"]
}
//debug(param["test"])
//跳转传机构号
if(trim(param["test"])=="null"){
//debug(param["test"])
param["orgidNew"]=param["orgidNew"]
} else{
param["orgidNew"]=param["test"]
}
/*
if(trim(param["机构权限等级范围"])=='null'){
机构明细图表.visible=false;
图表时间.visible=false;
图表单位.visible=false;
} else{
机构明细图表.visible=true;
图表时间.visible=true;
图表单位.visible=true;
}
*/
机构明细图表.visible=true;
图表时间.visible=true;
图表单位.visible=true;

变化时:

//写死机构号验证
param["orgId"]="14304"
//用户控制
if(param["orgId"]=="14304"){
param["orgidNew"] ="B4410"
} else{
param["orgidNew"]=param["orgId"]
}

//debug(param["test"])
//跳转传机构号
if(trim(param["test"])=="null"){
//debug(param["test"])
param["orgidNew"]=param["orgidNew"]
} else{
param["orgidNew"]=param["test"]
}

//组件显示
//debug(param["orgidNew"])
//debug(param["机构权限等级范围"])
//debug(机构权限等级范围.getSelectedObjects()[1])
var vdata= getData("机构明细图表",DATA);
var empty = vdata.get(0,0)== null;
if(empty){
机构明细图表.mobileVisible=true;
图表单位.mobileVisible=true;
图表时间.mobileVisible=true;
} else{
机构明细图表.mobileVisible=true;
图表单位.mobileVisible=true;
图表时间.mobileVisible=true;
}
clearData("范围参数2");
机构明细图表.visible=true;
图表时间.visible=true;
图表单位.visible=true;
debug(范围参数2.getObjects()[0][0])
作者: 永洪Tech-Una    时间: 2022-5-25 10:58
在超链接过去的报表的装载时运行脚本中补充 :
//获取范围参数的绑定值并设置值
var b5=getData('机构权限等级范围');
var W5size=b5.size();
var arrb5=new Array();
for(i=W5size-1; i>0; i--){
  arrb5[i]=b5.get(i,0);
}
机构权限等级范围.setSelectedObjects(arrb5,STRING);
作者: 感谢论坛的大神    时间: 2022-5-25 11:12
_YH_lashi 发表于 2022-5-25 10:47
范围参数2 是直接 复制的 机构权限等级范围

no message resource found for message property msg.function.not.found.in at line 33
line 33 是:  debug(范围参数2.getObjects()[0][0])

请问是不是我们版本太低了,系统里没有getObjects这个方法哈?
作者: 感谢论坛的大神    时间: 2022-5-25 11:44
_YH_lashi 发表于 2022-5-25 11:14
,你试试 这个 自己给自己 设置 一下 自己的数据呢?
//获取范围参数的绑定值并设置值
var b5=g ...

修改了一下最后两行:
var f4=机构权限等级范围.setSelectedObjects(arrb5,STRING);
debug("设置参数:"+f4);

然后在范围参数组件2的脚本里也加了debug显示它的值,发现能取到3,但是表格的数据并没有变化.我如果把筛选条件里的?{机构权限等级范围}换成?{范围参数2},那么跳转前的表格筛选出来的数据就不对了。

下一楼附图
作者: 感谢论坛的大神    时间: 2022-5-25 11:45
跳转后执行如图
作者: _YH_lashi    时间: 2022-5-25 11:50
有问题不能下班 发表于 2022-5-25 11:45
跳转后执行如图

晚点 再 一起 调试 吧 我找一下 熟悉这个组件的同事看看
作者: 感谢论坛的大神    时间: 2022-5-25 11:56
_YH_lashi 发表于 2022-5-25 11:50
晚点 再 一起 调试 吧 我找一下 熟悉这个组件的同事看看

好,下午再联系。
作者: _YH_lashi    时间: 2022-5-25 12:07
(, 下载次数: 30)