function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
ApexDevApexDev 

Populate lookup field - Apex class

Hi Developers Is it possible to populate lookup field on Case with ID of custom object using Apex Class?

Criteria if: Account.RC__c (picklist) == Responsibility_Center__c.Name (custom object)
Set the Responsibility_Center__c ID on Case

I tried to find some examples to modify the code, but unfortunatelly I don't think that I am doing it right. And I am newbie in Apex, so it is hard to write without any examples :(
public with sharing class CaseTriggerService {
    public static void findRC(List<Responsibility_Center__c> records)
    {
        Set<String> RcIds = new Set<String>();
        for (Responsibility_Center__c record : records) RcIds.add(record.Name);

        Map<String, Case> cases = new Map<String, Case>();
        for (Case cs : [
            SELECT Id, Responsibility_Center__c, Account.RC__c FROM Case
            WHERE Responsibility_Center__c IN : RcIds
        ]) cases.put(cs.Responsibility_Center__c, cs);

        for (Responsibility_Center__c record : records)
            if (cases.containsKey(record.Responsibility_Center__c))
                record.Name = cases.get(record.Responsibility_Center__c).Id;
    }
}
AnkaiahAnkaiah (Salesforce Developers) 
Hi Andzela,

Your requirement was not clear.

which field you need to auto update on Responsibility_Center__c object?

Do you want update the field on case object or Responsibility_Center__c object?

Thanks!!