function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
NatrajNatraj 

System.LimitException: Too many SOQL queries: 101

Please help in this ASAP. If there is any documents or links available to resolve this issue 

Its very urgent.. Thanks in advance..

 

 

 

Natraj.

 

bob_buzzardbob_buzzard

This usually means that you've embedded a SOQL query inside a loop.  This is a hard limit that you won't be able to change, so you'll need to rework your code to reduce your SOQL calls.  

 

Can you post the code?

Sam27Sam27

Definitely you are using one or more soql query in a loop and hence the number of query executed in one run time is crossing the governing limit of 100 query.......

 

The alternative is to get the values in map beforehand and use map values instead of query in loop.......

 

Hope the information helps..............

Ankit AroraAnkit Arora

I second with above comments, and would suggest you to make sure that you are not using the SOQL in any loop.

 

Like this :

 

for(Account ac : accountList)
{
    List<Contact> contactList = [select id from contact where AccountId =: ac.Id] ;
}

 Take the query out of the for loop.

 

 

Thanks

Ankit Arora

Blog | Facebook | Blog Page

Mayank_JoshiMayank_Joshi

Hi ,

================================================================================================================
Sample code : It is currently giving  System.LimitException: Too many SOQL queries: 101  if there were bulk records 
=================================================================================================================
public class ContactCleanupApexClass {
public static void ContactCleanupMethod(Contact[] conts){

for (Contact c :conts){

if (c.Phone <> null)
Country__c[] cntry = [SELECT Id, Phone_Prefix__c FROM Country__c WHERE Name = :c.MailingCountry LIMIT 1];

else
{
c.Cleaned_Phone_EDITABLE__c = null;
}

}
}
} 
=====================================================
Sampe code Fix to work for bulk trigger :
=====================================================
public class ContactBulkTest {
public static void ContactBulkMethod(Contact[] conts){
String PhonePrfix ;
List<Country__c> CountryName = [SELECT name,Phone_Prefix__c FROM Country__c ];
 map<String, String> map_cntry  = new map<String, String>  () ;
 for (Country__c c : CountryName ) {
  map_cntry.put(c.name,c.Phone_Prefix__c);
  system.debug('++++++++'+map_cntry  );
  }
    for(Contact c: conts){
    PhonePrfix = map_cntry.get(c.MailingCountry);
    system.debug('**********'+PhonePrfix );
    
}
}
}
I hope this helps you .
-- 
Mayank Joshi
Ph: +91-987 10 97872
This image is not available because: You don’t have the privileges to see it, or it has been removed from the system 
 

 

KitagawaSan1337KitagawaSan1337

Could something like this cause an issue: 

 

trigger TaskUpdateAccountdate on Task (after insert, after update) {

List<Account> accsToUpdate = new List<Account>();

for(Task tsk : trigger.new)

{if ((tsk.IsClosed && trigger.isInsert && tsk.AccountId!=null) || (tsk.AccountID!=null && tsk.IsClosed && !trigger.oldMap.get(tsk.id).IsClosed))
accsToUpdate.add(new Account(Id = tsk.AccountId, Last_Activity_Date__c = Date.today()));
}

Update accsToUpdate;

}

 

Mayank_JoshiMayank_Joshi

Hello Kitagawa ,

 

I think , it should work just fine . Because ,values are updated outside Loop into List accsToUpdate  .

 

Do you have any question ?

 

Regards,

Mayank Joshi

Mayank_JoshiMayank_Joshi

No Problem Lalit . Happy to help you . : ) BTW ,are you from Uttranchal ? 

Nani44Nani44

Thank you for your post !

Nirmal ChristopherNirmal Christopher

/*********
***This trigger will create child opportunities and contact role when contract install date in opportunity
***is updated of inserted
*********/
trigger renewalopportunity on Opportunity (after update) {
public list<id> oppid=new list<id>();
integer i;
integer j;
//getting Opportunity Id
for(opportunity o:trigger.new){
oppid.add(o.id);
}
system.debug('+++oppid+++'+oppid.size());
system.debug('+++oppid+++'+oppid[0]);
public list<account>acc=new list<account>();
acc=[select id from account];
//geting current opportunity
public List<Opportunity>oppcurrent=new list<Opportunity>();
oppcurrent=[SELECT AccountId,Amount,Anticipated_Implementation_Date__c,Anticipated_RFP_Date__c,CampaignId,Capital_Dollars_Secured_To__c,Capital_Funding_Approved__c,CloseDate,Competitor_Closed_Lost__c,Competitor_Name_Lost_Opportunity_To__c,Contact_Influence__c,Contact__c,Description,Fiscal,FiscalQuarter,FiscalYear,ForecastCategory,ForecastCategoryName,French_Language__c,Id,Implementation_Opportunity_Date__c,Interested_in_Renting__c,LeadSource,Name,NextStep,Opportunities__c,Opportunity__c,OwnerId,Pricebook2Id,Probability,RecordTypeId,Renewal_Date__c,Signed_Contract_Date__c,StageName,Strength__c,Support_Ranking__c,Threats__c,Title__c,Total_Capital_Revenue__c,Total_Disposable_Revenue__c,Type,Weakness__c,WiFi__c FROM Opportunity where id =:oppid];
//getting current opp contact role
public list<Contact_Opp_Role_Test__c> OCR = [SELECT Contact__c,Id,Opportunity__c FROM Contact_Opp_Role_Test__c where Opportunity__c IN :oppid];
system.debug('+++oppid+++'+oppid);
//getting install base
list<InstalledBase__c>iblist=[select id,Elastomerics_Annual_Spend__c,
SSO_Annual_Spend__c,
Annual_Spend_Connector__c,
Annual_Spend_Disposables__c,
SSO_Annual_Spend_Estimate__c,
Annual_Spend_Estimate_Connector__c,
Elastomerics_Annual_Spend_Estimated__c,
Annual_Spend_Estimate_Disposables__c,
Annual_Spend_Estimate_Disposables_Other__c,
Annual_Spend_Estimate_Gravity__c,
Elastomerics_Annual_Units__c,
SSO_Annual_Units__c,
Connector_Annual_Units__c,
Annual_Units_Disposables__c,
Bag_Type__c,
Comments__c,
Connector__c,
Connector_Vendor__c,
Connector_Comments__c,
Connector_Competitor_Name__c,
Connectors_Rating__c,
Contract_Exp_Date_Connectors__c,
Contract_Exp_Date_Disposables_Gravity__c,
Contract_Exp_Date_Disposables_Other__c,
Contract_Exp_Date_Elastomerics__c,
Contract_Exp_Date_Standard_Solutions__c,
Contract_Exp_Date_Syringe_Pumps__c,
Contract_Expiration_Date__c,
Contract_Expiration_Date_Disposable_LVP__c,
Contract_Expiration_Date_LVP_Non_Primary__c,
Contract_Expiration_Date_LVP_Primary__c,
LVP_Disposable_Pricing_Primary_Gravi__c,
LVP_Disposable_Pricing_Secondary_Gra__c,
LVP_Disposable_Qty_Year_Primary_Grav__c,
LVP_Disposable_Qty_Year_Secondary_Gr__c,
Disposables_Gravity_Comments__c,
Disposables_Gravity_Rating__c,
Disposables_Other_Comments__c,
Disposables_Other_Rating__c,
Elastomerics_Comments__c,
Elastomerics_Rating__c,
Total_Competitor_LVP_Channels__c,
Help_on_Primary_Secondary_and_Tertiary__c,
Infusion_Set__c,
Infusion_Set_Gravity__c,
Infusion_Set_Other__c,
LVP_Disposable_Pricing_Basic__c,
LVP_Disposable_Pricing_Specialty__c,
LVP_Disposable_Pricing_Primary__c,
LVP_Disposable_Pricing_Secondary__c,
LVP_Disposable_Qty_Year_Basic__c,
LVP_Disposable_Qty_Year_Specialty__c,
LVP_Disposable_Qty_Year_Primary__c,
LVP_Disposable_Qty_Year_Secondary__c,
LVP_Disposables_Comments__c,
LVP_Disposables_Rating__c,
LVP_Age_of_Pump_Fleet__c,
LVP_Age_of_Pump_Fleet_Secondary__c,
LVP_Age_of_Pump_Fleet_Tertiary__c,
LVP_Primary_Section__c,
LVP_Primary_SubSection__c,
LVP_Pump_Comments__c,
LVP_Pump_Comments_Secondary__c,
LVP_Pump_Comments_Tertiary__c,
LVP_Products__c,
LVP_Pump_Model_Tertiary__c,
LVP_Pump_Rating__c,
LVP_Pump_Rating_Secondary__c,
LVP_Pump_Rating_Tertiary__c,
LVP_Pump_Secondary__c,
LVP_Secondary_Section__c,
LVP_Tertiary_Section__c,
LVP_Competitor_Name__c,
LVP_Competitor_Name_Secondary__c,
LVP_Vendor_Name_Tertiary__c,
Elastomerics_Model__c,
Account__c,
Connector_Model__c,
LVP_Pump_Primary_Qty__c,
LVP_Pump_Secondary_Qty__c,
Number_of_LVP_Pumps_Secondary__c,
Number_of_LVP_Pumps_Tertiary__c,
Opportunity__c,
Elastomerics_Price__c,
Standard_Solutions_Price__c,
Connector_Price__c,
Price_Disposables__c,
Rating__c,
Recall_Customer_Complaint__c,
SSO_Comments__c,
SSO_Rating__c,
Standard_Solutions_Vendor__c,
Syringe_Competitor_Name_Secondary__c,
Syringe_Age_of_Pump_Fleet__c,
Syringe_Pump_Comments__c,
Syringe_Products__c,
Syringe_Pump_Secondary__c,
Syringe_Rating__c,
Total_LVP_Quantity__c,
Total_LVP_Disposables_Sales__c,
Syringe_Qty__c,
Syringe_Competitor_Name__c,
Elastomerics_Vendor_Name__c,
SSO_Vendor_Name__c,
Connector_Vendor_Name__c,
Vendor_Name_Disposables_Gravity__c,
Vendor_Name_Disposables_Other__c,
Vendor_Name_LVP_Disposables__c from InstalledBase__c where Opportunity__c=:oppid ];
//inserting clone opportunity
for(Opportunity o1:trigger.new){
if((o1.Renewal_Date__c!=null && o1.StageName=='Closed Won') && (trigger.oldmap.get(o1.id).Renewal_Date__c !=trigger.newmap.get(o1.id).Renewal_Date__c) && o1.opportunity__c==null ){
//creating renewal opp
opportunity newrec=new Opportunity(Name = 'Renewal Opportunity-'+o1.Renewal_Date__c,CampaignId=o1.CampaignId,Competitor_Closed_Lost__c=o1.Competitor_Closed_Lost__c,Competitor_Name_Lost_Opportunity_To__c=o1.Competitor_Name_Lost_Opportunity_To__c,CloseDate=o1.Renewal_Date__c.addYears(1)+12,Description=o1.Description,French_Language__c=o1.French_Language__c,Capital_Funding_Approved__c=o1.Capital_Funding_Approved__c,LeadSource=o1.LeadSource,Interested_in_Renting__c=o1.Interested_in_Renting__c,NextStep=o1.NextStep,Pricebook2Id=o1.Pricebook2Id,Strength__c=o1.Strength__c,Threats__c=o1.Threats__c,Support_Ranking__c=o1.Support_Ranking__c,Type=o1.Type,Title__c=o1.Title__c,Signed_Contract_Date__c=o1.Signed_Contract_Date__c,Renewal_Date__c=o1.Renewal_Date__c,Probability=o1.Probability,Implementation_Opportunity_Date__c=o1.Implementation_Opportunity_Date__c,Capital_Dollars_Secured_To__c=o1.Capital_Dollars_Secured_To__c,Anticipated_RFP_Date__c=o1.Anticipated_RFP_Date__c,Anticipated_Implementation_Date__c=o1.Anticipated_Implementation_Date__c ,Amount=o1.Amount, Opportunity__c= o1.id,stageName='closed won',
AccountId = O1.AccountId, OwnerId =o1.OwnerId );
insert newrec;
system.debug('+++New opp+++'+newrec);
system.debug('+++New opp id+++'+newrec.id);
system.debug('+++OCR+++'+OCR.size());
//creating contact role from parent opportunity
if(OCR.size()>0)
{
for (i = 0; i < OCR.size(); i++)
{
//Create new contact role with new sub opportunity
Contact_Opp_Role_Test__c NewOCR= new Contact_Opp_Role_Test__c();
NewOCR.Contact__c=OCR[i].Contact__c;
NewOCR.Opportunity__c=newRec.ID;

insert NewOCR;
//system.debug('+++New OCR+++'+NewOCR);
}

}
//getting installed base from parent opp
if(iblist.size()>0){
for (j = 0; j < iblist.size(); j++){
InstalledBase__c newib=new InstalledBase__c();
newib.Account__c=iblist[j].Account__c;
newib.Opportunity__c=newRec.id;
newib.SSO_Annual_Spend_Estimate__c =iblist[j].SSO_Annual_Spend_Estimate__c ;
newib.Annual_Spend_Estimate_Connector__c =iblist[j].Annual_Spend_Estimate_Connector__c ;
newib.Elastomerics_Annual_Spend_Estimated__c =iblist[j].Elastomerics_Annual_Spend_Estimated__c ;
newib.Annual_Spend_Estimate_Disposables__c =iblist[j].Annual_Spend_Estimate_Disposables__c ;
newib.Annual_Spend_Estimate_Disposables_Other__c =iblist[j].Annual_Spend_Estimate_Disposables_Other__c ;
newib.Annual_Spend_Estimate_Gravity__c =iblist[j].Annual_Spend_Estimate_Gravity__c ;
newib.Elastomerics_Annual_Units__c =iblist[j].Elastomerics_Annual_Units__c ;
newib.SSO_Annual_Units__c =iblist[j].SSO_Annual_Units__c ;
newib.Connector_Annual_Units__c =iblist[j].Connector_Annual_Units__c ;
newib.Annual_Units_Disposables__c =iblist[j].Annual_Units_Disposables__c ;
newib.Bag_Type__c =iblist[j].Bag_Type__c ;
newib.Comments__c =iblist[j].Comments__c ;
newib.Connector__c =iblist[j].Connector__c ;
newib.Connector_Vendor__c =iblist[j].Connector_Vendor__c ;
newib.Connector_Comments__c =iblist[j].Connector_Comments__c ;
newib.Connector_Competitor_Name__c =iblist[j].Connector_Competitor_Name__c ;
newib.Connectors_Rating__c =iblist[j].Connectors_Rating__c ;
newib.Contract_Exp_Date_Connectors__c =iblist[j].Contract_Exp_Date_Connectors__c ;
newib.Contract_Exp_Date_Disposables_Gravity__c =iblist[j].Contract_Exp_Date_Disposables_Gravity__c ;
newib.Contract_Exp_Date_Disposables_Other__c =iblist[j].Contract_Exp_Date_Disposables_Other__c ;
newib.Contract_Exp_Date_Elastomerics__c =iblist[j].Contract_Exp_Date_Elastomerics__c ;
newib.Contract_Exp_Date_Standard_Solutions__c =iblist[j].Contract_Exp_Date_Standard_Solutions__c ;
newib.Contract_Exp_Date_Syringe_Pumps__c =iblist[j].Contract_Exp_Date_Syringe_Pumps__c ;
newib.Contract_Expiration_Date__c =iblist[j].Contract_Expiration_Date__c ;
newib.Contract_Expiration_Date_Disposable_LVP__c =iblist[j].Contract_Expiration_Date_Disposable_LVP__c ;
newib.Contract_Expiration_Date_LVP_Non_Primary__c =iblist[j].Contract_Expiration_Date_LVP_Non_Primary__c ;
newib.Contract_Expiration_Date_LVP_Primary__c =iblist[j].Contract_Expiration_Date_LVP_Primary__c ;
newib.LVP_Disposable_Pricing_Primary_Gravi__c =iblist[j].LVP_Disposable_Pricing_Primary_Gravi__c ;
newib.LVP_Disposable_Pricing_Secondary_Gra__c =iblist[j].LVP_Disposable_Pricing_Secondary_Gra__c ;
newib.LVP_Disposable_Qty_Year_Primary_Grav__c =iblist[j].LVP_Disposable_Qty_Year_Primary_Grav__c ;
newib.LVP_Disposable_Qty_Year_Secondary_Gr__c =iblist[j].LVP_Disposable_Qty_Year_Secondary_Gr__c ;
newib.Disposables_Gravity_Comments__c =iblist[j].Disposables_Gravity_Comments__c ;
newib.Disposables_Gravity_Rating__c =iblist[j].Disposables_Gravity_Rating__c ;
newib.Disposables_Other_Comments__c =iblist[j].Disposables_Other_Comments__c ;
newib.Disposables_Other_Rating__c =iblist[j].Disposables_Other_Rating__c ;
newib.Elastomerics_Comments__c =iblist[j].Elastomerics_Comments__c ;
newib.Elastomerics_Rating__c =iblist[j].Elastomerics_Rating__c ;
newib.Infusion_Set__c =iblist[j].Infusion_Set__c ;
newib.Infusion_Set_Gravity__c =iblist[j].Infusion_Set_Gravity__c ;
newib.Infusion_Set_Other__c =iblist[j].Infusion_Set_Other__c ;
newib.LVP_Disposable_Pricing_Basic__c =iblist[j].LVP_Disposable_Pricing_Basic__c ;
newib.LVP_Disposable_Pricing_Specialty__c =iblist[j].LVP_Disposable_Pricing_Specialty__c ;
newib.LVP_Disposable_Pricing_Primary__c =iblist[j].LVP_Disposable_Pricing_Primary__c ;
newib.LVP_Disposable_Pricing_Secondary__c =iblist[j].LVP_Disposable_Pricing_Secondary__c ;
newib.LVP_Disposable_Qty_Year_Basic__c =iblist[j].LVP_Disposable_Qty_Year_Basic__c ;
newib.LVP_Disposable_Qty_Year_Specialty__c =iblist[j].LVP_Disposable_Qty_Year_Specialty__c ;
newib.LVP_Disposable_Qty_Year_Primary__c =iblist[j].LVP_Disposable_Qty_Year_Primary__c ;
newib.LVP_Disposable_Qty_Year_Secondary__c =iblist[j].LVP_Disposable_Qty_Year_Secondary__c ;
newib.LVP_Disposables_Comments__c =iblist[j].LVP_Disposables_Comments__c ;
newib.LVP_Disposables_Rating__c =iblist[j].LVP_Disposables_Rating__c ;
newib.LVP_Age_of_Pump_Fleet__c =iblist[j].LVP_Age_of_Pump_Fleet__c ;
newib.LVP_Age_of_Pump_Fleet_Secondary__c =iblist[j].LVP_Age_of_Pump_Fleet_Secondary__c ;
newib.LVP_Age_of_Pump_Fleet_Tertiary__c =iblist[j].LVP_Age_of_Pump_Fleet_Tertiary__c ;
newib.LVP_Primary_Section__c =iblist[j].LVP_Primary_Section__c ;
newib.LVP_Pump_Comments__c =iblist[j].LVP_Pump_Comments__c ;
newib.LVP_Pump_Comments_Secondary__c =iblist[j].LVP_Pump_Comments_Secondary__c ;
newib.LVP_Pump_Comments_Tertiary__c =iblist[j].LVP_Pump_Comments_Tertiary__c ;
newib.LVP_Products__c =iblist[j].LVP_Products__c ;
newib.LVP_Pump_Model_Tertiary__c =iblist[j].LVP_Pump_Model_Tertiary__c ;
newib.LVP_Pump_Rating__c =iblist[j].LVP_Pump_Rating__c ;
newib.LVP_Pump_Rating_Secondary__c =iblist[j].LVP_Pump_Rating_Secondary__c ;
newib.LVP_Pump_Rating_Tertiary__c =iblist[j].LVP_Pump_Rating_Tertiary__c ;
newib.LVP_Pump_Secondary__c =iblist[j].LVP_Pump_Secondary__c ;
newib.LVP_Secondary_Section__c =iblist[j].LVP_Secondary_Section__c ;
newib.LVP_Tertiary_Section__c =iblist[j].LVP_Tertiary_Section__c ;
newib.LVP_Competitor_Name__c =iblist[j].LVP_Competitor_Name__c ;
newib.LVP_Competitor_Name_Secondary__c =iblist[j].LVP_Competitor_Name_Secondary__c ;
newib.LVP_Vendor_Name_Tertiary__c =iblist[j].LVP_Vendor_Name_Tertiary__c ;
newib.Elastomerics_Model__c =iblist[j].Elastomerics_Model__c ;
newib.Connector_Model__c =iblist[j].Connector_Model__c ;
newib.LVP_Pump_Primary_Qty__c =iblist[j].LVP_Pump_Primary_Qty__c ;
newib.LVP_Pump_Secondary_Qty__c =iblist[j].LVP_Pump_Secondary_Qty__c ;
newib.Number_of_LVP_Pumps_Secondary__c =iblist[j].Number_of_LVP_Pumps_Secondary__c ;
newib.Number_of_LVP_Pumps_Tertiary__c =iblist[j].Number_of_LVP_Pumps_Tertiary__c ;
newib.Opportunity__c =iblist[j].Opportunity__c ;
newib.Elastomerics_Price__c =iblist[j].Elastomerics_Price__c ;
newib.Standard_Solutions_Price__c =iblist[j].Standard_Solutions_Price__c ;
newib.Connector_Price__c =iblist[j].Connector_Price__c ;
newib.Price_Disposables__c =iblist[j].Price_Disposables__c ;
newib.Rating__c =iblist[j].Rating__c ;
newib.Recall_Customer_Complaint__c =iblist[j].Recall_Customer_Complaint__c ;
newib.SSO_Comments__c =iblist[j].SSO_Comments__c ;
newib.SSO_Rating__c =iblist[j].SSO_Rating__c ;
newib.Standard_Solutions_Vendor__c =iblist[j].Standard_Solutions_Vendor__c ;
newib.Syringe_Competitor_Name_Secondary__c =iblist[j].Syringe_Competitor_Name_Secondary__c ;
newib.Syringe_Age_of_Pump_Fleet__c =iblist[j].Syringe_Age_of_Pump_Fleet__c ;
newib.Syringe_Pump_Comments__c =iblist[j].Syringe_Pump_Comments__c ;
newib.Syringe_Products__c =iblist[j].Syringe_Products__c ;
newib.Syringe_Pump_Secondary__c =iblist[j].Syringe_Pump_Secondary__c ;
newib.Syringe_Rating__c =iblist[j].Syringe_Rating__c ;
newib.Syringe_Qty__c =iblist[j].Syringe_Qty__c ;
newib.Syringe_Competitor_Name__c =iblist[j].Syringe_Competitor_Name__c ;
newib.Elastomerics_Vendor_Name__c =iblist[j].Elastomerics_Vendor_Name__c ;
newib.SSO_Vendor_Name__c =iblist[j].SSO_Vendor_Name__c ;
newib.Connector_Vendor_Name__c =iblist[j].Connector_Vendor_Name__c ;
newib.Vendor_Name_Disposables_Gravity__c =iblist[j].Vendor_Name_Disposables_Gravity__c ;
newib.Vendor_Name_Disposables_Other__c =iblist[j].Vendor_Name_Disposables_Other__c ;
newib.Vendor_Name_LVP_Disposables__c =iblist[j].Vendor_Name_LVP_Disposables__c ;
insert newib;

}
}
}
}
}