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

INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY 尝试在生产中部署顶点类时

如何解决INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY 尝试在生产中部署顶点类时

我正在尝试部署一个 apex 类,但在尝试验证生产中的变更集时出现以下错误,有人可以帮忙吗?谢谢 ! :)

Apex 类描述:

批次必须在不创建机会的情况下转换潜在客户,ToConvert...是潜在客户上包含一些 ID 的两个自定义字段

错误信息:

System.DmlException:ConvertLead 失败。第 0 行的第一个异常;第一个错误:INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY,您没有所需的权限。要继续,您必须对所选帐户记录具有“读取”权限。: [] 堆栈跟踪:Class.AutomaticLeadConversion.execute:第 22 行,第 1 列。

Apex 类代码

public with sharing class AutomaticLeadConversion implements 
Database.Batchable<SObject>,Database.RaisesPlatformEvents{

    public Database.QueryLocator start(Database.BatchableContext bc){
        return Database.getQueryLocator([SELECT Id,ToConvertAccountId__c,ToConvertContactId__c,IsConverted FROM Lead WHERE IsConverted = false and ToConvertAccountId__c != null and ToConvertContactId__c != null]);
    }
    public void execute(Database.BatchableContext bc,List<Lead> records){
        List<Database.LeadConvert> leadConverts = new List<Database.LeadConvert>();
        for(Lead record:records){
            Database.LeadConvert lc = new Database.LeadConvert();
            if (record.IsConverted == false){
            lc.setConvertedStatus('Qualifié');
            lc.setLeadId(record.Id);
            lc.setDoNotCreateOpportunity(true);
            lc.setAccountId(record.ToConvertAccountId__c);
            lc.setContactId(record.ToConvertContactId__c);
            leadConverts.add(lc);
            }
        }
        Database.convertLead(leadConverts,true);
    }
    public void finish(Database.BatchableContext bc){

    }
}

解决方法

问题是您正在转换可能分配给 que 的潜在客户,如果是这种情况,请确保将潜在客户分配给 person 而不是 que。或传递所有者 ID

lc.setOwnerId(USER_ID);

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