Issue: Unable to add new lines/Products if already added more than 100
Backend debug log|FATAL_ERROR|System.QueryException: Aggregate query has too many rows for direct assignment, use FOR loop
The solution provided here: Salesforce Developers
1 for(sbqq__quote__c qt : [SELECT Id,Quote_Type__c,Special_Freight_Rate__c,Consumables_Only__c,
2 Company_Region__c,Country_code__c,Comp_Reg_Text__c,
3 (SELECT Id,SBQQ__AdditionalDiscountAmount__c,SBQQ__ListPrice__c,SBQQ__ProductCode__c,
4 Product_Group__c,Product_Type__c,SBQQ__Optional__c,SBQQ__NetTotal__c,SBQQ__NetPrice__c,
5 SBQQ__EffectiveQuantity__c,Dangerous_Goods__c,Instrument_item__c,Consumable_item__c,
6 Article_Type_Number__c,SBQQ__Quantity__c,Trade_Name__c,SBQQ__Quote__c,Article_Type__c,
7 SBQQ__Quote__r.Country_Code__c,SBQQ__Product__r.Weight__c, SBQQ__Product__r.Net_Weight__c,
8 SBQQ__Product__r.Weight_unit__c, CurrencyIsoCode
9 FROM SBQQ__LineItems__r order by SBQQ__Number__c ASC)
10 FROM sbqq__quote__c WHERE Id in :quoteIds])
11 {
12 /************** prevoius code ************
13 //QuoteToLineMap.put(qt.id,qt.SBQQ__LineItems__r );
14 ************************************************/
15
16 /**************** Modified code ******************/
17 if(!QuoteToLineMap.containsKey(qt.Id)){
18 QuoteToLineMap.put(qt.id,new List<SBQQ__QuoteLine__c>());
19 }
20 for(SBQQ__QuoteLine__c insideLine : qt.SBQQ__LineItems__r ){
21 QuoteToLineMap.get(qt.id).add(insideLine);
22 }
23
24