I have two date fields

  1. Manager_recruitment_date__c
  2. Recruitment_officer_date__c

I would want to write a utility class where I want to compare both these fields, and take the Max date and use it somewhere else in my logic.

Date Mydate;

If (o.Manager_recruitment_date__c != null || o.recruitment_officer_date__c != null) {

    if (o.Manager_recruitment_date__c > o.recruitment_officer_date__c) {
         Mydate = o.Manager_recruitment_date__c;
    } else {
        Mydate = o.recruitment_officer_date__c;


I am I doing it right? Does this qualify for all combinations of any of the date field being null?


2 Answers 2


No, that would not work with first if-statement, BOTH dates need to be NOT null:

Manager_recruitment_date__c != null && recruitment_officer_date__c != null

The second error is that you're not assigning max value to your variable, needs to be:

Mydate = Manager_recruitment_date__c;


Mydate = recruitment_officer_date__c;

The third error is that you're using fields without actual sObject, so I severely doubt that your class will compile.

  • My bad, o.Manager_recruitment_date__c is the sobject reference I am using,. What is the 2nd comment you have made? I am assigning inside the loop is it not right? Mar 20, 2020 at 6:44
  • But there is no loop in your example. And you want to have max value assigned to Mydate and not to the fields. Mar 20, 2020 at 7:03

If you just want to use the Maximum of Manager_recruitment_date__c and Recruitment_officer_date__c in your code , then you can create a formula field on the same object which will give you the Maximum of these two days and query that field to use in your logic.

IF( (Date1 - Date2) > 0 , Date1, IF((Date1 - Date2) < 0, Date2, IF(ISBLANK( Date1 ) && NOT( ISBLANK( Date2 ) ), Date2 , IF(ISBLANK( Date2 ) && NOT( ISBLANK( Date1 ) ), Date1 , null) ) ) )

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.