• Prentiss Jones 3
  • NEWBIE
  • 30 Points
  • Member since 2015

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 4
    Questions
  • 15
    Replies
I have a tigger that creates a new record for 4 diffrent fields on Goal Object. It creates 4 new records at one time on a object called Quarterly Goal. This seems smiple...I would like to select a value in a picklist called Fiscal Quarter: Picklist Values Q1,Q2,Q3,Q4. 

Expamlpe:

Object (Goal) > Field (Goal Q1) = Object (Quarterly Goal) > Field (Quarterly Goal = Q1)

Her is my Tigger that I've had help on...a lot of help! Thank You! 
 
trigger CreateGoalSplits on Goal__c (after insert, after update) 
{
    if( trigger.isInsert )
    {
        List<Goal_Split__c> goalSplits = new List<Goal_Split__c>();
        
        for( Goal__c goal : trigger.new )
        {
            if( goal.GoalQ1__c != null )
            {
                Goal_Split__c goalSplit = new Goal_Split__c( GoalAmount__c = goal.GoalQ1__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ2__c != null )
            {
                Goal_Split__c goalSplit =  new Goal_Split__c( GoalAmount__c = goal.GoalQ2__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ3__c != null )
            {
                Goal_Split__c goalSplit = new Goal_Split__c(  GoalAmount__c = goal.GoalQ3__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ4__c != null )
            {
                Goal_Split__c goalSplit =  new Goal_Split__c( GoalAmount__c = goal.GoalQ4__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
        }
        
        if( goalSplits.size() > 0 )
            insert goalSplits;
    }
    else if( trigger.isUpdate )
    {
        List<Goal_Split__c> goalSplits = new List<Goal_Split__c>();
        
        List<Goal__c> goals = [ Select Id, AgencyOwner__c, AdditionalOwner__c, ClientOwner__c, (Select AgencyOwner__c, AdditionalOwner__c, ClientOwner__c, Id from Goal_Resources__r) from Goal__c where Id IN: trigger.new ];
        
        for( Goal__c g : goals )
        {
            if( trigger.oldMap.get( g.Id ).AgencyOwner__c != g.AgencyOwner__c
                || trigger.oldMap.get( g.Id ).AdditionalOwner__c != g.AdditionalOwner__c
                || trigger.oldMap.get( g.Id ).ClientOwner__c != g.ClientOwner__c )
            {
                for( Goal_Split__c gs : g.Goal_Resources__r )
                {
                    gs.AdditionalOwner__c = g.AdditionalOwner__c;
                    gs.AgencyOwner__c = g.AgencyOwner__c;
                    gs.ClientOwner__c = g.ClientOwner__c;
                    
                    goalSplits.add( gs );
                }
            }
        }
        
        if( goalSplits.size() > 0 )
            update goalSplits;
    }
}

 
User-added image

Hello, I'm new to Apex. But I think what I'm trying to do is simple. Would Like to creat a record (Goal Split) for each Goal Q Field (there are 4 of these fields) And carry user names to that record (Client Owner, Agency Owner, Addional Owner.) Goal Split.

On the the parent if a user changes (Client Owner, Agency Owner, Addional Owner) Then update the child (Goal Split) record. 

Not all Goal Q fields have to be filled out. Example. Rep may have a goal for Goal Q1,Goal Q3,Goal Q4....skipping Goal Q2. In this case only create 3 records. 
trigger RateCardPercentCalcInputsRCP on Line_Item__c (before insert,before update) {
    for(Line_Item__c li : trigger.new){
        Double rcpmod = 0;
        if(li.Blast__c == 'Hourly'){rcpmod+=2.5;}
        if(li.Blast__c == '1 Day'){rcpmod+=1.5;}
        //if(li.Day_Parting_Details__c != '' && (li.Blast__c == null || li.Blast__c == '2-7 Day')){rcpmod+=1;}
        if(li.Viewability__c && li.Rate_Card_Price__c>li.Sales_Price__c){rcpmod+=0.25;}
        if(li.Nielsen_OCR__c){rcpmod+=0.25;}
        if(li.BT_Deluxe__c){rcpmod+=0.50;}
        if(li.GoWatchIt_ViewNow__c){rcpmod+=0.50;}
        if(li.LDA__c&&li.Rate_Type__c=='CPM-GMV Xaxis'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPGMV Xaxis'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPM-GMV Group M'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPGMV Group M'){rcpmod+=2;}
        if(li.Retailigence__c){rcpmod+=0.35;}
        if(li.TMS__c && li.Total_Line_Price__c<100000){rcpmod+=0.75;}
        if(li.TMS__c && li.Total_Line_Price__c>=100000){rcpmod+=0.5;}
        /*if(li.Nielsen_Buyer_Insights_Modeling__c){rcpmod+=0.50;}
        if(li.Nielsen_Buyer_Insights_Custom__c){rcpmod+=0.90;}
        if(li.Nielsen_TV_Viewership_Modeling__c){rcpmod+=0.80;}
        if(li.Nielsen_TV_Viewership_Custom__c){rcpmod+=1.30;}
        if(li.NCS_Custom__c){rcpmod+=0.50;}
        if(li.LiveRamp_1st_Party__c){rcpmod-=1.50;}*/
        
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c !='CPVC' && (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.5;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC' && (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.8;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=1.3;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.9;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.5;}
       
        //this section is universally applied
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Handset: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Mobile: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Tablet: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='LiveRamp 1st Party' 
           && li.Rate_Type__c !='CPVC'){rcpmod-=1.5;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Quantcast' 
           && li.Rate_Type__c !='CPVC'){rcpmod-=1.5;}
        
        //below begins the upcharges for All Screen and Mobile. These are generally $1 more than non-All Screen, non-Mobile
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c !='CPVC' && (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.5;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC' && (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.8;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=2.3;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.9;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.5;}
        
        //here are the upcharges for all data targeting that is CPVC


        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c =='CPVC' ){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
       
        
        if(li.Retargeting__c && (li.Product__c.contains('All S') || li.Product__c.contains('Mobile'))){rcpmod+=1;}
        if(li.Sequential_Messaging__c && (li.Product__c.contains('All S') || li.Product__c.contains('Mobile'))){rcpmod+=1;}
        li.RCP_eCPM_Modifier__c=rcpmod;
    }

}
Need help, I'm in the Force.com IDE. I have deleted the calss in the sandbox, but will not delete in production. 

Class Names: CloneListTest 

Error 1:  test coverage across all Apex Classes and Triggers is 72%, at least 75% test coverage is required.    Tremor Video Production        line 1    Force.com code coverage warning

Error 2:  System.NullPointerException: Attempt to de-reference a null object    CloneListTest.cls    /Tremor Video Production/src/classes    line 56    Force.com run test failure
I have a tigger that creates a new record for 4 diffrent fields on Goal Object. It creates 4 new records at one time on a object called Quarterly Goal. This seems smiple...I would like to select a value in a picklist called Fiscal Quarter: Picklist Values Q1,Q2,Q3,Q4. 

Expamlpe:

Object (Goal) > Field (Goal Q1) = Object (Quarterly Goal) > Field (Quarterly Goal = Q1)

Her is my Tigger that I've had help on...a lot of help! Thank You! 
 
trigger CreateGoalSplits on Goal__c (after insert, after update) 
{
    if( trigger.isInsert )
    {
        List<Goal_Split__c> goalSplits = new List<Goal_Split__c>();
        
        for( Goal__c goal : trigger.new )
        {
            if( goal.GoalQ1__c != null )
            {
                Goal_Split__c goalSplit = new Goal_Split__c( GoalAmount__c = goal.GoalQ1__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ2__c != null )
            {
                Goal_Split__c goalSplit =  new Goal_Split__c( GoalAmount__c = goal.GoalQ2__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ3__c != null )
            {
                Goal_Split__c goalSplit = new Goal_Split__c(  GoalAmount__c = goal.GoalQ3__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
            
            if( goal.GoalQ4__c != null )
            {
                Goal_Split__c goalSplit =  new Goal_Split__c( GoalAmount__c = goal.GoalQ4__c, ClientOwner__c = goal.ClientOwner__c, AdditionalOwner__c = goal.AdditionalOwner__c, AgencyOwner__c = goal.AgencyOwner__c, GoalNumber__c = goal.Id );
                goalSplits.add( goalSplit );
            }
        }
        
        if( goalSplits.size() > 0 )
            insert goalSplits;
    }
    else if( trigger.isUpdate )
    {
        List<Goal_Split__c> goalSplits = new List<Goal_Split__c>();
        
        List<Goal__c> goals = [ Select Id, AgencyOwner__c, AdditionalOwner__c, ClientOwner__c, (Select AgencyOwner__c, AdditionalOwner__c, ClientOwner__c, Id from Goal_Resources__r) from Goal__c where Id IN: trigger.new ];
        
        for( Goal__c g : goals )
        {
            if( trigger.oldMap.get( g.Id ).AgencyOwner__c != g.AgencyOwner__c
                || trigger.oldMap.get( g.Id ).AdditionalOwner__c != g.AdditionalOwner__c
                || trigger.oldMap.get( g.Id ).ClientOwner__c != g.ClientOwner__c )
            {
                for( Goal_Split__c gs : g.Goal_Resources__r )
                {
                    gs.AdditionalOwner__c = g.AdditionalOwner__c;
                    gs.AgencyOwner__c = g.AgencyOwner__c;
                    gs.ClientOwner__c = g.ClientOwner__c;
                    
                    goalSplits.add( gs );
                }
            }
        }
        
        if( goalSplits.size() > 0 )
            update goalSplits;
    }
}

 
User-added image

Hello, I'm new to Apex. But I think what I'm trying to do is simple. Would Like to creat a record (Goal Split) for each Goal Q Field (there are 4 of these fields) And carry user names to that record (Client Owner, Agency Owner, Addional Owner.) Goal Split.

On the the parent if a user changes (Client Owner, Agency Owner, Addional Owner) Then update the child (Goal Split) record. 

Not all Goal Q fields have to be filled out. Example. Rep may have a goal for Goal Q1,Goal Q3,Goal Q4....skipping Goal Q2. In this case only create 3 records. 
trigger RateCardPercentCalcInputsRCP on Line_Item__c (before insert,before update) {
    for(Line_Item__c li : trigger.new){
        Double rcpmod = 0;
        if(li.Blast__c == 'Hourly'){rcpmod+=2.5;}
        if(li.Blast__c == '1 Day'){rcpmod+=1.5;}
        //if(li.Day_Parting_Details__c != '' && (li.Blast__c == null || li.Blast__c == '2-7 Day')){rcpmod+=1;}
        if(li.Viewability__c && li.Rate_Card_Price__c>li.Sales_Price__c){rcpmod+=0.25;}
        if(li.Nielsen_OCR__c){rcpmod+=0.25;}
        if(li.BT_Deluxe__c){rcpmod+=0.50;}
        if(li.GoWatchIt_ViewNow__c){rcpmod+=0.50;}
        if(li.LDA__c&&li.Rate_Type__c=='CPM-GMV Xaxis'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPGMV Xaxis'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPM-GMV Group M'){rcpmod+=2;}
        if(li.LDA__c&&li.Rate_Type__c=='CPGMV Group M'){rcpmod+=2;}
        if(li.Retailigence__c){rcpmod+=0.35;}
        if(li.TMS__c && li.Total_Line_Price__c<100000){rcpmod+=0.75;}
        if(li.TMS__c && li.Total_Line_Price__c>=100000){rcpmod+=0.5;}
        /*if(li.Nielsen_Buyer_Insights_Modeling__c){rcpmod+=0.50;}
        if(li.Nielsen_Buyer_Insights_Custom__c){rcpmod+=0.90;}
        if(li.Nielsen_TV_Viewership_Modeling__c){rcpmod+=0.80;}
        if(li.Nielsen_TV_Viewership_Custom__c){rcpmod+=1.30;}
        if(li.NCS_Custom__c){rcpmod+=0.50;}
        if(li.LiveRamp_1st_Party__c){rcpmod-=1.50;}*/
        
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c !='CPVC' && (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.5;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC' && (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.8;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=1.3;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.9;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c !='CPVC'&& (!li.Product__c.contains('All S')||!li.Product__c.contains('Mobile'))){rcpmod+=0.5;}
       
        //this section is universally applied
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Handset: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Mobile: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'Tablet: BT Other/Custom' && li.Data_Provider__c=='Crossix'
           && li.Rate_Type__c !='CPVC'){rcpmod+=0.75;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='LiveRamp 1st Party' 
           && li.Rate_Type__c !='CPVC'){rcpmod-=1.5;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Quantcast' 
           && li.Rate_Type__c !='CPVC'){rcpmod-=1.5;}
        
        //below begins the upcharges for All Screen and Mobile. These are generally $1 more than non-All Screen, non-Mobile
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c !='CPVC' && (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.5;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC' && (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.8;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=2.3;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.9;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c !='CPVC'&& (li.Product__c.contains('All S')||li.Product__c.contains('Mobile'))){rcpmod+=1.5;}
        
        //here are the upcharges for all data targeting that is CPVC


        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen Buyer Insights' 
           && li.Rate_Type__c =='CPVC' ){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Modeling' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen TV Viewership'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='Nielsen Buyer Insights'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
        if(li.Primary_Channel__c == 'BT: Other/Custom' && li.Data_Provider__c=='NCS Custom'
           && li.Rate_Type__c =='CPVC'){rcpmod+=4.25;}
       
        
        if(li.Retargeting__c && (li.Product__c.contains('All S') || li.Product__c.contains('Mobile'))){rcpmod+=1;}
        if(li.Sequential_Messaging__c && (li.Product__c.contains('All S') || li.Product__c.contains('Mobile'))){rcpmod+=1;}
        li.RCP_eCPM_Modifier__c=rcpmod;
    }

}
Need help, I'm in the Force.com IDE. I have deleted the calss in the sandbox, but will not delete in production. 

Class Names: CloneListTest 

Error 1:  test coverage across all Apex Classes and Triggers is 72%, at least 75% test coverage is required.    Tremor Video Production        line 1    Force.com code coverage warning

Error 2:  System.NullPointerException: Attempt to de-reference a null object    CloneListTest.cls    /Tremor Video Production/src/classes    line 56    Force.com run test failure