我正在使用cognos版本10,我需要我的日期以“ yyyy-mm”格式显示,但是它以“ 2014-4”之类的日期显示为“ 2014-4”,因此它无序地读取日期首先制作“ 2014-11”,因为它以一个开始。我需要在这些两位数的整数上添加零,以使月份(特别是月份)按顺序显示。
这是我尝试创建的代码:
_year( start_date ) ||'-'|| _month( start_date )
IF(_month(start_date) > 10)
THEN('0' +_month(start_date))
答案 0 :(得分:0)
简短答案:使用yyyy-MM
。
您的问题缺少很多细节,因此我的回答是基于相当多的猜测。
您是要格式化还是要转换值?格式化无需代码即可完成。数据项的代码应为start_date
。
这是列表列正文的吗?您在哪里输入格式(yyyy-mm
?您是否在使用数据格式属性?
在数据格式对话框中,如果找不到可以满足您需要的其他设置,则可以在 Pattern 属性中输入模式。如果您查看数据格式对话框底部的提示,则会发现使用yyyy-mm
可以为您提供四位数的年份,连字符和两位数的分钟。 。也许您应该尝试yyyy-MM
。它对我有用。
关于排序:即使您对模式使用yyyy-M
,2014-04-22(显示为2014-4)也应在2014-11-01(显示为2014-11)之前进行排序。排序错误的唯一原因是是否使用了日期以外的其他数据。