我正在尝试使用工具API停用触发器。我已经成功开发了ORG。但无法在真正的开发人员组织中这样做。这是一个Salesforce工具API错误吗?
这是算法的基础,
在沙盒中,我已经确认在重新查询Apex后输入代码hereTriggerMember表示只读字段" Content"看起来合适。我还确认MetadataContainerId现在指向一个状态为"已完成"
的ContainerAsyncRequest以下是我的结果,它似乎是成功的,但ApexTrigger永远不会停用 ContentEntityId = 01q ............. [ApexTrigger我要停用]
Content="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<ApexTrigger xmlns=\"urn:metadata.tooling.soap.sforce.com\">
<apiVersion>33.0</apiVersion>
<status>Inactive</status>
</ApexTrigger>"
Metadata={apiVersion=33.0 packageVersions=nil status="Inactive" urls=nil> attributes= {type="ApexTriggerMember"
url="/services/data/v33.0/tooling/sobjects/ ApexTriggerMember/401L0000000DCI8IAO"
}
}
答案 0 :(得分:0)
我认为您需要将非活动触发器从Sandbox部署到Production。您不能简单地停用生产中的触发器。即使在UI中也是如此。
还有其他选项,例如使用自定义设置或元数据类型来存储运行/不运行值。您将在Trigger中查询该值以决定是否运行它。
https://developer.salesforce.com/forums/?id=906F0000000MJM9IAO