用途:该技能用于在 Salesforce Web 应用中访问数据,包括查询 Account、Contact、Opportunity 及自定义对象记录,执行创建、更新、删除操作,为 React 组件接入数据,调用 REST API,以及探索组织架构中的对象、字段与关系。
主要能力:所有数据访问必须使用 Data SDK(@salesforce/sdk-data),由 SDK 处理认证、CSRF 和基础 URL 解析,禁止直接使用 fetch() 或 axios。支持 GraphQL(记录查询与变更的首选方式)、UI API REST、Apex REST、Connect REST 和 Einstein LLM。企业 REST 查询端点、Aura-enabled Apex、Chatter API 及其他未列出的端点均不支持。
使用方式:先获取 schema.graphql(缺失时在 webapp 目录运行 npm run graphql:schema),再用 bash .a4drules/skills/using-salesforce-data/graphql-search.sh <EntityName> 查询实体字段、过滤、排序及创建/更新输入。查询时对记录字段加 @optional,消费代码使用可选链。变更需包含必填字段,创建不含子关系,更新含 Id,删除仅含 Id。完成后用 npx eslint <file> 检查。
适用场景:在 React Web 应用中展示或操作 Salesforce 记录、获取当前用户信息、读取对象元数据与选项列表值、上传文件配置、调用 Apex REST 自定义逻辑、使用 Einstein LLM 生成文本。
限制:仅允许使用列出的 API;GraphQL 无法覆盖时才用 REST;schema.graphql 不可直接打开或解析;自定义对象需部署元数据后才出现;测试前需询问用户,变更不得编造数据;ESLint 报字段或类型错误时应重新运行搜索脚本确认名称,不可猜测。