You need to sign in to do that
Don't have an account?
Sia Thripio 6055
Write a trigger to update a field(let it be city) in all related opportunities, when same field(city) is update in account.
this code is not reflecting my UI . why?
trigger citytrigger on Account (after update) {
List< Opportunity> OppListToUpdate=new List< Opportunity > ();
map<id,account> Accmap=new map<id,account>();
for(Account a:trigger.new){
if(a.accCity__c !=trigger.oldmap.get(a.id).accCity__c)
Accmap.put(a.id,a);
}
if(!Accmap.isEmpty()){
Set<id> AccIDs=Accmap.keyset();
List< Opportunity> Opplist=[Select AccountId,city__c,Account.accCity__c from Opportunity where AccountId in :AccIDs];
if(Opplist.size()>0){
for(Opportunity o: Opplist ){
o.city__c=Accmap.get(o.accountId).accCity__c;
OppListToUpdate.add(o);
}
}
}
if(OppListToUpdate.size()>0){
update OppListToUpdate;
}
}
trigger citytrigger on Account (after update) {
List< Opportunity> OppListToUpdate=new List< Opportunity > ();
map<id,account> Accmap=new map<id,account>();
for(Account a:trigger.new){
if(a.accCity__c !=trigger.oldmap.get(a.id).accCity__c)
Accmap.put(a.id,a);
}
if(!Accmap.isEmpty()){
Set<id> AccIDs=Accmap.keyset();
List< Opportunity> Opplist=[Select AccountId,city__c,Account.accCity__c from Opportunity where AccountId in :AccIDs];
if(Opplist.size()>0){
for(Opportunity o: Opplist ){
o.city__c=Accmap.get(o.accountId).accCity__c;
OppListToUpdate.add(o);
}
}
}
if(OppListToUpdate.size()>0){
update OppListToUpdate;
}
}
By not reflecting in UI, are you seeing any errors?
Similar: https://developer.salesforce.com/forums/?id=9060G0000005dwtQAA
https:/salesforce.stackexchange.com/questions/317923/trigger-to-update-field-in-opportunity-when-account-is-created-with-same-value-a
https://developer.salesforce.com/forums/?id=9062I000000QvzjQAC