即将登陆 Salesforce AppExchange

五种日历视图,一个 Salesforce 组件

人们实际提出的排期问题里,有一半用月历来回答并不合适。下面说说我们为什么又加了四种视图,以及如何让视图选择变成一个配置字段,而不必重新搭建。

发布于 2026 年 8 月 21 日 · 更新于 2026 年 10 月 21 日 · MultiDatePick

每个日历最初都是月历,因为“日历”这个词让人想到的就是它。然后大家开始问它答不上来的问题:“周四下午谁有空?”“4 号会议室下周是不是排满了?”“哪个技术员超出容量了?”这些数据月历里都有,只是得一点点去找。

现在,MultiDatePick 能以五种方式呈现同一批记录。一个组件、一套字段映射、一条保存路径,再加一个改变布局的视图设置。

MultiDatePick 以五种视图展示 Salesforce 预订:资源时间轴、月历、使用率热图、周网格和日程列表
一个组件,五种布局。每种视图读取相同的字段,以相同的方式保存。

五种视图,各自回答一个问题

每种视图都为一个问题而设计。底层是同一批记录,按这个问题需要的方式呈现。

日历

14 号有什么安排?

一次显示一个月,每天按当天预订的状态填色。混合多种状态的日期会显示其中的每一种状态。这是默认视图,多数情况下仍是最合适的选择。

可交互
MultiDatePick Salesforce 日历视图的动画演示:选择一位顾问后,整月按状态着色,悬停某一天会弹出卡片,按客户姓名、时间和状态列出当天的预约
时间轴

哪个资源有空,什么时候有空?

资源纵向排列,日期横向展开。跨三天的预订显示为一整条横条,重叠的预订分道堆叠,容量条显示每天的占用程度。可从单日缩放到整月,拖动横条即可移动或拉长预订。详细了解时间轴视图。

可交互
MultiDatePick Salesforce 资源时间轴的动画演示:左侧列出顾问,多日客户项目显示为一整条横条,悬停查看其中一个项目的卡片,再从周缩放到月并向后翻页
周

周四下午 2 点谁有空?

横向七天,纵向为营业时间,每项预订按实际时长显示。重叠的预订以各自的状态颜色并排显示,旁边留出空白区域,方便再加一项。

可交互
MultiDatePick Salesforce 周视图的动画演示:选择一位顾问后,其客户会议显示为按状态着色、长度与会议时长一致的色块,悬停卡片显示客户、会议类型和状态
使用率

谁超出了容量?

按资源、按天显示已预订占容量,统一使用蓝色色阶。超额预订的日期带橙色圆环,汇总行合计整个团队。单击任意单元格即可进入该资源的周视图。详细了解使用率热力图。

只读
MultiDatePick Salesforce 使用率热力图的动画演示:左侧列出顾问,显示每天已预订占容量,悬停在已满的一天上,单击后打开该顾问当周
日程

接下来有什么安排?

未来 60 天的平铺列表,按日期分组,显示时间、状态以及您选择的字段。在手机上和交接班时都很好读。

只读
MultiDatePick Salesforce 日程视图的动画演示:按日期列出即将到来的预约,含时间、客户、状态标签和顾问,并悬停查看其中两条的卡片

使用率和日程视图特意设计为只读:它们用来回答问题,而不是接受预订。其余三种视图完全可交互。

五种视图,对预订只有一种定义

这类故事通常的结局是再做一个组件:有自己的字段、自己的保存逻辑,还有自己的 bug。而在这里,五种视图通过同一套字段映射读取同一批记录,遵守相同的冲突规则和屏蔽日期,并通过同一条保存路径写入。从日历切换到时间轴,不会改变预订的含义,因为预订只有一种定义。

由两个设置控制:

视图(View)

组件打开时显示的布局:日历、时间轴、周、使用率或日程。

可用视图(Available Views)

切换器中提供的视图。留空则提供全部五种,也可以缩小到适合本页面的两种。

于是一个组件就变成了三种不同的工具。招聘人员的面试安排页面默认打开周视图,因为面试是按钟点安排的问题。设施经理的会议室预订页面默认打开日历,旁边提供时间轴和使用率,因为会议室是容量问题。墙上的展示屏默认打开日程,完全不提供可编辑的视图。

默认视图始终出现在切换器中,无论您是否在“可用视图”中列出它。这个列表只需填写额外的视图,从而彻底避免“我限制了视图,结果自己的默认视图不见了”这类困惑。

每个放置位置单独选择视图

全组织统一的日历设置几乎毫无用处,因为一家公司问的从来不是同一个问题。销售想看下周,运营想看下季度,班组经理想按小时看今天,财务想要一个使用率数字。

视图在组件的每个放置位置上单独设置。把 MultiDatePick 放在四个记录页面、一个 Flow 屏幕、一个主页和一个公开的 Experience Cloud 站点上,每个位置都可以是同一批对象的不同视图。无需再次安装,也无需同步多套字段映射。

时间轴还有两个专属设置:

设置项作用API 名称
时间轴窗口(天)(Timeline Window (Days)) 屏幕上同时显示多少天,默认 14 天。如果显示整月的列,每项预订只有约二十像素宽,所有标签都会被截断,所以这个时间窗口是为了保持视图清晰易读。若想显示整月,请设为 0。 timelineWindowDays
视图中最大资源数(Max View Resources) 绘制多少行资源,最繁忙的排在前面。避免八十间会议室的列表把视图变成一堵墙。 maxViewResources

当某个资源有多项重叠预订时,它的行会折叠为带计数的一条,单击后展开为每项预订一道。信息密度由用户自己选择,而不是被数据强加。

在 MultiDatePick Salesforce 时间轴上改期的动画演示:拖动一个项目的右边缘将其延长两天,再拖动另一个项目整体推后两天,松开即保存,横条上显示新日期
改期只需拖动。拉动边缘可拉长预订,抓住中间可整体移动。拖动时横条上会显示新日期,松开即保存。

把资源查找指向 User,就变成了人员排班

资源查找可以指向任何对象。指向会议室,就是会议室预订;指向设备,就是设备借用。指向 User,上面的每种视图都会变成人员调度工具:时间轴是值班表,周视图是班次网格,使用率是团队容量仪表板。比起会议室,经理们更常问的是“哪个人超出了容量”。

MultiDatePick 中以人员为资源的 Salesforce 时间轴视图:左侧列出顾问,横向为日期,每项服务显示为一条横条
把人员当作资源。这里的每一行都是一个人。将 Resource Object API Name(资源对象 API 名称)设为 User,您自己的团队就会以同样的方式填满各行。
如果您想试试,有两点实用提示。User 没有标准的容量字段,如果希望使用率显示百分比而不是原始数量,请添加一个自定义字段。另外,如果将 Business Hours Start Field(营业时间开始字段)和 Business Hours End Field(营业时间结束字段)指向 User 上的字段,周网格就会按每个人自己的工作时间显示,而不是全组织统一的时段。

库中正好有两个现成配置:团队容量规划 默认打开使用率热力图,员工排班表 默认打开时间轴。两者都以 User 作为资源。

库中的每个配置现在都已预选好视图

选择默认视图需要判断,而照搬一个比自己定一个更容易。所以 Config Library 中的每个配置现在都同时指定了默认视图和切换器列表,依据的是每个配置的实际用途:

面试和预约类配置周按一天中的钟点打开
会议室、工位、车队和实验室类配置时间轴使用率谁占用了什么,占用了多少
休假、禁用期等日期范围时间轴多日记录显示为一整条横条
仅日期类配置日历日程日程作为只读的辅助视图
任何带容量字段的配置使用率容量百分比
默认视图始终是可编辑的视图。只读的默认视图会掩盖配置的主要用途,所以使用率和日程只作为附加视图提供。

导入其中任何一个,把字段名重新映射到您自己的架构,视图选择也会一并带过来。

一个组件,五种视图,无需二次安装。

在在线演示中切换全部五种视图,或在 Config Library 中查看每个场景默认打开哪种视图。

  • $20/用户/月,全部功能
  • 30 天免费试用,无需信用卡
  • 100% Salesforce 原生
  • 无需 Apex
  • 即将登陆 Salesforce AppExchange