Answers - Salesforce Trailblazer Community
Trailblazer Community
Ask Search:
Shubhashini RajaShubhashini Raja 
Hello Trailblazers!!
I cleared my Admin Certification today. I'm so happy. Thank you so much Trailblazer Community for helping me accomplish this. You guys have responded immediately for every question I posted and thanks a lot for sharing the required materials on topics I need referencing. You guys are amazing. Let's keep Blazing!!

Next prep for "Advanced Admin"
 
Best Answer chosen by Shubhashini Raja
Sakthivel MadeshSakthivel Madesh
Wow.. Congratulation Shubhashini !!

Try this trailmix from trailhead - https://trailhead.salesforce.com/en/users/strailhead/trailmixes/prepare-for-your-salesforce-advanced-administrator-credential

Advanced Administrator Quiz from SalesforceBen Website - https://www.salesforceben.com/certified-advanced-administrator-quiz/
Mark WhittenburgMark Whittenburg 
My Read Receipts display oldest not newest and the Lable always shows 20 new read receipts however those are not new they're old. 
 Recent Read Receipts not displaying
The same number, 20, is always displayed and those are old read receipts.
Best Answer chosen by Jayson (salesforce.com) 
Michael MosbyMichael Mosby
This worked for me:  https://chrome.google.com/webstore/detail/salesforce/jjghhkepijgakdammjldcbnjehfkfmha

Salesforce Inbox is the old plugin....That plugin above works great.  New layout, same functionality.
Marcio AlvarezMarcio Alvarez 
Hi, I am currently having an issue when It comes to validate the Step 7 of the Data Integration Specialist Superbadge.

The message is as follows:
Challenge Not yet complete... here's what's wrong:
There was an unexpected error in your org which is preventing this assessment check from completing: System.CalloutException: Web service callout failed: WebService returned a SOAP Fault: Command failed with error 13: 'not authorized on heroku_djhvxd7b to execute command { update: "invoices", ordered: true, $db: "heroku_djhvxd7b" }' on server ds129928-a0.mlab.com:29928. The full response is { "operationTime" : { "$timestamp" : { "t" : 1607031333, "i" : 1 } }, "ok" : 0.0, "errmsg" : "not authorized on heroku_djhvxd7b to execute command { update: \"invoices\", ordered: true, $db: \"heroku_djhvxd7b\" }", "code" : 13, "codeName" : "Unauthorized", "$clusterTime" : { "clusterTime" : { "$timestamp" : { "t" : 1607031333, "i" : 1 } }, "signature" : { "hash" : { "$binary" : "hHs1KlRe2a/H6yd+/0kp6pKEwD8=", "$type" : "0" }, "keyId" : { "$numberLong" : "6870382948294590465" } } } } faultcode=SOAP-ENV:Server faultactor=

I think the problem is actually the endpoint "http://sb-integration-bs.herokuapp.com" and credential values, but I'm not sure...
Already added custom settings with user and password names and the remote endpoint url, also tried solutions given in this thread (https://developer.salesforce.com/forums/?id=9060G000000BeecQAC) but the problem persists, showing me the same "not authenticated" error. 

I would really appreciate if someone can give me a hand with this.
Best Answer chosen by Marcio Alvarez
Matheus GonçalvesMatheus Gonçalves
Marcio Alvarez, please try again and let me know if it's working now. 
Scott NiblockScott Niblock 

Been staring at this for a bit, and I'm not sure what's going on, but this seems like it should work, but isn't.

I'm trying to prevent anyone with these profiles from creating an account except during lead conversion.  The 'Created_by_Conversion__c' field is a checkbox that would is unchecked by default and would be checked off during lead conversion.  

Here's the wierd thing, it works if I use $Profile.Name instead of the ID, but I'm trying to avoid that so it doesn't break if we change profile names, which will likely be done in the near future.

Any ideas?

AND(
  ISNEW(),
  NOT(Created_by_Conversion__c),
  OR(
    $User.ProfileId = "00ed0000000OwtTAAS" /* Sales */,
    $User.ProfileId = '00ed0000001EQ40AAG' /* Sales Manager */,
    $User.ProfileId = '00ed0000001EPRWAA4' /* Sales Management */,
    $User.ProfileId = '00ed0000001uH4xAAE' /* Sales Director- Field Sales */,
    $User.ProfileId = '00ed0000001ELlcAAG' /* Sales Director */ 
  )
)
Best Answer chosen by Scott Niblock
Deepak AnandDeepak Anand
Can you try with the 15 characters long version of the Profile IIDs ?
AND(
  ISNEW(),
  NOT(Created_by_Conversion__c),
  OR(
    $User.ProfileId = '00ed0000000OwtT' /* Sales */,
    $User.ProfileId = '00ed0000001EQ40' /* Sales Manager */,
    $User.ProfileId = '00ed0000001EPRW' /* Sales Management */,
    $User.ProfileId = '00ed0000001uH4x' /* Sales Director- Field Sales */,
    $User.ProfileId = '00ed0000001ELlc' /* Sales Director */ 
  )
)
Ayesha NadhiaAyesha Nadhia 
HI All PLEASE HELP ME
Challenge Not yet complete... here's what's wrong:
The WarehouseCalloutService class does not appear to have run successfully. Make sure that you run this class at least once before attempting this challenge. Since this class is implementing the queueable interface, you may want to wait to ensure that it has processed successfully.
Best Answer chosen by Ayesha Nadhia
Durga Bhavani GudalaDurga Bhavani Gudala

Hi Ayesha,

The challenge is expecting to make use of queueable interface. Please check the below code and it should help.

public with sharing class WarehouseCalloutService implements Queueable, Database.AllowsCallouts {  
   private static final String WAREHOUSE_URL = 'https://th-superbadge-apex.herokuapp.com/equipment';    
   public static void runWarehouseEquipmentSync(){
       Http http = new Http();
       HttpRequest request = new HttpRequest();
       request.setMethod('GET');
       request.setEndpoint(WAREHOUSE_URL);
       HttpResponse response = http.send(request);
       if(response.getStatusCode() == 200) {
           List<Object> jsonResponse = (List<Object>)JSON.deserializeUntyped(response.getBody());
           system.debug('~~ '+jsonResponse);
           List<Product2> productList = new List<Product2>();
           for(Object ob : jsonResponse) {
               Map<String,Object> mapJson = (Map<String,Object>)ob;
               Product2 pr = new Product2();
               pr.Replacement_Part__c = (Boolean)mapJson.get('replacement');
               pr.Name = (String)mapJson.get('name');
               pr.Maintenance_Cycle__c = (Integer)mapJson.get('maintenanceperiod');
               pr.Lifespan_Months__c = (Integer)mapJson.get('lifespan');
               pr.Cost__c = (Decimal) mapJson.get('lifespan');
               pr.Warehouse_SKU__c = (String)mapJson.get('sku');
               pr.Current_Inventory__c = (Double) mapJson.get('quantity');
               productList.add(pr);
           }            
           if(productList.size()>0)
               upsert productList;
       }        
   }    
   public static void execute(QueueableContext context){
       runWarehouseEquipmentSync();
   }
}
In Anonymous Window, use enqueueJob.
System.enqueueJob(New WarehouseCalloutService());
Let me know if it worked!

Thanks!
Thomas BeerensThomas Beerens 

Hi,
I do not know where I can find the link to do a mail merge in the new version lightning experience

Thanks you for your help
Tom
Best Answer chosen by Ed (salesforce.com) 
Sreejith PittonSreejith Pitton
You might still be able to access the classic version of mail merge in lightning
Try creating a button using the URL from classic mail merge.
Here's an example on contact record
https://ap4.salesforce.com/mail/mmchoose.jsp?id={!Contact.Id}&1={!Contact.FirstName}+' '{!Contact.LastName}&retURL=https://ap4.lightning.force.com/lightning/r/Contact/{!CASESAFEID(Contact.Id)}/view?0.source=alohaHeader
Michael BobeeMichael Bobee 
I'm confused. Can I use the 'standard' approval process for a quote that utilizes the Salesforce CPQ quote object? It appears that the standard object has been replaced with the SteelBrick Quote onject(s). (See below.) Most of the online questions/documentation are focused on the Advanced Approval process. Before I spend time, I want to ensure that they play nice together.User-added image
Best Answer chosen by Michael Bobee
Jeffrey MevorahJeffrey Mevorah
Advnaced approvals is enabled by a separate CPQ license and it operates independently from native approval process. 

You can use native approval proceses on the SBQQ Quote object the same as any other custom object.  
Kristen ThomasKristen Thomas 
Hey all, 

I am working to on the Analyze Your Data Over Time module in the Einstein Analytics Desktop Exploration trail. I have done the steps for this lens at least 10 different times in the exact order that the module says I am supposed to. I have deleted everything out and built it up again. I have relaunched the playground and started from scratch but I keep getting the error message listed below. Any thoughts on how I can fix this and be able to move forward?

The 'Sales Pipeline Overview' lens does not appear to have the correct query. Please check the requirements and ensure everything is setup correctly.
Best Answer chosen by Suseendran (salesforce.com) 
Kristen ThomasKristen Thomas
Did a ticket with their Help Desk and got a response saying they were aware of the problem and working to fix it. I haven't had a chance to try it again yet but it looks like it's a problem on the back end rather than an issue with us following the directions of the challenge. Will let you know when it goes through as correct.  
Daniel FriedmanDaniel Friedman 
I have stacked charts grouped by probability - in the legend in a lightning dashboard, the probability values are displaying out of order.  I have the 'sort rows' setting as 'label ascending' to display the order of the bars on the chart I'm looking for,, and when I set it to 'value ascending' it still doesn't fix the bar grouping order.

Additionally, I've sorted the probability ascending in the source report and it made no difference.  

I thought this known issue fix would solve this problem but still seeing it: https://success.salesforce.com/issues_view?id=a1p3A000000ECbOQAW

Screenshot attached - any advice?

User-added image
Best Answer chosen by Daniel Friedman
Ajay DubediAjay Dubedi
Hi Daniel,

Please see the below screenshot. I have created a Matrix report to resolve your issue.
Please create a matrix report and sort group descending both fields.

Most important thing (see screenshot 2) Use chart settings from report.
User-added image


User-added image


User-added image

Hope it helps. Please mark it as Best Answer if it helpful.

Thanks
Ajay Dubedi
Rahul SharmaRahul Sharma 
failed in url mapping in challenge for https://trailhead.salesforce.com/content/learn/modules/apex_integration_services/apex_integration_webservices
Best Answer chosen by Nikitha (salesforce.com) 
Piyush SinghalPiyush Singhal
Hi Rahul,
You can try the code below this code have passed me the challenge :
@RestResource(urlMapping='/Accounts/*/contacts')
global with sharing class AccountManager{
    @HttpGet
    global static Account getAccount(){
        RestRequest request = RestContext.request;
        String accountId = request.requestURI.substringBetween('Accounts/','/contacts');
        system.debug(accountId);
        Account objAccount = [SELECT Id,Name,(SELECT Id,Name FROM Contacts) FROM Account WHERE Id = :accountId LIMIT 1];
        return objAccount;
    }
}
 
@isTest 
private class AccountManagerTest{
    static testMethod void testMethod1(){
        Account objAccount = new Account(Name = 'test Account');
        insert objAccount;
        Contact objContact = new Contact(LastName = 'test Contact',
                                         AccountId = objAccount.Id);
        insert objContact;
        Id recordId = objAccount.Id;
        RestRequest request = new RestRequest();
        request.requestUri =
            'https://aman6969-dev-ed.my.salesforce.com/services/apexrest/Accounts/'+ recordId +'/contacts';
            
        request.httpMethod = 'GET';
        RestContext.request = request;
        // Call the method to test
        Account thisAccount = AccountManager.getAccount();
        // Verify results
        System.assert(thisAccount!= null);
        System.assertEquals('test Account', thisAccount.Name);
    }
}

If it is not working in you org try creating a new playground and check there.
Hope this will resolve your query,
Thanks
Piyush