屏幕 Flow 指南
在任何 Salesforce 屏幕 Flow(Screen Flow)中放入 MultiDatePick 日历。把组件拖到屏幕上,设置 Config Name,就完成了。
无需 Apex只需一个属性:Config Name
在设置向导中创建一次配置,或从 Config Library 导入一个。在 Flow 中只需设置一个属性,其余由组件自动加载。
- 打开一个屏幕
- 搜索 MultiDatePick
- 拖入 Booking、Date 或 Date Time
- 配置名称(Config Name)
- 保存
所有复选框都来自配置。设置了 Config Name,就无需在 Flow Builder 中勾选任何复选框。您在屏幕上填写的文本和数字属性会覆盖配置。
关联到记录保存
将 Parent Record Id 绑定到 Flow 所针对的记录,例如 {!recordId} 或“获取记录”的结果。组件随后会将其记录关联到该父记录保存。对于 Date 和 Date Time,如果留空,所选内容会改为传回 Flow。
从空白 Flow 开始创建
在 Flow Builder 中只需五分钟。无需部署:用“调试”即可测试。
设置、流、新建流、屏幕流、创建。
在画布上添加一个屏幕元素。
在组件列表中搜索 MultiDatePick 并将其拖入。
按向导保存时的名称准确输入配置名称。如果记录属于某条父记录,请绑定 Parent Record Id。
单击调试,选择日期或时间段,检查记录是否已创建。然后激活,并将 Flow 添加到记录页面、操作按钮或 Experience Cloud 站点。
Flow 能拿到什么
Booking 会自行保存预订。Date 和 Date Time 会将所选内容交给 Flow;设置了 Parent Record Id 时则自行保存。
| 组件 | 输出(Flow Builder 中的标签) | API 名称 |
|---|---|---|
| Booking | Successful Bookings Count, Conflict Dates | bookingSuccessCount, bookingConflictDates |
| Date | Selected Dates, Date Ranges JSON | selectedDates, selectedDateRangesJson |
| Date Time | Dates With Times JSON | selectedDatesWithTimesJson |
无需 Apex:现成的 Flow 操作
您完全不用编写 Apex。要将 Date 或 Date Time 的 JSON 转换为记录,使用软件包随附的三个部件即可。它们在 Flow Builder 中与任何标准操作一样显示。
- Parse Date Entries from JSON
- 循环遍历各条目
- 创建记录,每个条目一条
在“操作”下搜索它。输入 Date Ranges JSON 或 Dates With Times JSON。是仅日期还是日期加时间,会自动识别。
类:MultiDatePickParser
操作的返回值。将其存入 Apex 定义的变量,并循环遍历 data。
data:要循环遍历的条目totalCount:条目数量success、errorMessage:用于“决策”元素
单个条目,即您的循环变量。在“创建记录”中映射它。
fromDate、toDate:日期范围(单日时两者相同)startTime、endTime:仅限 Date Timeid:条目编号
Date Ranges JSON(Date)
{ "data": [
{ "id": 1, "fromDate": "2026-02-10", "toDate": "2026-02-12" },
{ "id": 2, "fromDate": "2026-02-15", "toDate": "2026-02-15" }
] }
Dates With Times JSON(Date Time)
{ "data": [
{ "id": 1, "fromDate": "2026-02-10", "toDate": "2026-02-10",
"startTime": "09:00", "endTime": "17:00" }
] }
附录:手动映射属性
仅在不使用 Config Name 时需要。Flow Builder 按字母顺序列出属性,并将 Conflict Behavior 等选项列表显示为普通文本框,这正是 Config Name 更简单的原因。对于 Booking 屏幕,请设置以下属性:
| Flow Builder 中的标签 | 填写内容 | API 名称 |
|---|---|---|
| Resource Object API Name | 要预订的对象,例如 Room 对象 | resourceObjectApiName |
| Resource Name Field | 作为每个资源名称显示的字段 | resourceNameField |
| 容量字段 | 一个资源同时可接受多少个预订。时间段显示 3/5,满员后关闭。 | capacityField |
| Booking Object API Name | 每个预订保存到的对象 | resourceBookingObject |
| Booking Date Field | 预订对象上的日期字段 | bookingDateField |
| Booking Start Time Field, Booking End Time Field | 预订对象上的时间字段 | bookingStartTimeField, bookingEndTimeField |
| Booking Resource Field | 从预订指向资源的查找字段 | bookingResourceField |
| 冲突行为(Conflict Behavior) | 输入 block(默认)、skip 或 allow | conflictBehavior |
| Parent Record Id | 预订所属的记录,例如 {!recordId} | recordId |
| Parent Record Relationship Field | 从预订指向该父记录的查找字段 | relationshipFieldApiName |
这里的复选框由您自行设置。不使用 Config Name 时,每个复选框(Required、Show Inline、Output Date Ranges as JSON 等)都取决于您在屏幕上的勾选。
动手之前先看看效果
无需登录即可试用在线演示,或在 MultiDatePick 登陆 Salesforce AppExchange 当天收到通知。
Flow 遇到问题?Support@MultiDatePick.com