[可视化]
文本参数组件中默认的日期显示异常,Invalid date
我是卡拉米
显示全部楼层
发表于 2024-5-11 09:40:23
那我应该怎么写这种:由下拉列表参数组件获取到的日期默认给文本参数中? |
|
|
|
|
美滋滋
显示全部楼层
发表于 2024-5-11 10:06:00
首先你这个脚本本身是不太合适的
下拉列表参数5本身是个列表参数,自身可能会多选,所以你把一个多选值赋值到一个变量中是不合适的。
因为你当前的下拉列表参数5是一个datetime类型数据,所以你想先把下拉列表5中的日期转换一个格式,去掉时分秒。
我建议你在抽取数据时,多抽取一个字段,该字段直接将下拉列表5绑定的字段转换成YYYY-MM-DD的格式。
或者现在在数据集里新增一个计算列,该计算列的作用也是将下拉列表5中绑定的字段进行数据转换
然后用新的这个字段绑定在下拉列表5中。
这样脚本就可以去掉第一行了。 |
|
|
|
|
我是卡拉米
显示全部楼层
发表于 2024-5-11 10:47:30
下拉列表参数5 我设置了单选,倒叙,选中第一个值指定。
下拉列表参数5中引用的字段,在数据库表中是文本类型20240510,已经在数据集sql中to_date为yyyy-MM-dd格式,同时也编辑了列属性为2024--5-10,现在下拉列表参数5组件中也展示为了2024-05-10。
另外,我也用你说的建计算列,去掉了第一行脚本,直接用列表参数5,效果一样。
请问我应该怎么调整才行?
|
|
|
|
|
我是卡拉米
显示全部楼层
发表于 2024-5-11 10:58:11
我换了个脚本,可以了。param['a']=下拉列表参数5.getObjects()[0][0]
|
|
|
|
|
美滋滋
显示全部楼层
发表于 2024-5-11 11:03:58
那既然你下拉列表参数5中绑定的字段已经是整理好的 yyyy-mm-dd 格式的字段,那就不需要用formatdate函数进行转换了啊。
你直接写
下拉列表参数1.setSelectedObjects(下拉列表参数5.getSelectedObjects(),STRING)
下拉列表参数2.setSelectedObjects(下拉列表参数5.getSelectedObjects(),STRING)
下拉列表参数3.setSelectedObjects(下拉列表参数5.getSelectedObjects(),STRING)
下拉列表参数4.setSelectedObjects(下拉列表参数5.getSelectedObjects(),STRING)
应该就可以了。
同时你得保障下拉列表参数1-4中可以选择的日期包含下拉列表参数5可以选择的日期。
|
|
|
|
|
美滋滋
显示全部楼层
发表于 2024-5-11 11:06:57
你按照我上面的那个写法,不需要通过中间参数进行转换。按照你现在的写法,就是具体取得了选中的那一个值。
另外,既然列表参数5是单选,那为啥不使用单选下拉参数组件呢? |
|
|
|
|
我是卡拉米
显示全部楼层
发表于 2024-5-11 11:15:47
|
|
|
|
美滋滋
显示全部楼层
发表于 2024-5-11 11:18:11
哦,原来如此。
行了,搞定了就OK了。
总之问题是出在你那个第一条语句上的问题。
getselectedobjects方法并不是返回你一个字符串,所以你不能直接用 formatdate去进行转换的问题。 |
|
|
|
|