即将登陆 Salesforce AppExchange

Salesforce VPAT:管理员须知

如果您在政府、教育或医疗行业工作,迟早会有人向您索要刚安装的 AppExchange 组件的 VPAT。下面说明这份文件是什么,以及该看哪些地方。

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

VPAT(Voluntary Product Accessibility Template,自愿性产品无障碍模板)是一种标准文件,供应商在其中逐条说明产品在各项无障碍标准下的表现。它不是证书,也没有任何机构会颁发给您。它是一份结构化的自我评估,价值完全取决于填写得是否诚实。

为什么 Salesforce 采购中会遇到它

Salesforce 本身就为其产品发布 VPAT。美国的公共部门采购方受 Section 508 约束,欧洲采购方受 EN 301 549 约束,两项标准都以 WCAG 为基础。只要您的组织受这些规则约束,技术栈中的每一款软件都要承担同样的义务,包括有人为了解决排期问题而安装的那个 AppExchange 软件包。

实际上,这个问题往往出现得很晚:在安全或采购审查期间,而此时组件早已嵌入业务流程。

VPAT 涵盖的三项标准

标准 谁关心它 涵盖内容
WCAG 2.1 A 和 AA 几乎所有人,作为基线 另外两项标准所依据的网页内容准则
修订版 Section 508 美国联邦,以及大多数州和地方政府 以 WCAG 表述的 Section 508 义务
EN 301 549 欧洲公共部门 欧盟采购中的对应标准

不是专家也能读懂

每条准则都会被标为几种合规级别之一。措辞很重要:

  • Supports(支持):该准则在所有地方都得到满足。
  • Partially Supports(部分支持):大多数情况下满足,但并非全部。这一项最值得细看。
  • Does Not Support(不支持):未满足该准则。
  • Not Applicable(不适用):该准则不适用于此产品。

一份每项都写着“支持”的 VPAT,比一份如实标出几项“部分支持”的 VPAT 更值得怀疑。真实的软件总有边缘情况。一份没有任何“部分支持”的文件,通常意味着根本没人真正测试过。

向供应商提的四个问题

  1. 最后一次验证是什么时候,针对哪个版本?两年前、六个版本之前写的 VPAT,描述的是一款已经不存在的软件。
  2. 是否在打包后的版本上测试过?未打包的源代码和托管软件包安装后的表现可能不同。真正重要的是您安装的那个版本。
  3. 自动扫描、人工审查,还是两者都有?自动化工具大约只能发现三分之一的问题。键盘导航和屏幕阅读器流程需要人来检查。
  4. 颜色是否曾是唯一的提示?这是排期界面中最常见的问题:状态只用一个带颜色的单元格表示,别无其他。

日历尤其难做好

日历是由可交互单元格组成的网格,这使它成为最难实现无障碍的模式之一。要做好,需要真正的 ARIA 网格语义(role="grid"、行、gridcell、列标题),在网格内用方向键导航而不是用 Tab 逐个经过每个单元格,每个单元格都有同时包含日期和状态的可访问名称,并且状态除了颜色之外还通过形状或文字传达。

最后一点对允许管理员配置的产品有直接影响:如果让管理员自行选择状态颜色,就无法保证对比度,而这恰恰应该如实标为“部分支持”,而不是悄悄声称“支持”。

MultiDatePick 发布了一份 VPAT 2.5 合规报告,涵盖 WCAG 2.1 A 和 AA、修订版 Section 508 以及 EN 301 549。最后一次验证于 2026 年 10 月 26 日,覆盖托管软件包 0.12.0-4 和即将发布的 0.13.0。axe-core 在三个组件和全部五种日历视图(日历、时间轴、周、使用率、日程)中均未发现任何违规,而且每个无法选择的日期都会被朗读为不可用,而不只是变灰。对比度标为“部分支持”,原因正如上文所述:状态颜色由管理员自行选择。重排 (Reflow) 也标为“部分支持”,因为宽网格在窄屏上需要横向滚动。