Namespace
Example
trigger accTrig2 on Contact (before insert) { for (Contact c : Trigger.new) { if (c.getQuickActionName() == QuickAction.CreateContact) { c.WhereFrom__c = 'GlobalAction'; } else if (c.getQuickActionName() == Schema.Account.QuickAction.CreateContact) { c.WhereFrom__c = 'AccountAction'; } else if (c.getQuickActionName() == null) { c.WhereFrom__c = 'NoAction'; } else { Assert.fail('Unexpected quick action: ' + c.getQuickActionName()); } } }
public Id globalCreate(Contact c) { QuickAction.QuickActionRequest req = new QuickAction.QuickActionRequest(); req.quickActionName = QuickAction.CreateContact; req.record = c; QuickAction.QuickActionResult res = QuickAction.performQuickAction(req); return c.id; }
QuickAction Methods
The following are methods for QuickAction. All methods are static.
describeAvailableQuickActions(parentType)
Signature
public static List<QuickAction.DescribeAvailableQuickActionResult> describeAvailableQuickActions(String parentType)
Parameters
- parentType: Type: String The parent object type. This can be an object type name ('Account') or 'Global' (meaning that this method is called at a global level and not an entity level).
Return Value
Type: List<QuickAction.DescribeAvailableQuickActionResult>
The metadata information for the available quick actions of the parent object.
Example
// Called for Account entity. List<QuickAction.DescribeAvailableQuickActionResult> result1 = QuickAction.DescribeAvailableQuickActions('Account'); // Called at global level, not entity level. List<QuickAction.DescribeAvailableQuickActionResult> result2 = QuickAction.DescribeAvailableQuickActions('Global');
describeQuickActions(sObjectNames)
Signature
public static List<QuickAction.DescribeQuickActionResult> describeQuickActions(List<String> sObjectNames)
Parameters
Return Value
Type: List<QuickAction.DescribeQuickActionResult>
The metadata information for the provided quick actions.
Example
// First 3 parameter values are for actions at the entity level. // Last parameter is for an action at the global level. List<QuickAction.DescribeQuickActionResult> result = QuickAction.DescribeQuickActions(new List<String> { 'Account.QuickCreateContact', 'Opportunity.Update1', 'Contact.Create1', 'Global.CreateNewContact' });
performQuickAction(quickActionRequest)
Signature
public static QuickAction.QuickActionResult performQuickAction(QuickAction.QuickActionRequest quickActionRequest)
Parameters
- quickActionRequest: Type: QuickAction.QuickActionRequest
Return Value
performQuickAction(quickActionRequest, allOrNothing)
Signature
public static QuickAction.QuickActionResult performQuickAction(QuickAction.QuickActionRequest quickActionRequest, Boolean allOrNothing)
Parameters
- quickActionRequest: Type: QuickAction.QuickActionRequest
- allOrNothing: Type: Boolean Specifies whether this operation allows partial success. If you specify false for this argument and a record fails, the remainder of the DML operation can still succeed. This method returns a result object that can be used to verify which records succeeded, which failed, and why.
Return Value
performQuickActions(quickActionRequests)
Signature
public static List<QuickAction.QuickActionResult> performQuickActions(List<QuickAction.QuickActionRequest> quickActionRequests)
Parameters
- quickActionRequests: Type: List<QuickAction.QuickActionRequest>
Return Value
performQuickActions(quickActionRequests, allOrNothing)
Signature
public static List<QuickAction.QuickActionResult> performQuickActions(List<QuickAction.QuickActionRequest> quickActionRequests, Boolean allOrNothing)
Parameters
- quickActionRequests: Type: List<QuickAction.QuickActionRequest>
- allOrNothing: Type: Boolean Specifies whether this operation allows partial success. If you specify false for this argument and a record fails, the remainder of the DML operation can still succeed. This method returns a result object that can be used to verify which records succeeded, which failed, and why.