Использование:
$finalIds = DiscountFilterHelper::getDiscountProductIds(true, 3600);
$GLOBALS['discountFilter'] = !empty($finalIds) ? ["ID" => $finalIds] : ["ID" => []];
При необходимости очистить кэш (например, в обработчике событий):
AddEventHandler('sale', 'OnDiscountSave', function() {
DiscountFilterHelper::clearCache();
});