Community User Access and Permissions
Community users are external users who can access your community. You can assign the required permissions to the community users to access records. For more information, see
Salesforce Help.
|
Note: You need a Community User license to create Community Users.
|
The following topics are covered with respect to Community Users:
The following steps provide details to create a Community user and also the access and permissions required when using SFM Delivery, FSA, or ServiceMax Go App:
Community User Configuration
1. Go to Salesforce Setup > Search for Communities.
2. Select Community Settings.
3. Select the Enable Community Workplaces check box.
4. Enter the domain name (ex:svmxcommunity) and click Save.
5. Click Community Setup and Administration.
6. Click New Community.
7. Select a template for the community. You can select any template. For example, Customer service.
8. Click Get started.
9. Enter a Name and a URL for the community.
10. Click Create.
Activate the Community User
1. Click Community Setup and Administration.
2. Select the Community User that you created. The Workspaces page is displayed.
3. Click Administration.
4. Click Activate Community and Ok. You will receive a welcome email.
5. Create an account with the name Community in the Accounts tab.
6. On the new Accounts record, click Manage External Account.
Create Contact and Assign a Role to Account Owner
1. Create a new Contact in the Contacts tab by providing the name and title.
2. In the Account field, select the new Account in the previous step and Save.
3. On the new Contact record, click Manage External User > Enable Customer User. The New User page is displayed.
4. Ensure in the Profile field, Customer Community Profile is selected.
5. Enter your email id. You will receive an email notification.
|
Ensure Account Owner is given a role else the error message "Account Owner should have a role assigned to it" is displayed.
|
Clone Profile
1. Go to Salesforce Setup > Manage Users > Profiles. The list of profiles is displayed.
2. Click Clone next to Customer Community Profile. The Cloned Profile page is displayed. Note that Standard profiles cannot be edited.
3. Enter a name for the profile. A customer community profile is created.
Assign Community User a Community Profile
1. Create a new user and select User License as Customer Community.
2. Add email, username, title, and Save.
3. Click the Community Account Owner > Edit Profile, and go to My Settings > Advanced User Details > Edit and provide a Role.
4. Click Save.
5. Go to Communities > Workspaces.
6. Assign this profile some permissions.
7. Go to Administration > Members.
8. Assign the cloned Community Profile to the Available list.
9. Go to Setting > Activate Communities.
10. Go to Builder. The Welcome to Community Builder page is displayed.
11. Click on Component and add some tab names.
12. Edit Default Navigation and Add Menu Item.
13. Select Salesforce Object and then select <objectname> and Save. Similarly, add other objects as well.
14. Click Preview to preview the layout.
15. Click the Tabs like Installed Product.
16. Go to Component and drag and drop the SFM Wizard and keep it below the tabs for the wizards to be displayed.
17. Go to ServiceMax Setup > App Administrator > Configuration Profiles > Edit global profile (Module: Common; Submodule: Global Settings) and add values in the following four global settings: GBL039, GBL40, GBL041, and GBL042.
18. Click Back to Builder > Publish to publish the changes. The "published successfully" email is sent.
19. All the global settings have been enabled and values added. This completes the steps for SFM Delivery. Perform additional steps given below for FSA and ServiceMax Go App.
Key Points to Note for Global Setting Values
1. Add JWT Token for API access for VF pages deployed in the community to GBL039.
2. Add any one value based on Sandbox or Production org as JWT Token End Point toGBL040 :
For Sandbox Org: https://test.salesforce.com/services/oauth2/token
OR
For Production Org: https://login.salesforce.com/services/oauth2/token
3. Go to Communities > Community URL, copy the URL, and add to Remote Site URL.
4. Create a Certificate > Self Sign it > Save it. Download this Certificate. Add this certificate name to GBL041.
5. Create Connected App and Enable OAuth Setting and Full Access. Ensure to give Community URL in Callback URL in connected App. Copy Consumer Key of the Connected App and add it to GBL042.
Additional Steps for FSA and ServiceMax Go App
For FSA and ServiceMax Go App, all the above steps are similar. However, there are minimum object and field-level permissions that must be given for the sync to be successful on the mobile apps as detailed in the following steps:
1. Go to the Community Profile.
2. Edit and give permissions.
3. Enable the community when you created it.
4. Enable API Enabled and Apex Rest services.
5. Give permissions for the following Objects and their respective Fields.
Objects
• Document
• Parts_Pricing__c
• Parts_Discount__c
• Labor_Pricing__c
• Expense_Pricing__c
• Mileage_Tiers__c
• Zone_Pricing__c
• Service_Contract_Services__c
• Custom_Coverage__c
• Service_Pricebook_Entry__c
• Warranty__c
• Product2
• Account
• Site__c
• Installed_Product__c
• RMA_Shipment_Order__c
• Product2
• Service_Order_Line__c
• Service_Order__c
• SM_Checklist_Attachment__c
• SM_Checklist_Result__c
• QB_Response_Options__c
Objects and their Fields
Object API Name: ServiceMax_Processes__c
Field API Names:
• Id
• Name
• RecordTypeId
• LastModifiedDate
• ProcessID__c
• Name__c
• Description__c
• Rule_Type__c
• Page_Layout__c
• Dispatch_Process_Status__c
• Purpose__c
• IsPrivate__c
• Process2__c
• Doc_Template__c
• Sub_Process_Source_Field__c
• Enable_Sub_Process__c
• SM_Run_Targeted_Sync__c
• SM_Include_Skipped_Sections__c
• SM_Enable_Version_Control__c
• Type__c
• Process__c
• Target_Object_label__c
• Module__c
• Submodule__c
• Source_Object_Name__c
• Final_Exception_Process__c
• Node_Source_Object_API__c
• Values__c
• Node_Parent__c
• Type__c
• Node_Parent_API__c
• Sequence__c
• Parent_Object__c
• Parent_Column_Name__c
• Doc_Template_Details__c
• Enable_Attachment__c
• Process1__c
• Active__c
• Description__c
• Parent_Error_Msg__c
• Process3__c
• SM_Section__c
• SM_Target_Section__c
• Advance_Expression__c
• Message_Type__c
• Purpose__c
• SM_Checklist_Version__c
• Target_Object_Name__c
• Parent_Object_Criteria__c
• Field_Name__c
• Name_Field__c
• Object_Key_Prefix__c
• Action_Type__c
• Handover__c
• Mode_Of_Execution__c
• Enable_Confirmation_Dialog__c
• Select_Template_At_Runtime__c
• Confirmation_Message__c
• Submodule__c
• Target_Record_Type__c
• IsStandard__c
• Number_of_Lookup_Records__c
• Default_Lookup_Column__c
• Default_On__c
• Allow_Override__c
• Custom_Action_Type__c
• Open_As_Full_Window__c
• Target_Type__c
• Window_Height__c
• Window_Width__c
• Target_URL__c
• Show_Scrollbars__c
• Service_Namespace__c
• Service_Class_Name__c
• Service_Method_Name__c
• SM_Schema_Name__c
• SM_Path__c
• SM_Include_Object_Data_Set__c
• Action_URL__c
Object API Name: ServiceMax_Config_Data__c
Field API Names:
• Id
• RecordTypeId
• LastModifiedDate
• Configuration_Type__c
• Dispatch_Process__c
• Action__c
• Source_Field_Name__c
• Target_Field_Name__c
• Display_Value__c
• MapID__c
• Setting_ID__c
• Object_Name__c
• SM_Question__c
• Expression_Rule__c
• Expression_Type__c
• Sequence__c
• Field_Name__c
• Operator__c
• Operand__c
• Display_Type__c
• Object_Name2__c
• FKey_Name_Field__c
• Field_Relationship_Name__c
• Search_Object_Field_Type__c
• Lookup_Field_API_Name__c
• Is_Name_Field__c
• Sort_Order__c
• Wizard_Layout_Column__c
• Wizard_Layout_Row__c
• Preference_2__c
• Preference_3__c
• IsDefault__c
• Parameter_Type__c
• Formula__c
• Action_Type__c
• Description__c
• Parameter_Name__c
• Parameter_Type__c
• Parameter_Value__c
• SM_Device_Mobile_Config__c
• Internal_Value__c
• Access_Configuration_Profile__c
• RecordType_Name__c
• Ownership_Type__c
• Profile_Name__c
• SM_Files_Config__c
Object API Name: Page_Layout__c
Field API Names:
• Id
• Type__c
• Page_Layout_ID__c
• Name__c
• Header_Page_Layout__c
• Object_Name__c
• Type__c
• Action_On_Zero_Lines__c
• Allow_Delete_Lines__c
• Allow_New_Lines__c
• Multi_Add_Search_Field__c
• Multi_Add_Search_Object__c
• Hide_Quick_Save__c
• Hide_Save__c
• Help_URL__c
• Page_Help__c
• Show_All_Sections_By_Default__c
• Sequence__c
• Page_Layout_ID__c
• Multi_Add_Configuration__c
• Action_On_Zero_Lines__c
Object API Name: Page_Layout__cField API Names:
• Id
• Type__c
• Page_Layout_ID__c
• Name__c
• Header_Page_Layout__c
• Object_Name__c
• Type__c
• Action_On_Zero_Lines__c
• Allow_Delete_Lines__c
• Allow_New_Lines__c
• Multi_Add_Search_Field__c
• Multi_Add_Search_Object__c
• Hide_Quick_Save__c
• Hide_Save__c
• Help_URL__c
• Page_Help__c
• Show_All_Sections_By_Default__c
• Sequence__c
• Page_Layout_ID__c
• Multi_Add_Configuration__c
• Action_On_Zero_Lines__c
Object API Name: Page_Layout_Detail__cField API Names:
• Id
• Name
• Page_Layout__c
• Detail_Type__c
• SM_Description__c
• SM_Help_URL__c
• Use_For_SLA_Clock__c
• Page_Layout_Detail_Id__c
• DataType__c
• Display_Column__c
• No_Of_Columns__c
• Display_Row__c
• Sequence__c
• Title__c
• Field_API_Name__c
• Related_Object_Name__c
• Related_Object_Name_Field__c
• Show_In_Web__c
• Show_In_iPad__c
• Section__c
• Control_Type__c
• Field_Mapping__c
• Lookup_Context__c
• Lookup_Query_Field__c
• Override_Related_Lookup__c
• Named_Search__c
• Related_Object_Name__c
• Related_Object_Name_Field__c
• Context_Source_Object__c
• SM_Checklist_Source_Field_API_Name__c
• Readonly__c
• Required__c
• Question__c
Object API Name: Doc_Template__cField API Names:
• Id
• Template_Id__c
• Name__c
• Media_Resources__c
Object API Name: Doc_Template_Details__cField API Names:
• Id
• Doc_Template__c
• Alias__c
• Doc_Template_Detail_Id__c
• Header_Reference_Field__c
• Object_Name__c
• Fields__c
• SOQL__c
• Type__c
Object API Name: SFM_Event__cField API Names:
• Id
• Page_Layout_Detail__c
• Event_Id__c
• Event_Type__c
• Page_Layout__c
• Page_Layout_Detail__c
• Event_Call_Type__c
• Target_Call__c
• Code_Snippet__c
Object API Name: ServiceMax_Tags__cField API Names:
• Id
• Tag_Key__c
• Tag_Text__c
• Tag_Value__c
• Language__c
Object API Name: Code_Snippet__cField API Names:
• Id
• SnippetId__c
Object API Name: Code_Snippet_Manifest__cField API Names:
• Id
• Code_Snippet__c
• Referenced_Code_Snippet__c
Object API Name: Question_Bank__cField API Names:
• QuestionID__c
Object API Name: SM_Device_Mobile_Config__cField API Names:
• Id
• SM_Device_Type__c
• SM_IsDefault__c
• SM_Access_Configuration_Profile__c
Object API Name: Service_Group_Members__cField API Names:
• Id
• Salesforce_User__c
Object API Name: RecordtypeField API Names:
• Id
• Name
• SobjectType
• DeveloperName
Object API Name: EventField API Names:
• Id
• WhatId
• StartDateTime
• EndDateTime
• LastModifiedDate
Object API Name: SVMX_Event__cField API Names:
• Id
• WhatId__c
• Technician__c
• StartDateTime__c
• EndDateTime__c
• LastModifiedDate
Object API Name: SM_SFA_Process__cField API Names:
• Id
• SM_Enabled__c
• SM_SFA_Process_Name__c
• SM_SFA_Process_Id__c
• SM_Description__c
• SM_Enabled__c
• SM_Object_API_Name__c
• SM_Expression__c
• SM_Event_Type__c
• SM_Action_Type__c
• SM_SFM_Process_Name__c
• SM_SVMX_Group_Profile__c
• SM_SFA_Event_JSON__c
• SM_SFA_Action_JSON__c
• LastModifiedDate
Object API Name: Checklist__cField API Names:
• Id
• ChecklistMetaJSON__c
• ChecklistJSON__c
• SM_Sequence__c
• SM_Checklist_Group_Id__c
• Status__c
• Account__c
• ChecklistProcessID__c
• Installed_Product__c
• Location__c
• SM_Parts_Order__c
• SM_Product__c
• What_Id__c
• SM_Work_Detail__c
• Work_Order__c
Object API Name: SM_Default_Checklist_Response__cField API Names:
• Id
• SM_Question__c
• SM_Default_Response__c
• SM_Is_literal_Used__c
• SM_Question__c
Object API Name: Question_Bank__cField API Names:
• Id
• QuestionID__c
• Help_URL__c
• Length__c
• Precision__c
• Question__c
• QuestionJSON__c
• Response_Set__c
• Scale__c
• Response_Type__c
• Short_Name__c
• SM_Description_Required__c
• SM_Show_In_Smart_Doc__c
Object API Name: QB_Response_Set__cField API Names:
• Id
• Response_Set_Values__c
Object API Name: Entitlement_History__cField API Names:
• Id
• Service_Order__c
• Work_Detail__c
• Inactive_Date__c
• Warranty__c
• Service_Contract__c
Object API: Service_Contract__cField API Names:
• Default_Parts_Price_Book__c
• Service_Pricebook__c
Object API Name: Pricing_Rule__cField API Names:
• Id
• Named_Expression__c
Object API Name: Travel_Policy__cField API Names:
• Id
• Named_Expression__c
Object API Name: PriceBook2Field API Names:
• Id
• Product2Id
• IsActive
• Pricebook2Id
Object API Name: PriceBookEntryField API Names:
• Product2Id
Object API Name: Service_Pricebook__cField API Names:
• Id
• Activity_Type__c
• Price_Book__c