HomeGuidesDeveloper HubRelease Notes
Get supportBook a chat
Guides
These docs are for v2.134. Click to read the latest docs for v2.208.

Behavior Types

Behavior Types let you decide which Salesforce objects you want to create incentives for. You can choose to drive a particular behavior by using the Single Action Engine- for example, award your members every time they log in to your loyalty portal - or you can encourage your members to carry out a set of activities in certain order, time frame or number by means of Multi-Action Engine - e.g. you award your members after logging into your portal 5 times.

Our Single Action Engine works via Promotions, while the Multi-Action Engine leverages Challenges.

📘

While the Behavior Types allows any object to be incentivized, it is the Action that will actually trigger the Single Action Engine and Multi-Action Engine. Therefore, you will always need at least one Action related to your Behavior Type.

Using Behavior Types

In case you'd like to test out incentive automation before doing anything, the library FieloPLT comes with a default Behavior Type, Event, that can be used for that. This record is related to the Event object and can even be configured for real-world applications in your program.

You can access it in Tools tab, going to Libraries and clicking on FieloPLT. The Behaviors tab already includes Event:

1362

FieloPLT Library

Creating a Behavior Type

Fielo lets you create behaviors types for any object whose associated activity you wish to drive. You can create it using your own custom object, a Fielo object or any Salesforce standard object.

In order to create a brand new behavior type in your program, go to the Tools tab and, within the Libraries section, access FieloLocal. Once there, make sure that you're on the Behaviors tab and click on New.

1366

Creating a behavior

In the New Behavior form that will appear, fill out the fields as it follows:

1919

Creating a behavior, part 2

  1. Behavior Name: Choose a name that best fits your Behavior Type. We chose to name it "Opportunity", in order to be a generic name that can have more than one action related to this Behavior Type later on.

  2. Select the object you want to incentivize: In this case, we want to incentivize our members to do something related to the Opportunity object, which could be, for example, to change its status to closed and won. That is to say, that we want to incentivize members to close opportunities.

  3. What date should determine the eligibility of actions performed?: The date field you select will be the one used to determine if a member action falls within the period that the incentive will be active (its validity period). If you want to process all behaviors based on the date when the records were created, choose Created Date (this option can be used for most cases). Since we want the Behavior to consider the date on which the opportunity record is closed, we chose Close Date.

  4. Generate Trigger: if set to true, the system will generate the trigger and test class automatically for you, but if set to false please refer to triggers. Note that there are some objects that don't support this option; in this case, leave it as false.

  5. How do you want to incentive this object?: Choose whether you want to incentivize the behavior each time (Promotions) that the member performs the action, over time (Challenges), or both. You can also select Communication to send member communication regarding that behavior via Fielo Messaging.

🚧

Generate trigger

If you have a complex business rule or logic, that is, if the object you wish to incentivize has a custom rule (e.g. custom validation rule), the system might not be able to automatically create the trigger. It must be done manually, as explained next.

🚧

Custom objects with the same name as a Fielo object

It is not possible to create a Behavior Type for a custom object that has the same name as a Fielo object (those which API name start with FieloPLT__). Salesforce understands that you are creating a Behavior Type for Fielo's object even if you select your own custom object.

After you save the Behavior Type - and if you used the Generate Trigger option - go ahead and click on Deploy.

1347

By doing that, the system will try to create the metadata needed for the Behavior Type to work:

  • A lookup field from the object selected to the Member object.
  • A lookup field from the Point object to the object selected.
  • The trigger, if you activated the Generate Trigger option.
  • If you selected to incentivize Promotions:
    • A lookup field from the Transaction object to the object selected.
  • If you selected to incentivize Challenges:
    • A lookup field from the Tracker object to the object selected.
  • If you selected to incentivize Communications:
    • A lookup field from the Email Alert object to the object selected.

Those fields are needed in order to link the incentivized object to each type of incentive and - in the lookup field from Point's case - so that you can use the Audit Point feature, which tells you what exact record (e.g. from Opportunity, Lead, Course) generated any Currency reward.

It may take a few moments for the deployment to finish; when it does, it will automatically become active.

When there is an error in the deployment process, the system will not activate the Behavior Type. You can check the Deployment Messages field, within the Behavior Type page, or the Deployment Status (from Salesforce Setup) for the errors.

1346
👍

All ready! Now you'll be able to use this new Behavior Type with any action (and incentive) you create.

Creating a Behavior for Exceptions

If you are creating a new behavior type for any of the objects listed below, or creating a behavior type on an object that has existing trigger logic on it, before deploying and activating the behavior type you'll need to create the trigger manually.

When automatic trigger creation is not possible

When you create a new behavior and enable Generate Trigger, we will attempt to create a standard trigger and test class for the object. However, some objects require complex testing to be able to deploy a trigger. If you wish to incentivize such objects, you need to create the trigger and test class manually.

Manual trigger code is also necessary for orgs with existing complex business logic, such as existing triggers on the object to be incentivized. (Salesforce recommends against having more than one trigger on an object because it cannot guarantee order of execution. In this case, it's best to include Fielo trigger logic in the existing trigger and update the test class accordingly.)

Objects that always require the manual inclusion of trigger logic are:

LabelAPI Name
ContactContact
EventFieloPLT__Event__c
Opportunity ProductOpportunityLineItem
Order ProductOrderItem
Price Book EntryPricebookEntry
Product ConsumedProductConsumed
Product Consumption ScheduleProductConsumptionSchedule
Product ItemProductItem
Return Order Line ItemReturnOrderLineItem
Service Territory LocationServiceTerritoryLocation
Service Territory MemberServiceTerritoryMember
Work Type Group MemberWorkTypeGroupMember

Objects that cannot be incentivized

Some objects are not able to be incentivized directly because:

  • It's not possible to place a trigger on them.
  • They may compromise the performance of Fielo's rules engine.

These include:

LabelAPI NameReason
Access ShareWorkAccessShareNot possible to create the lookup to member field
AccessWorkAccessNot possible to create the lookup to member field
Account Brand ShareAccountBrandShareNot possible to create the lookup to member field
Account BrandAccountBrandNot possible to create the lookup from transaction/tracker field
Account Contact RoleAccountContactRoleNot possible to create the lookup to member field
Account ShareAccountShareNot possible to create the lookup to member field
ActionFieloPLT__Action__cFielo Internal Object
AddressAddressNot a valid SObjectType
Admin PermissionsFieloPLT__AdminPermission__cFielo Internal Object
AgreementFieloPLT__Agreement__cFielo Internal Object
AnnouncementAnnouncementNot possible to create the lookup to member field
Apex Test Queue ItemApexTestQueueItemNot possible to create the lookup to member field
App Analytics Query RequestAppAnalyticsQueryRequestNot possible to create the lookup to member field
Asset FileContentAssetNot possible to create the lookup to member field
Asset RelationshipAssetRelationshipNot possible to place a trigger on it
AssetAssetNot possible to create the lookup to member field
Assigned ResourceAssignedResourceNot possible to place a trigger on it
Associated LocationAssociatedLocationNot possible to place a trigger on it
Async ProcessFieloPLT__AsyncProcess__cFielo Internal Object
AttachmentAttachmentNot possible to create the lookup to member field
Audit Admin PermissionsFieloPLT__AuditPermission__cFielo Internal Object
Authorization Form Consent ShareAuthorizationFormConsentShareNot possible to create the lookup to member field
Authorization Form Data Use ShareAuthorizationFormDataUseShareNot possible to create the lookup to member field
Authorization Form ShareAuthorizationFormShareNot possible to create the lookup to member field
Badge MemberFieloPLT__BadgeMember__cFielo Internal Object
Badge ReceivedWorkBadgeNot possible to create the lookup to member field
Badge ShareWorkBadgeDefinitionShareNot possible to create the lookup to member field
BadgeFieloPLT__Badge__cFielo Internal Object
BadgeWorkBadgeDefinitionNot possible to create the lookup to member field
Behavior TypeFieloPLT__RuleTrigger__cFielo Internal Object
Budget AdjustmentFieloPLT__BudgetAdjustment__cFielo Internal Object
BudgetFieloPLT__Budget__cFielo Internal Object
Calendar ShareCalendarViewShareNot possible to create the lookup to member field
CalendarCalendarViewNot possible to create the lookup to member field
Campaign Member StatusCampaignMemberStatusNot possible to create the lookup to member field
Campaign MemberCampaignMemberNot possible to create the lookup from transaction/tracker field
Cap AuditFieloPLT__AuditCap__cFielo Internal Object
Cap RulesFieloPLT__CapDomain__cFielo Internal Object
CapFieloPLT__Cap__cFielo Internal Object
Case CommentCaseCommentNot possible to create the lookup to member field
Case Contact RoleCaseContactRoleNot possible to create the lookup to member field
Case ShareCaseShareNot possible to create the lookup to member field
Case Team Member RoleCaseTeamRoleNot possible to create the lookup to member field
Case Team MemberCaseTeamMemberNot possible to create the lookup to member field
Category DataCategoryDataNot possible to create the lookup to member field
Category Node LocalizationCategoryNodeLocalizationNot possible to create the lookup to member field
Challenge MemberFieloPLT__ChallengeMember__cFielo Internal Object
ChallengeFieloPLT__Challenge__cFielo Internal Object
Channel Program Level ShareChannelProgramLevelShareNot possible to create the lookup to member field
Channel Program Member ShareChannelProgramMemberShareNot possible to create the lookup to member field
Channel Program MemberChannelProgramMemberNot possible to create the lookup to member field
Channel Program ShareChannelProgramShareNot possible to create the lookup to member field
Communication Subscription Channel Type ShareCommSubscriptionChannelTypeShareNot possible to create the lookup to member field
Communication Subscription Consent ShareCommSubscriptionConsentShareNot possible to create the lookup to member field
Communication Subscription ShareCommSubscriptionShareNot possible to create the lookup to member field
Conference NumberConferenceNumberNot possible to create the lookup to member field
ConsentFieloPLT__Consent__cFielo Internal Object
Consumption RateConsumptionRateNot possible to create the lookup to member field
Consumption Schedule ShareConsumptionScheduleShareNot possible to create the lookup to member field
Consumption ScheduleConsumptionScheduleNot possible to create the lookup to member field
Contact Point Consent ShareContactPointConsentShareNot possible to create the lookup to member field
Contact Point Email ShareContactPointEmailShareNot possible to create the lookup to member field
Contact Point Phone ShareContactPointPhoneShareNot possible to create the lookup to member field
Contact Point PhoneContactPointPhoneNot possible to create the lookup to member field
Contact Point Type Consent ShareContactPointTypeConsentShareNot possible to create the lookup to member field
Contact Request ShareContactRequestShareNot possible to create the lookup to member field
Contact RequestContactRequestNot possible to create the lookup from transaction/tracker field
Content DeliveryContentDistributionNot possible to create the lookup to member field
Content Document LinkContentDocumentLinkNot possible to create the lookup to member field
Content FolderContentFolderNot possible to create the lookup to member field
Content VersionContentVersionNot possible to create the lookup to member field
Contract Contact RoleContractContactRoleNot possible to create the lookup to member field
ContractContractNot possible to create the lookup to member field
Criterion GroupFieloPLT__CriterionGroup__cFielo Internal Object
CriterionFieloPLT__Criterion__cFielo Internal Object
CurrencyFieloPLT__PointType__cFielo Internal Object
Custom Link LocalizationWebLinkLocalizationNot possible to create the lookup to member field
D&B CompanyDandBCompanyNot possible to create the lookup to member field
Data Use Legal Basis ShareDataUseLegalBasisShareNot possible to create the lookup to member field
Data Use Purpose ShareDataUsePurposeShareNot possible to create the lookup to member field
DocumentDocumentNot possible to create the lookup to member field
Duplicate Record ItemDuplicateRecordItemNot possible to create the lookup to member field
Duplicate Record SetDuplicateRecordSetNot possible to create the lookup to member field
Earmark RuleFieloPLT__EarmarkDomain__cFielo Internal Object
EarmarkFieloPLT__Earmark__cFielo Internal Object
Email AlertFieloPLT__EmailAlert__cFielo Internal Object
Email CampaignFieloPLT__EmailCampaign__cFielo Internal Object
Email Message RelationEmailMessageRelationNot possible to create the lookup to member field
Email MessageEmailMessageNot possible to create the lookup from transaction/tracker field
Email TemplateEmailTemplateNot possible to create the lookup to member field
Email TemplateFieloPLT__EmailTemplate__cFielo Internal Object
Engagement Channel Type ShareEngagementChannelTypeShareNot possible to create the lookup to member field
Enhanced LetterheadEnhancedLetterheadNot possible to create the lookup to member field
Error LogFieloPLT__ErrorLog__cFielo Internal Object
Event RelationEventRelationNot possible to create the lookup to member field
EventEventNot possible to create the lookup to member field
Experience Discoverable LoginNetworkDiscoverableLoginNot possible to create the lookup to member field
Experience Self RegistrationNetworkSelfRegistrationNot possible to create the lookup to member field
ExpressionFilterCriteriaExpressionFilterCriteriaNot possible to create the lookup to member field
ExpressionFilterExpressionFilterNot possible to create the lookup to member field
External Event Mapping ShareExternalEventMappingShareNot possible to create the lookup to member field
External Event MappingExternalEventMappingNot possible to create the lookup to member field
External EventExternalEventNot possible to create the lookup to member field
Feed AttachmentFeedAttachmentNot possible to create the lookup to member field
Feed CommentFeedCommentNot possible to create the lookup to member field
Feed ItemFeedItemNot possible to create the lookup to member field
Field PermissionsFieldPermissionsNot possible to create the lookup to member field
Flow Interview ShareFlowInterviewShareNot possible to create the lookup to member field
Flow Record RelationFlowRecordRelationNot possible to create the lookup to member field
Goal ShareTodayGoalShareNot possible to create the lookup to member field
GoalTodayGoalNot possible to create the lookup to member field
Group Member RequestCollaborationGroupMemberRequestNot possible to create the lookup to member field
Group MemberCollaborationGroupMemberNot possible to create the lookup to member field
Group RecordCollaborationGroupRecordNot possible to create the lookup to member field
GroupCollaborationGroupNot possible to create the lookup to member field
GroupGroupNot possible to create the lookup to member field
HolidayHolidayNot possible to create the lookup to member field
Idea CommentIdeaCommentNot possible to create the lookup to member field
IdeaIdeaNot possible to create the lookup to member field
Image ShareImageShareNot possible to create the lookup to member field
ImageImageNot possible to create the lookup from transaction/tracker field
Individual ShareIndividualShareNot possible to create the lookup to member field
Job Profile ShareJobProfileShareNot possible to create the lookup to member field
KPI DomainFieloPLT__KPIDomain__cFielo Internal Object
KPIFieloPLT__KPI__cFielo Internal Object
LanguageFieloPLT__Language__cFielo Internal Object
Last Used AppUserAppInfoNot possible to create the lookup to member field
Level MemberFieloPLT__LevelMember__cFielo Internal Object
LevelFieloPLT__Level__cFielo Internal Object
Library DocumentContentWorkspaceDocNot possible to create the lookup to member field
Library MemberContentWorkspaceMemberNot possible to create the lookup to member field
Library PermissionContentWorkspacePermissionNot possible to create the lookup to member field
LibraryContentWorkspaceNot possible to create the lookup to member field
LibraryFieloPLT__Library__cFielo Internal Object
List Email Individual RecipientListEmailIndividualRecipientNot possible to create the lookup to member field
List Email Recipient SourceListEmailRecipientSourceNot possible to create the lookup to member field
List Email ShareListEmailShareNot possible to create the lookup to member field
List EmailListEmailNot possible to create the lookup to member field
Location ShareLocationShareNot possible to create the lookup to member field
LocationLocationNot a valid SObjectType
Macro InstructionMacroInstructionNot possible to create the lookup to member field
Macro ShareMacroShareNot possible to create the lookup to member field
Macro Usage ShareMacroUsageShareNot possible to create the lookup to member field
Maintenance AssetMaintenanceAssetNot possible to create the lookup to member field
Maintenance Plan ShareMaintenancePlanShareNot possible to create the lookup to member field
Maintenance PlanMaintenancePlanNot possible to create the lookup to member field
Matching InformationMatchingInformationNot possible to create the lookup to member field
Member AgreementFieloPLT__MemberAgreement__cFielo Internal Object
Member ConsentFieloPLT__MemberConsent__cFielo Internal Object
Member SegmentFieloPLT__MemberSegment__cFielo Internal Object
MemberFieloPLT__Member__cFielo Internal Object
Mission MemberFieloPLT__MissionMember__cFielo Internal Object
MissionFieloPLT__Mission__cFielo Internal Object
ModelFieloPLT__Model__cFielo Internal Object
Muting Permission SetMutingPermissionSetNot possible to create the lookup to member field
NoteNoteNot possible to create the lookup to member field
OAuth Custom ScopeOauthCustomScopeNot possible to create the lookup to member field
Object PermissionsObjectPermissionsNot possible to create the lookup to member field
Opportunity Contact RoleOpportunityContactRoleNot possible to create the lookup from transaction/tracker field
Opportunity ShareOpportunityShareNot possible to create the lookup to member field
Opportunity: CompetitorOpportunityCompetitorNot possible to create the lookup to member field
Org MetricOrgMetricNot possible to create the lookup to member field
Page SettingsFieloPLT__PageSettings__cFielo Internal Object
Partner Fund Allocation SharePartnerFundAllocationShareNot possible to create the lookup to member field
Partner Fund AllocationPartnerFundAllocationNot possible to create the lookup to member field
Partner Fund Claim SharePartnerFundClaimShareNot possible to create the lookup to member field
Partner Fund ClaimPartnerFundClaimNot possible to create the lookup to member field
Partner Fund Request SharePartnerFundRequestShareNot possible to create the lookup to member field
Partner Fund RequestPartnerFundRequestNot possible to create the lookup to member field
Partner Marketing Budget SharePartnerMarketingBudgetShareNot possible to create the lookup to member field
Party Consent SharePartyConsentShareNot possible to create the lookup to member field
PayoutFieloPLT__Payout__cFielo Internal Object
Permission Set GroupPermissionSetGroupNot possible to create the lookup to member field
Permission SetPermissionSetNot possible to create the lookup to member field
Point UsageFieloPLT__PointsUsage__cFielo Internal Object
PointFieloPLT__Point__cFielo Internal Object
Predefined Case Team MemberCaseTeamTemplateMemberNot possible to create the lookup to member field
Predefined Case TeamCaseTeamTemplateNot possible to create the lookup to member field
Product Item ShareProductItemShareNot possible to create the lookup to member field
Product Item TransactionProductItemTransactionNot possible to create the lookup to member field
Product Request ShareProductRequestShareNot possible to create the lookup to member field
Product Transfer ShareProductTransferShareNot possible to create the lookup to member field
Program AssignmentFieloPLT__ProgramAssignment__cFielo Internal Object
Program ConsentFieloPLT__ProgramConsent__cFielo Internal Object
Program CurrencyFieloPLT__ProgramPointType__cFielo Internal Object
ProgramFieloPLT__Program__cFielo Internal Object
Promoted Search TermSearchPromotionRuleNot possible to create the lookup to member field
PromotionFieloPLT__Promotion__cFielo Internal Object
Prompt Action SharePromptActionShareNot possible to create the lookup to member field
Prompt ActionPromptActionNot possible to create the lookup to member field
Provider OrderFieloPLT__ProviderOrder__cFielo Internal Object
Public SettingsFieloPLT__PublicSettings__cFielo Internal Object
Push TopicPushTopicNot possible to create the lookup to member field
Quick Text ShareQuickTextShareNot possible to create the lookup to member field
Quick Text Usage ShareQuickTextUsageShareNot possible to create the lookup to member field
REST SettingsFieloPLT__RESTSettings__cFielo Internal Object
RecommendationRecommendationNot possible to create the lookup to member field
RecordActionRecordActionNot possible to create the lookup to member field
Redemption ItemFieloPLT__RedemptionItem__cFielo Internal Object
RedemptionFieloPLT__Redemption__cFielo Internal Object
Resource AbsenceResourceAbsenceNot possible to create the lookup to member field
Resource CapacityServiceResourceCapacityNot possible to create the lookup to member field
Resource PreferenceResourcePreferenceNot possible to create the lookup to member field
Return Order ShareReturnOrderShareNot possible to create the lookup to member field
RevenueElementRevenueElementNot possible to create the lookup to member field
Reward ItemFieloPLT__RewardItem__cFielo Internal Object
RewardingFieloPLT__ChallengeReward__cFielo Internal Object
RewardFieloPLT__Reward__cFielo Internal Object
RoleUserRoleNot possible to create the lookup to member field
RuleFieloPLT__Rule__cFielo Internal Object
Scontrol LocalizationScontrolLocalizationNot possible to create the lookup to member field
SegmentFieloPLT__Segment__cFielo Internal Object
Service Appointment ShareServiceAppointmentShareNot possible to create the lookup to member field
Service AppointmentServiceAppointmentNot possible to create the lookup to member field
Service Crew MemberServiceCrewMemberNot possible to create the lookup to member field
Service Crew ShareServiceCrewShareNot possible to create the lookup to member field
Service CrewServiceCrewNot possible to create the lookup to member field
Service Resource ShareServiceResourceShareNot possible to create the lookup to member field
Service Resource SkillServiceResourceSkillNot possible to create the lookup from transaction/tracker field
Service ResourceServiceResourceNot possible to create the lookup to member field
Service Territory ShareServiceTerritoryShareNot possible to create the lookup to member field
SettingsFieloPLT__Settings__cFielo Internal Object
Share: ActionFieloPLT__Action__ShareFielo Internal Object
Share: Badge MemberFieloPLT__BadgeMember__ShareFielo Internal Object
Share: BadgeFieloPLT__Badge__ShareFielo Internal Object
Share: BehaviorFieloPLT__RuleTrigger__ShareFielo Internal Object
Share: Budget AdjustmentFieloPLT__BudgetAdjustment__ShareFielo Internal Object
Share: BudgetFieloPLT__Budget__ShareFielo Internal Object
Share: Cap AuditFieloPLT__AuditCap__ShareFielo Internal Object
Share: Cap RulesFieloPLT__CapDomain__ShareFielo Internal Object
Share: CapFieloPLT__Cap__ShareFielo Internal Object
Share: Challenge MemberFieloPLT__ChallengeMember__ShareFielo Internal Object
Share: ChallengeFieloPLT__Challenge__ShareFielo Internal Object
Share: Criterion GroupFieloPLT__CriterionGroup__ShareFielo Internal Object
Share: CriterionFieloPLT__Criterion__ShareFielo Internal Object
Share: CurrencyFieloPLT__PointType__ShareFielo Internal Object
Share: Earmark RuleFieloPLT__EarmarkDomain__ShareFielo Internal Object
Share: EarmarkFieloPLT__Earmark__ShareFielo Internal Object
Share: Email AlertFieloPLT__EmailAlert__ShareFielo Internal Object
Share: Email CampaignFieloPLT__EmailCampaign__ShareFielo Internal Object
Share: Email TemplateFieloPLT__EmailTemplate__ShareFielo Internal Object
Share: Error LogFieloPLT__ErrorLog__ShareFielo Internal Object
Share: Event ItemFieloPLT__EventItem__ShareFielo Internal Object
Share: EventFieloPLT__Event__ShareFielo Internal Object
Share: Invoice ItemFieloPLT__InvoiceItem__ShareFielo Internal Object
Share: InvoiceFieloPLT__Invoice__ShareFielo Internal Object
Share: KPI DomainFieloPLT__KPIDomain__ShareFielo Internal Object
Share: KPIFieloPLT__KPI__ShareFielo Internal Object
Share: LanguageFieloPLT__Language__ShareFielo Internal Object
Share: Level MemberFieloPLT__LevelMember__ShareFielo Internal Object
Share: LevelFieloPLT__Level__ShareFielo Internal Object
Share: LibraryFieloPLT__Library__ShareFielo Internal Object
Share: Loyalty ProductFieloPLT__LoyaltyProduct__ShareFielo Internal Object
Share: Member AgreementFieloPLT__MemberAgreement__ShareFielo Internal Object
Share: Member ConsentFieloPLT__MemberConsent__ShareFielo Internal Object
Share: Member SegmentFieloPLT__MemberSegment__ShareFielo Internal Object
Share: Mission MemberFieloPLT__MissionMember__ShareFielo Internal Object
Share: MissionFieloPLT__Mission__ShareFielo Internal Object
Share: ModelFieloPLT__Model__ShareFielo Internal Object
Share: Page SettingsFieloPLT__PageSettings__ShareFielo Internal Object
Share: PayoutFieloPLT__Payout__ShareFielo Internal Object
Share: Point UsageFieloPLT__PointsUsage__ShareFielo Internal Object
Share: PointFieloPLT__Point__ShareFielo Internal Object
Share: Program CurrencyFieloPLT__ProgramPointType__ShareFielo Internal Object
Share: ProgramFieloPLT__Program__ShareFielo Internal Object
Share: Provider OrderFieloPLT__ProviderOrder__ShareFielo Internal Object
Share: RewardFieloPLT__Reward__ShareFielo Internal Object
Share: RuleFieloPLT__Rule__ShareFielo Internal Object
Share: SegmentFieloPLT__Segment__ShareFielo Internal Object
Share: Team MemberFieloPLT__TeamMember__ShareFielo Internal Object
Share: TrackerFieloPLT__Tracker__ShareFielo Internal Object
Share: TransactionFieloPLT__Transaction__ShareFielo Internal Object
Share: TranslationFieloPLT__Translation__ShareFielo Internal Object
Shift ShareShiftShareNot possible to create the lookup to member field
ShiftShiftNot possible to create the lookup to member field
Shipment ShareShipmentShareNot possible to create the lookup to member field
Skill RequirementSkillRequirementNot possible to create the lookup to member field
Streaming Channel ShareStreamingChannelShareNot possible to create the lookup to member field
Streaming ChannelStreamingChannelNot possible to create the lookup to member field
TaskTaskNot possible to create the lookup to member field
Team MemberFieloPLT__TeamMember__cFielo Internal Object
Thanks ShareWorkThanksShareNot possible to create the lookup to member field
ThanksWorkThanksNot possible to create the lookup to member field
Time Sheet EntryTimeSheetEntryNot possible to create the lookup to member field
Time Sheet ShareTimeSheetShareNot possible to create the lookup to member field
Time SheetTimeSheetNot possible to create the lookup to member field
Time SlotTimeSlotNot possible to create the lookup to member field
TopicTopicNot possible to create the lookup to member field
TrackerFieloPLT__Tracker__cFielo Internal Object
TransactionFieloPLT__Transaction__cFielo Internal Object
TranslationChatterExtensionLocalizationNot possible to create the lookup to member field
TranslationFieloPLT__Translation__cFielo Internal Object
TranslationNavigationMenuItemLocalizationNot possible to create the lookup to member field
TranslationPromptLocalizationNot possible to create the lookup to member field
TranslationPromptVersionLocalizationNot possible to create the lookup to member field
TranslationRecordTypeLocalizationNot possible to create the lookup to member field
TranslationReputationLevelLocalizationNot possible to create the lookup to member field
TranslationStampLocalizationNot possible to create the lookup to member field
TranslationTopicLocalizationNot possible to create the lookup to member field
TranslationUserCustomBadgeLocalizationNot possible to create the lookup to member field
TriggersFieloPLT__Triggers__cFielo Internal Object
User Email Preferred Person ShareUserEmailPreferredPersonShareNot possible to create the lookup to member field
User Email Preferred PersonUserEmailPreferredPersonNot possible to create the lookup to member field
User Provisioning Account StagingUserProvAccountStagingNot possible to create the lookup to member field
User Provisioning AccountUserProvAccountNot possible to create the lookup to member field
User Provisioning LogUserProvisioningLogNot possible to create the lookup to member field
User Provisioning Mock TargetUserProvMockTargetNot possible to create the lookup to member field
User Provisioning Request ShareUserProvisioningRequestShareNot possible to create the lookup to member field
User ShareUserShareNot possible to create the lookup to member field
UserAppMenuCustomization ShareUserAppMenuCustomizationShareNot possible to create the lookup to member field
UserAppMenuCustomizationUserAppMenuCustomizationNot possible to create the lookup to member field
UserUserNot possible to create the lookup to member field
VoteVoteNot possible to create the lookup to member field
WaveAutoInstallRequestWaveAutoInstallRequestNot possible to create the lookup to member field
Work Order ShareWorkOrderShareNot possible to create the lookup to member field
Work Type Group ShareWorkTypeGroupShareNot possible to create the lookup to member field
Work Type ShareWorkTypeShareNot possible to create the lookup to member field
Work TypeWorkTypeNot possible to create the lookup to member field

Triggers

When you need to create a behavior type manually, it is essential to create a trigger in the object you want to incentivize, so that the Single or Multi Action Engine can process your incentivized object every time a Member performs the Action.

1575

Trigger

From Setup, go to your object and scroll down to Triggers. Click New and copy the following code snippet, replacing ObjectPluralName with the name of your Action object and ObjectAPIName with its API name:

//ObjectPluralName is the Action Object name. ObjectAPIName is the API Name of the object to process.
trigger ObjectPluralName on ObjectAPIName (after delete, after insert, after update, before delete, before insert, before update){
  
  if(Trigger.isAfter){
  	if(Trigger.isInsert){
  		FieloPLT.SObjectService.processRecords(Trigger.new, null);  
  	}else if(Trigger.isUpdate){
  		FieloPLT.SObjectService.processRecords(Trigger.new, Trigger.oldMap);
  	}
  }
  
}

Object-to-Member Relationship

Other than creating the trigger in the incentivized object, there must also be a relationship between it and your Members.

Fortunately, you don't have to do that manually, because the system does that for you when you create a new Behavior Type from the FieloLocal library and deploy it. All you have to do is to proceed as explained in Creating a Behavior Type, and a lookup relationship field will be automatically created for the incentivized object (e.g. our own custom object, Loyalty Card), having Member as a related object.

1593

Lookup relationship example

📘

It will also be created a relationship between the object and the program's currencies, which means that you'll be able to easily see which action was responsible for it through the Point Records.

Note that Point Record is the object’s name, but it actually refers to your Currency Records.

Editting a Behavior Type

You can edit a behavior type as long as it is still in a draft status or inactive, but it isn't possible to change the related Object.

All you have to do is access the Behaviors through the Library it was created, and click on Edit.

1900

Edit a behavior

Note that the behavior type can be in one of four status:

  • Draft: Cannot be used yet. All information can be edited, except the Object.
  • In Deployment: In this stage, the system is trying to create the metadata. If it fails, an error message will appear in the field ErrorDescription. It is a Read Only status.
  • Active: This status will be accomplished when the system was able to create everything and the behavior type is ready to be used. It is a Read Only status.
  • Inactive: When the behavior type is disabled. All information can be edited, except the Object.
🚧

The behavior type can be deactivated only if its related actions are not being used in a Promotion, Challenge or for Messaging.


What's next

Did this page help you?