You need to sign in to do that
Don't have an account?
raysfdc1988
trigger pudatename on BuyAirtime__c (before insert, before update) {
for(BuyAirtime__c ba: trigger.new)
{
user us =[select id,name from user where id=:ba.Mentor__c];
ba.Name = us.name +' '+ ((ba.Buy_Airtime_Date__c).day()+'/'+(ba.Buy_Airtime_Date__c).month()+'/'+(ba.Buy_Airtime_Date__c).year());
}
}
As trigger is working fine but to bulkify this trigger i want to write the soql query out of for loop..pl help me
bulkify the trigger
trigger pudatename on BuyAirtime__c (before insert, before update) {
for(BuyAirtime__c ba: trigger.new)
{
user us =[select id,name from user where id=:ba.Mentor__c];
ba.Name = us.name +' '+ ((ba.Buy_Airtime_Date__c).day()+'/'+(ba.Buy_Airtime_Date__c).month()+'/'+(ba.Buy_Airtime_Date__c).year());
}
}
As trigger is working fine but to bulkify this trigger i want to write the soql query out of for loop..pl help me
you can try this..
first get all the user ids from the lookup field
then query all the user fields based on the ids
finally update the name field
List<BuyAirtime__c> buyAirtimes = [SELECT Id, Mentor__r.Name, Buy_Airtime_Date__c FROM Buy_Airtime__c WHERE Id IN trigger.newMap.keySet()];
for (Buy_Airtime__c ba : buyAirtimes) {
ba.Name = ba.Mentor__r.Name +' '+ ((ba.Buy_Airtime_Date__c).day()+'/'+(ba.Buy_Airtime_Date__c).month()+'/'+(ba.Buy_Airtime_Date__c).year());
}
glad it helped you.. please mark it as solved. :-0