Skip to Content

I am introducing the enhancement possibilities of the Interaction Contact, one of the central object in the SAP S/4HANA Marketing Cloud and SAP Hybris Marketing. All the information provided in the blog are based on the 1608 release.

We have three possibilities to enhance the object Interaction Contact. One is the standard extensibility where you can add additional attributes which have an 1:1 relation to the Interaction Contact itself. Another one is the possibility to use the Marketing Attributes, where you are able to model a 1:n relation to the Interaction Contact. And the third one is to use the Custom Business Objects Root Node, where you are able to model a 1:n relation as well. Note the Custom Business Object (=CBO) is only available in the SAP S/4HANA Marketing Edition.

The table below should give you an overview:

Standard Extensibility Marketing Attributes

Custom Business Objects Root Node

(Cloud only)

Relation

Interaction Contact – attribute value

 1 – 1 1 – n 1 – n
Number of attributes Currently 250 Unlimited Unlimited
Data format of attribute Own data fields (with own domains) Only string is available(The Marketing Attributes itself are extensible, but has another meaning) Own data fields
Translation of attribute value Text join possible, with domains or add. text table (CBO) Not possible Translation possible with an additional CBO
Visibility of attributes from different sources Only attribute from source with highest priority stored in the Golden Record. All attributes are visible All attributes are visible
UI Integration
  • Contact Factsheet
  • Contact List
  • Company Factsheet
  • Company List
  • Segmentation
  • Contact Factsheet
  • Company Factsheet
  • Segmentation
  •  Segmentation
Addable to segmentation Yes via configuration Fiori App Yes already integrated as key – value pair (Marketing Attribute Category – Marketing Attribute) Yes via App “Manage your solution”
 Inbound Interfaces Included into standard inbound interface (OData and CSV) Yes already integrated as key – value pair (Marketing Attribute Category – Marketing Attribute) Yes via App “Manage your solution”
 Export Definition (configurable via „Segmentation Configuration”)  Yes Yes Yes

To use the standard extensibility of the Business Object Interaction Contact, you have to use the application “Custom Fields and Logic” in the Fiori Launchpad. We offer different business contexts for the Interaction Contact Marketing: Company, Marketing: Person and Marketing: Interaction Contact. The business context “Marketing: Company” will be valid for the corporate accounts, “Marketing: Person” for the individual persons and “Marketing: Interaction Contact” for both.

The objects are only visible in the solution if they are enabled in the Fiori App “Custom Fields and Logic” under the tab “UIs and Reports”, see screenshot:


User Interface Integration

 Contact Factsheet / Corporate Account Factsheet

  • Extension fields and marketing attributes are visible in contact and corporate account factsheet. What kind of extension fields are visible in which factsheet is depending on the business context.
  • Extension fields visible with description and value,
  • Marketing Attributes visible with description (Marketing Attribute Category) and listed values
  • CBO data are not integrated


Contact List / Corporate Account List

  • Extension fields automatically available in contact / corporate account list
  • Field visibility is personalized per user


Segmentation

Extension Fields

  • Extension fields addable via configuration Fiori app
  • Dedicated attributes in segmentation for the extension fields
  • Fields are added to the corresponding group consumer / contact / corporate account


Marketing Attribute

  • Marketing attribute category and marketing attribute available in delivered segmentation profiles as generic attributes
  • Segmentation is done in a two-step approach è first select on marketing attribute category and second on marketing attribute
  • No specific attribute available; for example attribute like Hobby


Custom Business Object (Cloud only)

  • CBO attributes addable via app “Manage your solution”, only available for the root node of the custom business object
  • Selected attributes visible under new attribute group, one per CBO
  • Dedicated attributes per column in CBO
  • Complex attribute group e.g. working experience (start date, end date, working experience, company name …..)

To report this post you need to login first.

24 Comments

You must be Logged on to comment or reply to a post.

  1. Joyca Vervinckt

    Thank you for this interesting blog!

    So for the standard extension fields we need to use the “custom fields and logic” app.
    But what about the marketing attributes? Where can those be made?

    Kind regards,
    Joyca

    (0) 
    1. Joerg Losat Post author

      Hi Joyca,

      I would say the marketing attributes itself are extensible by nature, because it is a key value pair. You have to define the key and can store the corresponding value.

      In addition to that, you have also the possibility to enhance the marketing attribute structure. In the custom fields and logic app, if you try to add a new field you have to select a business context. There you will find Marketing Attributes for Contacts.

      Hope this helps.

      Best regards,
      Joerg

      (0) 
    2. Joyca Vervinckt

      Hi Joerg,

      I tried to create a field with context “marketing attributes for persons”.

      However I don’t find it on my contact factsheet, and neither on the Import Data template for Contacts. Also not as an input field for landing pages.

      It’s not in CUAND_CE_IC_ROOT either, however I do find it in CUAND_CE_IC_MA.

      But how do we fill it up with data if it’s not appearing in the Import Data templates?

      (0) 
      1. Joerg Losat Post author

        Hi Joyca,

        the marketing attributes are not part of the Import Data template for Contacts. No file import available for the Marketing Attributes. To import Marketing Attributes you have to use our provided OData service CUAN_IMPORT_SRV. As I already mentioned in my first reply, the marketing attributes are extensible by nature. You just have to import new key value pairs (e.g. key = Favorite Color – value = Red assigned to contact 4711). Means contact 4711 will have the Favorite Color = Red. You are able to add more colors to this contact. In addition to that you are able to add a new Marketing attribute to the same contact (e.g. key = hobby – value = ice hockey assigned to contact 4711).

        If you enhance the Marketing Attributes structure with a new extension field, you enhance the structure for all Marketing Attributes which is in standard the key and value pair.

        Can you please explain your use case, what you try to do?

        Best regards,
        Joerg

         

        (0) 
        1. Joyca Vervinckt

          Oooh, now I get it. Thx for the clarification.

          I’m not a technical person so I usually go for the Import Data screen to test out things, and not via OData, hence my confusion.

           

          But these marketing attributes are also not available on Landing Pages (whereas Custom Fields are)…

          Use case: a sort of survey. I want to ask my customers e.g. “what are your hobbies?” and this can be more than 1 hobby (so Custom fields are not usable as they are 1-1).

          So if I want to ask my customers for their hobbies and want to store this via marketing attributes…

          I need to build a separate page on a website, and build a script that calls OData service CUAN_IMPORT_SRV to add the marketing attributes & values to the customer data? Sounds like lots of custom work, there’s no other more standard possibility for this perhaps?

          Kr,

          Joyca

           

          (0) 
  2. Bing Li

    Hi Joerg,

    Thanks for the blog. It is really helpful!

    I have a few questions. Do you have any guidance?

    1) After adding custom fields, only those in business context “Marketing: Interaction Contact” will be included in the import excel template. Those in “Marketing: Person” or “Marketing: Company” won’t.

    2) I thought marketing attribute could be extended with business context “Marketing Attributes for Persons”, but it seems not work.

    3) When adding custom fields in segmentation, after I click save button, a error “The system enforces the prefix ‘_SAP’ or ‘~SAP'”.

    Regards,

    Li Bing

    (0) 
    1. Joerg Losat Post author

      Hi Bin Li,

      the business context Marketing: Contact and Corporate Account enhanced both objects and should be reflected in the Marketing: Contacts and Marketing: Corporate Account excel template. If you enhance via the business context Marketing: Contact, it should be reflected in the Marketing. Contacts only and the same for the Marketing: Corporate Account.

      For your point 2 and 3, I would propose to raise a customer ticket, that the development support can help you with a solution.

      Best regards,
      Joerg

       

      (0) 
  3. Мария Терпстра

    Hello, Bing Li!

    I have the same problem as your point 3. Have you found a solution?

    3) When adding custom fields in segmentation, after I click save button, a error “The system enforces the prefix ‘_SAP’ or ‘~SAP’”.

    Regards,

    Mariya  Terpstra

    (0) 
  4. Maris Sauka

    Do you need to repeat same action in all systems – development, test and production? I added a new custom field, but there is no transport created with this action.

     

    Regards,

    Maris

    (0) 
    1. Vineet Kaul

      Hi Maris,

       

      If you are referring to the custom fields created via Extensibility & Adaptability app then yes you can transport them. you need to do the following.

      1. Create the custom fields in custom logic and field tile/app
      2. publish the field
      3. open configure software packages tile/app
      4. this is basically creating TR/Tasks, you need to have a task assigned to your user in the backend which you can define here for package
      5. once done goto Register extension for transport tile/app
      6. here you can choose which fields(created in step 1& 2) you want to add to transport/Tasks
      7. release the TR from the backend.

      You can see the video here.https://help.sap.com/doc/1a93686c176845f0832a2a73221dd90b/1610%20001/en-US/frameset.htm?d0d669bdb75a4762910524b30fc6fc32.html

      Path: SAP Fiori Application ->Extensibility ->Extensibility Scenario ->Creating Extension Items and Transporting them.

       

      BR

      Vineet

       

      (0) 
  5. Joyca Vervinckt

    Hello Joerg,

    I have some questions related to the translation options of the Standard Extensibility and CBO fields.Could you provide some more info on what the custom CBO for the translation values should look like? How should it be related to the custom field or custom CBO and how do you indicate which column contains the Language, and which columns should then be key? (I heard a CBO can only have one key column?).

    Thanks,

    Joyca

    (0) 
    1. Eileen Koehler

      Dear Joyca,

      for CBOs that are flagged as “Can Be Associated” you indeed have only one key field. For CBOs that are not used in custom fields, you can have multiple keys. Can you explain your use case in more detail? From what I understand of your question, you are rather looking for the custom field type Code List. In this type you can define codes with descriptions, e.g. colors, and you can directly translate them.

      Best regards,

      Eileen

      (0) 
      1. Joyca Vervinckt

        Hi Eileen,

        I’m looking for a combination of Code List and CBO actually.

        I have a requirement where on a Product, I need a custom field, which consists of code/values; but is multiselect.

        More specific an example (it’s a made up example so maybe not a real business case but it’s the first that comes into my mind).

        A Product can have multiple “finishings”. Product X has Finishings A ànd B. Finishing A in English is called “Coarse” and in Dutch it’s called “Grof”. Also Finishing B has it’s different translations.

        So a Custom Field can be used to list the values A, B, C, etc; with their respective translations. BUT a custom field cannot be multiselect. And a CBO can, but I’m struggling with how to maintain code/value and translations for CBO’s then.

         

        Kr,

        Joyca

        (0) 
        1. Eileen Koehler

          Hi Joyca,

          no there is no such multiselect field. What I can recommend to you is the following:

          1. Create a custom code list in the app “Custom Business Object”. Mainatin your Finishings inside this list.
          2. Create a custom business object (CBO) without allowing association. As key choose your external product ID and your Finishing Code. The type of your finishing code is related to your custom code list.
          3. Generate a service on top of your CBO.
          4. While uploading products to Hybris Marketing, also upload the finishing data per product to your CBO.
          5. Download the standard segmentation profile in the app “Add Custom View”. Enhance the SAP HANA with an left outer join to your CBO and a text join to your Custom Code List. Upload the enhanced view to the system and setup your segmentation. You find more information regarding this here.
          (0) 
          1. Joyca Vervinckt

            Thanks Eileen!

            So like this then? (x means key)

            Will the custom code list also be maintainable via interface so when new finishings or new languages are added they become part of the code list?

            (0) 
            1. Eileen Koehler

              Hi Joyca,

              the custom code list does not have an external interface. You will have to maintain new codes in the app itself. But you could also create an own CBO for the code list and generate an OData Service on top or use the CSV upload.

              Regarding your joining: There is no ID field in the table CUAND_PROD_ROOT. The table contains the DB_KEY, but I would not suggest to first read the DB_KEY before adding the Finishings. I would recommend the following (The system does not allow me to post a screenshot 🙁 ):

              Take the table CUAND_PROD_FACET instead of CUAND_PROD_ROOT. The table CUAND_PROD_ROOT has the fields PRODUCT_ORIGIN and PRODUCT_ID. Take the same fields as key for your CBO Z_CBO_Finishings and do a left out join on both fields.

              Best regards,

              Eileen

               

              (1) 
  6. Thirupaty Reddy Vemula

    Hi,

    We have the same problem as point 3. Has anybody found a solution?

    3) When adding custom fields in segmentation, after I click save button, a error “The system enforces the prefix ‘_SAP’ or ‘~SAP’”.

    Regards,

    Thirupaty Reddy V

    (0) 
  7. Joyca Vervinckt

    Hello,

    On the Standard Extensibility, it’s indicated that:

    Number of attributes Currently 250

     

    However after making 29 custom fields on the business context “Marketing:Product”, the following message is shown:

    Field cannot be created. Business context capacity is exhausted.

    Do you know why this is or how we can create more custom fields?

     

    Kr

    Joyca

    (0) 
  8. Isa Bevilacqua

    Hi Eileen,

    I have a requirement to manage in Hybris Marketing (Cloud version 1708) the Sales Areas data coming from CRM for a customer (Sales Org. + Distr. Channel + Division). This values will be dinamically assigned and deleted from a customer and can be multivalues for a customer.

    Example: a customer A having:

    • Sales Area B = GB00 + 00 + 01
    • Sales Area C = GB00 + 00 + 02

    I am planning to manage this requirement having a CBO that can be multivalues, updated via OData service and available for segmentation.

    My question is: is it possible to manage a combination of three values together (Sales Org. + Distr. Channel + Division) in the same CBO?

    Thanks a lot for your support

    Marialuisa

    (0) 

Leave a Reply