【发布时间】:2021-10-26 12:13:07
【问题描述】:
我有一个要求,我需要计算 Case closedDate 和 case CreatedDate 之间的营业时间,而不需要周六和周日。 任何人都可以帮助我解决如何实现的公式
【问题讨论】:
标签: salesforce apex
我有一个要求,我需要计算 Case closedDate 和 case CreatedDate 之间的营业时间,而不需要周六和周日。 任何人都可以帮助我解决如何实现的公式
【问题讨论】:
标签: salesforce apex
您是否真的在 SF 设置中使用 Calendar 对象、Holidays、BusinessHours 模型?
https://help.salesforce.com/s/articleView?id=sf.customize_supporthours.htm&type=5
开箱即用的完整的 Apex 类和 diff 方法:https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_classes_businesshours.htm
如果这太多了,您可以查看公式字段(https://developer.salesforce.com/docs/atlas.en-us.formula_date_time_tipsheet.meta/formula_date_time_tipsheet/formula_examples_dates.htm,“查找两个日期之间的工作日数”)
假设您确实使用 apex 并调用了 BusinessHours.diff...
Long differenceInMiliseconds = 12340000; // from BusinessHours.diff()
String ret = DateTime.newInstance(differenceInMiliseconds).formatGmt('hh:mm:ss');
System.debug(ret); // 03:25:40
// 3 * 3600 + 25 * 60 + 40 = 10800 + 1500 + 40 = 12340, cool
【讨论】: