This is mostly about improving performance. If there is large data or transaction volume, it can impact: reports/dashboard performance, import speed, search speed, sharing rules performance, list views.
In order to optimise performance you can:
- Create custom indexes to speed up queries and reports
- Use mashups to show data stored in external systems as if in Salesforce
- Large volumes of data can be segmented with divisions
- Skinny tables (?) can improve system performance
- Change sharing rules off work hours so as not to affect user experience
- Use report filters to improve performance
- Use bulk API/asynchronous parallel processing when loading large data volumes (avoid governor limits?)
- Archive records not being used
Data migration process:
- Identify stakeholders. Create data map for them, communication with them is important.
- Data analysis. Identify data to be migrated, correct approach for migrating data, whether it requires cleaning, how it should be stored in Salesforce.
- Data and system preparation. Data cleaned and converted in CSV files. Order of migration considered. Customise meta-data in Salesforce where required.
- Data migration testing. Test data migration in sandbox. First with a subset of data then full migration of data. Identify and rectify any hiccups.
- Data migration and validation. Create backup of existing data in production. Migrate data into production. Check data with various users to validate it. Communicate with stakeholders.
Data Import Wizard vs Data Loader. Depends on the size of import and the objects involved. Generally, Import Wizard is preferable but Data Loader can support more?
Migration order of objects:
- Product Line Items
- Campaign Members
- Custom Objects
This post details some common integration patterns. An integration pattern is the way of integrating Salesforce with external systems. Sales Cloud integration patterns include:
- Asynchronous update
- Real-time update
- Batch data synchronisation
- Remote update
- User interface update
Batch data synchronisation. This is where certain changes in Salesforce or an external are exported into the other, on a regular basis such as weekly or nightly. It has the benefit of not disrupting operations during business hours.
Real-time update. As the name suggests, this happens in real time. Changes are made in Salesforce or an external system, upon the request of the other. For example at the click of a button. Waits for a response back: “request and reply”.
Asynchronous update. Similar to above but doesn’t doesn’t wait for a response back: “fire and forget”.
Remote update. An external system can access Salesforce through the use of APIs and query, update or update records in Salesforce. Can access metadata.
User Interface Update. Events in Salesforce trigger real-time updates in user interface of external system. Doesn’t require screen refresh (which might lose unsaved work). For example use to notify a Sales manager in external system when a deal is clsoed.
Mashup. Make things connected to external systems look like they’re part of Salesforce.
Five main options: standard reports, custom reports, reporting snapshots, app exchange dashboards and historical trend reporting.
Standard sales reports:
- Active, neglected or new accounts/contacts
- Opportunity reports
- Lead reports (how long to respond, neglected leads etc)
- Forecast reports
- Campaign reports
Custom sales reports and dashboards
- Report on historical data
- Saves to a custom object
AppExchange sales dashboards
- Marketing executive dashboard
- Sales executive dashboard
- Sales manager dashboard
- Salesperson dashboard
Historical trend reporting
- Highlight changes between five snapshot dates
- Day-to-day or week-to-week trends
Some common sales metrics:
- Sales by lead source
- Total closed opportunities
- Revenue per sale
- Percentage of leads converted
- Win rate
Impact of Multi-Currency on Sales Analytics:
- Amounts in reports can be shown in any active currency
- The primary currency reflects either the default corporate currency or the record currency
- The secondary currency reflects either the user’s default currency or the currency in the filter criteria
- Dashboards just use the currency that the report uses
- Converted column shows user’s currency by default but can be changed (how is this different to secondary currency?)
- Customers share experiences
- Provided access to their data
- Find information about products
- Sales reps can refer customers to the community
- Give customers access to knowledge base
- Helps partners collaborate with employees
- Manage opportunities
- Gain access to leads
- Register deals in the works (this can be useful to know)
- Create quotes
- Reports and dashboards
- Employees can ask questions
- Collaborate with sales reps
- Access to knolwedge base and training materials
- Accessed by mobile
- Payroll, benefits information etc can be made available
- Post, vote for and comment on ideas
- Allows outsiders to see innovation
- Add or subtract 10 points if someone votes on idea
- Groups of ideas called zones
- Display Salesforce data in a branded, public website
Considerations of Communities
- Once enabled, can’t be disabled
- Community builder vs workspace?
- Contact records are assigned as community users by assigning them a license
- Access communities through the global header or the app launcher
- Create communities from templates
Salesforce1 has many tools which can drive productivity:
- Access to records
- Lead conversion
- Quick Actions
- Access reports and Dashboards
Email productivity tools:
- Email integration tools such as lightning for outlook/Gmail
- Lightning sync contacts and events can be synced between email and Salesforce
- Can access certain records related to emails directly from email
- E-mail to Salesforce allows emails from external email apps to be related to certain Salesforce records
- Email templates and mail merge
- Mass emails
- Follow records
- Publisher actions (post, poll, files, questions)
- Private messages
Content vs Chatter Files