Sunday, August 4, 2013

Freebie Product Plug: Bulk Workflow Extension Tool

There are a few tools Dynamics CRM consultants have in their toolbox. Things like Tanguy’s Iconator, Metadata Document Generator and the SiteMap Editor are great examples. This is another tool which I am sure is going to become a standard in my collection, Zero2Ten’s Bulk Workflow Extension Tool.

The Problem: Running Lots of Workflows At Once

Literally last week I came across this problem. I had tried to run the bulk reassign tool off of a user and my browser crashed on me midway through. The result was I had about 20,000 records reassigned and the rest (about 80,000) sitting on the original user. I wanted to reverse what had been done but that meant, somehow, assigning 20,000 records back to the original owner.

The best you can do with CRM, without coding a fix or doing unsupported SQL updates (which I never recommend for ownership reassignment) is highlighting 250 records at a time via a view and hitting the Assign button (or creating an on-demand workflow to do the same).

So this is exactly what I did. I spent a few hours highlighting 250 records at a time and clicking the Assign button (I actually got two running at the same time, so I managed to make it 500 at a time but it was still a tedious process).

The Solution: Zero2Ten’s Bulk Workflow Extension Tool

Then, a couple of days later, Gus Gonzalez (CRM MVP, Jujitsu master and all-round top bloke) announced Zero2Ten had released the ‘Bulk Workflow Extension Tool’. Here is the video of what it does:

In short, you run the program, connect to CRM, find a list of records you want to run a workflow on and then select the On Demand Workflow of choice. You then set it running and it takes care of the rest. If this is of interest, you can download it here. It is free and they do not even ask for names and email addresses (nice work Zero2Ten). Thank you Andy Popkin for making this happen. If we ever meet, I owe you a Mac and Jack’s or two (I am sure Gus will collect them on your behalf at Summit).

Conclusions

CRM workflows are a key element in the new version of CRM (previously Orion, now Dynamics CRM 2013) and will replace many functions typically performed by plugins (I will likely write a blog on these changes in the near future). Therefore a tool like this (with the extensions suggested by Andy such as a workflow scheduler) will become increasingly important. A free tool which helps manage workflows can only be a good thing and, in my case, will literally save me hours of work.

Sunday, July 21, 2013

Capturing Multiple Contact Roles In CRM

A design challenge I often come up against in CRM implementations is the need to capture a Contact against multiple Accounts. For example, a doctor may work at multiple hospitals.

Out of the box, Dynamics CRM (and most CRM systems for that matter) assume a Contact works for only one Account, which is often the case, but they do not make it easy to relax that assumption. Here are three ways, I have used in the past, to get around the problem.

Connections

The simplest way to handle the problem is with Connections. Connections allow you to associate practically any record in CRM to any other record.

image

The advantages of this approach are:

  • Easy to maintain
  • Easy to set up

However, there are significant disadvantages:

  • While you can add an email field to the form, the entity cannot be made into an emailable entity, limiting what you can do with it
  • You cannot add Connections to Marketing Lists, forcing you to use the one Contact record and its primary email address
  • You cannot associate Activities to the Connection, meaning they sit with the Contact
  • There is no rollup of Activities through Connections to the associated Account
  • The Connections do not sync to Outlook, only the Contact record

A Contact Role Entity

Another option is to create our own custom version of the Connection calling it, say, Contact Role. This will be a child entity to both the Contact and Account. The advantage here is we can make it an emailable entity and associate Activities to it.

image

The advantages of this approach are:

  • Still quite simple to manage
  • We can email with this entity and use templates
  • We can associate Activities to the Contact Role

Disadvantages are:

  • We still cannot add Contact Roles to a Marketing List
  • Activities do not roll up from the Contact Role to either the Contact or Account records
  • The roles do not sync to Outlook, like the first option

A Person Entity

Finally, we can create a parent entity to the Contact which represents the person, with the Contact now representing a job that Person does at an Account.

This approach makes me nervous because it fundamentally changes the meaning of the Contact record and, therefore, any functionality Microsoft has built in around Contacts may be compromised.

image

However, it does solve a number of problems for us.

Advantages of this approach are:

  • The Contacts can be added to a Marketing List (although the Person record cannot)
  • We can email using the Contact records as we normally do
  • We can add Activities to the Contact record, as usual
  • Contact Activities roll up to the Account, as usual
  • The Contacts do sync to Outlook

Disadvantages are:

  • It is quite complex and takes a bit of training and use to become comfortable with it
  • Some automation is required e.g. a workflow that automatically creates the Person record when a new Contact is created
  • Allows for duplicate Contacts for the same Person so Duplicate Definitions need to be managed with care
  • Information which ideally belongs on the Person record e.g. Gender, Birthday and Salutation sits on the Contact record and must be dealt with in some manner
  • Activities and Connections do not roll up to the Person record (although code can get around this)

Conclusions

For CRM systems used for stakeholder management, there is often the requirement to associate a Contact to multiple Accounts. CRM struggles to handle this out of the box, but there are ways we can extend CRM to get close to meeting the requirement. While none of these possible solutions are ideal, depending on the specific requirements of the client, one model will likely win out over the others and deliver a system which meets their needs.

***Post Script*** Thanks to Jerry Weinstock, fellow CRM MVP, for reminding me about the issues with Outlook sync in the approaches

Saturday, July 13, 2013

Importing Appointments with Multiple Attendees

I have written a few blogs on tips for importing in the past (2011, versions 3.0 and 4.0, changing the lookup reference and a different approach to data enrichment). One issue I have always struggled with was importing activities. The biggest problem are the attendees. The template CRM provides does have the required and optional attendee columns but they can only handle one reference in them. In other words, if your appointment has more than one person attending, you cannot import the appointment without culling the invite list.

This is something of a drawback and one that has hit me squarely between the eyes in a recent project where appointments had up to 40 attendees. I have found a solution and, as if often my way, no code is needed. In fact, it is similar to my data enrichment approach from before.

Other ways to tackle the problem

There were a few ways I considered for dealing with this. The first was bringing the appointments into Outlook and then tracking them into CRM. Unfortunately the import tool for Outlook also dismisses the attendees if the import uses a CSV. Apparently the import tool for iCal format does bring in the attendees but all the online CSV to iCal convertors I found also dropped the attendees when converting to the iCal format.

The commercial solution, as recommended by the ever relaxed CRM MVP Joel Lindstrom, was the Kingswaysoft add-on to SSIS. We were using the Kingswaysoft add-on for the integration on the project, so it was an option, but to code the mappings was going to take longer than figuring out a way to do it via the import wizard. This was the fallback option though and an excellent one at that. Using the Kingswaysoft product for the integration literally cut our import mapping time to one third over coding SSIS directly, all for a license price equivalent to a day’s consulting, crazy good value.

My Trick: The Setup

It turns out you can get multiple attendees onto an appointment using the standard import wizard, connections and a workflow.

First, we need to set up a couple of connection roles: attending and attendee:

image

I made these as matching roles so I do not have to be too concerned about which is the ‘to’ and which is the ‘from’, which always trips me up.

image

Now we need a workflow which will convert this connection into an attendee. Here it is:

image

However, the real trick is in the Update step:

image

Rather than using the ‘Set by’ operator, I am using the ‘Increment by’ operator. This means the workflow will add the Contact to the existing list of Required Attendees, rather than resetting it.

The Importing

First we import our Appointments (without Attendees), ensuring we have a field we can use to uniquely identify the Appointment. Then we import our Contacts again ensuring we have a field to uniquely identify them.

Finally, we import the Connections between them. The template can be downloaded from CRM, from the Settings-System-Data Management area. You then populate it (using the unique values to link to the Contact and Appointment and maybe my ‘changing the lookup reference’ article to work out how to set the mapping. The spreadsheet will look something like this:

image

The Result

The result is when the Import Wizard adds the Connection, the workflow kicks in and updates the linked appointment, adding the Contact to the Required Attendees.

image

Conclusions

The inability to import appointments (or other activities) with multiple attendees has always limited the value of the Import Wizard. With this trick, a small amount of effort means we can use the Import Wizard for Activities without resorting to code or third party import tools.

Sunday, July 7, 2013

The Difference Between Selling and Consulting

Sometimes, as a CRM consultant, I must sell and sometimes I must consult. For me, they are different skills although it is not impossible to wear both hats if you understand the difference.

Selling CRM vs Building CRM

In a pre-sales meeting or when you are the primary business development manager (BDM), the job is to sell a vision. You must appreciate where the customer is today, the problems they are having and to communicate how a CRM system can solve these problems. Most solution selling processes I have seen talk around this idea of identifying the pains the customer is having and taking them on the journey of realising how CRM can alleviate them.

For a consultant in a workshop, it is assumed the vision has already been painted and the client is excited about how CRM can solve their issues. The key for a consultant is not to continue convincing them they need CRM, or necessarily how awesome it is, but to convince them that the consultant will be there ensuring the project stays on track and the client can ask them anything and they will get a direct answer.

Obviously this needs to be tempered, but the idea that the client needs a consultant who will say yes to any request is, in my opinion, a recipe for disaster. Dynamics CRM has limitations and, when designing a solution for a client, these need to be addressed head-on and worked with. Dancing around the inherent limitations in the product is in no one’s best interest. Clients, in my experience, are not naive and understand any solution will not be perfect. The key is finding an acceptable balance between making a solution practical for the user and making it palatable in terms of time and cost to bring it to life.

By being honest about your product as a consultant, the client will quickly learn to trust you; an essential element for any project. There are times the client will not necessarily be happy with what you tell them but they will respect you for it and be willing to work with you to generate the best possible outcome.

It is About Trust

For both the BDM and the consultant, it is about trust. For the BDM, the job is to ensure the client trusts you to present the best options to solve their problem. If the client needs an ERP solution and you try to sell them a CRM solution, this will be a poor experience for everyone. The best example of this is in “A Miracle on 34th Street” where Kris Kringle directs the shopper to another store which better suits their needs. I am not suggesting BDMs sell in other vendors, but they should not be afraid to say “no” if there is a better path the client can go down to avoid disaster. The client, in the long run, will respect and trust you for it.

For the consultant in the workshop it is about convincing the client you will present the product, warts and all, and together you will do whatever it takes to make it a success. Some specific stakeholders may still need to be ’sold in’ but for the main project sponsor, their reputation rides on providing the best possible solution. They need to know where there may be problems and the earlier this is addressed, the better the wrinkles can be worked with.

Conclusions

Whether you are selling the vision of a solution or helping build a solution, building trust with the client is essential. Understanding the concerns and needs of the client in relation to the product lifecycle ensures you deliver the right message at the right time. Give the wrong message as a BDM and you will have a nervous client. Give the wrong message as a consultant and they will see you more as a salesman than an architect. When selling, provide a vision for success, when building, lay out what you have to work with and collaborate with the client to build the best possible solution.

In both roles, you will be seen as a trusted advisor and regardless of the reliability of the software, the client will be sure they can rely on you.

Saturday, June 22, 2013

Salesforce’s Secret Quarterly Results

Another quarter greets us with new and interesting results from Salesforce. The reason for the title? While, as required by regulation, Salesforce reported their quarterly results to the SEC, they failed to update their sheet of detailed financials on their web site. You can see their press release, of course, but this is full of those pesky non-GAAP measures, turning losses into profits, and I am keen to see the ‘Generally Accepted’ numbers.

It has been a month since their press release, so I thought I would help them out and update it here and do my usual review to see how things are faring for Captain Benioff and his crew.

My Conflict of Interest

First of all, let us clear the air on my personal circumstances. I work for a public Australian company called Oakton. We have a division called ‘Relationship Management’ which works with both Dynamics CRM (whose team I run in New South Wales) and Salesforce (which my colleague Juanita runs). We both report into the RM director and are jointly responsible for the success of the ‘RM’ division. Therefore, I have a strong interest in the continued success of both products.

Does this mean I am going to start talking up the awesome non-GAAP financial results of Salesforce and quietly forget the GAAP ones? Not at all. Just as I talk about the limitations of Dynamics CRM, I see no reason not to talk about the limitations of Salesforce. The biggest limitation I see with the product is with their financials and this is why it is a big focus in my Salesforce articles. I do occasionally talk about the product’s functionality but this is usually motivated when Salesforce put out some FUD about Dynamics CRM. Given I have little hands-on experience of the functionality of the product, when I do talk about the functionality of Salesforce I back it up with what I find online through YouTube videos and independent reports.

I have been characterised as a Salesforce hater in the past but this is simply not true. A few years ago I responded to this and stand by that position today. I have even offered advice to Salesforce on how to beat Microsoft in the past.

Will walking this tightrope affect my MVP status? I doubt it. Being an MVP does not mean being a voice for the public relations arm of Microsoft. It involves being passionate about how best to use the product and sharing this passion. Microsoft, I believe, are sufficiently mature in their approach to the market that my proximity to the ‘dark side’ will not be a problem. I am not the first Dynamics CRM MVP to work with both products and I doubt I will be the last.

Salesforce’s Quarterly Results

Here are the numbers.

  2013 Q1 2013 Q2 2013 Q3 2013 Q4 2014 Q1
Revenue 695,467 731,649 788,398 834,681 892,633
Subscription Revenue 655,220 687,493 740,600 785,495 842,221
Revenue Cost 151,551 162,418 186,248 183,362 208,994
Operating Cost 566,165 582,697 656,338 672,126 728,179
Salesforce Income -19,475 -9,829 -71,150 -20,844 -67,721
Revenue Growth # yoy 191,103 185,647 204,138 202,768 197,166
Revenue Growth % yoy 38% 34% 35% 32% 28%
Revenue Growth % mom 10% 5% 8% 6% 7%
Total Cost % yoy 42% 33% 42% 34% 31%
Staff 8,335 8,765 9,319 9,801 10,283
Staff Growth (yoy) 51% 38% 34% 26% 23%
Margin -2.80% -1.34% -9.02% -2.50% -7.59%

The financial numbers are in thousands. I have these numbers going back to the start of 2008 (2009 Q1) but that would be tricky to show as a table. The previous five quarters show some of the trends though.

NB: A miscalculation in the revenue growth at the time of original writing has now been adjusted in the table above. Related commentary below has been lined through.

We see a consistent slowing of revenue growth, down to 27% 28% from 38% a year ago. For most quarters, cost growth outpaces revenue growth by 4%. For Salesforce to show a profit, revenue growth MUST eventually be greater than cost growth but this has not happened in any quarter in the past year.

Staff growth has also significantly slowed over the past twelve months. The highest yearly growth rate ever for Salesforce was in 2013 Q1. This has now fallen from 51% to 23%, less than half the growth rate. This was Salesforce’s staff growth rate about three years ago.

Margins are still in the negative and will remain so until cost growth is brought under control, relative to revenue growth, as previously mentioned.

To see which direction margins are trending, we need to look beyond the five quarters.

image

While the recent quarters have been erratic, the overall direction is clear.

Earnings Call Buzzword Bingo

I have changed the format this time, just to make things a bit simpler for me. Instead of using the buzzwords from the previous year, I am simply using the past four quarters, like I did above with the financials.

2014 Q1 Keywords (total words: 2800) 2013 Q4 Keywords (total words: 3800) 2013 Q3 Keywords (total words: 3000) 2013 Q2 Keywords (total words: 3200) 2013 Q1 Keywords (total words: 3200)
revenue (32 times) revenue (45 times) revenue (38 times) revenue (39 times) revenue (38 times)
mobile (16 times) customers (23 times) cloud (20 times) social (21 times) social (32 times)
cloud (16 times) cloud (22 times) growth (17 times) cloud (20 times) cloud (23 times)
customers (16 times) customer (17 times) customers (13 times) growth (19 times) enterprise (21 times)
customer (16 times) growth (17 times) social (13 times) cash (17 times) customers (17 times)
growth (13 times) service (16 times) marketing (10 times) operating (17 times) sales (14 times)
service (12 times) enterprise (15 times) service (9 times) service (15 times) cash (13 times)
cash (10 times) cash (13 times) cash (9 times) enterprise (10 times) service (11 times)
social (10 times) marketing (9 times) sales (9 times) customers (9 times) customer (11 times)
sales (9 times) social (9 times) customer (8 times) dreamforce (9 times) growth (11 times)
operating (9 times) sales (8 times) enterprise (7 times) marketing (8 times) operating (10 times)
eps (7 times) margins (7 times) mobile (7 times) sales (8 times) eps (8 times)

Back to the usual 3,000 words between Marc and the CFO.

In terms of phrases of two or more words occurring ten times or more, we have:

  • deferred revenue (12 times)
  • non gaap (11 times)

That is, Salesforce continues to focus on the revenue not yet on the books and the analysis of those books which is their own unique methodology.

Here is a graph for some of the more consistent single word trends.

image

‘Revenue’ is consistently the focus, ‘social’ and ‘enterprise’ are ‘so yesterday’, ‘sales’ and ‘cloud’ are consistently mentioned. The other feature of note is mobility appears to be a new focus for Salesforce.

Insider Sales

Insiders sold off another 2% of their shares, according to Yahoo, in the past six months, making it roughly 10% of their shares for the past year.

Conclusions

I am not sure why Salesforce is yet to update their detailed financials. While the news, from a profitability perspective, is not great, it is certainly not disastrous enough to hide it. It is, essentially, more of the same from Benioff and his CFO. My assumption is they are too busy to update the detailed financials, rather than actively obfuscating.

With the purchase of ExactTarget I expect ‘marketing’ will become a prominent feature of the transcripts, possibly replacing ‘social’. This has not happened this quarter but perhaps in the next one. The new emergence of ‘mobile’ is interesting. Salesforce is quite strong in their mobility offering so, if this is a future focus, this will be a strong competitive edge for them.

Overall, other than the prominence of ‘mobile’ in the transcript, nothing too unusual. Profitability is still elusive and revenues and staff numbers continue to grow at a slowing pace. Again, my hope is their profitability begins to turn around. There is room for more than one CRM player in the market and it is good for there to be a player like Salesforce to keep Microsoft ‘frosty’.

Roll on the next quarter.

Wednesday, June 19, 2013

Surface: One Device to Rule Them All

About three months ago, I wrote my review of my, then new, Surface Pro 128. I was in Seattle at the end of February for the MVP Summit and had picked one up. It survived the journey to Australia and regional setting adjustments and, at that time, had proven to be an excellent replacement for my old single-core $500 laptop.

Here are my experiences three months on.

Has the Veneer Worn Off?

I am happy to say, I still think the Surface Pro is a great machine and it is serving my purposes well. In terms of the elements I reviewed previously, this is how it is standing up.

Disk Space

I am sorry to say the 64Gb MicroSD card from eBay was too good to be true and was constantly corrupting. I have vowed never to buy an SD card online again as I have had nothing but trouble from them. The good news is I do not miss being without it and have not run out of space.

image

The space is at about 80% capacity but, in the Surface’s defence, about 10G of this is unsorted files which were previously sitting on another SD card, before it also corrupted. Most of this will be either thrown away or moved onto SkyDrive.

ProgramData is about 9G larger than three months ago due to Avast Antivirus logs so I will look into chopping these at some point.

Overall though the OS is slowly munching up the hard drive so I will need to get a replacement SD card for the real data eventually. There is also a nice backup feature for Windows 8 where the system will back up to a secondary drive automatically so I will probably use the SD card for this as well.

Battery Life

As I write this, after having the Surface Pro off power for most of the morning, I am sitting at 38% remaining which it predicts will last me 1 hour and 12 minutes. This is comparable to the previous review (39%, 1 hour and 35 minutes) and scales to a little over three hours total battery life (my experience is to expect 3-4.5 hours out of a charge on Balanced mode). Given I am rarely more than a few steps from a power point in my daily routine this has not proven to be an issue. More battery time would be lovely and, apparently, the new Intel processors will add a few more hours to the battery life when the next generation of Surface devices emerge.

Accessories

I did buy the HDMI and VGA adaptors on eBay in the end, again for a few bucks, and they have proven themselves invaluable. I now have every kind of accessory add-on I can think of and none of it was proprietary. Going cheap has had its disappointments. There was the SD card, previously mentioned. Also the USB DVD Drive eject button stopped working almost straight away, although I can get to the tray through the old paperclip in the hole trick (the DVD drive still reads perfectly well). The other accessory which disappointed me was the ethernet to USB converter. While I have only tried it at work, I find the WiFi speed to be much faster than the LAN cable through the adaptor. This is a pity because the convertor also has three USB ports on it and makes it a very cheap docking station for my Surface Pro at work.

The lesson, as a good friend of mine says, is “buy cheap, buy twice”. Wise words indeed when it comes to accessories.

The other accessory I bought was a ‘man bag’ to hold the Surface Pro and all of its bits and pieces. The Targus bag was about $50 but has replaced my much larger and heavier laptop backpack and holds everything I need for work or home.

Bugs and Annoyances

The stylus bug no longer makes an appearance. Either an update has fixed it or my previous workaround did.

The ‘c’ key on the keyboard is still twitchy but I have a phone number for support and plan to raise it when I get an opportunity. I am typing this blog on the keyboard and Can Clearly Create a Couple of ‘c’s without hassle so it is a niggle rather than a show-stopper. The other option is getting the keyboard replaced when I am back in the states. The MVP Summit has shifted to November this year which means I will be in Seattle before the 12 month warranty expires. I also hear Microsoft support is excellent and they generally just swap out the item for a new one without too many questions. Microsoft Store, here I come.

Covers with built-in stands are coming out and this will probably be on my list of purchases in the future but is more of a nice-to-have than an essential purchase.

The Biggest Change: My Entire Lifestyle

Perhaps that is stretching it a little but it is true that my interaction with my laptop has completely changed. Prior to the Surface Pro, I had a home laptop, a work laptop and I used my phone to read emails in-between. The Surface Pro now does all of this. It was always going to be my home laptop but I now take it to work every day. My company has issued me a laptop but this, for the most part, gathers dust in the drawer. The only time I open it is to access things like the network printer, which I struggle to connect to off-domain (you can connect the Surface Pro to a domain, I just have not bothered). Thanks to SkyDrive, when I do open it up the files are there waiting for me to print on the work machine.

Similarly with OneNote, I am now paperless for meetings and the notes taken are available wherever I go thanks to the baked-in SkyDrive sync.

I even stick it in the car on the weekends now. The Targus bag is tiny and means if a quiet moment presents itself (rare with two children, granted) I can quickly pull out the Surface and knock out a blog. The unwieldy backpack of the previous machine made carrying it around everywhere a chore and the boot-up time meant a good fraction of the free time was spent waiting for the login prompt. None of these elements are now a problem.

Conclusions

With the Surface Pro being very new in Australia, I still get people coming up to me asking how it is working out. I still tell them I am very happy with it. For me, it is almost an ideal device and has simplified my online experience, going from three devices down to one without impediment.

Sunday, June 9, 2013

Associating Opportunities Directly to a Campaign

One of the selling points of Dynamics CRM (and most CRMs with a marketing module) is the ability to use mass-communication and then track the sales opportunities against that communication to figure out whether the cost and effort was worth it in the first place.

How Campaigns Work

For CRM, the mechanism to associate an Opportunity to a Campaign is the Campaign Response record. Essentially, the process goes like this:

  • Campaign is set up
  • Marketing List is associated to the Campaign
  • Campaign Activity (mass communication) is set up and distributed to the Marketing List

Generally speaking, whatever channel you use for your Campaign Activity (email, phone call, Word mail merge etc.) an activity gets associated to each recipient in the Marketing List. This activity record can be converted to, in the case of a Phone Call, an Opportunity record or a Campaign Response.

image

However, if you convert it to an Opportunity, CRM is not smart enough to pick up the Campaign and it must be entered manually.

image

The better option is to promote the Phone Call to a Campaign Response and then convert this to an Opportunity

image

This process works fine but, sometimes we may want to take a shortcut. For example, what do we do if we want to associate an Opportunity directly to a Campaign without going through the effort of setting up a Campaign Activity, distribute it, promote the activities to Campaign Responses and convert these to Opportunities? Maybe we are using Campaigns to hold an event and we simply want to record what Opportunities were generated from the event.

The Shortcut Problem

We know there is a direct link between the Opportunity and the Campaign via the Source Campaign lookup field on the Opportunity record but, no matter what I do through configuration, I cannot make the field editable.

***STOP PRESS*** George Doubinski, CRM MVP and personal editor notes that I obviously did not try too hard as unticking the ‘Read Only’ box on the Source Campaign field does release it. I am sure I tried this but perhaps I forgot to publish. Either way you have two ways of linking them directly now. Thank you George :)

image

Going the other way, usually, it is a case of adding Opportunity to the navigation pane of the Campaign but when we go to do this Opportunity is nowhere to be found.

The Workaround

Fortunately, with CRM 2011, we have one more trick up our sleeve; the form grid. If we add a grid to the Campaign form, the Opportunity is available.

image

By adding this to the Campaign form we can now add Opportunities directly to the Campaign without messing about with Campaign Activities or Campaign Reponses.

image

Conclusions

I am a big fan of the traceability of Campaign Responses for linking a Campaign to a sales opportunity but sometimes it is too much. If, for example, I am running an event and using Campaigns to hold the event information, the mass-communication functionality may be irrelevant. In this case linking the Opportunity directly to the event/Campaign record makes a lot more sense. Using a grid on the form gives us the ability to do precisely this.