我们有一些逻辑依赖于托管包中自定义对象的记录类型。我们的一个客户为这个SObject创建了一些自定义记录类型 - 这引发了异常。 我们已经修复了,但是想要更新我们的单元测试来捕获这个案例 - 所以我们需要能够为这个SObject创建一个新的RecordType并分配它。但是,我无法弄清楚如何在Apex中动态执行此操作。
尝试:
insert new RecordType(...);
这会抛出“RecordType上不允许使用DML”。
根据SF API,RecordType有一个“创建”方法,但是:
RecordType rt = new RecordType();
rt.DeveloperName = 'Test';
rt.Name = 'Test';
rt.SObjectType = 'Listing__c';
rt.create();
收益率“方法不存在或签名不正确”。尝试作为静态方法时的结果相同:
RecordType.create(rt);
想法?
答案 0 :(得分:1)
在与其他一些SF开发人员讨论并重新阅读API文档后,看起来这不能通过APEX API完成(尽管可能通过SOAP API调用)。