在保存的搜索公式中设置日期范围过滤器
setting date range filter in saved search formula
我正在寻找有关如何在保存的搜索公式中编写日期范围过滤器的指导。例如,下面是我到目前为止看到的某种类型的销售情况,但还需要添加日期过滤器,以便只获得今年迄今为止的销售情况。我知道我可以在过滤器部分设置日期过滤器,但我还需要在此报告中添加其他列,这些列将显示不同类型和日期的交易金额。在此先感谢您的任何输入。
公式:
CASE WHEN {transaction.type} = 'Invoice' AND {transaction.custbody1} = 'Direct' THEN {transaction.amount} end
您可以使用 SQL TO_CHAR
函数对日期的 return 文本部分进行比较,以便与 sysdate
的相应文本部分进行比较。在您给出的示例中,它看起来像:
CASE WHEN {transaction.type} = 'Invoice'
AND {transaction.custbody1} = 'Direct'
AND TO_CHAR({trandate}, 'YYYY') = TO_CHAR(sysdate, 'YYYY')
THEN {transaction.amount}
END
您可以使用不同格式的相同方法来获取几乎任何日期。在某些情况下,您还可以使用 EXTRACT
来获得稍微更好的性能。 EXTRACT
return 是数字而不是文本。
CASE WHEN {transaction.type} = 'Invoice'
AND {transaction.custbody1} = 'Direct'
AND EXTRACT(YEAR from {trandate}) = EXTRACT(YEAR FROM sysdate)
THEN {transaction.amount}
END
当您想要合并日期的不同部分时,您可能会发现 TO_CHAR
更易于使用。例如:TO_CHAR({trandate}, 'YYYY-MM') = TO_CHAR(sysdate, 'YYYY-MM')
而不是 EXTRACT(YEAR from {trandate}) = EXTRACT(YEAR from sysdate) AND EXTRACT(MONTH from {trandate}) = EXTRACT(MONTH from sysdate)
我正在寻找有关如何在保存的搜索公式中编写日期范围过滤器的指导。例如,下面是我到目前为止看到的某种类型的销售情况,但还需要添加日期过滤器,以便只获得今年迄今为止的销售情况。我知道我可以在过滤器部分设置日期过滤器,但我还需要在此报告中添加其他列,这些列将显示不同类型和日期的交易金额。在此先感谢您的任何输入。 公式: CASE WHEN {transaction.type} = 'Invoice' AND {transaction.custbody1} = 'Direct' THEN {transaction.amount} end
您可以使用 SQL TO_CHAR
函数对日期的 return 文本部分进行比较,以便与 sysdate
的相应文本部分进行比较。在您给出的示例中,它看起来像:
CASE WHEN {transaction.type} = 'Invoice'
AND {transaction.custbody1} = 'Direct'
AND TO_CHAR({trandate}, 'YYYY') = TO_CHAR(sysdate, 'YYYY')
THEN {transaction.amount}
END
您可以使用不同格式的相同方法来获取几乎任何日期。在某些情况下,您还可以使用 EXTRACT
来获得稍微更好的性能。 EXTRACT
return 是数字而不是文本。
CASE WHEN {transaction.type} = 'Invoice'
AND {transaction.custbody1} = 'Direct'
AND EXTRACT(YEAR from {trandate}) = EXTRACT(YEAR FROM sysdate)
THEN {transaction.amount}
END
当您想要合并日期的不同部分时,您可能会发现 TO_CHAR
更易于使用。例如:TO_CHAR({trandate}, 'YYYY-MM') = TO_CHAR(sysdate, 'YYYY-MM')
而不是 EXTRACT(YEAR from {trandate}) = EXTRACT(YEAR from sysdate) AND EXTRACT(MONTH from {trandate}) = EXTRACT(MONTH from sysdate)