SuperAPI AI 工具集

platform-salesforce-connect-adapter-generate

营销与增长

查看项目

更新于 10-15 17:34

技能介绍

用途:为 Salesforce Connect 生成自定义 Apex 适配器,把任意外部 REST API 映射为可实时查询的 External Object,属于零拷贝虚拟化,不做数据同步或 ETL。生成前必须向用户确认 API 名称、Base URL、认证方式、关键 GET 端点及样例响应、是否需要写入、组织类型;若缺少任一项应先询问,不得凭空生成。仅适用于需要实时查询外部数据的场景;标准适配器(OData、GraphQL、Snowflake 原生)或数据同步、事件推送等场景不适用,且需要 Salesforce Connect 许可证。

主要能力:生成两个 Apex 类。DataSource.Connection 实现 query()、search(),以及 API 支持时的 upsertRows()、deleteRows();DataSource.Provider 实现 getAuthenticationMode()、getCapabilities()、getConnection()、sync()。字段类型按表映射,每个 Table 必须含 ExternalId 与 Name 列,建议加 DisplayUrl。支持公开只读、认证(NAMED_PRINCIPAL/PER_USER)、读写、分页四类场景。

使用方式:用 sf project deploy start --source-dir force-app/main/default/ --target-org [org-alias] 部署 Apex 与 Named Credential;External Data Source 元数据不可部署,需在 Setup 手动注册后点 Validate and Sync。随后须设置 Remote Site Setting、将 Deployment Status 改为 Deployed、创建 Tab,并用 SOQL 或 Visualforce 验证。

限制:query() 每事务最多 100 次 callout,同步堆 6 MB,CPU 10 秒;编辑 Connection 后必须重新保存 Provider,否则适配器会从类型下拉中消失;改 Connection 时勿硬编码 URL,须用 callout:前缀。异常不得抛出 query(),401 抛 OAuthTokenExpiredException。同步方法名须为 upsertRows/deleteRows(复数)。其余细节暂未提供。