├── AutoConvertLeads ├── AutoConvertLeads1 ├── README.md ├── Test_AutoConvertLeads └── Test_AutoConvertLeads1 /AutoConvertLeads: -------------------------------------------------------------------------------- 1 | Public class AutoConvertLeads 2 | { @InvocableMethod 3 | public static void LeadAssign(List LeadIds) 4 | { 5 | LeadStatus CLeadStatus= [SELECT Id, MasterLabel FROM LeadStatus WHERE IsConverted=true Limit 1]; 6 | List MassLeadconvert = new List(); 7 | for(id currentlead: LeadIds){ 8 | Database.LeadConvert Leadconvert = new Database.LeadConvert(); 9 | Leadconvert.setLeadId(currentlead); 10 | Leadconvert.setConvertedStatus(CLeadStatus.MasterLabel); 11 | Leadconvert.setDoNotCreateOpportunity(TRUE); //Remove this line if you want to create an opportunity from Lead Conversion 12 | MassLeadconvert.add(Leadconvert); 13 | } 14 | if (!MassLeadconvert.isEmpty()) 15 | { 16 | List lcr = Database.convertLead(MassLeadconvert); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /AutoConvertLeads1: -------------------------------------------------------------------------------- 1 | Public class AutoConvertLeads1 2 | { @InvocableMethod(label = 'Auto Convert Leads') 3 | public static void LeadAssign(List requestList) { 4 | 5 | LeadStatus CLeadStatus= [SELECT Id, MasterLabel FROM LeadStatus WHERE IsConverted=true Limit 1]; 6 | List MassLeadconvert = new List(); 7 | for (Requests req: requestList){ 8 | Database.LeadConvert Leadconvert = new Database.LeadConvert(); 9 | Leadconvert.setLeadId(req.LeadId); 10 | Leadconvert.setAccountId(req.AccountId); 11 | Leadconvert.setConvertedStatus(CleadStatus.MasterLabel); 12 | Leadconvert.setDoNotCreateOpportunity(TRUE); //Remove this line if you want to create an opportunity from Lead Conversion 13 | MassLeadconvert.add(Leadconvert); 14 | } 15 | if (!MassLeadconvert.isEmpty()) 16 | { 17 | List lcr = Database.convertLead(MassLeadconvert); 18 | } 19 | } 20 | 21 | public class Requests { 22 | @InvocableVariable(label = 'LeadId' required = true) 23 | public id LeadId; 24 | 25 | @InvocableVariable(label = 'AccountId' required = false) 26 | public Id AccountId; 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Auto-Convert-Leads 2 | Auto Convert Leads 3 | 4 | 5 | Checkout this "Getting Started with Process Builder – Part 50 (Auto Convert Leads)" article for more details 6 | 7 | http://wp.me/p1wpoE-1VS 8 | 9 | Use AutoConvertLeads1 apex class - if you want to merge lead with an exisitng account. 10 | -------------------------------------------------------------------------------- /Test_AutoConvertLeads: -------------------------------------------------------------------------------- 1 | @isTest 2 | public class TestAutoConvertLeads{ 3 | static testMethod void createnewlead() { 4 | User userToCreate = [Select id from user where profile.name='System Administrator' Limit 1]; 5 | 6 | Test.startTest(); 7 | Lead leadToCreate =new Lead(); 8 | List Ids= New List(); 9 | leadToCreate.ownerid= userToCreate.id; 10 | leadToCreate.LastName ='Gupta'; 11 | leadToCreate.Company='Salesforce'; 12 | leadToCreate.LeadSource='Partner Referral'; 13 | leadToCreate.Rating=''; 14 | leadToCreate.Status=''; 15 | insert leadToCreate; 16 | 17 | Ids.add(leadToCreate.id); 18 | AutoConvertLeads.LeadAssign(Ids); 19 | 20 | Test.stopTest(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Test_AutoConvertLeads1: -------------------------------------------------------------------------------- 1 | @isTest 2 | public class TestAutoConvertLeads1 { 3 | static testMethod void createnewlead () { 4 | User userToCreate = [Select id from user where profile.Name ='System Administrator' AND IsActive = TRUE Limit 1]; 5 | 6 | Test.startTest(); 7 | Lead leadToCreate = new Lead(); 8 | List Ids = New List(); 9 | leadToCreate.ownerid = userToCreate.id; 10 | leadToCreate.LastName ='Gupta'; 11 | leadToCreate.Company ='Salesforce'; 12 | leadToCreate.LeadSource ='Partner Referral'; 13 | leadToCreate.Rating =''; 14 | leadToCreate.Status =''; 15 | insert leadToCreate; 16 | 17 | List< AutoConvertLeads1.Requests> requests = new List< AutoConvertLeads1.Requests >(); 18 | AutoConvertLeads1.Requests request = new AutoConvertLeads1.Requests (); 19 | request.LeadId = leadToCreate.id; 20 | requests.add (request); 21 | 22 | AutoConvertLeads1.LeadAssign (requests); 23 | 24 | Test.stopTest (); 25 | } 26 | } 27 | --------------------------------------------------------------------------------