diff --git a/README.md b/README.md index 99f0d50..fce2224 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ The Outfitters app showcases how with **Data Cloud** we have a true Customer 360 - Return to Setup and follow the on-screen instructions to complete the configuration.
🔗 More details: [Salesforce Foundations](https://www.salesforce.com/crm/foundations) -**External Connections:** The app showcases the use of structured and unstructured data ingested from AWS and the use of zero-copy with Snowflake. This section talks about the connectivtity you would need for those use cases. +**External Connections:** The app showcases the use of structured and unstructured data ingested from AWS and the use of zero-copy with Snowflake. This section talks about the connectivity you would need for those use cases. | **Connection** | **Details** | |----------------|-------------| | **Amazon S3** $${\color{blue} Optional}$$
Used to bring in structured and unstructured data. Unstructured data powers Agent conversations in this setup. | **NOTE:** If you do not have an existing Amazon S3 instance, [register for the free tier](https://aws.amazon.com/free/) and follow [this guide](https://developer.salesforce.com/blogs/2023/10/how-to-use-the-amazon-s3-storage-connector-in-data-cloud) to create a dedicated user with required permissions.

Already have an S3 instance? No need to sign up again.

Before proceeding, note your [programmatic credentials](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds.html#access-keys-and-secret-access-keys) (Access Key ID and Secret Access Key). | @@ -58,7 +58,7 @@ The Outfitters app showcases how with **Data Cloud** we have a true Customer 360 | Step | Action and Details | Images | | ----- | ----- | ----- | - | Install package | - Click on this Package Installation [Link ](https://test.salesforce.com/packaging/installPackage.apexp?p0=04tO4000001OCp3)
- Sign-in to the Org with your credentials.
- Choose Install for Admins Only option
- Choose “Rename conflicting components in package” and click the Install button.
- Wait until installation is completed, you will receive a confirmation on logged in user’s email
**NOTE:** If you are getting Error **product2.Product_Catalog__c already present in the org** then
- Go to Setup >>ObjectManager.
- Search for Product2 object and select Fields and Relationship section.
- Delete the Field Product_Catalog__c.
- If you get Error **The name "OrderItem.External_ID__c" is already used on component type: Custom Field Definition. Please rename existing component.** then
- Go to Object Manager search for Order Product Object and select Fields and Relationship section.
-Delete the Field External_ID__c.
- Again now try to install the Pacakge.|![image](https://github.com/user-attachments/assets/316f4e48-b9b2-4169-b362-fc3ecd9cd1b3) ![image](https://github.com/user-attachments/assets/0da1a771-abcc-4caa-b248-1b768905de60)| + | Install package | - Click on this Package Installation [Link ](https://test.salesforce.com/packaging/installPackage.apexp?p0=04tO4000001OCp3)
- Sign-in to the Org with your credentials.
- Choose Install for Admins Only option
- Choose “Rename conflicting components in package” and click the Install button.
- Wait until installation is completed, you will receive a confirmation on logged in user’s email
**NOTE:** If you are getting Error **product2.Product_Catalog__c already present in the org** then
- Go to Setup >>ObjectManager.
- Search for Product2 object and select Fields and Relationship section.
- Delete the Field Product_Catalog__c.
- If you get Error **The name "OrderItem.External_ID__c" is already used on component type: Custom Field Definition. Please rename existing component.** then
- Go to Object Manager search for Order Product Object and select Fields and Relationship section.
-Delete the Field External_ID__c.
- Again now try to install the Package.|![image](https://github.com/user-attachments/assets/316f4e48-b9b2-4169-b362-fc3ecd9cd1b3) ![image](https://github.com/user-attachments/assets/0da1a771-abcc-4caa-b248-1b768905de60)| | Verify Package installation | - Click Setup
- Search for package
- Click on 'Installed Package'
- Search for 'RetailConfigPackage' is installed |![image](https://github.com/user-attachments/assets/8b76cd89-abec-4586-91cc-6b4b430dc68c)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Pre-Deployment%20Instructions%20Images/Installed%20RetailConfigpkg.png)| | Step | Action and Details | Images | @@ -130,9 +130,9 @@ The Data Kit is installed as a part of the Package installation. Follow the step Complete this step only if you have setup a connection and the file notification process in AWS | Step | Action and Details | Images | | ----- | ----- | ----- | - | Create Return_FAQ DLO Creation | - Click on Data Lake Object Click on New
- Click on Create from Data Kits, Click on Next
- Select Return FAQ.
-For Connection Select “hosporgfarm’.
- Click on Next.
- Make Sure that API Name doesnot append with 1, if you see 1 appended then remove it.
- Click on Next.
- Click on Save.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnDataLake1.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnDataLake2.png)| -|Create a Retriver if not present|**Note:** If Default Retriver is not present then create a retriver by following below steps.
- Click on App Launcher>>Click on Data Cloud>>Click on Einstein Studio tab
-Click on Retriver>>Click on New Retriver button>>Select Individual Retriver
-Click on Data Cloud>>Select Data Space as default,Select Return_FAQ DMO, Select Return_FAQ as Search Index>> Click on Next
-Click on All Documents and click on Next
-For Field Name, Select Related Attribute and select Return FAQ.chunk and select internal organization from Attribute and field label auto populated
-Click on Add Field and add the field from related attribute of Return FAQ.chunk from screenshot and click on Next and click on save
Once its saved then click on Activate button
|![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver4.png?raw=true)| -|Rebuild the search index|-Click on App Launcher>>Click on Data Cloud>>Click on Search Index tab
-Click on Return FAQ
- Click on Rebuild button and wait untill it gets into ready status.|![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/searchindexrebuild.png?raw=true)| + | Create Return_FAQ DLO Creation | - Click on Data Lake Object Click on New
- Click on Create from Data Kits, Click on Next
- Select Return FAQ.
-For Connection Select “hosporgfarm’.
- Click on Next.
- Make Sure that API Name does not append with 1, if you see 1 appended then remove it.
- Click on Next.
- Click on Save.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnDataLake1.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnDataLake2.png)| +|Create a Retriever if not present|**Note:** If Default Retriever is not present then create a retriever by following below steps.
- Click on App Launcher>>Click on Data Cloud>>Click on Einstein Studio tab
-Click on Retriever>>Click on New Retriever button>>Select Individual Retriever
-Click on Data Cloud>>Select Data Space as default,Select Return_FAQ DMO, Select Return_FAQ as Search Index>> Click on Next
-Click on All Documents and click on Next
-For Field Name, Select Related Attribute and select Return FAQ.chunk and select internal organization from Attribute and field label auto populated
-Click on Add Field and add the field from related attribute of Return FAQ.chunk from screenshot and click on Next and click on save
Once its saved then click on Activate button
|![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/ReturnFAQRetriver4.png?raw=true)| +|Rebuild the search index|-Click on App Launcher>>Click on Data Cloud>>Click on Search Index tab
-Click on Return FAQ
- Click on Rebuild button and wait until it gets into ready status.|![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Data%20Cloud%20Configuration%20Images/searchindexrebuild.png?raw=true)| ### 1d. Create Party Identification Collection Data Lake (5 minutes)(CHECK) | Step | Action and Details | Images | @@ -242,7 +242,7 @@ $${\color{red} 6.\space Add CMS Product Images}$$ | Step | Action and Details | Images | | ----- | ----- | ----- | | Add Image to a Product |- Click on App Launcher.
- Select commerce application.
- Click on Store.
- Open Outfitters Store
- Expand Merchandise\>\> Product\>\> open one by one product
- Click on eye icon (it removes Site window) after save button
- Confirm that "Products" is selected under categories
- Scroll down \>\> click on Go to global product record
- Go to Media\>\> Click on Add image for Product details Image section \>\> Select appropriate image from Commerce Store image\>\> click on Add button
- Click on Add image for Product list Image section \>\> Select appropriate image from Outfitters Managed Content Space\>\> click on Add button
- Repeat previous steps for each product. | ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct1.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct2.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct3.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct4.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct5.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct6.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct7.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct8.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/StoreProduct9.png)| - |Add Outfitters logo| - Click on App Launcher.
- Select commerce application.
- Click on Store.
- Open Outfitters Store.
- Scroll down to website design and click on it.
- Under logo remove the image.
- Upload **Outfitters logo** fromt the CMS Workspace folder image and save.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/outfitters%20logo1.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/outfitters%20logo%202.png)| + |Add Outfitters logo| - Click on App Launcher.
- Select commerce application.
- Click on Store.
- Open Outfitters Store.
- Scroll down to website design and click on it.
- Under logo remove the image.
- Upload **Outfitters logo** from the CMS Workspace folder image and save.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/outfitters%20logo1.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Commerce%20Cloud%20Config%20Images/outfitters%20logo%202.png)| ### 7. Publish Website Design (15 minutes) | Step | Action and Details | Images | @@ -265,7 +265,7 @@ $${\color{red} 6.\space Add CMS Product Images}$$ **Note: After Creating all the below step ,
-Refresh DataGraph
(i)Web Engagement RT Profile
(ii)Item Non-real Data Graph and
-Publish Segment
(i)Get Customers
- Activation
-Get Recalled Customer >> Will auto Refresh along Segment Make Sure to check the Publish History for latest Publish
- After an hour try to login to Experience site >> Select any Products and you can find the Recommendations showing up in the Account Details section** | Step | Action and Details | Images | | ----- | ----- | ----- | - | Assign Personalization Persmissionset |- Click on Setup.
- Search for the **System Administrator User** For Example OrgFarm User.
- Go to Permissionset section.
- Cick on Edit Assignment.
- Search for Personalization and move it to enabled permissionset section. |![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization1.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization2.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization3.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization4.png)| + | Assign Personalization Permissionset |- Click on Setup.
- Search for the **System Administrator User** For Example OrgFarm User.
- Go to Permissionset section.
- Click on Edit Assignment.
- Search for Personalization and move it to enabled permissionset section. |![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization1.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization2.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization3.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationPermissionSet/Personalization4.png)| | Create Response Template |-From the App Launcher, search for Personalization and click on it..
- Go to Response Template Tab.
-Click on New.
- Select Data Space as Default.
- Select Personalization Type as Recommendations.
- Provide Name as **Product Personalization Rec**.
-Click on Next,Next
-On the Item Attribute Select the Data Model Object as ssot_Product_dlm.
- Select all the Fields from available fields and move it to Selected fields.
- Click on Save.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/ResponseTemplate1.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/ResponseTemplate2.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/ResponseTemplate3.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/ResponseTemplate4.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/ResponseTemplate5.png)| | Create Personalization Points |-From the App Launcher, search for Personalization and click on it.
- Go to Personalization Points Tab.
- Click on New.
- Select Data Space as default.
- Select Profile Data Graph as **Web Engagement RT Profile**.
- Provide Personalization Point Name as **Get Product Point**.
-Select Personalization Type as Recommendation.
- Select Response Template as **Product Personalization Rec** which we created previously.
- Click on Save.| ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationPoints1.png)| | Create Recommenders |-From the App Launcher, search for Personalization and click on it.
- Go to Recommenders Tab.
- Click on New.
- Select Data Space as default.
- Select Profile Data Graph as Web Engagement RT Profile.
- Select Item Data Graph as **Item Non-real Data Graph**.
- Provide REcommender name as Get Product Recommendations On Contact.
- Click on Next.
- Select **Rule-Based Recommendations**.
- Click on Next.
- Select Calculated insight as Product Co-Browse Ranked.
- Select Sort Measure as **count p2**.
- Sort Order as Descending.
- Click on Next.
- Click on Add Condition.
- For Item Data Graph Resource select Calculated Insight > Product Co Browse Ranked >rank.
- Select FilterType as **Static**.
- Select Operator as **Is Less than or equal to**.
- Give value as 3.
- Click on Next > Save and Exit.|![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationRecommenders1.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationRecommenders2.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationRecommenders3.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationRecommenders4.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/PersonalizationSetup/PersonalizationRecommenders5.png)| @@ -400,7 +400,7 @@ grant select on tables in <>.<> to role sysadmin #### 7c. Add Propensity To Churn Prediction ML Model into Flow (5 minutes) | Step | Action and Details | Images | | ----- | ----- | ----- | -| Add Propensity To Churn Prediction ML Model | - Click on Setup >> Enter Flows in quick find box>> click on flows
- Search for **Predict Propensity To Churn Score** and open the flow.
- **Below Data Cloud-Triggered Flow** there is plus sign>> click on the plus sign
- Select Action >>Enter Propensity To Churn Prediction and select the action **" Propensity To Churn Prediction"**.
- Enter label as **"Propensity To Churn Predict"** , and map the fields : .
- Click on Triggering **ssot_AccountContact__dlm** >>Select **Age**
- click on Triggering **ssot_AccountContact__dlm >>Select Average Order** .
- click on Triggering ssot_AccountContact__dlm >>Select **Customer Lifetime Value (CLV)** .
- click on Triggering **ssot_AccountContact__dlm** >>Select **Customer Satisfaction (CSAT)**
- click on Triggering **ssot_AccountContact__dlm** >>Select Engagement Frequency .
- click on Triggering **ssot_AccountContact__dlm** >>Select **Gender**
- click on Triggering **ssot_AccountContact__dlm** >>Select Income Level
- click on Triggering ssot_AccountContact__dlm >>Select Net Promoter Score (NPS)
- click on Triggering **ssot_AccountContact__dlm** >>Select **Number of Complaint**.
- click on Triggering **ssot_AccountContact__dlm** >>Select **Number of Product Return** .
- click on Triggering **ssot_AccountContact__dlm** >>Select **Payment Method** .
- Then Go to Update Churn Field>> click on it >> for **Propensity to Churn** field select value as **Outputs from Propensity To Churn Predict**>>Select **Prediction**.
- Click on Save As New Version button>> click on save .
- Click Activate button.
- Go to app launcher>> enter Contact >> click on it >> Open Mark Smith ,Karen Wells, Duncan Macnitosh, Nicole Grace and edit some value under Churm ML Data section (eg: Engagement Frequency ,Customer Lifetime Value(CLV)).
- Go to Data Cloud >>Data Stream>> Open Contact_Home>> click on Refresh Now button (Wait till Success status).
- Go to contacts >> See Propensity To Churn value.
- Still its value not populating>> then again refresh the data stream |![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow4.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow5.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow7.png?raw=true)| +| Add Propensity To Churn Prediction ML Model | - Click on Setup >> Enter Flows in quick find box>> click on flows
- Search for **Predict Propensity To Churn Score** and open the flow.
- **Below Data Cloud-Triggered Flow** there is plus sign>> click on the plus sign
- Select Action >>Enter Propensity To Churn Prediction and select the action **" Propensity To Churn Prediction"**.
- Enter label as **"Propensity To Churn Predict"** , and map the fields : .
- Click on Triggering **ssot_AccountContact__dlm** >>Select **Age**
- click on Triggering **ssot_AccountContact__dlm >>Select Average Order**.
- click on Triggering ssot_AccountContact__dlm >>Select **Customer Lifetime Value (CLV)**.
- click on Triggering **ssot_AccountContact__dlm** >>Select **Customer Satisfaction (CSAT)**
- click on Triggering **ssot_AccountContact__dlm** >>Select Engagement Frequency.
- click on Triggering **ssot_AccountContact__dlm** >>Select **Gender**
- click on Triggering **ssot_AccountContact__dlm** >>Select Income Level
- click on Triggering ssot_AccountContact__dlm >>Select Net Promoter Score (NPS)
- click on Triggering **ssot_AccountContact__dlm** >>Select **Number of Complaint**.
- click on Triggering **ssot_AccountContact__dlm** >>Select **Number of Product Return** .
- click on Triggering **ssot_AccountContact__dlm** >>Select **Payment Method**.
- Then Go to Update Churn Field>> click on it >> for **Propensity to Churn** field select value as **Outputs from Propensity To Churn Predict**>>Select **Prediction**.
- Click on Save As New Version button>> click on save.
- Click Activate button.
- Go to app launcher>> enter Contact >> click on it >> Open Mark Smith ,Karen Wells, Duncan Macnitosh, Nicole Grace and edit some value under Churn ML Data section (eg: Engagement Frequency, Customer Lifetime Value(CLV)).
- Go to Data Cloud >>Data Stream>> Open Contact_Home>> click on Refresh Now button (Wait till Success status).
- Go to contacts >> See Propensity To Churn value.
- Still its value not populating>> then again refresh the data stream |![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow4.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow5.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/ML%20Images/PropensityToChurnFlow7.png?raw=true)|
@@ -587,7 +587,7 @@ grant select on tables in <>.<> to role sysadmin ### 1d.To enable real time and personlization for the new contact on Self Registration (5 min) | Step | Action and Details | Images | | ----- | ----- | ----- | -|To enable real time and personlization for the new contact on Self Registration |-Log in experience site with newly created self registration user and browse some products
-Go to App launcher>> Go to Data Cloud>> Go to Identity Resolution
- Click on Customer Profile>>click on Run Ruleset button((once Status Succeeded then process with next step )
Repeat the above step for Party Identification Match>> click on Run Ruleset button(Once Status Success then process with next step)
- Go to App launcher>> Enter Data Graphs>>Click on it >>Scroll to right of Web Engagement RT Profile data graph>> click on arrow >> click on Refresh Now and wait for Status Active
Repeat the above for Item Non – Real Data Graph>> Click on Refresh Now button and wait till get into Success Status.
- Go to Experience site>> login with newly created user from self registration form Click on product tab>>select any product
- Go back to salesforce org and open Contact Record page to see the Real Time Product Details. | ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime1.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime2.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime3.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime4.png)| +|To enable real time and personlization for the new contact on Self Registration |-Log in experience site with newly created self registration user and browse some products
-Go to App launcher>> Go to Data Cloud>> Go to Identity Resolution
- Click on Customer Profile>>click on Run Ruleset button(once Status Succeeded then process with next step )
Repeat the above step for Party Identification Match>> click on Run Ruleset button(Once Status Success then process with next step)
- Go to App launcher>> Enter Data Graphs>>Click on it >>Scroll to right of Web Engagement RT Profile data graph>> click on arrow >> click on Refresh Now and wait for Status Active
Repeat the above for Item Non – Real Data Graph>> Click on Refresh Now button and wait till get into Success Status.
- Go to Experience site>> login with newly created user from self registration form Click on product tab>>select any product
- Go back to salesforce org and open Contact Record page to see the Real Time Product Details. | ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime1.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime2.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime3.png) ![image](https://github.com/vsreeram-salesforce/DataCloudRetailDemo/blob/main/Self%20Registration/Realtime4.png)|
@@ -625,7 +625,7 @@ grant select on tables in <>.<> to role sysadmin ### 4. Update Custom Metadata Record Values In The Retail Org. | Step | Action and Details | Images | | ----- | ----- | ----- | -|Update value in metarecord|-Login with retail org
-click on setup>>enter custom metadata and search and click on Custom Metadata Types
-Click on SFMC API Events and open it
-click on Manage SFMC API Events>> click on Retail Journey API record and click on edit button
-Enter below value
-1.AccountId as MID of marketing cloud
2. AuthenticationBaseURI as Authentication Base URI , Clientid as client id , Clientsecret as client secret key you have copied to somewhere, restbaseUrl as REST base URI, from newly created install package in marketing cloud
-eventKey as event defination key from journey builder recently you have created
-Save the record| ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec4.png?raw=true)| +|Update value in metadata record|-Login with retail org
-click on setup>>enter custom metadata and search and click on Custom Metadata Types
-Click on SFMC API Events and open it
-click on Manage SFMC API Events>> click on Retail Journey API record and click on edit button
-Enter below value
-1.AccountId as MID of marketing cloud
2. AuthenticationBaseURI as Authentication Base URI , Clientid as client id , Clientsecret as client secret key you have copied to somewhere, restbaseUrl as REST base URI, from newly created install package in marketing cloud
-eventKey as event definition key from journey builder recently you have created
-Save the record| ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/MarketingCloudImages/MetadataRec4.png?raw=true)|
@@ -633,11 +633,11 @@ grant select on tables in <>.<> to role sysadmin ## 9. Configure Tableau Next Dashboard -### 1. Enable Tabaleau Next (5 min) +### 1. Enable Tableau Next (5 min) | Step | Action and Details | Images | | ----- | ----- | ----- | | Enable Tableau Next Beta | - Goto Setup, in the Quick Find box, type Users and click Users, Search for Orgfarm Epic user
- Click the Full Name of the user
- On the user's detail page, scroll down to the Permission Set Assignments section
- Click the Edit Assignments button
- Choose Tablue Next Admin Permission set and Assign, Click Save
-From Setup, enter ‘Tableau Next’ in the Quick Find box.
-Enable Tableau Next Beta. | PermissionOFTablue1RetailWorkspace1 | -| Replace Browser URL on Prompt Tamplates | - Goto Setup, in the Quick Find box, type Prompt and click on Prompt Builder, Search for SalesPerformance URL
- Click on it to open and replace the browser URL by removing the highlighted URL as per screenshot.
- Click on save.
- Repeat the same steps for Generate_URL Prompt Template.

**To find the Browser URL follow the following steps:**
- Click the App Launcher (grid/waffle icon) in the top-left corner
-Search for and select the Home
-Click on the Home and copy URL from the browser as per screenshot. | ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/ChooseSalesPerformancePrompt.jpg) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Browser%20Navigation%20URL.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Sales%20performance%20URL%20Change.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Genearate%20URL%20Prompt.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Replace%20Generate%20URL.png)| +| Replace Browser URL on Prompt Templates | - Goto Setup, in the Quick Find box, type Prompt and click on Prompt Builder, Search for SalesPerformance URL
- Click on it to open and replace the browser URL by removing the highlighted URL as per screenshot.
- Click on save.
- Repeat the same steps for Generate_URL Prompt Template.

**To find the Browser URL follow the following steps:**
- Click the App Launcher (grid/waffle icon) in the top-left corner
-Search for and select the Home
-Click on the Home and copy URL from the browser as per screenshot. | ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/ChooseSalesPerformancePrompt.jpg) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Browser%20Navigation%20URL.png) ![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Sales%20performance%20URL%20Change.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Genearate%20URL%20Prompt.png)![image](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Replace%20Generate%20URL.png)| ### 2. Create Workspace (5 min) | Step | Action and Details | Images | @@ -649,7 +649,7 @@ grant select on tables in <>.<> to role sysadmin | ----- | ----- | ----- | | Create Semantic Models |-Go to workspace Retail
-⦁ Click on Add, click on New Semantic Model and Name it New Semantic Model
-Select the workspace as Retail
-Select the Data Model Object Location Product Inventory and click on Save
-Click on + icon of Data object and Select Product, Sales Order, Sales Order Product Data Model Object and Click on Save | NewSemanticModel1 NewSemanticModel2 NewSemanticModel3 | |Create a logical view |-Click on New and select Logical view and provide name as Average Order Value (AOV)
-Select Data Model Object Sales Order and click on Save
-Go back to Semantic Model and click on New and select Logical View and provide name as Inventory
-Select Data Model Object Location Product Inventory
-Click on + icon of Location Product Inventory and select Join Object
-Select Data Model Object as Product and click on save
-Once join window gets open, click on + icon,Select Product from Location Product Inventory and Select Product Id from Product , click on Add and click on Apply| ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/LogicalView1.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/AOVLogicalView.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/InvetoryLogicalView1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/InvetoryLogicalView2.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/SoldQuantitiesVS3.png?raw=true) | -|Create Logical View of Retail Logical View 1|-Go back to Semantic Model and click on New and select Logical View and provide name as Retail Logical View 1
-Select Data Model Object Product
-Click on + icon of Product and select Join Object
-Select Data Model Object as Location Product Inventory and click on save
-Once join window gets open, click on + icon,Select Productt Id from Product and Select Product from Location Product Inventory , click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Pricebook Entry and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product from Pricebook Entry, click on Add and click on Apply
-Click on + icon of Pricebook Entry and select Join Object,Select Data Model Object as Price Book and click on save,Once join window gets open, click on + icon,Select Price Book from Priceboook Entry and Select Price Book Id from Price Book, click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Return Order Product and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product Id from Return Order Product, click on Add and click on Apply
-Click on + icon of Return Order Product and select Join Object,Select Data Model Object as Return Order and click on save,Once join window gets open, click on + icon,Select Return Order from Return Order Product and Select Return Order Id from Return Order, click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Sales Order Product and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product from Sales Order Product, click on Add and click on Apply|RetailLogicalView1 RetailLogicalView1 ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView4.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView5.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView6.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView7.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/SoldQuantitiesVS4.png?raw=true)| +|Create Logical View of Retail Logical View 1|-Go back to Semantic Model and click on New and select Logical View and provide name as Retail Logical View 1
-Select Data Model Object Product
-Click on + icon of Product and select Join Object
-Select Data Model Object as Location Product Inventory and click on save
-Once join window gets open, click on + icon,Select Product Id from Product and Select Product from Location Product Inventory , click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Pricebook Entry and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product from Pricebook Entry, click on Add and click on Apply
-Click on + icon of Pricebook Entry and select Join Object,Select Data Model Object as Price Book and click on save,Once join window gets open, click on + icon,Select Price Book from Priceboook Entry and Select Price Book Id from Price Book, click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Return Order Product and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product Id from Return Order Product, click on Add and click on Apply
-Click on + icon of Return Order Product and select Join Object,Select Data Model Object as Return Order and click on save,Once join window gets open, click on + icon,Select Return Order from Return Order Product and Select Return Order Id from Return Order, click on Add and click on Apply
-Click on + icon of Product and select Join Object,Select Data Model Object as Sales Order Product and click on save,Once join window gets open, click on + icon,Select Product Id from Product and Select Product from Sales Order Product, click on Add and click on Apply|RetailLogicalView1 RetailLogicalView1 ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView3.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView4.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView5.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView6.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/RetailLogicalView7.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/SoldQuantitiesVS4.png?raw=true)| |Create a Formula Field|-Go back to Semantic Model, Click on New button and click on Calculated Field, Name as Sold Quantities, Field Type as Measure and Data Type as Number then Click on Advanced, select Aggregation as UserAgg, and formuala as: sum(select Sales Order Product.Ordered Quantity from Retail Logical View 1) and click on Validate, and click on save, for more clarity refer screenshot
-Create Another Formulas Name as:1.Product Name 2. Average Order Value 3.Ordered Quantity 4. Return Rate 5.Total Returned Items 6. Total Sales 7. Total Sales Revenue
-Refer screenshot for formula, field type, data type, Advanced setting|![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/SoldQuantitesFormula1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/SoldQuantitesFormula2.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/ProductNameFormula1.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/Avergaordervalueformula.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/OrderedQuantityFormula.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/ReturnRateFormula.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/TotalReturnedItemsFormula.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/TotalSalesFormula.png?raw=true)
![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/TotalSalesRevenueFormula1.png?raw=true) ![](https://github.com/salesforce-misc/DataCloudAndAgentForceForRetail/blob/main/Tableau%20Images/TotalSalesRevenueFormula2.png?raw=true) | ### 4. Create Visulization and Dashboard for Sales Performance (2 hour) @@ -660,7 +660,7 @@ grant select on tables in <>.<> to role sysadmin ### 4. Create Visulization and Dashboard for Return Rate (3 hour) | Step | Action and Details | Images | | ----- | ----- | ----- | -|Create Visulization for Return Rate|-Go to Retail Workspace
-Click on Add and click on New Visualization and select New Semantic Model and click on Select button
-Provide Name as Total Sold Items
- Drag Sold Quantities from Calculated Field and place under Columns, click on arrow ofSold Quantities, Select Format Number as Number(Short), Visualize as , Select Discrete
- Select Mark as Donut and click on Save. Refer Screenshot.
Create few more visulization: 1.Returned Items 2. Return Rate 3. ROR by Product Type 4. Quantities Sold by Products 5.Return Items by Product 6. New Detail TAB 7. Inventory Visualization1 8. Inventory Visulization2 9. Inventory Detail Table
-Refer screenshot for each visulization, columns and rows setting,marks, filters, colors setting |TotalSoldItemsVS1 TotalSoldItemsVS2 ReturnedItemsVS1.png ReturnedItemsVS2.png ReturnedItemsVS2.png ReturnRateVS1 ReturnRateVS2 RORbyproducttypeVS1 RORbyproducttypeVS2 RORbyproducttypeVS3 RORbyproducttypeVS4 QuantitessoldbyproductsVS1 QuantitessoldbyproductsVS2 QuantitessoldbyproductsVS3 QuantitessoldbyproductsVS4 QuantitessoldbyproductsVS5 QuantitessoldbyproductsVS6 ReturnItemsbyProductVS1 ReturnItemsbyProductVS2 ReturnItemsbyProductVS3 ReturnItemsbyProductVS4 ReturnItemsbyProductVS5 ReturnItemsbyProductVS6 NewDetailsTabVS1 NewDetailsTabVS2 NewDetailsTabVS3 InventoryVS1 InventoryVisulizationVS1 InventoryVisulizationVS5 InventoryVisulizationVS2 InventoryVisulizationVS3InventoryVisulizationVS4 InventoryDetailTTable InventoryDetailTTable4 InventoryDetailTTable1 InventoryDetailTTable2 InventoryDetailTTable3| +|Create Visualization for Return Rate|-Go to Retail Workspace
-Click on Add and click on New Visualization and select New Semantic Model and click on Select button
-Provide Name as Total Sold Items
- Drag Sold Quantities from Calculated Field and place under Columns, click on arrow of Sold Quantities, Select Format Number as Number(Short), Visualize as , Select Discrete
- Select Mark as Donut and click on Save. Refer Screenshot.
Create few more visulization: 1.Returned Items 2. Return Rate 3. ROR by Product Type 4. Quantities Sold by Products 5.Return Items by Product 6. New Detail TAB 7. Inventory Visualization1 8. Inventory Visulization2 9. Inventory Detail Table
-Refer screenshot for each visulization, columns and rows setting,marks, filters, colors setting |TotalSoldItemsVS1 TotalSoldItemsVS2 ReturnedItemsVS1.png ReturnedItemsVS2.png ReturnedItemsVS2.png ReturnRateVS1 ReturnRateVS2 RORbyproducttypeVS1 RORbyproducttypeVS2 RORbyproducttypeVS3 RORbyproducttypeVS4 QuantitessoldbyproductsVS1 QuantitessoldbyproductsVS2 QuantitessoldbyproductsVS3 QuantitessoldbyproductsVS4 QuantitessoldbyproductsVS5 QuantitessoldbyproductsVS6 ReturnItemsbyProductVS1 ReturnItemsbyProductVS2 ReturnItemsbyProductVS3 ReturnItemsbyProductVS4 ReturnItemsbyProductVS5 ReturnItemsbyProductVS6 NewDetailsTabVS1 NewDetailsTabVS2 NewDetailsTabVS3 InventoryVS1 InventoryVisulizationVS1 InventoryVisulizationVS5 InventoryVisulizationVS2 InventoryVisulizationVS3InventoryVisulizationVS4 InventoryDetailTTable InventoryDetailTTable4 InventoryDetailTTable1 InventoryDetailTTable2 InventoryDetailTTable3| |Create Dashboard Return Rate|-Create a Dashboard with name as Return Rate, Create three pages by click on Add page : 1. Instructions 2. Overview 3. Inventory Deep Dive
-Refer Screenshot for Design, Text,Button and dashboard things
- drag button from menu and place it on dashboard pane, Name it as Overview and Under Action select Navigate to, Select Dashboard page and select Overview
-Do the same for Inventory, select Inventory Deep Dive Page
-Refer screenshot|ReturnRateDashboard1 ReturnRateDashboard2 ReturnRateDashboard3 ReturnRateDashboard4 ReturnRateDashboard5 ReturnRateDashboard6 ReturnRateDashboard7 ReturnRateDashboardOverview1 ReturnRateDashboardOverview2 ReturnRateDashboardOverview3 ReturnRateDashboardOverview4 ReturnRateDashboardOverview5 ReturnRateDashboardOverview6 ReturnRateDashboardOverview7 ReturnRateDashboardOverview8 ReturnRateDashboardOverview9 ReturnRateDashboardOverview10 ReturnRateDashboardOverview11 ReturnRateDashboardOverview12 ReturnRateDashboardOverview13 ReturnRateDashboardOverview14 ReturnRateDashboardOverview15 ReturnRateDashboardOverview16 ReturnRateDashboardOverview17 ReturnRateDashboardOverview18 ReturnRateDashboardOverview19 ReturnRateDashboardOverview20 ReturnRateDashboardInventory1 ReturnRateDashboardInventory2 ReturnRateDashboardInventory3 ReturnRateDashboardInventory4 ReturnRateDashboardInventory5 ReturnRateDashboardInventory6 ReturnRateDashboardInventory7| ### 8. Create Tabs for Dashboard (30 min)