Showing posts with label OAuth. Show all posts
Showing posts with label OAuth. Show all posts

Wednesday, June 8, 2016

Salesforce Schema Lister


Schema Lister is one of the toolkit available in Salesforce Toolkit by Ben Edwards.

This tool uses the Salesforce Metadata API to build a list of objects, fields and field attributes from within your Salesforce Org. It will produce list of all of your Salesforce objects (standard and custom) and all of your custom fields (standard and custom). You also able export it into Excel file for easy reference or other purpose, such as: documentation or audit or etc.

Information produce for each field:
  • Field Label
  • API Name
  • Type  
    • Unfortonately at this moment it doesn't show the field length
    • It show picklist values (including multi-select picklist values)
  • Help Text

Open https://schemalister.herokuapp.com to start, select if you would like to access Production or Sandbox environment, and click "Login to Salesforce with OAuth" button, if you already open Salesforce in the different tab in the same web browser, it will just authenticate, otherwise you need to enter your Salesforce username and password.

Once login, click "Get Schema" button, this will take few minutes for to query your objects and fields, so it is depends on how complex / many your objects and fields. Once done, it will show you the Org Id (make sure you are in the right org), jump to object link for easy navigation and "Export to Xlsx" button to export into Excel file.


Type: 3rd party with OAuth

Paid/Free: Free

Publisher: Ben Edwards

Installation: nothing to install, direct access to https://schemalister.herokuapp.com


Version: n/a


Blog last update: 8 Jun 2016


Sunday, May 8, 2016

Workbench for Salesforce admin

"Workbench" has been famous for quite sometimes for Salesforce developer, but it is also very useful for Salesforce admin. It's an awesome tool, cloud based, so no need to install anything in your desktop and can be use from anywhere with internet connection. So, why use Workbench?
  • Eyeball object and field (characteristics, limits) to understand objects and fields and their relationships 
  • To get metadata components information, such as: report, flow, etc.
  • To see current session information 
  • Quickly query and extract data from Salesforce 
  • Insert, delete, update, upsert, delete single records or .CSV files into Salesforce
  • Deploy metadata changes (instead of using Migration Toolkit)
  • Retrieve metadata package
  • Explore REST resources (to see what information can be programatically extracted / inserted via an API
  • Enter Apex code to be executed as an anonymous
  • Password Management
  • It's free (although no support from Salesforce)
  • Do all of the above in the one place!

How to start using it?
Easy, go to https://workbench.developerforce.com and log in to your sandbox (or production org if you know what you do, caution this is a very powerful tool).


Use case
I would like to quickly sneak through all the fields available for a record, remember report do not support all object or all fields, so we can utilize Workbench for this purpose.
Make sure you have login to Salesforce, click new tab from web browser and paste following in the URL:
https://workbench.developerforce.com/retrieve.php?id=00150000018vb6G
change with the valid Record Id

Few other use cases to utilize Workbench for admin:

Documentation
To start doing any of the above, here are the relevant documentation links:

For complete documentation - https://developer.salesforce.com/page/Workbench


Type: 3rd Party App

Paid/Free: Free

Publisher: n/a

Installationhttps://workbench.developerforce.com/login.php

Version: n/a


Blog last updated: 8 May 2016


Wednesday, May 4, 2016

GetFeedback - Online Surveys for Salesforce

GetFeedback is one of the most famous online survey tool tightly integrated with Salesforce. It also provide pretty user interface and easy to use interface. Survey responses can be easily mapped into Salesforce on Accounts, Contacts, Cases & custom objects. Surveys can be display perfectly on smartphones, tablets, and browsers.

By default, GetFeedback does not know who you send your surveys out to, because the link is generic, example: https://www.getfeedback.com/r/cnxEaxge

You need to make the survey "Salesforce aware" by adding parameters at the end of survey URL.
example: https://www.getfeedback.com/r/cnxEaxge?CONTACT_ID=0039000001prEMo&CASE_ID=50090000012wlV7

You can design this in Salesforce email template as merge field, example:
https://www.getfeedback.com/r/cnxEaxge?CONTACT_ID={!Contact.Id}&CASE_ID={!Case.Id}&ACCOUNT_ID={!Account.Id}&CONTACT_NAME={!Contact.FirstName}

You also can add contact name in survey with passing their name as email template, example:
https://www.getfeedback.com/r/cnxEaxge?CONTACT_ID={!Contact.Id}&CASE_ID={!Case.Id}&ACCOUNT_ID={!Account.Id}&CONTACT_NAME={!Contact.FirstName}

Those URL can be hidden using an HTML link, example: click here to start


A. Distributing "Salesforce Aware" surveys
- Mass Email from Salesforce with email template designed
- Click a button/link from Salesforce with email template designed
- Email alert to send email from workflow
- Use 3rd party email tool that include Salesforce ID as parameters


B. Viewing "Salesforce Aware" survey responses in GetFeedback
Click Analyze tab in GetFeeedback to see all survey response. If your survey URL include paramater, such as:
CONTACT_ID=0039000001poglz, you will see CONTACT_ID column with the value for the survey response.


C. Mapping "Salesforce Aware" survey responses to Salesforce fields
If you haven't connect GetFeedback to Salesforce, click your name | Account Settings, then find Salesforce menu, then click button 'Connect to Salesforce', and select Allow access in the next screen.

Click Salesforce tab in GetFeedback, you can select any available actions below, it can be one action or more for each survey.

For each survey from GetFeedback, you need to create the Salesforce mapping and action from GetFeedback, once setup done, survey result will be auto push to Salesforce in almost real-time.


1. Create a new record in object
By select this, you are going to use a custom object to capture new survey response data. If you select this option, you need to create a custom object and many fields needed prior this step.

There are 5 mapping sources you can use in this option:


Question, Answer, Response Attribute is necessary to map for this option.


2. Update field in existing object
You might want each response to update fields on an existing object in Salesforce if you want to put your survey response data within an existing standard object (e.g. Case or Account) without the additional overhead of using a custom object. For the response data to make it to the right place, you'll need to pass the Salesforce ID for the existing object as a merge field in the survey URL.

If you select this option, new survey answer will overwrite historical survey result. This is not so recommended unless you really do not want to know history survey.

Same with (1), there are 5 sources you can map when using this option.


3. Create or update Lead or Contact
This selection allows you to use the survey respondent's email address as a way of avoiding duplicate Contacts or Leads in  Salesforce. If a Contact or Lead has the same email address, system will update most recently modified or recently created, or update all. If none are found with the same email address, it'll create one.

You can use merge field such as email address, or Id, or other unique information. This option will also overwrite historical survey result if existing data exist.

Same with (1), there are 5 sources you can map when using this option.


4. Create an Activity in an object
This selection will create an activity record on an existing object for each response. For the response data to make it to the right place, you'll need to pass the Salesforce ID for the existing object as a merge field in the survey URL.

There is nothing to map here as system will create an Activity History and relate it to the record. But, you also cannot create report if select this.




Limitation & Summary: 
1. You can have multiple actions for each survey mapping, example: "Create a new record in object" + "Create an Activity in an object"

2. Ideally you need to select action (1) to maintain historical survey result, this option also great to present the survey result in report or dashboard.

3. By select action (1), you can use just one custom object to combine all survey, you need to create many fields to cover future usage. But if you opt to create new object for every survey, I think this is not practical, it will mess up your salesforce objects usage and layouts, personally I do not like this approach.

4. Using only one custom object approach, all questions and answers field need to be in text format with max length 255, some standard field such as Completion Date can be in Date/Time format.


Reference:


Type: AppExchange (Managed Package)

Paid/Free: Paid

Publisher: GetFeedback

Installation: https://appexchange.salesforce.com/listingDetail?listingId=a0N3000000B4lIxEAJ
This app is not installed from AppExchange, but login to GetFeedback and link it to your Salesforce instance (sandbox or production)

Version: n/a


Blog last updated: 5 May 2016