Salesforce task records represent actionable items or tasks typically found on a to-do list. These tasks are usually linked to relevant records such as Leads, Opportunities, Contacts, or Accounts. Depending on your organization’s data model, it may also be appropriate to associate tasks with custom objects.
Tasks offer significant utility for businesses. They enable users to delegate tasks to others, track follow-ups with specific leads, and allow managers to monitor their team’s activities.
Tasks can be generated through Apex, Visual Flows, Process Builder, and API. When creating a new task, you must include all mandatory fields from the Task object. Presently, the obligatory fields are Subject (the task name), OwnerId (the task assignee), Status, and WhatId (the associated object for the task).
Generating Salesforce Tasks in Apex is not excessively complex. The following code example demonstrates how we can create an urgent call task.
Task tsk = new Task(); tsk.Subject = 'Follow up with Lead'; tsk.WhatId = [select Id from Opportunity Limit 1].Id; //This is the default... tsk.OwnerId = UserInfo.getUserId(); tsk.Status = 'New'; tsk.Type = 'Call'; insert tsk;