2017-05-04 1 views
0

Ich habe zwei Felder in einer bestimmten Opportunity. Einer ist das "Sent-Datum des Angebots", das automatisch eingegeben wird, wenn der Benutzer das Angebot generiert (über Conga Composer). Ich habe auch das "Valid Thru-Datum des Vorschlags", das nach dem Absendedatum des Vorschlags 1 Monat (oder 31 Tage zur Vereinfachung) sein sollte. Dieses gültige Datum darf jedoch nicht am Wochenende liegen.Salesforce-Datumsfeld (einen Monat/31 Tage hinzufügen, aber am Wochenende nicht enden)

Meine Frage ist, wie kann ich mich wenden:

Proposal Valid Thru Date (Date)= 

Proposal_Sent_Date__c + 31 

in einem Feld, das das Datum 2 Tage nach vorne schieben, wenn es ein Samstag ist, und 1 Tag nach vorne, wenn es ein Sonntag ist?

Zum Beispiel, wenn ich diesen Bericht heute lief, ist das gesendete Datum 5/4/2017, aber das gültige Datum ist 6/4/2017, das ein Sonntag ist. Ich muss das wissen 2017.06.04 ein Sonntag ist und einen Tag hinzuzufügen, die gültig bis Datum 2017.06.05, die Montag Diese

Antwort

0

zu machen wird es tun

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

Dies muss ein Workflow zu sein, wenn Sie das Feld aktualisieren möchten, diese können Sie direkt in das Formelfeld erhalten gestartet werden

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

+0

Dies kann hinzugefügt? –

+0

oh es ist eine Validierungsregel, hm nicht sicher, wie Sie das tun können – EricSSH

+0

Die aktuelle Formel Feld für "Gültiges Angebot Gültig Datum" ist Proposal_Sent_Date__c + 31. Ich war nur auf der Suche nach etwas in das Formelfeld zu setzen, um die oben genannten und zu machen der Wechsel. –

Verwandte Themen