У меня есть требование в Apex, где я должен написать запрос для класса Batch с условием, что дата последнего изменения должна быть между 30 и 60 днями, и это должно быть настроено пользователем. Я создал для этого настраиваемый параметр, чтобы сделать его настраиваемым, но не смог найти ничего, чтобы проверить дату между 30 и 60 днями. Есть ли какая-нибудь формула, которая может мне помочь?
Как проверить дату последнего изменения между 30 и 60 днями в вершине?
Ответы (1)
Я считаю, что вы ищете SOQL литералы даты а>. Ниже приведен пример запроса:
SELECT Id, Name, LastModifiedDate FROM Account WHERE LastModifiedDate < LAST_N_DAYS:30 AND LastModifiedDate >= LAST_N_DAYS:60 ORDER BY LastModifiedDate
Я бы создал строковый запрос следующим образом:
String strStartNumberOfDays = '30'; // replace with your custom setting value
String strEndNumberOfDays = '60'; // replace with your custom setting value
String strQuery = 'SELECT Id, Name, LastModifiedDate FROM Account WHERE LastModifiedDate < LAST_N_DAYS:' + strStartNumberOfDays + ' AND LastModifiedDate >= LAST_N_DAYS:' + strEndNumberOfDays + ' ORDER BY LastModifiedDate';
person
Zeeshan Virani
schedule
22.08.2015