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
Sid LightningSid Lightning 

Uncaught Action failed: c:UpdateCustomerHub$controller$handleclick [Cannot read property 'Opportunity__c' of null]

Hi,

I am trying to update details of my account.I have created a lightning button and have associated a lightnening component to it. On click of that lightning component, I am trying to update the updated records in an external System.

However, after clicking on the action, i am getting following message.
Uncaught Action failed: c:UpdateCustomerHub$controller$handleclick [Cannot read property 'Opportunity__c' of null]


Can anyone help me with this??

Below is my code :

Cmp :

<aura:component controller="ProductInterestController" implements="force:lightningQuickAction ">
    <aura:attribute name= "accts" type ="Account[]"/>
    <aura:attribute name="productInterest" type="Product_Interest__c"/>
    <aura:attribute name="accountId" type="Id"/>
    <aura:attribute name="selectedAddress" type="Shipping_Address__c" default="{Name : '',
                                                                               Shipping_City__c : ''}"/>
    <aura:attribute name="ShowHideNotification" type="Boolean" default="false"/>
    <aura:attribute name="Spinner" type="boolean" default="false"/>
    <aura:attribute name="oppty" type="Opportunity"/>
    <aura:attribute name="errorShow" type="String"/>
    
    <lightning:button variant  = "brand" label = "Update in Customer Hub" onclick= "{!c.handleclick}"/>                                                  
                                                         
</aura:component>

Controller :

({
    
     handleclick: function(cmp, event, helper) {
        cmp.set('v.Spinner', true);
        var action = cmp.get("c.pushToCustomerHub");
        action.setParams({ acct : cmp.get('v.accountId') ,
                           status : cmp.get('v.imSearchStatus'),
                           shipAddress : cmp.get('v.selectedAddress'),
                           opptyId : cmp.get('v.productInterest').Opportunity__c,
                           piId : cmp.get('v.productInterest').Id,
                          oppty : cmp.get('v.oppty'),
                          email : cmp.get('v.oppty').Account.PersonEmail});
        action.setCallback(this, function(response) {
            var state = response.getState();
            var resultData = response.getReturnValue();
            if (state === "SUCCESS" && resultData != undefined && !resultData.hasOwnProperty('error')) {                
               // console.log(resultData);
                helper.searchCallout(cmp,event,helper,resultData);
            }
            else{
                cmp.set('v.Spinner', false);
                if(resultData!= undefined && resultData.error!= undefined){
                    cmp.set('v.error', resultData.error);
                }                
            }
        });
        $A.enqueueAction(action);
    },
    
    searchCallout : function(cmp,event,helper,resp){
        var action = cmp.get("c.callFutureMethod");
        action.setParams({ imIdList : resp.imList });
        action.setCallback(this, function(response){
            var state = response.getState();
            if (state === "SUCCESS") {
               // console.log('make callout');
                helper.fetchData(cmp,event,helper,resp.imId);     
            }
            else{
                cmp.set('v.Spinner', false);
                var error = response.getError();
                if(Array.isArray(error) && error.length > 0) {
                    var errorMsg = error[0].message;
                    cmp.set('v.error', response.getError()[0].message);
                //    console.log('error', response.getError()[0].message);
                }
            } 
        });
        $A.enqueueAction(action);
    },
    
    
    fetchData : function(cmp,event,helper, resp){
        var action = cmp.get("c.parseUpdatedIMResponse");
        action.setParams({ imId : resp });
        action.setCallback(this, function(response){
            var state = response.getState();
            var resp = JSON.parse(response.getReturnValue());
           // console.log('resp:', resp);
            if (state === "SUCCESS" && resp!=null && resp.error== null) {
                cmp.set('v.Spinner', false);
              //  console.log('response', response.getReturnValue());  
                cmp.getEvent("cdfEvent").fire();
            }else{
                cmp.set('v.Spinner', false);
                if(resp.error!= null){
                    cmp.set('v.error', resp.error);
                }
            } 
        });
        $A.enqueueAction(action);
    }
})

 
Sid LightningSid Lightning
Can anyone help me this?