Salesforce日期字段(添加一个月/31天,但不能在周末结束)

Salesforce日期字段(添加一个月/31天,但不能在周末结束),salesforce,apex,Salesforce,Apex,我有两个领域在一个特定的机会。一个是“提案发送日期”,用户生成提案时自动输入该日期(通过Conga Composer)。我也有“建议书有效期至日期”,该日期应为建议书发送日期后1个月(或为简单起见为31天)。但是,此有效截止日期不能在周末 我的问题是,我怎样才能转向: Proposal Valid Thru Date (Date)= Proposal_Sent_Date__c + 31 进入一个领域,如果是周六,将日期向前推2天,如果是周日,将日期向前推1天 例如,如果我今天运行该报告,则发

我有两个领域在一个特定的机会。一个是“提案发送日期”,用户生成提案时自动输入该日期(通过Conga Composer)。我也有“建议书有效期至日期”,该日期应为建议书发送日期后1个月(或为简单起见为31天)。但是,此有效截止日期不能在周末

我的问题是,我怎样才能转向:

Proposal Valid Thru Date (Date)=

Proposal_Sent_Date__c + 31
进入一个领域,如果是周六,将日期向前推2天,如果是周日,将日期向前推1天

例如,如果我今天运行该报告,则发送日期为2017年5月4日,但有效日期为2017年6月4日,即周日。我需要知道2017年6月4日是星期日,并添加一天,使有效日期截止到2017年6月5日,即星期一,这样就可以了

public static Date changeWeekendTaskDueDate(Date thedate)
{
    Datetime dt = DateTime.newInstance(thedate, Time.newInstance(0, 0, 0, 0));
    String dayOfWeek=dt.format('E');
    Integer offset = 0;

    if(dayOfWeek == 'Sat')
    {
        offset = 2;
    }
    else if(dayOfWeek == 'Sun')
    {
        offset = 1;
    }

    return thedate+offset;
}
这将需要一个工作流,如果你想更新字段,这可以让你开始


这可以直接添加到公式字段中?哦,这是一个验证规则,hm不确定如何才能做到这一点“提案有效周四”的当前公式字段是提案发送日期c+31。我只是想在公式字段中添加一些内容来替换上面的内容并进行更改。