找文章 / 找答案
永洪vip
  • 发帖数1427
  • 粉丝2

此人很懒,什么也没有留下

  • 解答问题超厉害

    经常帮助其他会员答疑
精选问答 更多内容

[可视化] 文本参数组件中默认的日期显示异常,Invalid date

我是卡拉米白银二 显示全部楼层 发表于 2024-5-11 09:40:23
美滋滋 发表于 2024-5-11 09:36
那你在第二行代码增加一个DEBUG信息,DEBUG这个默认日期,然后查看模式的时候看一下会提示什么信息?
我怀 ...

那我应该怎么写这种:由下拉列表参数组件获取到的日期默认给文本参数中?
回复

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2024-5-11 10:06:00
首先你这个脚本本身是不太合适的
下拉列表参数5本身是个列表参数,自身可能会多选,所以你把一个多选值赋值到一个变量中是不合适的。
因为你当前的下拉列表参数5是一个datetime类型数据,所以你想先把下拉列表5中的日期转换一个格式,去掉时分秒。
我建议你在抽取数据时,多抽取一个字段,该字段直接将下拉列表5绑定的字段转换成YYYY-MM-DD的格式。
或者现在在数据集里新增一个计算列,该计算列的作用也是将下拉列表5中绑定的字段进行数据转换
然后用新的这个字段绑定在下拉列表5中。
这样脚本就可以去掉第一行了。
回复

使用道具 举报

我是卡拉米白银二 显示全部楼层 发表于 2024-5-11 10:47:30
美滋滋 发表于 2024-5-11 10:06
首先你这个脚本本身是不太合适的
下拉列表参数5本身是个列表参数,自身可能会多选,所以你把一个多选值赋值 ...

下拉列表参数5 我设置了单选,倒叙,选中第一个值指定。
下拉列表参数5中引用的字段,在数据库表中是文本类型20240510,已经在数据集sql中to_date为yyyy-MM-dd格式,同时也编辑了列属性为2024--5-10,现在下拉列表参数5组件中也展示为了2024-05-10。
另外,我也用你说的建计算列,去掉了第一行脚本,直接用列表参数5,效果一样。
请问我应该怎么调整才行?
回复

使用道具 举报

我是卡拉米白银二 显示全部楼层 发表于 2024-5-11 10:58:11
美滋滋 发表于 2024-5-11 10:06
首先你这个脚本本身是不太合适的
下拉列表参数5本身是个列表参数,自身可能会多选,所以你把一个多选值赋值 ...

我换了个脚本,可以了。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
yh-10044 发表于 2024-5-11 10:58
我换了个脚本,可以了。param['a']=下拉列表参数5.getObjects()[0][0]

你按照我上面的那个写法,不需要通过中间参数进行转换。按照你现在的写法,就是具体取得了选中的那一个值。
另外,既然列表参数5是单选,那为啥不使用单选下拉参数组件呢?
回复

使用道具 举报

我是卡拉米白银二 显示全部楼层 发表于 2024-5-11 11:15:47
美滋滋 发表于 2024-5-11 11:06
你按照我上面的那个写法,不需要通过中间参数进行转换。按照你现在的写法,就是具体取得了选中的那一个值 ...

1.ok 明白
2.因为想要日历效果
回复

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2024-5-11 11:18:11
yh-10044 发表于 2024-5-11 11:15
1.ok 明白
2.因为想要日历效果

哦,原来如此。
行了,搞定了就OK了。
总之问题是出在你那个第一条语句上的问题。
getselectedobjects方法并不是返回你一个字符串,所以你不能直接用 formatdate去进行转换的问题。
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部