Я пытаюсь написать триггер «после обновления», который выполняет пакетное обновление всех дочерних записей только что обновленной записи. Это должно иметь возможность обрабатывать более 15 тысяч дочерних записей за раз. К сожалению, ограничение составляет 100, что намного ниже моих потребностей, что даже близко к приемлемому. Я не пробовал разбивать записи на пакеты по 100 штук в каждой, так как это все равно ограничит меня в 10 тыс. Обновлений на выполнение триггера. (Может быть, я мог бы просто соединить триггеры гирляндной цепью? Тьфу.)
Кто-нибудь знает, через какую серию обручей я могу перепрыгнуть, чтобы преодолеть это ограничение?
Изменить: я попытался вызвать следующую функцию @future в своем триггере, но она никогда не обновляет дочерние записи:
global class ParentChildBulkUpdater
{
@future
public static void UpdateChildDistributors(String parentId) {
Account[] children = [SELECT Id FROM Account WHERE ParentId = :parentId];
for(Account child : children)
child.Site = 'Bulk Updater Fired';
update children;
}
}