我希望使用Force.com ant迁移工具检索所有电子邮件模板。我相信我们无法批量检索电子邮件模板,报告等。
有没有什么方法可以一次检索所有电子邮件模板而无需指定每个模板名称?我相信我们可以使用Metadata API进行一些自定义实现,但是想知道某人是否已经为它实现了自定义ant任务。
提前致谢。
答案 0 :(得分:8)
电子邮件模板,报告等位于文件夹中,因此您必须向containingFolder
任务提供sf:bulkRetrieve
属性,然后您将获得该文件夹中的所有项目。例如:
<sf:bulkRetrieve
username="${sf.username}"
password="${sf.password}"
serverurl="${sf.serverurl}"
retrieveTarget="retrieveUnpackaged"
metadataType="EmailTemplate"
containingFolder="SalesTemplates"
/>
要查找文件夹名称,您可以查询Folder
对象并在Type
列上过滤您感兴趣的元数据类型。例如:
SELECT DeveloperName FROM Folder WHERE Type = 'Email'
答案 1 :(得分:0)
您是否尝试在清单文件中包含以下内容?它应该检索所有的电子邮件模板:
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>*</members>
<name>EmailTemplate</name>
</types>
<version>23.0</version>
</Package>
答案 2 :(得分:0)
如果您有文件夹/模板名称,则可以单独部署,而不是使用通配符。
(您可以编写成员列表并构建动态.xml构建文件)
<types>
<members>Simple_Survey</members>
<members>Simple_Survey/Alert_Managers_NPS_Survey_Created</members>
<name>EmailTemplate</name>
</types>