Users have always had a way of duplicating data, especially back before the dawn of time (Spring 15 - when there was no built in real time duplication prevention). Being able to take two or three accounts or contacts and merge them into one is great feature. On the other hand, losing data while doing it, is not so great. Here are some considerations to consider before merging.
The built in tool for merging accounts and contacts is both a hidden gem and a life saver. The built in merge tool does a lot. It allows you to pick the fields you want to merge, it combines all of the related information but there are some gotchas that you might want to watch out for when merging.
Chatter & Topics
The first thing to consider while merging is Chatter. When you merge two records together, the Chatter posts on both of them do NOT merge. You will be left with the Chatter of only the main record you picked during merging. While this might seem like a small deal, remember that this also includes any files attached in Chatter. Those too will be gone along with any topics assigned.
If you want to make sure you have an archive of all the Chatter, consider using a tool like Compliance Locker (shameless plug), which writes all Chatter to records in custom objects that won't be affected by merging.
Another thing that goes bye bye when merging two records is the field history. This long standing feature lets an Administrator define up to 20 fields that get logged as history related to the record. This is great for auditing who changed what and when but on a merge, only the main record keeps the field history.
If field history is important, consider pulling an archive via the Data Loader, reports or create a custom archive object to re-create the history.
While merging contacts is a little easier because they start in the same account (remember that you have to get them there first), the account name really matters for finding and merging. For example, you might have company called "ABC Carpets" and another duplicate called "Carpets, ABC" the tool won't find them both to allow you to merge. You could search for "ABC" or "Carpets" and one or the other will show up, but not both. The reason is the merge search is pretty basic (too basic?), only really going on the start of the account name, not all of it. To work around this, rename one of the ones you want to merge so they will both show up in the search.
Lightning Developer Week has passed us by a few days, but we can keep the energy going with a deep dive into Lightning Process Builder. Process Builder is another addition to the workflow automation features of the Salesforce platform, and it overlaps functions provided by Workflow Rules, Approval Processes, and Visual Workflow. Salesforce’s Trailhead site has a great table comparing these automation tools, and here’s the gist of when we recommend using Process Builder:
- Centralize a complex set of if/then statements and their relevant actions; this usually requires multiple workflow rules to achieve
- Perform actions not possible with workflow rules, like creating records (other than tasks), Chatter posts, calling Apex code, and updating any related parent and child records
- More intuitive UI than Visual Workflow for building a set of steps and actions
- Maintain version control over a given process, so you can see how it changes and revert back to previous processes
Process Builder sounds amazing based on the above points, but it does have some caveats. As the feature evolves, these gaps will likely be closed, but here are some reasons to use a more mature automation tool instead of Process Builder:
- Approval Processes support being called by user clicks, Apex, and Visual Workflow; Process Builder only evaluates upon a record changing
- Visual Workflow supports screen design to collect data and guide a user
- Visual Workflow supports deletion of records
- Workflow Rules can send outbound messages
- Workflow Rules can have multiple time triggers
Let’s dive into our use cases, because these tools are already well documented and most requirements may have multiple solutions to produce the same result. Process Builder is already enabled for Spring ‘15 orgs, which means almost everyone reading this will be able to start building; navigating into Setup > Build > Create > Process Builder will launch the Process Builder home page, and we can create a new process or manage existing processes from this UI.
Updating a Parent Record through Lookup Relationship
Now that we’re ready to go, let’s start with our first use case. Cross object workflow allows us to update fields on a parent record, but only via a master-detail relationship. Process Builder is relationship agnostic, and allows us to go across a lookup to update our parent record’s fields. Our contact Bruce Wayne has recently been reinstated as the CEO of Wayne Enterprises, and we want to ensure he is marked as the greatest influencer on the Account.
After updating Bruce’s contact to state he’s the “CEO and Chairman”, our process goes to update the account’s greatest influencer from Lucius Fox to Bruce Wayne. This is not possible to achieve with a workflow rule and field update, and our process was able to update a lookup field. This process is relatively simple, and involves one criteria step and a single action.
Meeting Notes to Chatter Group
Continuing on our road into new actions available to us with Process Builder, let’s go a little wild and do a more involved use case that leverages Chatter posts. Often times, salespeople will have meetings, and some of these results need to be highlighted to a group of people. Chatter posts are a great way to share this, especially since we can’t use email alerts with the Event object. Here’s a quick demo of logging a meeting, checking a box, and the post hitting our Chatter group “Noteworthy Meetings”.
This is another simple process, leveraging only one criteria step and a single action. With our post to Chatter option, we are able to post to a user, group, or on the record feed (if Chatter is enabled for that object). The editor allows us to merge in fields from our record and include that within the body post. Another great use for these is closed won notifications, and different criteria steps could determine which sales management group gets the post.
Pushing Household or Company Addresses Down to Contacts
Address management has a top down use case, where a firm or family moves and the address of the account will cause contact addresses to change as well. We typically encounter this use case, and previously would recommend the use of code to manage this, or a separate address object. Here’s a case where we change the mailing address for all of Wayne Enterprise’s contacts to 1 Market Street in San Francisco.
Instead of a screen clickthrough of the finished process, let’s take a look at how fast this can be accomplished from the My Processes page. Granted, I have spent some hands on time with Process Builder, but it takes 130 seconds to accomplish this, which is much less time than it would take to write the trigger and test class to do the same work.
Process Builder is a huge improvement to Salesforce’s declarative suite of tools, allowing admins and developers to post to Chatter, update parent records and multiple child records, create records
(except for tasks, you still need workflow rules for those), and get into more complex workflow situations. These changes have some nuances and the tool will mature over each release to make it even more powerful; a high confidence prediction is that this tool may soon replace Visual Workflow by the Spring ‘16 release.
Do you have use cases or requirements that you can share, or chat more about Process Builder? Please feel free to leave comments and questions below, on our Facebook page, directly @RogerMitchell on Twitter, or in the Success Community!
Moving data from a separate database to Salesforce can be approached in many different ways, it just depends on what the needs are for tracking that data in Salesforce. There is the one time data dump where you are moving all data from one system to Salesforce and retiring that previous database. There is what I call ‘light integration’ where you periodically move data from one system, say a core banking system, to Salesforce in a somewhat manual basis. Then there are the more robust integrations with Salesforce that are set up to automatically bring data into Salesforce via ‘batches’ (integration runs at a specified day, time) or real time synchronization where data is flowing one or both ways in real time. These robust integrations don’t include any human interaction for syncing to occur.
For the purposes of this blog post I’m going to focus on the ‘light integration’ process and things to consider when setting up and running the integration. Regardless of what system you’re pulling from and what tool you use, the fundamental steps are extraction, cleanup and mapping, and finally uploading.
Extraction - Pulling Data out of a Database and File Format
The first thing to consider when you’re looking to do light integration with an outside database and Salesforce is what are all the data points you need to extract and store inside Salesforce. Consider what is needed in order for your organization to see a ‘360 view’ of your customers. Extraction of the data really depends on the database you’re working with but you want to pull it to an excel file structured as clean as possible. For example, don’t have address, city, state, etc… all in one column. Split those out into separate columns as they would need to be pulled into Salesforce that way. Another one is name; extract so that salutation, first, last (and if configured middle and suffix) are in their own columns. This will save you a lot of time cleaning up your spreadsheet prior to uploading especially if you are doing this in regular intervals such as once a week. Since you will be extracting on a recurring basis make sure you are pulling the data into a spreadsheet consistently, column headers are named the same thing and in the same order each time.
Clean up and Mapping
No matter how cleanly you can extract data, there is always a bit of cleanup to do. For instance, data columns need to be formatted as ‘mm/dd/yyyy’ and currencies should be in a text or general format. Make sure those email addresses follow standard formatting <textwithnospace>@<text>.xxx and websites are www.<text>.xxx (you can have the http:// if you want). If there’s a way to set these during extraction, great!
The first time I’m setting up a spreadsheet for light integration, I always like to walk through each column in a spreadsheet and plan out how it will be mapped to Salesforce before I do the actual mapping in the tool I’m going to use for uploading. That way I know what objects are involved, how many upload scenarios will need to be created and saved, and what, if any, columns need to be added to the spreadsheet each time I prep for uploading. Columns that need to be added, I find, are typically record types, ownership, reference fields. You can avoid needing to add the reference fields if you have...the ideal...external unique Identifiers. These are identifiers that come from your database that uniquely identify each entity, individual, product or service you may pull in new and/or revise data. Having external unique identifiers listed in your spreadsheet for entities and individuals especially saves a lot of time and eliminates the possibility of adding duplicate records to Salesforce. The less ideal alternative is to create reference field columns for salesforce IDs and run ‘vlookups’ for the ID based on what I would consider softer data in your spreadsheet (for example, an entity name column or an email address for an individual). This is more prone to errors and potential duplications.
Once you feel your spreadsheet is clean and mapped as needed. It’s time to utilize a migration tool to do the final mapping scenarios, save those scenarios for future uploads and finally to perform the upload to Salesforce.
Migration Tool (or ETL)
There are many tools to choose from, for light integration you could use the Apex Data Loader but I’ve found it has too many limitations. Your spreadsheet has to be verbatim what you will map into Salesforce. There is no flexibility or time saving tricks you can do with this tool. Dataloader.io is another great cloud based tool, it’s free and works with Professional Edition. However, I find it limited in similar ways as the Apex Data Loader. A nice thing about the Dataloader.io in comparrison to the Apex Data Loader worth mentioning; instead of having to vlookup the Salesforce ID for reference fields, it let’s you map the reference fields using a column such as name, essentially doing the vlookup right in the tool for you.
My preference is to use the Jitterbit Cloud Data Loader (yes and it’s free). Not only does it save mapping but also the full upload scenario for each object touched in a recurring import. Once it’s set up, all you would need to do for recurring uploads is point the scenario to the new csv file and hit ‘upsert’ (upsert in the case of recurring data uploading is the best importing option). With Jitterbit you can also build formulas for naming conventions, and if something like a record type or owner is the same for the whole spreadsheet you can build this right into the mapping instead of taking the time each time to add these columns to the spreadsheet. Whatever tool you choose make sure it has the capability and flexibility to do as much of the leg work via mapping so you don’t have to spend too much time cleaning up the spreadsheet, collectively over time this will be a huge time saver.
For light integrations thoroughly document each of these steps as you walk through them the first time. It’s not only a great reference for the next few times you need to import data to Salesforce (until you have it down to a science) but if anyone else needs to own this responsibility it’s well spelled out for them. Document the tool you use, the cleanup steps you need to take in the spreadsheet, the scenarios saved in your tool, etc…. Once you’ve run through these steps a few times you’ll become a master at it and very efficient.
Do you have your own tips and tricks for light integrations? Other tools you like to use? Please feel free to comment below, on our Facebook page, or directly at me on Twitter @LeiferAshley or in the Success Community.
Survey tools are not just for simple surveys anymore. If you are looking to easily map responses directly into Salesforce (standard and custom objects), automatically send follow up surveys, add conditions to your questions, and customize or brand your surveys, you will find several great tools that can support this functionality. This blog will take you through what really makes these survey tools stand out as a great addition to the Salesforce platform, as well as, some of the vendors that are vastly being recognized by the community as really good options to consider.
What Can a Survey Tool Do?
The tools are getting more comprehensive and growing at the same rate that Salesforce and its customers are. These tools have intricate integrations with Salesforce that allow records to be created and/or updated using direct field and criteria level mapping. The dynamic look and feel of the surveys can also be fully customized. They allow you to design complex custom question layouts, including skip logic (skip questions based on response) and piping (pulling in a response from a previous question into a later question). The tools provide extensive data analytics so you can see trends in responses and relationships drawn from different questions. You can also tailor the survey to meet consumers where they are. If you need quick and immediate survey responses from a large number of consumers, you can choose a tool that focuses more on providing quick analytics on large samples of data while allowing surveys to easily be taken on any mobile device. The level of versatility that these tools provide let you determine your business needs and they will meet you where you are. How exciting is that?
In my previous organization, we used a survey tool to replace some of the data capture that we were getting via a web to lead and a customer portal. It was seamless and we no longer needed to invest in using custom code as the survey tool took care of everything. The surveys were easy to create and we appreciated the level of customization that we had our fingertips when it came to survey design and field mapping into Salesforce. Surveys can be used to get feedback as simple as one question to as complex as long list of questions with embedded conditions. You can follow a customer’s experience, for example, during a program or course providing a series of surveys throughout. You will get such rich data not only across this person’s experience but from all of the participants that can be used to inform the process and make improvements where needed. Organizations have also used these survey tools to track customer and/or employee satisfaction, case resolution feedback, product feedback, and conduct market research. There are endless number of ways to utilize these survey tools and this flexibility is what makes these tools invaluable.
What Are the Top Tools Out There
When it comes to choosing survey tools the community has spoken as there are great reviews for the different survey tools out there via the AppExchange. You can get surveys tools ranging from free with basic service (simple layouts, low # of sends) to more expensive options that provide full customization and cater to a myriad of different business needs. The following survey tools have great reviews on the AppExchange and are above a 4.
GetFeedback - 5 stars (free for up to 10 responses/month)
Simple Survey for Salesforce - 5 stars ($1,440 per org for first 20 users)
FeedBox - 5 stars (starts at $50 per user per month)
ClickTools - 4.5 stars ($219 per user per month)
Qualtrics - 4.5 stars (pay per year, pricing varies)
FormAssembly - 4.5 stars (starts at $59 per user per month)
If you are in the market for a survey tool or this blog has sparked an interest in considering a survey tool, definitely check these out. They provide great demos and allow you to do a trial of the product. There are several great survey tools options you can select from and I only highlighted a few here. Surveys are definitely becoming one of my favorite tools to integrate with Salesforce and hope this overview has provided some insights on the benefits of leveraging this type of tool to meet some of your business needs.
If there are other great survey tools or use cases that you would like to share, please feel free to comment below, on the Salesforce Success Community, on our Facebook page, or directly at me on Twitter @sylviacabral44.
Your brain is a focusing tool, not a storage place. It is designed to only be able to consciously track four things at a time and too much “stuff” stored in a person’s short-term memory can blow a fuse. This leads to stress, anxiety and “unproductiveness”. These are some of the core concepts illustrated in David Allens book, “Getting Things Done (GTD)” and is the foundation for how we at Arkus conduct our business. It is so important to our success that anyone who has the pleasure to work at Arkus is introduced to them on day one of their tenure. It is also highly encouraged to apply these concepts and best practices in your personal life. I for one believe that regardless of how much you have on your plate both in your career and personal lives, applying these concepts holistically will lead to more happiness, clarity and balance.
Before I go into what works for me, I figured I would give you a little about what my world looks like. In addition to being a Co-Founder and President at Arkus, I run all sales at Arkus, own a home, have a wife and three children under the age of ten, two vehicles, on two committees at a social club and coach baseball and travel basketball. As you can imagine, there is a lot to manage and a lot to get done. If I didn’t have some way to manage it all, I would never have a second to smell the roses. But I do and here are some concepts, tools and best practices I use to manage my personal life.
Be Aware, Of Thy Self
Even though something might not be in your conscious mind, it still affects you. Part of self awareness is being aware of your habitual emotions. If anxiety is one of them, it might be a strong indicator you are overwhelmed. This was very true to me and when I realized this, it was the first step towards change. I noticed that I was trying to manage hundreds of brainless tasks with my mind and it was overwhelmed. Things like when to change the oil in my snow blower, trips to take with the family during the holidays and scheduling yearly doctor check-ups took up unneeded space in my brain and I needed to find a system that my mind would trust and let them go. So having more awareness is step one and maybe the most critical piece. You can't change something if you aren’t consciously aware of it. It is easy to start, all you need is a little bit of time and a pen and paper. Just write down everything you are committing to in all aspects of your life. Doing this alone will make you feel good, then it is just a little bit of courage and discipline to get it all done.
Trust Your Tools
I am of the opinion that what works for me, might not work for you. So these tools are suggestions and are based on my experience alone. If something else works for you, then great. As long as it works, your brain will trust it and that is the goal. Simplicity is key for me so I prefer to use a minimum number of tools, the number that works for me is three. Omnifocus, Evernote and Dropbox are my triple threat and there is no overlap in their usage. Omnifocus is where I manage all my life projects and capture anything I may want to commit to or need to remember. Omnifocus is limited in that it is only available on Apple devices (Mac, iOS) but the point is that you need somewhere to capture things and manage committed projects or tasks. It is easy to use and has a great iPhone app that I use ever-so-frequently to capture anything of importance. (Quick tip: Don’t over complicate your capture process, if you think something could have the slightest of importance, take note. You can delete it later.) I use Evernote for lists and notes I want to keep. I have lists from potential christmas and birthday gifts to sporting events I go to throughout the year so I can reflect at the end of year. I also keep notes for things like key concepts I want to remember from reading a book. Lastly, I use Dropbox for files. This is where I organize any paper documents like my taxes to recorded sessions with my life coach. These three tools give me a place to capture, manage, review and reflect.
The last key component I wanted to mention is balance. One of my biggest struggles was giving proper time and attention to all aspects to my life. I would find that in one area of my life I was excelling but in other areas failing. For example, my business is doing great but my health is out of whack. I was completely out of balance and for the most part unhappy. When I started applying the GTD weekly review along with a rebalancing exercise, I started to see clear direction and positive movement in all parts of life. This is my time each week to review what I captured all week and do something with it (sometimes its delete), reflect on what I accomplished for the week, tie up any loose ends and plan for the coming week. In my planning process I apply a rule of three, where I make sure at least three tasks are scheduled to be done in each area of my life. Sometimes I don’t complete all three due to focus needed in other areas but that is ok. The goal is to be aware and always be taking a step forward, even if it is a baby step.
These are are some key concepts and methods that work for me. As mentioned, whatever works for you is what you should do. The key is to make sure your brain trusts your system and that you are seeing results. If you aren’t, then be aware (there is that word again) of it and take some steps to change. If you have anything to add or want me to expand on, please feel free to comment below, on the Salesforce Success Community, on our Facebook page, or directly at me on Twitter @Salvatoriello
The Salesforce community is definitely thriving and growing. Of all the various parts of the Salesforce ecosystem, from Blogs to Certification Study Groups, from Ideas to Podcasts, Stack Exchange to success.salesforce.com, Twitter to User Groups, there’s a myriad of ways to participate. More than that, there’s so many ways to show leadership of many kinds. Here are a few examples of leadership in a few of these various channels, and hopefully you will find your path for community leadership as well.
A couple things that Arkus does for the community and does very well, is the chock-full-of-good-stuff CloudFocus Weekly podcast, led by Jason Atwood and Justin Edelstein, and the consistent and valuable content in the blog posts. However, I firmly hold as one of the most powerful for the community the participation in the IdeaExchange. As a core tenant of employee participation at Arkus, it helps to develop this product we all love, Salesforce.
We all come across things that don’t seem intuitive or actually throw barriers to the work we do on the platform. How powerful is it to actually take that “What if…” and turn it into an idea on the IdeaExchange, when someone might just return to their busy day? Then, the idea is something tangible that the community can vote on, showing support of the idea, and ultimately the Salesforce Product Managers can add to their roadmap for the feature in question.
Dreamin in the Midwest & Girly Geeks
Last summer, I attended Midwest Dreamin, a regional community-led Salesforce conference. In itself, it is a great example of leadership in our ecosystem. However, the highlight of the whole day-long event was certainly the informal Girly Geek’s lunch. Planned by Jocelyn Fennewald of Chicago Girly Geeks via a shout out to the Girly Geek’s Community group, we grabbed our lunches and headed outside. While the regional event itself bubbled and hummed, the Girly Geeks that attended the conference sat around a picnic table and shared stories, laughed and encouraged each other. Nearly everyone was a part of a Chapter group of Girly Geeks, something that originally started as a wine-night at Dreamforce 2010.
Over the course of the hour, you could see several examples of leadership & community. When discussing certifications, over half the table claimed nerves and the other half told their stories of successful certification. It was truly inspiring to see women in Salesforce supporting other women in Salesforce. This type of thing happens all the time at Salesforce user group meetings, whether Developer, Standard, Nonprofit or Girly. They are all over the world and one of the best things about this collaborative environment.
Also, Jocelyn is showing more impressive leadership by arranging a regional conference call, coming up in March, for Girly Geeks in the Midwest. A mini-conference of sorts itself, she is coordinating inspiring content for her local community for a group of women in local Girly Geeks Chapters. That kind of initiative and drive is some of what makes this community great! By the way, the channel of the community we now call Girly Geeks Chapters was only recently added to the official set of Salesforce User Groups.
Go Farther and Faster
I have no doubt that the Salesforce Community helps users. For example, an administrator finds a simple AppExchange app that can solve a problem elegantly, and when it is provided for free, it can make someone’s day. Or the power of a small push of encouragement from one old-timer user to a newbie, this ecosystem provides so many so much value and examples of leadership.
In addition to users and administrators getting their problems solved, it can help careers. I’ve seen folks go from basic users or junior administrators become high-powered influencers because of their community. Even better, mild-mannered admins becoming rock-star-status, “Can I take a picture with you” MVPs for their contributions in their community channel of choice.
Ultimately, leadership isn’t about an award or a plaque or a title. When caught between a rock and a hard place, a leader will come forward and do the right thing and galvanize others and focus on engaging the right skills and resources for the greater good. A Community is a place of sharing as well, whether you just say something you learned recently to sharing something someone else taught you. Either way, hopefully this blog post has inspired you to become an opinion leader in your own social circle, community, or region. But, even better, I hope you find a way to talk about Salesforce and somehow make an impact.
An African proverb says, “If you want to go fast, go alone. If you want to go far, go together.” I’d say, in the Salesforce Community, you’ll go both farther & faster.
Don’t hesitate to get in touch if you have additional points on the Salesforce Community questions on channels like the Girly Geeks Chapters, find me on Twitter @SeriouslyKyla, in the success community, or comment below!