2017-05-04 65 views
0

我在特定機會中有兩個字段。一個是「提案發送日期」,當用戶生成提案時(通過Conga Composer)自動輸入。我還有「提案有效日期」,在提案發送日期之後應爲1個月(或簡單起見,爲31天)。但是,這個有效的通過日期不能在週末。Salesforce日期字段(添加一個月/ 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日是星期一

回答

0

這將做到這一點

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; 
} 

這將需要是一個工作流程,如果你想更新的領域,這可以讓你開始

https://help.salesforce.com/articleView?id=fields_useful_validation_formulas_date.htm&language=en_US&type=0

+0

這可以直接添加到配方場? –

+0

哦,這是一個驗證規則,我不知道你怎麼能做到這一點 – EricSSH

+0

「Proposal Valid Thu Date」的當前公式字段是Proposal_Sent_Date__c + 31.我只是想找一些東西放在公式字段中以替換上面的內容並使改變。 –

相關問題