System Object CMS.OnlineMarketing MacroRuleMetadataContainerNamespace: CMS.OnlineMarketingAssembly: CMS.OnlineMarketing (in CMS.OnlineMarketing.dll) Version: 8.0.0.0 (8.1.5347.20411)
Registering
MacroRuleMetadata can have two profound effects on speed of recalculation.
First is recalculating contacts in the database - normally, when a contact group is being rebuilt, system takes all contacts from database and runs the macro
condition on each of those. By registering a translator to a rule, the computation can be inverted, that means at first, a database query will be constructed
to select only those contacts that fit given macro condition.
All of the macro rules must be able to translate themselves to database query to use this functionality.
Second is recalculating the rule only when specified type of activity performs, for example when a
PAGE_VISIT performs,
there is no need to recalculate
NEWSLETTER_OPEN macro rules. This can significantly reduce the count of contact groups
that need rebuild on each request.