超级链接传参到下拉复选框为多选

超级链接传参到下拉复选框为多选问题?

比如主要有个“胶印”通过超链接传参到下拉复选框选择为  胶印,丝印!

不管是写成这样:ARRAY("丝印'","'胶印")  还是ARRAY("丝印","胶印") 。。。。还是SPLIT("丝印'","'胶印",",")还是("丝印","胶印",",")还是["丝印'","'胶印"],SPLIT("'丝印','胶印'",","),,还是["丝印","胶印"],传递到子报表的复选框 ,都只有一个值!我需要选择为胶印及丝印,怎么办?

如果直接写成字符串 胶印','丝印   是可以,我昨天也测试过了。。但是我要经过判断。写成公式,。就不行了。

if(  D3=="胶印",["丝印","胶印"], d4   )      不行,

if(  D3=="胶印",["丝印','胶印" ], d4   )      不行。

if(  D3=="胶印","丝印,胶印" , d4   )          不行

if(  D3=="胶印",["丝印","胶印" ], d4   )     不行

if(  D3=="胶印","丝印',"+"'胶印" , d4   )   不行

是有BUG还是缓存。但是我换上 胶印','丝印 就可以了!

单独用公式:CONCATENATE("丝印","','","胶印")也可以。但是添加IF就不行了、

image.png

最后的铩手锏,

重启服务器。。。。。。。。。。。。

正常了!现在随便一个方式,都OK了!,都能选择进去了

..................此处一万字无语..............................................................................................

FineReport dugangwywt 发布于 2021-3-19 18:11 (编辑于 2021-3-20 08:32)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
dugangwywtLv3见习互助
发布于2021-3-20 08:33

最后的铩手锏,

重启服务器。。。。。。。。。。。。

正常了!现在随便一个方式,都OK了!,都能选择进去了

..................此处一万字无语..............................................................................................

最佳回答
0
luojian0323Lv7资深互助
发布于2021-3-19 20:19

主报表传参,参数值来自于哪里?控件值,单元格中的值?单元格中的字符串截取?

  • dugangwywt dugangwywt(提问者) 如果直接写成字符串 胶印\',\'丝印 是可以,我昨天也测试过了。。但是我要经过判断。写成公式,。就不行了。 if( D3==\"胶印\",[\"丝印\",\"胶印\"], d4 ) 不行, if( D3==\"胶印\",[\"丝印\',\'胶印\" ], d4 ) 不行。 if( D3==\"胶印\",\"丝印,胶印\" , d4 ) 不行 if( D3==\"胶印\",[\"丝印\",\"胶印\" ], d4 ) 不行 if( D3==\"胶印\",\"丝印\',\"+\"\'胶印\" , d4 ) 不行 是有BUG还是缓存。但是我换上 胶印\',\'丝印 就可以了!
    2021-03-20 08:14 
最佳回答
0
qxl2Lv5见习互助
发布于2021-3-19 20:41(编辑于 2021-3-20 08:55)

我这里用两个cpt通过超链接来传参

1、超链接配置如下:注意传参值的格式  两边没有单引号。我这里值写死,你也可以通过公式来传,值的格式对就可以了

image.png

2、然后第二个cpt,接收参数的值,配置如下,主要控件的配置,要选字符串 ,分隔符为 ','

image.png

3、之后超链接跳转过去的结果如下

image.png

4、也可以用其他方式传参,主要参数值格式注意应该都可以,注意格式 ARRAY("丝印","胶印")  如下:

image.png

image.png

  • win_yss win_yss 类似数组形式传参
    2021-03-19 20:53 
  • dugangwywt dugangwywt(提问者) 如果直接写成字符串 胶印\',\'丝印 是可以,我昨天也测试过了。。但是我要经过判断。写成公式,。就不行了。 if( D3==\"胶印\",[\"丝印\",\"胶印\"], d4 ) 不行, if( D3==\"胶印\",[\"丝印\',\'胶印\" ], d4 ) 不行。 if( D3==\"胶印\",\"丝印,胶印\" , d4 ) 不行 if( D3==\"胶印\",[\"丝印\",\"胶印\" ], d4 ) 不行 if( D3==\"胶印\",\"丝印\',\"+\"\'胶印\" , d4 ) 不行 是有BUG还是缓存。但是我换上 胶印\',\'丝印 就可以了!
    2021-03-20 08:14 
  • qxl2 qxl2 回复 dugangwywt(提问者) 我的理解是这样的,不管你用公式或者数组,还是其他方式传参,只要你保证传过去的值是 A\',\'B\',\'C\',\'D 就可以识别出来了。问题就在中间这个分隔符的转换。 1、我用你的公式测试了下,我这里使用replace函数去把分隔符转换了,其他不需要的字符串都可以转换成空就可以了。你看下我第一个答复里面的截图,我添加了一张
    2021-03-20 08:57 
  • 2关注人数
  • 597浏览人数
  • 最后回答于:2021-3-20 08:55
    请选择关闭问题的原因
    确定 取消
    返回顶部