1、创建宏代码
对象 | 事件 | |
---|---|---|
ClientSide(客户端宏) | ad_hoc_analysis |
2、添加宏
function main(adHocAnalysis: IAdHocAnalysis) { // 获取筛选器面板 let filterPanel: IFilterPanel = adHocAnalysis.getFilterPanel(); let beginTime:IFilter = filterPanel.getFilterByAlias("开始时间"); let overTime: IFilter = filterPanel.getFilterByAlias("结束时间"); // 判空,保证两个筛选器都存在 if (!beginTime || !overTime) { return } overTime.setValueChangeHandler((newValue) => { if (isExceedsOneYear(beginTime.getValue()[0],newValue[0])) { return newValue; } else { alert("日期区间不能选择超过一年以上") return beginTime.getValue(); } }) beginTime.setValueChangeHandler((newValue) => { // 给结束时间设置值设为开始时间 if (isExceedsOneYear(newValue[0], overTime.getValue()[0])) { return newValue; } else { alert("日期区间不能选择超过一年以上") overTime.setValue(newValue); return newValue; } }) } function isExceedsOneYear(beginTimeValue:string,overTimeValue:string) { // 创建为日期对象 let beginDate:Date = new Date(beginTimeValue); let overDate: Date = new Date(overTimeValue); return overDate - beginDate < 1000 * 3600 * 24 * 365 } |