Apps We Love Gridbuddy

As a team with our customers, we are continually updating lots of records at once. As much as we love Salesforce, sometimes it needs a little help with this and that’s where Gridbuddy comes into play.

Full Disclosure: This is a continuation of an occasional series of apps that we either use and/or have recommended to clients. Some of these amazing ISV’s allow us free access within our own system so that we can understand its functionality and how it can apply to our clients. Our relationship with Gridbuddy goes back many years and if it were a dog, it would be old enough to order its own beer. To that we say, “Cheers!”

What is this Again?

I could talk about the functionality of Gridbuddy, but I think this video does a great job:

Instead of talking directly about features, let me discuss with some internal examples.

Reporting Tool…

Yes, Salesforce has an excellent reporting and analytic tool. There is no reason why not to continue to use that function. Even if you have Salesforce Analytics (Wave) or Tableau, you will probably still work and use the built-in reporting tool. But that’s another blog post.

A key aspect of Gridbuddy is its inherent ability to show detail of not just the parent, but also the children. While it is not a pivot table or matrix, the reporting tool and its summary abilities are not there, but it does have the ability to show good shares of data in an excel file. And if you need the detail, that is helpful, as well.

Ever try to report on a long text area fields? Go and try it in Salesforce reporting. It truncates it! Gridbuddy? Nope. All those fields in all there wondrous glory, all formatted like you left it. Easy-peasy.

Another feature we like is that the export function also breaks apart the children into separate tabs and includes the salesforce ID’s. This makes mass editing and working with data loading tools easier for an admin.

Notice that for each object in salesforce - there is a separate tab. This makes data quality projects a bit easier
Notice that for each object in salesforce – there is a separate tab. This makes data quality projects a bit easier

Respect the Record Type

It may seem not a large deal but if you have record types you know that its important to protect the fields and field accessibility layered into our app. While salesforce does a decent job of protecting us when using the standard page layouts, its important that other editors also enforce those rules. Gridbuddy will enforce your record type’s field protections and so even if a user attempts to make a mass edit – the system will stop them from saving.

Thinking WAY Outside the Box

Unfortunately we cannot show a screen shot of this but there was a client that wanted to center their salesforce usage on only Gridbuddy screens. Fortunately it is possible with a some ingenuity to allow your users to do almost all of their day-to-day effort using Gridbuddy. For example:

  • Use Visualforce and the Tab function to create a tab for each grid in the sales process.
  • Define your grids so that there is a grid for each stage in your opportunity pipeline.
  • As Opportunity stages change, the records will naturally flow from one grid to another.
  • Consider using workflow actions to record completed call activity records based on information stored as fields on the opportunity.
  • Consider creating a call back date field on the opportunity so that each grid is sorted based on a call schedule.

There are so many options to consider for this tool. Again Gridbuddy does a great job of defining their core components but we wanted to highlight some features that are typically not shown in the standard tool.

Apps We Love – TaskRay

We have gone through several different project management systems both built outside and inside of Salesforce. We have settled on TaskRay as it provides the right amount of complexity along with enough ease so that we don’t have the need for a full-time person managing the software.

This is first of an occasional series in Salesforce apps that we either use internally and/or recommend to clients. Some of these amazing ISV’s allow us access to their apps for free. They do this so that we understand their functionality and help our clients determine if this product is their “best fit”.

I will let BracketLabs describe how the tool works “out of the box”:

We looked and/or used several tools in the past:

  • We tried milestones but it was far more complex and challenging to maintain
  • We then used key aspects of milestones with our own custom build and it was “ok”, but we needed a stronger UI.
  • Trello was next and it was certainly a staff favorite in terms of usability. We also liked the ability to invite our customers in to participate for free. But the time keeping was a challenge and paying for Harvest just didn’t seem necessary.
  • An here we are with TaskRay.

Unlike other systems, we have the ability to make dramatic customizations and adjustments to construct TaskRay to fit our needs. Since we’re a consulting shop our needs are specific. And also the tools sits on Salesforce so the ability to make adjustments is wide.  This post is dedicated to show how we have cut, pasted, folded, and primped this tool to fit our needs instead of showing you the basics. Ultimately that is the hallmark of great software: fantastic features out of the box, but the ability to create it to be your own.

Make it Pseudo-Agile
We’re not a devout supporter of the “Agile Process”. (The Agile devout please forgive us) But we do like the ability to track requirements for each part of the project and how that helps the customer. In our system we achieved that by simply utilizing three fields in each task:

  • What is the description of the task? What are we doing?
  • What are the assumptions before starting this task?
  • What acceptance criteria will be used to demonstrate completion of the task?

To do this we created a few fields on the TaskRay task object and added them to the field set. Now our taskray task screen looks like this

our pseudo-agile screen
our pseudo-agile screen

Note that we are still using the Description field to store details but now we also store our acceptance and assumptions on the task. This makes it easier down the road to check our work.

Making Mass Edits

With that we can use our Gridbuddy integration to make mass edits to our tasks. (hint great product) Now we built all kinds of craziness to combine the two. Fortunately those two companies got together and made the whole process easier.

Hours Tracking and Budgeting
Now for tracking of hours there are budgeted hours vs. actual hours. Both have a place in TaskRay. We just had to perform some creative engineering. But for most experienced salesforce admins, this is simple efforts.

For budgeting, we have a simple number field on each task. These values roll-up to the project automatically.

We store a simple budgetary number on each task
We store a simple budgetary number on each task


We also store values on the project record for billing rates and for different types of work. This allows us to do some calculations on the effort with time entry. Each task is categorized based on these selected work types.

On the project record we store total hours for different types of work and roll-ups of hours spent versus budget
On the project record we store total hours for different types of work and roll-ups of hours spent versus budget


Speaking of time entry, we again use a custom object to track that. Since all time entries are tied to task records, we know the work type and billing rate automatically. This has been good for our team to understand the value of time as those 15 minutes spent on an email cost the client $$. Each of these time entries update values on both the task and the project record, so that we as a management team know hours utilized. And since we use a simple Hyperlink formula field, from task:

Right from the task itself we can create our time entries
Right from the task itself we can create our time entries

When a user sees the time entry screen many of the values are filled in for them:

Fortunately most of the time entry values are entered for the user
Fortunately most of the time entry values are entered for the user

We also developed a visualforce page that is utilized on Salesforce1 for time entry. That can be a huge timesaver, as well.

When we first developed this work, much of the updating was accomplished through APEX coding. With the introduction of the Process Builder – now its done through configuration.


You Too Can Do This
We love companies that understand that customer service is paramount and BracketLabs is no exception. They have been a source of inspiration and a sounding board for ideas as we continue to work with the product.  I know that we are only using about a third of the product’s features and yet we are successful.

Even if you are a single person shop, this tool can help you realize and prioritize without consuming all of your day. In the end, you still have to deliver something. We suggest you take it out for a test drive and decide if it fits your needs.

Why I am NOT Speaking at Dreamforce

Wait.. What?!

Normally these posts are all about “Come and listen to me speak at xxxxx!” Or “I’m rad and will educate you. My session will rock.”

I’ve been fortunate to speak at quite a number of Dreamforce events. I think I’ve spoken at one session for, at least,  the past 6-7 years and also attended quite a few because of the Salesforce MVP program. Here are the daft realities:
• There will literally be over a 1,500 sessions this year.
• With very few exceptions, ALL will blow your mind.
• With the Agenda Builder now live, most will be sold out quickly. (Hint, hint, get there early)

These are wonderful facts and demonstrate the power of this event. Many first timers, and even us seasoned and jaded veterans, walk away from those days ready to make amazing changes in our organization and how we use the tool.

The MVP crowd is notorious for wanting to help and deliver these sessions. It’s not unusual for an MVP to have 3, 4, or even 6 sessions at a Dreamforce. For many of us, it’s how we are “fed” to provide better help for all. And I’m not complaining about that. Quite the opposite. Like I said above, sessions are typically brilliant.

The Challenge of Dreamforce

But for whatever purpose Dreamforce sessions typically hover on two tracks:
• I’m a new or intermediate admin trying to solve something
• I’m a developer who is working on the platform

I have desired more clearly defined skill sets and levels for session abstracts. As an admin with 15 years of experience, I don’t need a formula session or “this is what the Process Builder can do”. I’m also not going to immediately utilize how to use Angular JS in a Heroku environment.

Let me use an analogy to help with this. I don’t need to take a beginning drivers course every year and I certainly cannot immediately use a course titled “Extreme Off-roading and Water Fording”. While those courses would be a bucket load of fun, I can’t apply them on an everyday basis during my commute.

All of these are awesome sessions but they don’t feed people like me. At some point I hope Salesforce starts to realize the above and helps us out. Ultimately the benefit of Dreamforce is relevancy.

But that’s another soapbox moment.

So Why are You Not Speaking Again?

The real reason I’m not speaking this year is simply that our ecosystem is astounding. Have you ever stopped and considered the vastly different industries and situations Salesforce customers are participating in? These people have experience to share and in the end the purpose of these days is not to show yourself off, but instead to learn from others. Walking away with some new tricks and skills that would have be next to impossible to learn in any other place.

It’s time for some new voices. I challenge fellow MVP’s to find those new voices and promote them, instead of speaking themselves.  It’s time for us to be the leaders and not the creators of everything under the sun.

First Name (required)

Last Name (required)

Your Email (required)


Your Message

Administrator vs. Analyst – a salesforce discussion

Let me first start by saying I have been honored lately as a few people have asked me for career advice and I gave what I thought was honest and helpful advice. This is way different than my normal action which is to deliver truly horrible advice and see if someone yells “Balderdash!” 

What I learned through the recent exercise is that this “salesforce administrator” has hit the proverbial wall with their current situation and wants to move up in the world. Another recent situation is a manager asking their administrator, “What exactly is it that you do for us?” How does one answer this question without an equally dumbfounded look?

Do You Fit the Model

If you are a large organization with hundreds of users, then this particular post may not fit your model. Those systems typically, there I go throwing the word “typical” like candy, have job descriptions and controls in place to manage usage. Instead let’s talk about the organizations that meet the following criteria:

  • There are 1-5 people who manage the system on a regular basis.
  • has been built to handle more than leads but typically utilizes multiple business processes
  • probably has a few different apps attached that extend or enhance the base product
  • Users are sending in a number of enhancement requests on a regular basis (weekly or monthly depending on the size)
  • There may be an outside firm that handles more complex requirements or programming needs

As a member of the team managing the system it is your responsibility to:

  • Understand those business requirements and determine the correct course of action
  • Document those requests and help place them in order of execution
  • Define whether an internal employee or an external resource will complete the work
  • Either do the change or manage that the change is executed properly
  • Test that the work was done
  • Gather user feedback on completion

In the world we call these people “Admins” or “Administrators”. And if you have a simple system that may actually still hold true; but for larger organizations this term is inaccurate. Instead you are an “Analyst” and we as members of the salesforce community need to create a distinction between these groups.

In my mind a salesforce admin is performing the point-and-click effort and some of that effort can certainly be challenging, engaging, and worthwhile. And for smaller salesforce orgs this term holds up well.  But for larger or more complex systems these individuals are performing tasks far beyond simple point-and-click and that should require a different distinction. These Analysts have to understand business process and be a clearinghouse for that information. The organization relies on those people to not only listen to the business requirements but consider multiple options before making a recommendation and moving forward.

While the term “ Analyst” can hold up well to scrutiny, I would offer that there are Data, Business Process, Sales, and Support Analysts out there already. These are people who have begun to specialize in unique areas and can bring their skills to bear in unique ways. They have gone far beyond the idea of an Admin and are ready for the next step.

Being a Coder is Not Necessarily the End Goal

There are some people who will never be programmers and there is absolutely nothing wrong with that. Being a coder should not be everyone’s end goal in the world. I have a college degree in programming. The biggest fact I learned from that? I am not a good programmer but I am good analyst. Not all programmers are good analysts and not all analysts are good programmers. This is not a crime but an honest opinion of what people are capable of becoming. 

So for those that have hit a ceiling in their salesforce experience or feel trapped by the idea of being called an “Admin”, I say its time for the idea of Analyst to be seriously considered by this industry and give it the seriousness it deserves.


Want to talk more about Salesforce? Get in touch with us:

First Name (required)

Last Name (required)

Your Email (required)


Your Message

What Happens When the Leader Leaves?

I live near Tampa Florida and recently our baseball team, the Rays, lost our manager of many years Joe Maddon to the Cubs. Let’s all stop for a moment of silence.

Ok – back to work.

Baseball managers, in my opinion, are probably more pivotal to the vitality and success of a team then coaches in other sports. Why? The season is long and with spring training added, these group of players are looking, and hopefully listening, to this person far more then football, rugby, hockey, etc…. If you watch the players you can get a sense of what the manager is like.  Are they loose and comfortable? Are they regimented? The term “Skipper” is often used for Baseball managers for a darn good reason.

Joe is known as someone who can relate to younger players easily and create a comfortable atmosphere to play. And yet his teams know when to perform. Look at this guy – he is no spring chicken.

When Joe left the team, it made me wonder about when business leaders leave and move on. This may sound fairly obvious but the best people always move on eventually. Its rare to the level of discovering a purple elephant with a unicorn sticking out of their head for amazing people to stay with one company forever. An organization needs to be ready to handle this and also to understand what occurs when that happens.

If the leader was terrible then few of what is being discussed will apply. Hasta La Vista Baby! Please don’t let the door hit your rear end on the way out. None of what you are reading will apply.

First let me ask you this: is the leader of the group the one with the title or the one everyone looks at when there are questions? For those in power are you sure you’re the leader or the gatherer of people and information?

Second, there are functional leaders and technical leaders. In the technology space, its purple elephant rare to have them be the same person.

Back on point what happens when the leader leaves? This is highly non-scientific and I’m certain there are many articles that discuss this in multiple layers of psycho-blabber but let me address it in my own way.

It Stinks

Guess what, its going to stink for a while. That’s just the way it is. There may be some deliverables and requirements lost when they leave and as such its important to rally the rest of the gang around and get everyone recounting everything they know and what was on the pipeline.

Does your group need a new leader or can someone else from the group take that role over effectively? The old pizza ordering trick works well. Order pizza and see who takes charge of figuring out what to put on it. Still have chaos? Better get a new leader stat.

What About an Interim Leader?

This may seem strange but maybe the right solution is to bring in or promote someone to be a leader for an interim period of time. Everyone knows this person is here for a relatively short period of time while a permanent replacement is found. There are quite a few churches that do this. When the pastor leaves, the denomination sends in an interim pastor to lead the church while the search committee finds their next permanent replacement. It gives everyone a chance to breathe and not be forced down a timeline.

Be Prepared

Lets break out the Boy Scout rule here in this situation. Are there systems and data in place to understand what needs done first, second, and third and when? It may not be fancy but some documentation and planning would be helpful. I would hazard a guess that just as many organizations use documents and spreadsheets as project management applications. Does that mean its wrong? As long as the data is accurate why not use that until a reason is identified?

If its a technical resource and its the knowledge you need, work the network. No one person knows everything about one subject. There is always someone smarter or at least knows as much as that person on your team.

Know There are Going to be Mistakes

I wish I invented this line but I overheard it many years ago, “No babies are dying if you make a mistake”. Unless you are in pediatrics then this is probably true. Mistakes are human and are going to happen no matter what occurs. In fact more mistakes may occur while the team regroups and finds themselves. Get over it. It happens. Focus on fixing them and preventing future ones. Information is going to be key and having all the information out in the open is critical to preventing future mistakes. Be a child and ask, “Why?” more times then normal. Be certain that everyone, and I mean everyone, fully understands what is required while the group rebuilds trust.

It May be Awesome

No matter how amazing that person was in the group, the next person may be even better. Its not the end of the world. Be positive. Help. Be ready for amazing.

In the end leaders and followers leave. Sometimes its for good reasons and others times its for bad ones. Just about any group CAN survive that but its up to the individuals to be ready to put their effort in and not give up.


Want to talk more about Salesforce? Get in touch with us:

First Name (required)

Last Name (required)

Your Email (required)


Your Message