1

我需要制作具有以下条件的过滤器:

<filter xpath= current-dateTime > ( lastUpdateDate + 30 days ) ...

在代理服务中执行此操作的最佳方式是什么?可以为 lastUpdateDate 添加 30 天吗?

谢谢。

4

1 回答 1

2

您可以使用脚本中介和 xpath 在过滤中介中执行此任务。当您按如下方式获取属性的系统日期时,

<property name="date" expression="get-property('SYSTEM_DATE', 'yyyy.MM.dd')" scope="default"/>

那么日期的值将采用“2012.11.23”格式。同样,当以该格式定义“lastUpdateDate”时,以下配置将创建您想要的过滤器;

<script language="js">
    var date = new Date();
    date.setDate(date.getDate()-30);
    var formattedTime = date.getFullYear() + '.' + ("0" + (date.getMonth()+1)).slice(-2) + '.' + ("0" + date.getDate()).slice(-2);  
    mc.setProperty("modifiedDate",formattedTime);
</script>        
<filter xpath="number(translate(get-property('modifiedDate'),'.','')) > number(translate(get-property('lastUpdateDate'),'.',''))">      
    <then>.....
于 2012-11-23T12:48:16.293 回答