我想将所有 NOT EMPTY 对象/实体/表从 SalesForce 推送到 Azure Data Lake。 我正在使用 SOQL,唯一的方法是使用
"SELECT QualifiedApiName AS TableName FROM EntityDefinition"
在 Lookup 活动中,然后
SELECT COUNT(*) FROM @{item()}
从性能的角度来看并不好。
这是获取所有非空实体的更好方法吗?
说“all not empty”时要非常小心。你可以得到很多系统表(你关心Apex类吗?聊天帖子?帐户更改事件捕获?上传文件的过去版本?)
COUNTs 有点糟糕,但如果您可以连接一段代码来运行 REST API 调用,您可以获得类似于 Salesforce 设置 -> 存储使用情况的结果。
它只是作为标头传递的 HTTP GET + 会话 ID。
https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_record_count.htm
如果你很难将它包含在你的流程中——也许要求开发人员构建每晚运行的快照,写入一个帮助表……你会通过查询该表来启动你的流程?不是很好但很好。