App cloud academy: hands-on

52
App Cloud Academy - Hands-on Follow these steps to get a full mobile, collaboration-enabled, external-connected app run- ning. All with clicks, in under 2 hours. This baseline app will allow to manage hiring process (job requisitions and applicants). You are free to extend after to add more process into it (managing interviews, etc) Before We start - Some pre-work. Register for a dev org ( http:/ / sfdc.co/ devsignup) Sign-up in the newly created org Enable “My Domain” –> Setup - Domain Management - My Domain (more info https:/ / help.salesforce.com/ articleView?id=domain_name_overview.htm & type=0) Choose a a domain name Check Availability Register domain Enable Lightning (Setup - Lightning Experience - “enable” at bottom of page)

Transcript of App cloud academy: hands-on

Page 1: App cloud academy: hands-on

App Cloud Academy - Hands-onFollow these steps to get a full mobile, collaboration-enabled, external-connected app run-ning. All with clicks, in under 2 hours.This baseline app will allow to manage hiring process (job requisitions and applicants). Youare free to extend after to add more process into it (managing interviews, etc)

Before We start - Some pre-work.

Register for a dev org (http://sfdc.co/devsignup)

Sign-up in the newly created org

Enable “My Domain” –> Setup - Domain Management - My Domain  (more info https://help.salesforce.com/articleView?id=domain_name_overview.htm&type=0)

Choose a a domain name

Check Availability

Register domain

Enable Lightning (Setup - Lightning Experience - “enable” at bottom of page)

Page 2: App cloud academy: hands-on

Move to lightning!

Page 3: App cloud academy: hands-on

Go into Setup

PART 1 - Data ModelCreate a data model in a few clicks. Security built-in, UI built-in (forms, lists, displays), Collabora-tion built-in. https://trailhead.salesforce.com/en/module/data_modeling

Setup - Objects and fields - Object Manager (or directly depuis Setup Home - Create)

Create → Create Custom Object (Job Requisition - Name: Title -  with reports, activ-ities and field tracking, Check “Launch new custom tab wizard”)

Page 4: App cloud academy: hands-on
Page 5: App cloud academy: hands-on

Create Fields (for each object, keep defaults)

Page 6: App cloud academy: hands-on

Location (text - length 128)

Status (Picklist : Open, Needs Approval, Open - Approved, Closed)

Travel required (checkbox)

Rec Open Date (date)

Hiring Manager (lookup → User)

Create→ Create Custom Object (Applicant - Auto Number - with reports, activitiesand field tracking, Check “Launch new custom tab wizard”)

Create Fields

Name (text - length 128)

Email (email)

Mobile Phone (phone)

Status ( Picklist: new - Schedule Interview - Expend Offer - Hired - rejected)

Resume (Rich text)

HR Contact (Lookup User)

Job Requisition (Lookup Job Requisition)

Schema Builder - UI to easily show objects and relationships , and create objects/fieldsquickly

Page 7: App cloud academy: hands-on

For applicant object → go to page layout: create a section with 1 column layout forthe resume

Publish my domain for all users

Page 8: App cloud academy: hands-on

Create HR profile (copy standard user)

Secure access to your data by granting fine-grained access to users. 

Modify object access

Page 9: App cloud academy: hands-on

Applicants: CRU

Job Requisiitons: CRUD

Modify Field-Level Security on Applicant

resume - read-only

Create an HR App 

Quickly organize your app and give it a customized branding

Setup - Apps - App Manager → New lightning App

Page 10: App cloud academy: hands-on

Name: HR 

Color: green

Add “Home” “Reports” “Chatter” “Job Requisitions” and “Applicants” Tab

Give access to “system admin” and “HR” profiles

Page 11: App cloud academy: hands-on

We now have a running App!  Let’s try it!

Navigate to HR App - create a job requisition - create an applicant

Page 12: App cloud academy: hands-on

Setup - Feature Settings - Chatter - Feed Tracking

Enable Chatter feed tracking for job requisition and Applicant to activate Chatter Col-laboration on these objects

“Enable Feed Tracking” on Job Requisition and Applicant

Page 13: App cloud academy: hands-on

You can now go back to the Job Requisition you created, and post on the feed (Chattertab)

Edit the record page in app builder (optional)

Page 14: App cloud academy: hands-on

You can change the layout of the page, and add value-added component from a GUI

Activate for RH app

PART 2 - ProcessNow we have an app with a functioning UI and data model. By the way, it works on mo-bile too (more on than later). Let’s create some processes, because any app gets better withsome automatisation. https://trailhead.salesforce.com/en/business_process_automation/process_builder

Create a new Process in Process Builder 

The process Builder gives you a Graphical User Interface to power automation. Sendemail, create or update records, post to chatter, or launch other processes or apex code,all with a few clicks.

Name: applicant process

Object: Applicant - When a record is created or edited

Page 15: App cloud academy: hands-on

Criteria 1: New applicant

conditions are met: Job Position is not null AND last modified date equals cre-ation date 

Page 16: App cloud academy: hands-on

New action if HR contact is not null : “Notify HR contact”→  Chatter post to HRContact

Create a message with merge fields (applicant name and position name)

Criteria 2: Schedule Interview (Optional):

Conditions are met: status=schedule interview

Page 17: App cloud academy: hands-on

Action: “Notify hiring manager” → chatter post to hiring manager

Want to go further (optional)? Create an interview object, and create an inter-view record at this step to hold the feedback from the hiring manager.

Page 18: App cloud academy: hands-on

Activate Process

Go back to application created - set status to “schedule interview” and see the re-sulting chatter post.

PART 3 - External Data SourceIntegrate with external data source with clicks, not code. In this exemple we will integratewith an HR database that holds master job records. https://trailhead.salesforce.com/en/module/lightning_connect

Create an external data source

Name: HR

Type: Odata 4.0

URL: https://odata-eu.heroku.com/odata/v4/4135c18dc7854af8b2a833086e24c6c0/ (Go to http://sfdc.co/aca-ext to copy/paste the URL, Login and Password)

Writeable External Objects: Yes

Reports: Yes

Enable Search: Yes

Authentication

Named principal / password authentication

Username: 09f97774519d4ae6aaea11cd161260da

Password: 1f07cc48262e48798b545149117c6633

Page 19: App cloud academy: hands-on

Validate and Sync, check public$jobs table 

Edit External object Name: Master Job Detail

Page 20: App cloud academy: hands-on

Change field level security on “Salaire Max” Field

Add a tab for the object and include it in HR app

Setup - User Interface - Tabs → New

Select Master Job Detail Object, and change the tab style

Page 21: App cloud academy: hands-on

Leave visibility as default, include only on HR App.

Chatter feed tracking → Enable for Master Job Detail (Feature Settings - Chatter - FeedTracking)

Page 22: App cloud academy: hands-on

Create External lookup on job requisition

Objects and Fields - Object Manager - Job requisition object

New field

Page 23: App cloud academy: hands-on

Type: external lookup to Master Job Detail

Name: Master Job Record

Page 24: App cloud academy: hands-on

You can now navigate to Job Requisitions and link them to their master job details! 

PART 4 - Mobile - APP Exchange - ReportGet Insight into you data with a powerful Report Editor. Power your mobile workforce with ad-vanced applications. https://trailhead.salesforce.com/en/module/reports_dashboardshttps://trailhead.salesforce.com/en/module/lightning_app_builder

Create a report “Applicants with job requisitions”

Page 25: App cloud academy: hands-on

Show All Applicants

Change Format to Summary

Page 26: App cloud academy: hands-on

Group by Job Requisition Title - Group by Status, and add interesting fields (Appli-cant Name, Email, Phone)

Save as: Applicants by Job Requisition  - in Unfiled Public Reports folder

Run The Report and Add a graph

Page 27: App cloud academy: hands-on

Edit the graph to make it a donut

Page 28: App cloud academy: hands-on

Save

Data Visualisation and reporting in a few clicks. Business user don’t need anymore tomaster Spreadsheets or use IT resources to gain insight into their data.

Create a Mobile App - Lightning App Builder

Setup - User Interface - Lightning App Builder - New

Page 29: App cloud academy: hands-on

New App Page

One column

Page 30: App cloud academy: hands-on

Name: HR Mobile 

Drag a report component - select previously created report

Page 31: App cloud academy: hands-on

Drag a list component. Select Applicants

Add a component from the appExchange: Jumbotron

Page 32: App cloud academy: hands-on
Page 33: App cloud academy: hands-on
Page 34: App cloud academy: hands-on
Page 35: App cloud academy: hands-on
Page 36: App cloud academy: hands-on

Refresh the component palette until Jumbotron appears under “Custom - Man-aged”

Drag-and-drop it and customize it

Save and activate for Salesforce 1

Page 37: App cloud academy: hands-on
Page 38: App cloud academy: hands-on
Page 39: App cloud academy: hands-on

You can now go to your phone, head to the App Store or the Play Store. Install Salesforce1app. Login with your dev org credentials. You have now access to the app you just created.And you have access to the applicants and Job Requisitions objects. You can view, edit,report, all that on your mobile, without any code! 

PART 5 -  deploy from sandbox to prod (Part done by the presenter only)Get from a development environnement to production in a few clicks. Manage your applifecycle to bring new features to life easily. https://trailhead.salesforce.com/en/module/app_deployment

Create a New Outbound Deployment

Select components

Custom objects: Job requisition, applicants, Master Job Detail

Tabs: Job Requisition, Applicants, Master Job Detail, HR

Application : HR

Page layouts: Job requisition, applicants, Master Job Detail

Report: Applicant per job requisition 

Page 40: App cloud academy: hands-on

Flow definition: Applicant process

Push to produsction

From the production Org:  Deploy the inbound change set

PART 6 - Event Monitoring (Part done by the presenter only)Get insight into adoption, usage, and the security of you Salesforce implementation, and yourcustom apps. https://trailhead.salesforce.com/en/event_monitoring/event_monitoring_intro

PART 7 - CommunityExtend your application to external user (Authenticated or Anonymous) with a few clicks.Enjoy powerful branding and customization tool, and enjoy the no-replication of data be-cause communities are on the same platform! https://trailhead.salesforce.com/en/module/community_cloud_basics

Setup - Feature Settings - Communities - Communities Settings → Activate Communities

Domain name: Choose the same one you used for “My Domain”

Setup - Feature Settings - Communities - All Communities → New Community

Select the Customer Service (Napili) Template 

Page 41: App cloud academy: hands-on

 Lightning bolt allows you to create a community fro a template in a few click. Templatesare available for various use case like partner community, Finance vertical, Customer Ser-

Page 42: App cloud academy: hands-on

vice etc.

Name: HR , URL: hr

Build and Customize 

Make your own basic branding: Upload  a logo /Upload a Header Image / Change col-ors

Page 43: App cloud academy: hands-on

Go to Page Editor Mode

Page 44: App cloud academy: hands-on

Select the Menu Area - Then Edit Navigation Menu

Add menu item

Page 45: App cloud academy: hands-on

Name: Job Requisitions - Type: Salesforce Object - Object Type: Job Requisition - De-fault List View: ALL

Publish and look at the result!

Page 46: App cloud academy: hands-on

You can now navigate the community, see the records you created earlier. You can evenredo the same steps and get access to the Master Job Detail!

You have created in a few minutes and a few click, an hiring portal with collaboration! Allwhile securely handling sensitive information with Profiles and Field Level Security!

Now, wouldn’t it be great if we made it easier for applicant to apply to a job on the por-tal? Let’s create a quick action that do just that!

Let’s create a new action on job requisition

Setup - Objects and Fields - Object Manager - Select Job Requisition

Page 47: App cloud academy: hands-on

Section “Buttons, Links and Actions” - New Action

Action: Create record, Target Object: Applicant, Label: Apply to this job

Page 48: App cloud academy: hands-on

Add fields to the layout: Name, Email Mobile Phone, Resume

Set predefined value for field Status (New) and HR Contact (Owner of the Job Req-uisition)

Page 49: App cloud academy: hands-on

Setup - Objects and Fields - Object Manager - Select Job Requisition - Modify Page

Page 50: App cloud academy: hands-on

Layout

Add the action “apply to this job” on the page layout (drag and drop - Salesforce 1& Lightning Actions)

Save

Page 51: App cloud academy: hands-on

 Go back to the community to see the result. Setup - Feature Settings - Communi-ties - All Communities - Click on link

Go to Job Requisitions, select the first, and click on “apply to the job”

Page 52: App cloud academy: hands-on

 You’ve made it! It is now very easy for an interested person to apply for a job at your organ-isation. You also have a process that notifies the HR contact upon application, and managea basic Hiring process, all available from your mobile. A few more hours of clicks (not code)and you’ll have a full hiring application tailored to your need! Feel free to do it, and share theresults!