• Saket Sharma 37
  • NEWBIE
  • 25 Points
  • Member since 2017

  • Chatter
    Feed
  • 1
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 7
    Replies
I am trying to develop an Apex triger to cover the following scenario:
When changing Campaign owner any related Open Events change owner as well (default Salesforce behaviour). I want the trigger to reset the Event owner to previous value but only on Events related to a specific Campaign recordtype.
I have written the following trigger that works perfectly but I cannot figure out how to add the Campaign recordtype criteria:

trigger CampaignEventOwner on Campaign (after update) {
    Map<Id,Campaign> changedOwnerCampaigns = new Map<Id,Campaign>();
    
    for (Integer idx = 0; idx < trigger.new.size(); idx++) {
        if (Trigger.new[idx].OwnerId <> Trigger.old[idx].OwnerId) {
            changedOwnerCampaigns.put(Trigger.new[idx].id, Trigger.new[idx]);
        }    
    }
    List<Event> restoreEventOwner = new List<Event>();
    System.debug('changedOwnerCampaigns:' + changedOwnerCampaigns);
    // Find all open events for these campaigns and revert them
    for(Event e : [SELECT Id, WhatId, OwnerId, Last_Assigned_Owner__c 
                  FROM Event
                  Where WhatId in : changedOwnerCampaigns.keySet() AND EndDateTime >= :System.now() AND Last_Assigned_Owner__c <> null]) {
        system.debug('e.OwnerId:' + e.OwnerId);
        system.debug('e.Last_Assigned_Owner__c:' + e.Last_Assigned_Owner__c);
        if (e.OwnerId <> e.Last_Assigned_Owner__c) {
            e.OwnerId = e.Last_Assigned_Owner__c;
            restoreEventOwner.add(e);
        }
    }
    System.debug('restoreEventOwner:' + restoreEventOwner);
    if (!restoreEventOwner.isEmpty()) {
        update restoreEventOwner;
    }
}

Any help would be highly appreciated :-)
Hi,
Please help me anyone, how to implement below javascript in lightning component, below code help to translate the language change in site page.I implemented same code in VFpage and it's working as expected but same thing i should implement in lightning application

Code:
--------
<div id="google_translate_element"></div>
<script type="text/javascript">
        function googleTranslateElementInit() {
             new google.translate.TranslateElement({pageLanguage: 'en', includedLanguages: 'en,sr,zh,th,ko,rosl,hr,ms,uk,et,ar,he,cs,de,fr,el,hu,it,ja,da,pl,zf,nl,no,pt,sk,ru,es,tr,fi,sv,bg,lt,,lv,af,is,ca,sh,id,vi'}, 'google_translate_element');
        }
 </script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

Regards,
Vinay 
 
I am trying to develop an Apex triger to cover the following scenario:
When changing Campaign owner any related Open Events change owner as well (default Salesforce behaviour). I want the trigger to reset the Event owner to previous value but only on Events related to a specific Campaign recordtype.
I have written the following trigger that works perfectly but I cannot figure out how to add the Campaign recordtype criteria:

trigger CampaignEventOwner on Campaign (after update) {
    Map<Id,Campaign> changedOwnerCampaigns = new Map<Id,Campaign>();
    
    for (Integer idx = 0; idx < trigger.new.size(); idx++) {
        if (Trigger.new[idx].OwnerId <> Trigger.old[idx].OwnerId) {
            changedOwnerCampaigns.put(Trigger.new[idx].id, Trigger.new[idx]);
        }    
    }
    List<Event> restoreEventOwner = new List<Event>();
    System.debug('changedOwnerCampaigns:' + changedOwnerCampaigns);
    // Find all open events for these campaigns and revert them
    for(Event e : [SELECT Id, WhatId, OwnerId, Last_Assigned_Owner__c 
                  FROM Event
                  Where WhatId in : changedOwnerCampaigns.keySet() AND EndDateTime >= :System.now() AND Last_Assigned_Owner__c <> null]) {
        system.debug('e.OwnerId:' + e.OwnerId);
        system.debug('e.Last_Assigned_Owner__c:' + e.Last_Assigned_Owner__c);
        if (e.OwnerId <> e.Last_Assigned_Owner__c) {
            e.OwnerId = e.Last_Assigned_Owner__c;
            restoreEventOwner.add(e);
        }
    }
    System.debug('restoreEventOwner:' + restoreEventOwner);
    if (!restoreEventOwner.isEmpty()) {
        update restoreEventOwner;
    }
}

Any help would be highly appreciated :-)
Hello All,

I've a situation in where I have to get the SOQL query output in all different rows. So how can we do it ? 

Can we use <br> tag in apex class? 

I'm use to apex and I dont know how to do that. Can anyone please explain with some examples and codes.

Regards,
Hardik B.
Hi Everyone,

I have created an automated process through process builder and process builder calling Apex Class 
See below Apex class which is called from process builder ----- code sample

    global without sharing class ICM_ProcessInvocableClass{    
    @InvocableMethod(label='ICMServiceClass' description='')
    global static void callICMServiceBus(List<String> RecordIdList) {
        string sessionToken = UserInfo.getSessionId(); 
        system.debug('@@@@sessionToken:-- '+sessionToken);
        system.debug('@@@@UserTheme:-- '+userinfo.getUiThemeDisplayed());
        ICM_ServiceBusAPICallClass.CallICMServiceAPI(eachRecId,sessionToken);                
       
   }
}
To pass session id to CallICMServiceAPI method (@feature Method),
The above class called from process builder when our opportunity record is created or edited.

if i edited opportunity record in lightning context our session id is invalid.

please give me solution in this.