Answers - Salesforce Trailblazer Community
Trailblazer Community
Ask Search:
Ashish jaisAshish jais 
Hin All, I have issue in gloabl search at lighting .
Under the "All" at search User object is not coming. Please help how to achive the User object come under the serch list. Plesae see the below image for more Info.
User-added image

Best Answer chosen by Ashish jais
charu goyalcharu goyal
Hi Ashish,

In lightning, People refers to User object.
Your org's chatter must be off. That's why, you are not able to view People in dropdown.
You can refer below knowledge article. It explains the same issue.  (

Charu Goyal
Jacob SelfJacob Self 

I've installed a custom timesheet application into our organization's Salesforce.  We recently ran into a problem where one staff member created their timesheet for the week, but then another staff member (who is new to Salesforce) went into her timesheet and edited it on accident.
User-added image
As you can see, the Owner and Created By fields are a different user than the Last Modified.  We would like to prevent this from happening in the future.  Is there a rule I can put in place so that only the creator of the record is able to edit that record?  In addition to only the creator being able to edit, it would be ideal if users with the system administrator profile would also be able to edit the record.  Is this possible?
Best Answer chosen by Jacob Self
Eric PraudEric Praud
Hi Jacob,

I woudl change the sharing settings to Private so others can not even see other people timesheet, they coudl only see the ones they created.
As for the System admin, by default they have the Modify All Data permission, so no need to do anything there 
aditya raoaditya rao 
Hi Experts,

I am updating the records using batch class, but i am getting below error.
Ending position out of bounds: -1 on the line which i highlighted. kindly can anyone help me plesae.
String imageUrl = PageReference.forResource('Image').getUrl();
 imageUrl = imageUrl.subString(0,imageUrl.indexOf('?'));

Best Answer chosen by aditya rao
Kundan Kumar JhaKundan Kumar Jha
++ In imageurl '?' this charecter present or not? Because you are trying to access.
I have created a process builder which will shoot an email when a case is created and updates the case status to Awaiting customer response.

The email has description about necessary details to be filled in reply by the customer. When the customer replies, the case activity will be updated. At this point I want to change the case status to "In-Progress".

Also, I want to automate an follow-up email if there is no reply from customer for 72 hours after initial autoresponse.

I am new to Salesforce development and am stuck at this point. Looking for help. Thanks in advance.
Best Answer chosen by ADARSH DAVANAGERI
Mikey BrownMikey Brown
Hi Adarsh, 

You could handle this with a process with criteria similar to the following:
Is Incoming = True,
Case Id Is Not Null
Case Id.Status = "Awaiting Customer Response")

This would fire your process whenever a new inbound email is created on the Case object, and the Case object is in a Status of Awaiting Customer Response

You could then use a record update action to update the Case associated with the Email Message, and set the Status to the appropriate value. 

As far as the automated follow up, I would try this:
1. On your Case process builder, add a 2nd criteria node with the criteria
Status = Awaiting Customer Response
Make sure under Advanced, you also check this setting:
User-added image

2. Instead of an Immediate Action, create a Time-Based Action that fires 72 hours from now:
User-added image

3. Under this Time-Based action, you can then create an Email Alert to re-notifiy the customer that you are awaiting their feedback. 

4. After the previous step you should now have a process with 2 criteria nodes. The first sends the email and updates the case status to Awaiting Customer Response.  The 2nd process node sends an email to the customer after 72 hours if the Status = Awaiting Customer Response. At the end of your first process criteria, make sure you update it so that it Evaluates the Next Criteria rather than stops the process.  This is important because enabling this will allow your process to send the initial email and update the Case Status to Awaiting Customer Feedback. Because the process will then evaluate the next criteria, it will then prepare the email to be scheduled 72 hours from that time.  If at any point during that 72 hours the customer does respond and the Status is changed away from Awaiting Customer Feedback, the 2nd email will not go out because it's criteria is no longer met.  To test this you can play around with a shorter timeframe and use the Monitoring capabilities to confirm that the email is being scheduled correctly. 
User-added image

There's a lot there, so let me know if you have questions on the setup or troubleshooting. 

Samrendra SinghSamrendra Singh 
Hello Everyone,

I need your help please.

My above-mentioned validation rule is currently helping me for the below first five steps, except the sixth one-

1. Non-System Administrator cannot update the Asset_Type__c picklist SW and Hardware
2. Asset_Type__c picklist value is:  SW , Permitted Facility,3rd Party, Not Applicable
3. When Asset_Type__c is SW or Permitted Facility, it cannot be updated to any of the above picklist value by Non-System Admin Users
4. When Asset_Type is 3rd Party or Not Applicable it cannot be updated to either SW or Permitted Facility
5. But when Asset_Type is 3rd Party or Not Applicable Non-System Admin users can update 3rd Party to Not Applicable and Not Applicable to 3rd Party.

6. Non System Admin should not be able to update the any other fields when Asset_Type_c  is  SW or Permitted Facility. I mean to say when Asset_Type_c  is SW or Permitted facility, records should be locked for Non Sys Admin users.

Validation rule logic written for the first five steps, except the 6th step is-
AND($Profile.Name <> 'System Administrator',ISCHANGED(Asset_Type__c),
                        OR(ISPICKVAL(Asset_Type__c, 'Not Applicable'), ISPICKVAL(Asset_Type__c, '3rd Party')),
                        OR(ISPICKVAL(PRIORVALUE(Asset_Type__c), '3rd Party'),
                    		ISPICKVAL(PRIORVALUE(Asset_Type__c), 'Not Applicable')
                   	OR(ISPICKVAL(Asset_Type__c, 'SW'), ISPICKVAL(Asset_Type__c, 'Permitted Facility')),
                      OR(ISPICKVAL(PRIORVALUE(Asset_Type__c), 'SW'),
                         ISPICKVAL(PRIORVALUE(Asset_Type__c), 'Permitted Facility'),
                         ISPICKVAL(PRIORVALUE(Asset_Type__c), '3rd Party'),
                         ISPICKVAL(PRIORVALUE(Asset_Type__c), 'Not Applicable')

I really apreciate if you could look into it and help me plz.

Many thanks,
Best Answer chosen by Samrendra Singh
Andrew FragiasAndrew Fragias
Hi Samrendra,

If I have understood your requirements correctly then you want non system admins to not be able to change 10 particular fields when the assest type is equal SW or Permitted Facility, they should also not be changing the Asset Type during this validation so therfore I believe the below validation rule should work for you all you need to do is replace the API names with the 10 Field API names:
AND($Profile.Name <> "System Administrator",
     OR(ISPICKVAL(PRIORVALUE(Asset_Type__c), "SW"),
        ISPICKVAL(PRIORVALUE(Asset_Type__c), "Permitted Facility")

Swarnava ChakrabortySwarnava Chakraborty 
I am trying to solve "Apex Web Services" trailhead. My code seems to be working as I am not getting any error after test run and code coverage is also 100%. But, while checking my solution from salesforce I am getting error as 
Challenge not yet complete in My Trailhead Playground 1
There was an unexpected error in your org which is preventing this assessment check from completing: System.QueryException: List has no rows for assignment to SObject.

Experts...please help!!
Best Answer chosen by Swarnava Chakraborty
Amit SinghAmit Singh
Try below code
global class AccountManager {
    global static Account getAccount() {
        RestRequest req = RestContext.request;
        String accId = req.requestURI.substringBetween('Accounts/', '/contacts');
        Account acc = [SELECT Id, Name, (SELECT Id, Name FROM Contacts) 
                       FROM Account WHERE Id = :accId];
        return acc;
private class AccountManagerTest {

    private static testMethod void getAccountTest1() {
        Id recordId = createTestRecord();
        // Set up a test request
        RestRequest request = new RestRequest();
        request.requestUri = ''+ 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 record', thisAccount.Name);


    // Helper method
        static Id createTestRecord() {
        // Create test record
        Account TestAcc = new Account(
          Name='Test record');
        insert TestAcc;
        Contact TestCon= new Contact(
        AccountId =;
        return TestAcc.Id;

Shubham NandwanaShubham Nandwana 

While giving salesforce Developer Platform 1 exam (online proctored) someone came in the view of web-cam and exam got suspended.

Now I don't see any option to reschedule the test. A dialog box on my home page says 'contact your program manager to reschedule test'.
Anyone can tell me what to do?
Shubham Nandwana

Best Answer chosen by Shubham Nandwana
Ines GarciaInes Garcia
Hi Shubham,

On the day on the spot, you can close sentinel and open a live chat with kryterion they have fixed it for me before. Otherwise yes I would say open case.

Hope this helps,

Esther JenningsEsther Jennings 
Is there a way to merge new/existing leads based on similar email automatically? I also want to keep any related campaign and activity history. Any suggestions and thought are welcome.
Best Answer chosen by Esther Jennings
Ben FordBen Ford
Hi Ester,

You can merge any object and keep the relevant related records with the following app, you can also tell the app to run your custom merge rules automatically:

Mass and auto merge leads
Yogesh BiyaniYogesh Biyani 
I am trying to update the website field on few account records and the update fails with DUPLICATES_DETECTED error message. How can I avoid this error message?
Best Answer chosen by Yogesh Biyani
Ankush AgarwalAnkush Agarwal
Hi Yogesh,

This error is because of Duplicate Rule on Account object configured in your org. You may refer below link for workaround to skip this error:,the%20%22Alert%22%20option%20selected.&text=In%20Salesforce%20Setup%2C%20navigate%20to%20your%20Duplicate%20Rules. (,the%20%22Alert%22%20option%20selected.&text=In%20Salesforce%20Setup%2C%20navigate%20to%20your%20Duplicate%20Rules.)
sunil kumar tuljaramsunil kumar tuljaram 
I got a lot of objects in Marketing. i am trying to load data. i cannot see all the standard objects. This are standard objectsUser-added image
Best Answer chosen by sunil kumar tuljaram
Eric PraudEric Praud
Hi Sunil,

Not every object is available in the data import wizard.
As per this article:

The only standard objects available are "accounts, contacts, leads, solutions, person accounts, or article"
You should use another tool like the data loader for example.
Also, you need to be able to create or edit records in that same object if you want to import or update records