You need to sign in to do that
Don't have an account?

Trigger for Cross Object Field Update
I have a field Primary Phone Identifier(Picklist:Phone 1/Phone2/Phone3)field on Account. HouseholdMember is a child of Account and Group. I wrote a trigger for a member who is primary in household member, his email which is selected in Primary Phone Identifier(say Phone 1), phone 1 value in Account is cascaded to Group level. Now, if Primary Phone Identifier is changed to Phone 2 this is updated at Household Member but I am unable to cascade it to Group object. Help me in updating it to Group object.
The trigger is as follows.
trigger PopulatePhoneEmail on Household_Member__c (after insert,after update) { Set<ID> householdgroupids=new Set<ID>(); Set<ID> Accountids=new Set<ID>(); List<Household_Group__c> hhglist = new List<Household_Group__c>(); list<Household_Group__c> householdgroupuplist=new list<Household_Group__c>(); List<Household_Member__c> memlist = new List<Household_Member__c>(); List<Household_Member__c> memupdatelist = new List<Household_Member__c>(); Integer count; boolean isListUpdated; hhglist = [Select id,Status__c,Name FROM Household_Group__c WHERE id in:householdgroupids]; for(Household_Member__c hm:trigger.new) { householdgroupids.add(hm.Household_Group__c); Accountids.add(hm.Member__c); } map<id,Household_Group__c> householdgroupmap = new map<id,Household_Group__c>([SELECT Id,Email__c,primary_city__c,Primary_Phone__c from Household_Group__c where id in:householdgroupids]); map<Id,Account> accids = new map<Id,Account>([Select id,BillingStreet,BillingCity,BillingState,BillingPostalCode,BillingCountry FROM Account WHERE id IN:Accountids]); for(Household_Member__c hm:trigger.new) { if(hm.Primary__c == true) { Household_Group__c hg=new Household_Group__c(); Account acc=new Account(); acc=accids.get(hm.member__c); hg=householdgroupmap.get(hm.Household_Group__c); if(hg!=null ) { hg.Primary_Phone__c = hm.Primary_Phone__c; hg.Primary_street__c = acc.BillingStreet; hg.Primary_street__c = acc.BillingStreet; hg.primary_city__c = acc.BillingCity; hg.primary_province__c = acc.BillingState; hg.primary_postal_code__c= acc.BillingPostalCode; hg.primary_country__c = acc.BillingCountry; hg.Email__c = hm.Email__c; householdgroupuplist.add(hg); } } } if(!householdgroupuplist.isempty()) { try { update householdgroupuplist; } catch(Exception e) { System.debug(e); } } }