Ask Search:
Jack RoseJack Rose 
Hi All, 

I know that canned responses can be done in service cloud, utilising quick text. Is there any way to do this directly in Social Studio?
Best Answer chosen by Jack Rose
PrateekPrateek (TZ Org) 
Hi Jack, 

The social studio can help you in publishing tweets in advance. I don't think canned response feature is available via social studio.

Check out the below link for more information on social studio:

Georgina SaezGeorgina Saez 
Hi All,

The users of Data Loader in my org are unable to use Data Loader since yesterday.  
  1. We are all using Macs, the application opens and we are asked to login.  
  2. We select the OAuth option and select our Production environment.  
  3. Once we enter our credentials, we get a pop-up for Allow Access? Select Allow.
  4. Then we get a pop-up that says, File Download (attached)User-added image
  5. After clicking Save, the application hangs on the following screen (attached)User-added image
  6. When you close out of it an error appears on the regular login screen saying to check your username and password; however, when I go to the Setup -> Manage Users -> Login History it shows that the Status of the Dataloader Partner application was a Success.
Best Answer chosen by Georgina Saez
Georgina SaezGeorgina Saez
That worked!  Thank you!  We had tried appending the token to our password, but I think it was a combination of changing the url to, choosing Password Authentication option, and appending the security token to my password.
Kate ColsonKate Colson 
I had a beast of a time making sure that my external customer users could see cases from their account in our Community Plus portal.  I did not feel that the documentation provided was clear on where I could look to see what settings were incorrect. I spent a lot of time with sharing settings, correctly setting them up per the documentation. It turned out that you must create a view in your production environment (in my situation, cases view) that was "wide open", and then use sharing rules to open up visibility to an account using sharing settings.  I'll post my documentation here. Hopefully it will save someone else 6 hours of frustration :) 
Best Answer chosen by Kate Colson
Kate ColsonKate Colson
Documentation reflects Ensuring your customers see their appropriate cases in Customer Community Plus. It is written with the assumption that you have community plus licenses and used Napili as a template provided by Salesforce. It assumes that you have already set up the community and are having problems making sure your customers only see cases from the account they are affiliated with as a Contact.


The cases shown in the Customer communities relies on a view set up in the cases object in the production instance of Salesforce. In laymen’s terms, the instance that your team uses every day.

Case View in Production Instance

The view should be “wide-open” we will use sharing settings to determine what users from each company will actually see of the cases that are contained in the view.
  1. Go to Cases -> Create New View
  2. Name the View “My Community Cases” the Unique name will be My_Community_Cases
  3. Under Specialty Filter Criteria select the radio button “All Cases”
    1. If you only want your customers to see cases that are “Open” or Cases that are of a certain status, you can use the “Filter By Additional Fields” to narrow down what the view will output.
    2. You do have the ability to have multiple case lists in Communities. This would allow you to have “Open Cases” on the Home page, and Closed cases somewhere else. If this is what you want to offer, repeat creating views using the instructions in this section.  You can use the “Save As” function to speed up the creation of the views.
    3. Decide what fields you want your customers to have the ability to view, and the order you want them to see them in. If you are using Napili, the recommended Template for those setting up a service type of community using SFDC templates, the Case list is not very wide.  There might be coding you can do to make more columns visible.  We will not get into that with this documentation. So choose the columns visible to your customers sparingly.
    4. Under Step.4  in the view set up screen, select the radio button “Visible to certain groups of users”
      1. Search “Public Groups”
      2. From the drop down pull over (Add) “All Customer Portal Users”
        1. “All Customer Portal Users is added as soon as you become Community Users by SFDC / purchase Community Licenses
      3. Save the View and take note of the Unique Name, (Item 2 in this section)

Case View in Community Builder

  1. Go to Community Builder: Setup ->Type “Communities” into the Quick Find box -> Select All Communities
  2. Select the “Builder” link from the Community you are setting up case visibility
  3. The Community will open up in Builder mode
  4. From the left had menu select the page editor (second option)
  5. If you have not already, drop the Case List Lightning Component into the page you are editing
  6. When you click on the Case List –or when you first drag and drop it into your page a small “Case List” box appears. The only * (mandatory field) is the Case Filter Name or ID.  This will default to “AllOpenCases”, this is where you need to drop in your unique case view name from “Case View Production Instance” section 2.
  7. Make sure you select “Publish” so that the changes will take affect. The community should also be active.

Sharing Settings

You are going to use sharing settings in your production environment to restrict what your external community users will be able to see in the view. There is an assumption in the below process that you have already added at least one customer contact to your community.  Salesforce creates a “Role” for those users. You are going to use this Role in sharing settings.
  1. Go to Setup-> Type Sharing Settings into the quick find box -> Select the Sharing Settings under “Security Controls”
  2. You will see the Organization-Wide Defaults.
    1. If it is not already, change the Default External Access on Accounts to “Private”
    2. Double check to make sure that the Contact standard object, the Opportunity standard object and the Case standard object are also set to Private (typically this is automatic because they are controlled by the account).
    3. If you are going to allow your customer users to view any other objects (e.g., work orders, assets, etc) also move those to private in the Default External Access.
Note: the following steps must be done every time a contact from a NEW account, an account that has not been set up for these sharing rules, is created.  There is a way to use Apex code to automate this process. However, if you are not offering visibility to cases, etc through Communities to many accounts, this step is easy and can be set up when you are setting up new accounts with the capability to have contacts use the customer community portal.
  1. Scroll down to the related list section of this page to Account Sharing Rules.
  2. Select New
  3. Use the Account Name to create a name for the Label. E.g., Customer Name Community Visibility
  4. Select “Based on Criteria”
  5. Use the Account Name field, equals, and then enter the account name for the criteria
  6. In Step 4 decide who will get to see these records.
    1. From the drop down select “Portal Roles and Subordinates”
    2. The second drop down will show you a role name that coincides with the name of the account where you ‘ve just granted access to a contact.
  7. In Step 5 decide what visibility / control they will have over Account / Contracts/ Opportunities / Cases. If anything is labeled private, the customer contacts will still not have the ability to see those records. A best practice for most orgs is “Read Only” access to Accounts and Contracts and “Read Only” or “Read/Write” access to Cases.
  8. Select Save


  1. Go to the contact that you have set up in your production instance
  2. Use the Manage External User to log in as the contact you gave access to
  3. Confirm that the user can only see records from their assigned Account
Hi Guys,

I am using Email To Case Premium and Salesforce Enterprise edition and I'm trying as the subject says to insert one case with a case comment within using dataloader38.

I read a related post where they recommended to do it separately (create a case and then the case comment):
I can't create a case and then attach the case comment to it because I need to create them both together at the same time.

Which field do I need to use in order to map the desired string to a case comment?

Help, please

Best Answer chosen by Barracks
trigger CreazioneCaseComment on Case (after insert) {

List<CaseComment > casecmlist=new list<CaseComment >();

for(Case c :{
     if(c.Description!= ''){

        CaseComment cc = new CaseComment();
        cc.commentBody = c.Description;
        cc.ParentId = c.Id;
 insert casecmlist;

try the above one.

replace the description field by your API will work i tested in my org
Leslie GestautasLeslie Gestautas 
I have a requirement to lock just four fields after the first Opportunity stage - "A", where all profiles will get an error mesage if they try to save changes (except for the System Admin and Custom Admin profile, it won't apply to those two profiles).

So, when an Oppty is at B or C stage, and they try to edit any of these fields, they should get an error.

This VR I made isn't working when I login as a non-admin user  and test on an Oppty in B or C stage.

Can someone tell me why? TIA :-)

ISPICKVAL(StageName,"B, C"), 
ISCHANGED( CloseDate ), 
ISCHANGED( Global_Currency__c ), 
$Profile.Name <> "System Administrator", 
$Profile.Name <> "Custom SF Admin" 
Best Answer chosen by Leslie Gestautas
Mayank SrivastavaMayank Srivastava
Hey Leslie, 
Your VR should be this:
  $Profile.Name <> "System Administrator", 
  $Profile.Name <> "Custom SF Admin" 
    ISCHANGED( ACN_ID__c ), 
    ISCHANGED( CloseDate ), 
    ISCHANGED( Global_Currency__c ), 

Few things that I changed:
  • Moved Profile exclusions within the AND block
  • StageName needs two different ISPICKVAL statements. The earlier syntax was incorrect
  • PRIORVALUE needs to be used on Stagename so that the rule only fires after the stages have been set to B or C and then the other fields are changed. If you don't use PRIORVALUE, the rule would prevent all users from changing the Stage from A to B or C which isn't what you need.
Roberto FainiRoberto Faini 
is it possibile create a Report that show me only leads that in a specified time chang their status?

for example, i want a report that show me only leads that today change from "new leads" to "contact lead" (field status)

thank you!
Best Answer chosen by Roberto Faini
Sathishkumar PeriyasamySathishkumar Periyasamy

need to create new date field on the lead object and build process builder/workflow rule to populate the today date if Lead status is changed from "new leads" to "contact lead". Then create lead report and filter by that field.
Terry HenryTerry Henry 
Hi All,

Interested to hear any different methods that people may use - we currently have monthly training sessions held by one of our administrators where we go through basic navigation and functionality. 

I would like to change this as I believe that Salesforce training should be integrated when learning about other aspects and processes, I'd like to replace this with 

> WalkMe Guided Tours of Functionality
> YouTube/Videos embedded into a VF page for 'refreshers'
> Department Champions who would handle queries and training for their respective users

Interested to hear how others approach this

Best Answer chosen by Terry Henry
Terry HenryTerry Henry
@Sourav - thanks but I think we have a misunderstanding here.

I am not hosting training for Admins - this is training for End Users - they do not need to see the admin processes that Trailhead provides (indeed, they will not even have the permissions to perform them). They need to be trained in basic functionality of Salesforce; Navigation, how to convert a lead, what are accounts/contacts/opportunities etc

I am looking for methods of training to replace traditional 1:1 classroom training

That's why I am interested in how others deliver training, maybe through:
> WalkMe Interactive tutorials
> Recorded Webinars
> Chatter Tips&Tricks Posts
> Regular email newsletters
Katelyn ShelleyKatelyn Shelley 
I found the Mass Delete app on the appexchange which looks like the perfect solution however it is only with certain standard objects. This would be extremely useful for me and would help me avoid using the data loader. 

Best Answer chosen by Katelyn Shelley
Deepak AnandDeepak Anand

I am sure you can re-purpose the 'Delete' button that came with the AppExchange package. Anyway I am just posting the one that I created:
  1. Go to Setup | Create | Objects
  2. Click on the Name of the Custom Object
  3. Scroll down to the Buttons, Links & Actions section.
  4. Click on New Button or Link
  5. Name it as Delete
  6. Select the Display Type: List Button [Do check the option: Display Checkboxes (for Multi-Record Selection)]
  7. Behaviour: Execute JavaScript
  8. Content Source: OnClick JavaScript
  9. JS: 
      var selectedRecords = {!GETRECORDIDS( $ObjectType.Lead )};
        alert('Please Select at Least One Row !');
        userConsent = confirm(
            selectedRecords.length + 
            ' Record(s) will be Deleted. Continue ? '
        if(userConsent == true)
          delResult = sforce.connection.deleteIds(selectedRecords);
          if (delResult[0].getBoolean("success"))
            alert('The Record(s) were Deleted Successfully.'); 
              'The Record(s) Could Not be Deleted. Error Message: ' + 
      alert('The Action Could not be Completed. Error Message: ' + e);
  10. Remember you'll have to replace: Lead in the above snippet with the API Name of the Custom Object
  11. Hit Save
Now, we've to add it to the List View. Here you go:
  1. Go to Setup | Create | Objects
  2. Click on the Name of the Object
  3. Scroll down to Search Layouts section
  4. Click Edit next to List View Layout
  5. Move our new button from the Available Buttons to the Selected Buttons List
  6. Hit Save
  7. You should be good to go!
Let me know how it goes!
Michael MinnekeerMichael Minnekeer 
I am in a sandbox of my existing org that has person accounts enabled, while in lightning experience I can still create a person account and see the record type under object manager for accounts however I cannot find page layouts for Person Accounts. The Winter 17 documentation states "From Setup, enter Person Accounts in the Quick Find box, then select Page Layouts", however nothing comes up for me. 

User-added image
Best Answer chosen by Michael Minnekeer
Geoffrey FlynnGeoffrey Flynn
Same behaviour here.  I think you'll have to switch back to Classic to make the page layout change
Debra ShoupDebra Shoup 
I read on an Idea thread that it is possible to set the Pricebook via process builder, but there is no mention of how to go about this. I’ve given it a go, but it’s not working, so I’m obviously doing something wrong. We use record types and we have several different pricebooks. Can someone give me any advice on how to do this? Alternatively, is there a better way to get the result I want?

Best Answer chosen by Debra Shoup
Karthikeyan Thangavel (TK)Karthikeyan Thangavel (TK)
Below is what I tried in my Dev Org and it updates the price book of the opportunity:

Step1: Specify Object to Start the process
User-added image
Step2: Criteria Node- If the Opportunity Type = New Customer
User-added image
Step3: Setting the Price book ID with the 18 digit ID of the Active Price Book Record
User-added image

This seems to work! 

In Step2, instead of Type, change the filter to the Record Type ID and use the 18 digit record type ID and check if it works!