13

To answer your question, yes, the CampaignMemberStatus records automatically created on insert of a Campaign are invisible to test methods annotated with @isTest(seeAllData=false). I don't believe that you are doing anything wrong, and I have attempted to report this as a defect to salesforce a few times through H&T Cases, but have never managed to get ...


7

You need to be a Marketing User in order to create campaigns. Go to profile and check Marketing User checkbox From the documentation: Marketing User When enabled, the user can create, edit, and delete campaigns, configure advanced campaign setup, import leads, and update campaign history via the member import wizards. Available in Professional, ...


7

Totally different features with absolutely no relation to each other. Salesforce Campaigns are for actual event management, with direct relation to Campaign Members and Opportunities. Marketing Cloud Campaigns are essentially for tagging and categorizing content, it is a classic feature that doesn't serve much purpose or use considering how limited it is.


6

Declarative Lookup Rollup Summaries is your friend any time you're seeking to roll up information that's any of Not aggregated under a Master-Detail relationship Requires filtering more complex than achievable with a native Roll-Up Summary field. Uses aggregation operations like Concatenate. Uses a standard object as the child. Involves objects that don't ...


5

Unfortunately you're limited to just leads and contacts/person accounts when dealing with Campaigns. You have a couple options, first is to get rid of the Examiner object and just use contacts (it sounds like Examiner would be a type of Contact). If there are issues preventing that sort of change you might also consider having a developer build a sync that ...


5

I do not see any problem to change it with Apex using CampaignMemberStatus standard object. You should have an campaign ID for that: CampaignMemberStatus ms = new CampaignMemberStatus(); ms.CampaignId = '701E0000000K21v'; ms.Label = 'New Status'; ms.SortOrder = 5; insert ms;


4

From the help A campaign is an outbound marketing project that you want to plan, manage, and track within Salesforce. It can be a direct mail program, seminar, print advertisement, email, or other type of marketing initiative. You can organize campaigns into hierarchies for easy analysis of related marketing tactics. Campaign members are the ...


4

One possible solution is create a new object Account_Campaign_Members. Which is a join object between Account & Campaign (It has 2 Lookup references to both Objects) And then update the CampaignView page adding a component to see all those Account Campaign Members along with the Leads&Contacts. It's a bit laborious since everything that you want to ...


4

You didn't query the individual rows back from the database. Simple mistake, really, but catching it is a bit harder. This behavior occurs because the variables cm11, etc are memory representations that are independent of the database; the DML operation will only ever return an Id value for you, so if you want any additional fields, you have to query them ...


4

Each Opportunity that you create, you can link to a Campaign (using the standard "Primary Campaign Source" lookup field on Opportunity). You can do this either manually, or automate this via Campaign Influence. The field "Total Value Opportunities" will show the sum of the "Amount" field values for all Opportunities so linked to the particular Campaign you'...


4

[SELECT Id, CampaignId, LeadId FROM CampaignMember WHERE LeadId IN :leadsInTrigger ] Using this query you get all campaign member for the leads that are in your trigger scope. From that you should be able to determine for which campaigns each lead is a member.


4

The reason for the error has to do with context: CampaignMember cm = new CampaignMember(CampaignId = '7011a000000BBny', ContactId = opp.Primary_Contact__r.Id, Status = 'Sent'); When the trigger executes the values of lookup fields are not available in Trigger.new. If you need Lookup fields (or children) you have to SOQL query them ...


4

Because Apex is case insensitive this: public FundTotals(Integer numberOfOpportunities, ...) { NumberOfOpportunities = numberOfOpportunities; ... } is assigning the method parameter to itself. Instead you need to assign the parameter value to the field like this: public FundTotals(Integer numberOfOpportunities, ...) { this....


4

Objects are normally related via Id values not references so one change to make is to replace this: opportunity.Campaign = campaign; with this: opportunity.CampaignId = campaign.Id; so the Opportunities are related to the Campaign. It is the same pattern as this: request.Campaign__c = campaign.Id; (The Force.com IDE has a dummy file called salesforce....


4

Yes, Campaign Members cannot exist without either the Campaign and the Lead or Contact (this is a many-to-many master-detail relationship). They will be cascade deleted, meaning that they will not appear in the Recycle Bin, and will be restored if the original record(s) is/are recovered from the Recycle Bin.


4

There's no data view or standard extract, but you can get the list of all Campaigns and their associated attributes - Code, Name, Colour etc from the REST API's /hub/v1/campaigns route. The response looks like this: HTTP/1.1 202 Accepted { "page": 1, "pageSize": 2, "count": 2, "links": { "self": { "href": "/v1/campaigns?$...


4

I'm afraid that SOQL alone isn't capable of doing what you want (heck, I don't know if plain 'old SQL could do that)...at least not exactly in the way you describe. SOQL does give us the GROUP BY keyword, but a query looking like this [SELECT COUNT(Id) FROM CampaignMember GROUP BY ContactId] But that'll give you a result like this ContactId| COUNT(Id) ...


4

Salesforce platform license does not allow to have access of Campaign object. Designed for users who need access to custom apps but not to standard CRM functionality. Users with this user license are entitled to use custom apps developed in your organization or installed from Salesforce AppExchange. In addition, they are entitled to use core ...


4

Please be aware, that Conversion Tracking and Web & Mobile Analytics Collect Code are two different applications with different use cases. The first one indeed solves your use case, since it keeps track on conversions coming from emails - You can use this data for reporting purposes. It however uses an entirely different tracking script than W&MA. ...


4

You can't query relationships. You can either query Id or fields from relationship. Try to use SELECT Campaign.ParentId FROM CampaignMember or SELECT Campaign.Parent.Id FROM CampaignMember or SELECT Campaign.Parent.<StandardOrCustomFieldName> FROM CampaignMember


4

The quotes around NOW()-60 and NOW()-30 are causing that code to be read as a text string. The DateAdd() AMPscript function can be used to calculate your dates, by using negative numeric values to subtract the days from the current date. %%[ VAR @Registrationdate, @membertag set @Registrationdate = [Registration Date] IF @Registrationdate < DateAdd(...


4

This is a textbook use case for Change Data Capture, which supports CampaignMember. Your remote application would subscribe to Change Data Capture events for the CampaignMember object and could then consume events where those records are deleted. You wouldn't need to run any queries, which would be a dicey approach anyway since anything that was hard ...


3

What is the Default field used for ? The default value is the one that is automatically chosen: the "default" value. While capturing leads online, for example, the status will be set to the default value. Many fields may have default values, such as text fields, date fields, and picklists. What is the "Responded" field used for ? It's used to indicate ...


3

I was prepared to tell you that this is definitely possible, but unfortunately it doesn't appear like that is possible off of CampaignMember. So, I just went through the process of adding the workflow rule. The first step was simple and I just picked Campaign Member: The second step was just as easy. I just set it up to work every time a Campaign Member is ...


3

A campaign is an outbound marketing project that you want to plan, manage, and track within Salesforce. It can be a direct mail program, seminar, print advertisement, email, or other type of marketing initiative. You can organize campaigns into hierarchies for easy analysis of related marketing tactics. (Campaign help doc A campaign member is a person (lead,...


3

Your unit test has several problems, besides just needing some asserts. First, you assigned a value to Campaign instead of CampaignId on CampaignMember, and Contact instead of ContactId: CampaignMember newMember = new CampaignMember(CampaignId = [SELECT Id FROM Campaign WHERE Provider_Sales_Campaign__c = True LIMIT 1], ContactId = testContact.Id); ...


3

Create a new Rollup Summary field on Campaign. Select Summarized Object > Campaign Members. Select Roll-Up Type > COUNT. Select Filter Criteria > Only records meeting certain criteria should be included in the calculation. Select Field > Status. Select Operator > not equal to. Use the lookup dialog to select the picklist options to ignore.


3

As per the documentation, the Campaign field on the Lead object is not accessible via the API. So you will have to do this via the Campaign Member object, which associates leads and campaigns together. Code from here may be helpful.


3

I wish it was. The only thing that I've found is the CampaignID in the Sent file in a Tracking Extract.


3

For less than 10,000 rows, the easiest way would be an execute anonymous script: delete [select Id from CampaignMember where Campaign.Name in ('Name 1','Name 2','Name 3'); To run this, click on Your Name / Developer Console, and in there, click on Test / Open Execute Anonymous Window..., enter the code, and click the Execute button. You could also query ...


Only top voted, non community-wiki answers of a minimum length are eligible