微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将 Salesforce 报告从一个 .org 批量传输到另一个干净的 .org?

如何解决如何将 Salesforce 报告从一个 .org 批量传输到另一个干净的 .org?

我的任务是将旧 .org 的所有报告上传到全新的 .org

我发现可以通过 .xml 文件从旧的 .org 检索报告并将其上传到新的组织通过工作台。像这样

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/Metadata">
<types>
   <members>FOLDERA/REPORTA</members>
   <members>FOLDERB/REPORTB</members>
   <name>Report</name>
</types>
<version>43.0</version>

我已经用这种方法测试过,效果很好

但是

旧的 .org 包含数以千计的报告,一次浏览每个文件夹会很烦人,每次都自定义 .xml 文件

调用 * 只是检索了一个名为“unpacked”的空文件夹,其中包含名为“packaged”的 .xml 文件,但不幸的是仅此而已。

<?xml version="1.0" encoding="UTF-8"?>
<Package
xmlns="http://soap.sforce.com/2006/04/Metadata">
<types>
    <members>*</members>
    <name>Report</name>
</types>
<version>43.0</version>

有没有办法一次性批量下载、传输和上传所有报告和文件,以便我在新的但“干净”的 .org 中拥有完全相同的结构?

我很感激任何反馈!

提前致谢!

解决方法

完全自动化的操作有点麻烦。您需要了解文件夹名称,然后是对 listMetadata 的元数据 API 调用,您可以在其中提供文件夹名称(报告、仪表板、电子邮件模板...),它会告诉您里面有什么。有办法使其自动化(称为 Force.com IDE 的旧开发工具能够实现,如果您有使用 VSCode 的开发人员,则有 decent plugin for building that package.xml...) .

看看这个查询是否给你有希望的结果

SELECT FolderName,DeveloperName
FROM Report
ORDER BY FolderName,DeveloperName

将结果输入 Excel、一些公式、批量搜索替换,您应该能够为您的包创建 <member>...</member> 行吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。