You need to sign in to do that
Don't have an account?
Debendra Ray 8
How to increase the code coverage for the following code - I'm getting an error while deploying this trigger on PROD - SendEmailForTaskEscalation, Details: Test coverage of selected Apex Trigger is 0%, at least 1% test coverage is required :
How to increase the code coverage for the following code - I'm getting an error while deploying this trigger on PROD - SendEmailForTaskEscalation, Details: Test coverage of selected Apex Trigger is 0%, at least 1% test coverage is required :
trigger SendEmailForTaskEscalation on Task (after update) {
for (Integer i = 0; i < Trigger.new.size(); i++) {
try{
if( Trigger.new[i].CallDisposition == 'Escalated to Manager' &&
Trigger.new[i].Status != 'Completed' &&
Trigger.new[i].ActivityDate <= date.today()
) {
sendEmailToManager(Trigger.new[i]);
System.debug('SendEmailForTaskEscalation -> Email Send to Manager');
}else{
System.debug('SendEmailForTaskEscalation -> Email Not Send to Manager');
}
}catch(Exception e)
{
Trigger.new[i].addError(e.getMessage());
System.debug('Error : SendEmailForTaskEscalation ->'+ e);
}
}
// This method will submit the proposal automatically
public void sendEmailToManager(Task tsk){
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
String ownerName = [select Name from User where Id = :tsk.OwnerId].Name;
String emailAddr = [select Email from User where Id = :tsk.OwnerId].Email;
String userManagerId = [select ManagerId from User where Id = :tsk.OwnerId].ManagerId;
String userManager = [select Name from User where Id = :userManagerId].Name;
String userManagerEmail = [select Email from User where Id = :userManagerId].Email;
String[] toAddresses = new String[] {userManagerEmail};
String[] ccAddresses = new String[] {emailAddr};
mail.setToAddresses(toAddresses);
mail.setCcAddresses(ccAddresses);
mail.setSubject('SLA breach for the Task assigned to the User : ' + ownerName );
mail.setHtmlBody('<br/>Hi,<br/><br/>This is to inform you that, ' + ownerName + ' has failed to complete the following task within the due date :<br/><br/> Due Date of the task :' +tsk.ActivityDate+'<br/>'+'Priority of the task : <b>' + tsk.Priority + '</b><br/> Subject : <b>' + tsk.Subject + '</b>'+'</b><br/> Description : <b>' + tsk.Description +'</b>'+'</b><br/> Status : <b>' + tsk.Status + '</b> <br/><br/><br/>Thanks & Regards <br/> <br/>Salesforce Administrator');
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
}
}
trigger SendEmailForTaskEscalation on Task (after update) {
for (Integer i = 0; i < Trigger.new.size(); i++) {
try{
if( Trigger.new[i].CallDisposition == 'Escalated to Manager' &&
Trigger.new[i].Status != 'Completed' &&
Trigger.new[i].ActivityDate <= date.today()
) {
sendEmailToManager(Trigger.new[i]);
System.debug('SendEmailForTaskEscalation -> Email Send to Manager');
}else{
System.debug('SendEmailForTaskEscalation -> Email Not Send to Manager');
}
}catch(Exception e)
{
Trigger.new[i].addError(e.getMessage());
System.debug('Error : SendEmailForTaskEscalation ->'+ e);
}
}
// This method will submit the proposal automatically
public void sendEmailToManager(Task tsk){
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
String ownerName = [select Name from User where Id = :tsk.OwnerId].Name;
String emailAddr = [select Email from User where Id = :tsk.OwnerId].Email;
String userManagerId = [select ManagerId from User where Id = :tsk.OwnerId].ManagerId;
String userManager = [select Name from User where Id = :userManagerId].Name;
String userManagerEmail = [select Email from User where Id = :userManagerId].Email;
String[] toAddresses = new String[] {userManagerEmail};
String[] ccAddresses = new String[] {emailAddr};
mail.setToAddresses(toAddresses);
mail.setCcAddresses(ccAddresses);
mail.setSubject('SLA breach for the Task assigned to the User : ' + ownerName );
mail.setHtmlBody('<br/>Hi,<br/><br/>This is to inform you that, ' + ownerName + ' has failed to complete the following task within the due date :<br/><br/> Due Date of the task :' +tsk.ActivityDate+'<br/>'+'Priority of the task : <b>' + tsk.Priority + '</b><br/> Subject : <b>' + tsk.Subject + '</b>'+'</b><br/> Description : <b>' + tsk.Description +'</b>'+'</b><br/> Status : <b>' + tsk.Status + '</b> <br/><br/><br/>Thanks & Regards <br/> <br/>Salesforce Administrator');
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
}
}
All outstanding issues in PROD deployment are resolved. Your suggestions did help me figure out the root cause. - Thanks very much for your support. Much appreciated.
Regards,
Debendra
All Answers
All outstanding issues in PROD deployment are resolved. Your suggestions did help me figure out the root cause. - Thanks very much for your support. Much appreciated.
Regards,
Debendra