是否有解决方法来计算 Salesforce 中已完成交易的准确合同结束日期?我们有一个基于 计算合同结束日期的字段[ Revenue_Date__c + ( Contract_Length__c * 30) ]
,但是,这是基于所有月份都有 30 天的假设,是否可以解决此问题以获得更准确的合同结束日期?
我们使用的是 Salesforce 专业版。
问问题
3930 次
1 回答
0
据我所知,用函数/公式来做这件事会非常棘手。你可以开始试验这个找到当月月底的东西:
DATE(
YEAR(TODAY()),
MONTH(TODAY()),
CASE( MONTH(TODAY()),
1, 31,
2, IF( MOD( YEAR(TODAY()), 4) = 0, 29, 28),
3, 31,
4, 30,
5, 31,
6, 30,
7, 31,
8, 31,
9, 30,
10, 31,
11, 30,
12, 31,
DAY(TODAY())
)
)
您可以尝试计算天数与今年年底、明年等(取决于合同期限)之间的差异,但这将是一个非常讨厌的解决方案。每次看到国产日期处理“图书馆”时,我都会哭泣......
你能把逻辑移到顶点吗?在一个简单的“插入前,更新前”触发器中,它会很容易:
for(My_Object__c o : trigger.new){
o.Contract_End_Date__c = o.Contract_Start_Date__c.addMonths(o.Contract_Length__c);
}
在“之前”触发器中,您可以免费保存到数据库作为奖励;)因此,如果它是公式字段,用户会看到它基本上相同。
于 2012-11-26T18:46:30.330 回答