跳到主要内容
版本:6.0.0

在固定时间区间时支持文本参数联动

需求:“快捷时间区间”筛选器,在固定时间区间时支持文本参数联动

为了简化页面制作过程,优化页面看数逻辑,在设计仪表板时希望时间区间筛选器可以通过传参的形式控制卡片,如:选择今日时,折线图展示的是今天0点至距离目前最近的小时数;选择本周时,展示本周一至周x(今日);选择本月时,展示本月至今天;选择本年时,展示1月至当前月份。

image.png

Demo体验 

登录体验案例Demo自定义快捷日期区间

案例下载

观远应用市场下载本案例到本地环境动态时间宏

实现方式

【建立全局参数】

以昨天-按小时、本月到昨天-按日、本年到昨天-按月为例

注:参数中的字段名称需要与"快捷时间区间"的文字保持一致;

image.png

卡片中新建字段对日期字段进行相关处理,示例中新建文本字段日、月、昨天、判断时间

判断时间:
case when [DYNAMIC_PARAMS.月年]="本月到昨天" 
then 
(case when [时间] between DATE_TRUNC('month',[DYNAMIC_PARAMS.昨天]) and CURRENT_DATE() then true else false end)
 when [DYNAMIC_PARAMS.月年]="本年到昨天" then 
(case when [时间] between DATE_TRUNC('year',[DYNAMIC_PARAMS.昨天]) and CURRENT_DATE() then true else false end)
when [DYNAMIC_PARAMS.月年]="昨天" then 
(case when cast([时间] as date)=CURRENT_DATE()-1 and hour([时间])<=hour(now()) then true else false end )
else false end
日:
case when [日期] between DATE_TRUNC('month',[DYNAMIC_PARAMS.昨天]) and [DYNAMIC_PARAMS.昨天] then CONCAT(right([日期],2),'号') else null end
月:
case when YEAR([时间])=YEAR(CURRENT_DATE()) and [时间]<=CURRENT_DATE() then CONCAT(MONTH([时间]),'月') else null end
昨天:
case when cast([时间] as date)=CURRENT_DATE()-1 and hour([时间])<=hour(now())
then CONCAT(hour([时间]),'点') else null end

image.png

新建快捷日期区间筛选器关联参数的配置:

image.png