-
贯佳睿 初学数据Lv2
发表于2023-7-26 16:43
悬赏10
已解决
8个回答
可以用od函数处理日期,YSGHS.GHRQ>=od(today(),'d=1') and YSGHS.GHRQ< today()
这里日期默认是8位字符的格式,如果存储的字段格式不一致,可以用日期函数处理下格式。
这个得考虑月初1号时,取哪些时间的数据。
用日期函数处理后:(DATETOSTR(YSGHS.GHRQ,'yyyymmdd'))>=od(today(),'d=1') and (DATETOSTR(YSGHS.GHRQ,'yyyymmdd'))< today(),此数据期依旧无法计算至今天的前一天数据(即1日-30日的数据)
贯佳睿 发表于 2023-7-31 09:34
用日期函数处理后:(DATETOSTR(YSGHS.GHRQ,'yyyymmdd'))>=od(today(),'d=1') and (DATETOSTR(YSGHS.GHRQ,'y ...
可以看看报表的日志,是日期字段转换处理的不对,还是日期周期不对
chestnut 发表于 2023-7-31 09:51
可以看看报表的日志,是日期字段转换处理的不对,还是日期周期不对
截止至当天凌晨
贯佳睿 发表于 2023-7-31 10:17
截止至当天凌晨
可以在报表中用宏表达式检查下过滤条件,直接输入文本:<#=(DATETOSTR(YSGHS.GHRQ,'yyyymmdd'))>=od(today(),'d=1') #>、<#=od(today(),'d=1')#>
chestnut 发表于 2023-7-31 10:33
可以在报表中用宏表达式检查下过滤条件,直接输入文本:=od(today(),'d=1') #>、
...
第一个宏表达式直接报错了,第二个没问题可以查询出20230701
本帖最后由 chestnut 于 2023-8-1 09:50 编辑
贯佳睿 发表于 2023-7-31 16:08
第一个宏表达式直接报错了,第二个没问题可以查询出20230701
YSGHS.GHRQ 这个取的是主题表的日期字段,在过滤条件中需要替换成报表中使用的日期字段。第二个宏表达式取的就是每月第一天,可以看看报表中的过滤条件是怎么写的~