Я попадаю в MyTestClass

System.DmlException: Ошибка обновления. Первое исключение в строке 0 с идентификатором 00N000000FqP2cIAF; первая ошибка: INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY, недостаточные права доступа к идентификатору перекрестной ссылки: []

Я пытался получить доступ к идентификатору 00N000000FqP2cIAF, но это ошибка, не могу получить доступ, возможно, он был удален.

@isTest private static void testWhoCanCloseCasebeforeUpdate() {

        set<string> setfedids = new set<string>();
        List <Insurance_Claims_Case__mdt> cmsetting = [SELECT DeveloperName, Federation_ID__c FROM Insurance_Claims_Case__mdt];
        for (Insurance_Claims_Case__mdt icc: cmsetting){
            setfedids.add(icc.Federation_ID__c);
        }

       User triggerUser = [Select id, FederationIdentifier FROM User WHERE isActive = true AND FederationIdentifier = 'Icandothis' limit 1];

       Account acc = [Select Id from Account limit 1];
       Contact con = [Select Id from Contact limit 1];

       Case cs = new Case ();
            cs.RecordTypeId = Constants.RECORDTYPEID_CLAIM;
            cs.Subject = 'ClaimCase';
            cs.Status = 'Insurer’s Decision';
            cs.Origin = 'Phone'; 
            cs.Claim_Outcome_Reason__c = 'Difficultyt'; 
            cs.Payment_Amount__c = 2000; 
            cs.Sum_Insured__c = 20000; 
            cs.Premium_Refund_Value__c = 34000;
            cs.All_relevant_information_in_DataRooms__c ='Yes'; 
            cs.Date_referred_to_Client_Care_Services__c = date.today(); 
            cs.Trustee_Recommendation__c =  'Admit'; 
            cs.Trustee_Recommendation_Reason__c = 'Met terms and conditions'; 
            cs.Trustee_Next_Action__c = 'Prepare letter';
            cs.AccountId = acc.Id;
            cs.ContactId = con.Id;
            insert cs; 

        System.runas(triggerUser) {



            Test.startTest();
            cs.Status = 'Claim Decision';
            cs.Claim_Outcome__c = 'Successfully Closed'; 
            update cs;
            Test.stopTest();
        }
   }
0
David Reed 8 Мар 2020 в 20:51
Не могли бы вы поделиться всей трассировкой стека и указать, какая строка вызывает ошибку?
 – 
David Reed
8 Мар 2020 в 20:53
System.DmlException: Ошибка обновления. Первое исключение в строке 0 с идентификатором 500N000000FqP2cIAF; первая ошибка: INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY, недостаточные права доступа к идентификатору перекрестной ссылки: []
 – 
OneFourFour
9 Мар 2020 в 01:32
Он-лайн обновление cs;
 – 
OneFourFour
9 Мар 2020 в 01:33

1 ответ

00N000000FqP2cIAF имеет 17 символов и поэтому не является допустимым идентификатором. Все значения ID имеют длину 15 или 18 символов. У вас где-то опечатка. Кроме того, 00N будет CustomFieldDefinition, не будет никакой нормальной причины использовать этот идентификатор, за исключением очень редких обстоятельств, и я не вижу причин, по которым вам может понадобиться этот идентификатор в вашем модульном тесте. Вам нужно будет проверить правильный идентификатор для использования в любом поле, которое вы пытаетесь заполнить (я подозреваю, что это поле RecordTypeId, так как это единственная константа, но я могу ошибаться). Попробуйте выполнить поиск в своей кодовой базе для этого недопустимого идентификатора, и вы сможете его найти.

2
sfdcfox 8 Мар 2020 в 21:41
System.DmlException: Ошибка обновления. Первое исключение в строке 0 с идентификатором 500N000000FqP2cIAF; первая ошибка: INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY, недостаточные права доступа к идентификатору перекрестной ссылки: []
 – 
OneFourFour
9 Мар 2020 в 01:32
Он-лайн обновление cs; ошибка выдает
 – 
OneFourFour
9 Мар 2020 в 01:33
1
Тогда проблема скорее всего где-то в триггере. У нас недостаточно кода, чтобы понять, что происходит.
 – 
sfdcfox
9 Мар 2020 в 01:38
Я проверяю идентификатор из пользовательского интерфейса, и он показывает в адресной строке ..force.com/lightning/r/Case/500N000000FqPN4IAN/view here сообщение «Похоже, есть проблема». Нам не удалось найти запись, к которой вы пытаетесь получить доступ. Возможно, он был удален другим пользователем или произошла системная ошибка. Обратитесь за помощью к администратору. ..... Если я добавлю набор разрешений, как я включу его в тестовый класс
 – 
OneFourFour
9 Мар 2020 в 02:06
1
Данные, созданные в модульных тестах, не сохраняются. Вы не сможете проверить это таким образом. Ваша проблема в другом.
 – 
sfdcfox
9 Мар 2020 в 02:54