如何算出查询日期的上月,上年同期?

查询日期上月:format(MONTHDELTA($查询日期,-1),'yyyy-MM')或if(right($查询日期,2)==01,(year($查询日期)-1)+"-"+12,if(right($查询日期,2)<=10 && right($查询日期,2)>1,CONCATENATE(year($查询日期),"-","0",(right($查询日期,2)-1)),year(today())+"-"+(right($查询日期,2-1))))

查询日期上年同期:format(MONTHDELTA($查询日期,-12),'yyyy-MM') 或year($查询日期) - 1 + "-" + (right($查询日期, 2))

涉及到跨年查询,上月和上年同期日期就算错

FineReport syscloud.cui 发布于 2019-1-8 10:04
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
AlonsosfaolLv4初级互助
发布于2019-1-8 10:12(编辑于 2019-1-8 11:33)

WorkBook13.cpt

附件所示

上月:FORMAT(MONTHDELTA(TODATE(CONCATENATE($td,'-01')),-1),'yyyy-MM')

去年同期:FORMAT(MONTHDELTA(TODATE(CONCATENATE($td,'-01')),-12),'yyyy-MM')


image.png

  • syscloud.cui syscloud.cui(提问者) 8.0版本打不开您的模板
    2019-01-08 11:06 
  • Alonsosfaol Alonsosfaol 回复 syscloud.cui(提问者) 已补充
    2019-01-08 11:10 
  • syscloud.cui syscloud.cui(提问者) 您好!如果查询日期跨年,后边两个日期就不错了,您查询日期试一下2018年10月
    2019-01-08 11:14 
  • Alonsosfaol Alonsosfaol 回复 syscloud.cui(提问者) 上月:FORMAT(MONTHDELTA(TODATE(CONCATENATE($字符串日期,\'-01\')),-11),\'yyyy-MM\') 去年同期:FORMAT(MONTHDELTA(TODATE(CONCATENATE($字符串日期,\'-01\')),-12),\'yyyy-MM\') 失误,需要拼凑上【日】才可以正确显示
    2019-01-08 11:19 
  • syscloud.cui syscloud.cui(提问者) 回复 Alonsosfaol 非法公式。。。
    2019-01-08 11:26 
最佳回答
0
徐圣凯Lv6见习互助
发布于2019-1-8 10:51

确认参数面板返回参数$查询日期的值为日期型,用第一个公式应该就可以了

  • 2关注人数
  • 1766浏览人数
  • 最后回答于:2019-1-8 11:33
    请选择关闭问题的原因
    确定 取消
    返回顶部