А я бы вот это еще отметил
Apex cursors (now GA in API v66.0) let you work with large SOQL result sets in manageable chunks — without the rigidity of batch Apex. Create a cursor once, then fetch records from any position, forwards or backwards.
Database.Cursor cursor = Database.getCursor('SELECT Id, Name FROM Account ORDER BY Name');
List first200 = cursor.fetch(0, 200); // Start at position 0
List next200 = cursor.fetch(200, 200); // Move forward
List goBack = cursor.fetch(100, 50); // Jump backwards anytime
Extract picklist values based on record type
ConnectApi.PicklistValuesCollection picklistCollection =
ConnectApi.RecordUi.getPicklistValuesByRecordType('Case', recordTypeId);
// Access any picklist field's values
ConnectApi.PicklistValues statusValues =
picklistCollection.picklistFieldValues.get('Status');Мы научились без этого жить, но теперь будет немного лучше.