fiogf49gjkf0d I just spent about 1 hour on the phone with tech support about this subject. Here's the issue in 7.0.x
In order to associate a campaign to an opportunity, a contact for the opportunity must be also be a target for the campaign.
So... since our upgrade to 7.0.1 we have not been able to associate campaigns to opportunities. If you have to associate a campaign (you're a sales person) to an opportunity you must first get one of the contacts for the opportunity on the campaign target list. Well... first problem is, at least here... sales do not have access to campaigns to do this. So they would have to ask someone in marketing or admin to add an opportunity contact to the target list for the campaign.
So what use to take - oh... 15 seconds or less to do will take 15 minutes and more to do. How effective will you be in tracking a campaign's success? Not much I suppose if reps will not take the time to have the stars aligned correctly in order to associate a campaign to an opportunity
There are many times when targets for an event are not known (think about being a vendor at a conference) - or even when contacts are not entered for an opportunity or are different than what were the targets for a campaign! Anyway, that's my reasoning why this 'must be a target' requirement is ridiculous.
I did submit a feature request for this to be changed. I just think that all active campaigns should be shown in the Associate campaign list with the option to show inactive campaigns. So if anyone here feels the same and is so inclined, submitting a feature request would be appreciated
In the meantime... what I've done is this.. In the System:Associate Campaign form I changed the SELECT statement from strSQL = "Select Distinct A1.CAMPAIGNID, A1.STATUS, A1.CAMPAIGNCODE, A1.CAMPAIGNNAME, " & _ "A1.STARTDATE, A1.ENDDATE " & _ "From CONTACT c " & _ "Inner Join CAMPAIGNTARGET ct " & _ "On (c.CONTACTID = ct.ENTITYID) " & _ "Inner Join CAMPAIGN A1 " & _ "On (ct.CAMPAIGNID = A1.CAMPAIGNID) " & _ "Where c.ACCOUNTID = '" & txtAccountID.Text & "'"
And changed it by removing all the extra joins. Here is the new SELECTstrSQL = "Select Distinct A1.CAMPAIGNID, A1.STATUS, A1.CAMPAIGNCODE, A1.CAMPAIGNNAME, " & _ "A1.STARTDATE, A1.ENDDATE " & _ "From CAMPAIGN A1 " & _ "Where 1=1 "
This seems to work fine. All the active campaigns are showing now and can be selected.
I have the 'Where 1=1 ' there only because there are additional conditions added to the where clause that begin with 'and'
You'll notice that the original join included only fields from the one campaign (A1) table. So this makes me wonder if there is any other purpose beyond just restricting which campaigns are listed. Does anyone have any ideas on this?
Thanks, John G. |