56 Comments

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

  1. J. Meulendijks

    Thanks for the useful post Luke!

    Needed some additional features checked in provisioning and authorizations to turn MDF on in my demo-system though;)

    (0) 
    1. Luke Marson Post author

      Thanks J.

      The MDF is not enabled by default, although it is usually enabled in demo environments. At a customer you need to switch on “Enable Generic Objects” in Provisioning. In addition, based on which feature you are implementing (e.g. Position Mgmt, Time Off etc), you also need to check additional options accordingly. With respect to authorizations, RBP selections are required only if you configure your Generic Object definition to be secured.

      Best regards,

      Luke

      (0) 
  2. Jarret Pazahanick

    Very Good blog Luke and not hard to see the power and flexibility that MDF brings to the table especially when it is incorporated into the entire SuccessFactors suite of products.

    (0) 
    1. Luke Marson Post author

      Thanks Jarret and I agree. Once the MDF is rolled out fully it will provide a lot of extensibility for customers and will make SuccessFactors a real option where previously it might not have been.

      (0) 
  3. Jyoti Sharma

    Excellent blog Luke. I like how you have struck the right balance between the foundation of MDF and given us a quick peek into some of the highlights of MDF objects. I do like your succinct comparison of MDF with SAP HCM. I can vouch that both customers and consultants are loving what they have seen of MDF so far and have appetite for more.

    Cheers,

    Jyoti

    (0) 
    1. Luke Marson Post author

      Thanks Jyoti – that means a lot from an expert like yourself. The feedback I have received from customers is very positive, although for some they still need this rolled out further across the BizX suite to reap the full benefits of SuccessFactors.

      Best regards,

      Luke

      (0) 
  4. Nico Thirion

    Hi Luke,

    Would it be a fair comparison to say that the hooks could be used in a similar way to an SAP event? Linking and creating a sequence.

    (0) 
    1. Luke Marson Post author

      Hi Nico,

      Yes. A hook is like a user exit or adding some code in a BAdI or an Enhancement Point of a function module. They are in set places where it makes logical sense for an event to occur.

      Best regards,

      Luke

      (0) 
  5. Kir Chern Loh

    Hi Luke,

    Many thanks for the sharing. I read about the various enhancement options like MDF (as you’ve written), via XML and foundation objects. In typical SFSF implementation that has gone ‘live’, can customers (assuming they have the know-how) do these enhancements (big or small) themselves or do they have to depend on SFSF or its partners to do at a cost ? For on-premise, it is clear.

    Is this the same model (i.e. customer can do vs. all controlled by vendor) with other SaaS like Workday etc. ?

    Thanks and regards,

    Kir Chern

    (0) 
    1. Luke Marson Post author

      Hi Kir Chern,

      The MDF allows customers to manage extending the data model themselves so that they do not need to rely on professional services, much like they can do with SAP (although it is much more complicated in SAP). Previously to the MDF customers relied on professional services of SuccessFactors Professional Services or partners to implement changes in XML – if changes could be made at all. Now this reliance has gone with the MDF.

      It is important to note that the process does need managing so as to not create duplicate or unnecessary objects. Master Data (as we know it in SAP HCM) needs to be carefully managed.

      Best regards,

      Luke

      (0) 
  6. Chiara Bersano

    Hi Luke,

    this time it feels a bit as if I am getting late to the party!

    Great blog. One question, and one comment…

    Would you be able to provide an example of the hooks function? the screen above show that they are used for the position object, but I am fuzzy at what they actually do, as relationships are mentioned separately. 🙂 that is a part that I haven’t yet seen in action.

    Comment. Yes, MDF provides a tremendous flexibility to customers – with the possibility of easy development to be done without a big expertise requirement. HOWEVER in my experience a large part of the work in extensions project is the definition of the requirements and how they will interact with the standard features and avoiding un-necessary loops. In the end, it is not only the cost of developments, but we are also talking about the costs of running a system long term (including ensuring data integrity). The technical layer now becomes easier – but without the utmost restraint and great business foresight, we’ll witness very complex results.

    (0) 
    1. Luke Marson Post author

      Hi Chiara,

      It’s always better late than never!

      Hooks are a point where a Rule can be triggered for the object or field (it can be for either). For an object, you have the 4 distinct points shown in the screenshot above where one or more Rule can be triggered at that stage. For example, you can add a Rule at the validationRules hook to check that the Job Code you entered is valid and then in the saveRules hook you could call a Rule to update the Pay Grade if the Job Code is of a certain type. Associations are relationships between objects that relate to how they interact with each other or when there are parent-child dependencies.

      You’ve absolutely hit the nail on the head with your comment. I alluded to this in the section “What the MDF means for customers and consultants” because the governance and compliance around MDF should be no less than in SAP HCM – in fact, maybe it should be more given the freedom and ease with which Metadata Objects can be created and modified. With great power comes great responsibility, to quote my favorite comic book (Spiderman) 😉

      Best regards,

      Luke

      (0) 
      1. Chiara Bersano

        Agree with you – it possibly should be more, because with the MDF being of such an easy access, there is a layer of counseling that is not there. Now, it is true that many consultants didn’t have (and many still don’t) have the business experience to play a role of trusted advisor…

        (0) 
        1. Luke Marson Post author

          Now, it is true that many consultants didn’t have (and many still don’t) have the business experience to play a role of trusted advisor…

          Couldn’t agree more! 🙂

          (0) 
  7. Shai Ben Natan

    Hi Luke,

    Thanks for sharing this with us.

    If I need to custom new fields in SF to a form, would that be the location to do that from the admin tools?

    I have a PM form which I’d like to add new fields to it, would that be done by using the SF admin tools for new fields? in other words, can I create and edit the new fields in the PF admin tools or I need to SAP HCM system for that?

    Since we do not have the SAP HCM system and just the SF system, would that be sufficient to create new fields at SF system?

    Thanks,

    Shai

    (0) 
    1. Luke Marson Post author

      Hi Shai,

      The Metadata Framework is not yet available for Performance & Goals, so it cannot be used to add or modify objects in Performance & Goals.

      To add new fields it really depends on your exact scope. You could add a new section to your template, but I don’t know if that suits your needs or not. You can also look at SuccessFactory.

      Best regards,

      Luke

      (0) 
  8. Murugan Natarajan

    Hi Luke,

    Thanks for this Excellent Blog.

    Quick question: As you mentioned  -MDF Objects can have rules triggered at 9 specific points within its transaction flow ( Hooks ). For an object, we have 4 distinct points ( Save, Validate, Initiate and Delete ). Can you please share what are all the other 5 points? Are they field level?

    Best Regards,

    Murugan

    (0) 
    1. Luke Marson Post author

      Hi Murugan,

      The hooks are technical, since they vary by type (e.g. object type, object-level, and field-level). Basically, from an end-user perspective you need to look at:

      • Initialization
      • Change
      • Save

      Some objects also have other hooks, such as on-the-fly calculations. See the rules engine handbook for more details.

      Best regards,

      Luke

      (0) 
  9. Harris Moideen

    Luke,

    Great article! I should say i went to your article soon after reading the implementation guide for MDF as there may be some requirements to create MDF’s at my project.Your article is a great summary of what is there in the MDF implementation guide. One question , how do we replicate what i would normally do through an  HCM P&F in SAP HCM  within SF.Say for example i want an online form to be filled in by the employee which would need to update certain fields in SF.

    Regards

    Harris

    (0) 
    1. Luke Marson Post author

      Thanks Harris! My blog actually precedes the MDF implementation handbook (in its current state) so that’s good feedback to get.

      You could use the MDF to create a form object and then use rules to propagate information on the target portlet (e.g. JobInfo). You can also attach workflow to the object so that the data won’t be updated until it is approved. I would also consider looking at using an EC extension on HCP rather than MDF if you think it could be a complex process.

      (0) 
  10. Martin Hastik

    Hi Luke,

    thanks a lot for that great article ( as always ). One Question: Do you expect MDF and HCP extensions comming for performance and goals ( and succession) ? Today I spent some time on SCN and  SAP related sites and I do not find any informations on that topic. All slides, PDF’s and videos related to that topic deal only with EC.

    BR

    Martin

    (0) 
    1. Luke Marson Post author

      Hi Martin,

      Thanks for your feedback! As it stands right now, MDF and the extensions package on HCP are only available for Employee Central. There are plans to roll this out to Recruiting this year, but so far I have not heard of any timelines or additional plans to roll this out to Performance & Goals. I will update you if I hear more.

      Best regards,

      Luke

      (0) 
    1. Luke Marson Post author

      Hi Suman,

      MDF continues to have its capabilities extended. There are no blog updates at this time.

      Best regards,

      Luke

      (0) 
  11. Abhayadeep Singh

    Thanks Luke for providing excellent article on MDF.

    Can you please advise if I want modify behavior of foundation object then should that be done from MDF or using export corporate data XML and making changes before importing through provisioning account.

    Employee files.JPG

    Moreso in my demo system I cant find option “Manage Organization, Pay and Job Structure” link under employee file. Also exported corporate data model from provisioning I find XML file only contains string “corporate-datamodel.xml is not imported prior to export.” Not sure why corporate data model is blank in my system.

    Thanks

    Abhay

    (0) 
    1. Luke Marson Post author

      Thanks Abhay.

      Foundation Objects are not managed through MDF as they are not MDF objects (although that will change in the future). It sounds like you have a non-EC demo system or a demo system that hasn’t had EC loaded. You will need to check that you have the correct Provisioning settings, upload the standard data model, and permission your user for the “Manage Organization, Pay and Job Structure” link.

      Best regards,

      Luke

      (0) 
      1. Abhayadeep Singh

        Thanks Luke for prompt reply. This system was originally configured for RCM.  I also think that corporate data model has not been loaded. However if I want to configure EC then where do I find standard data models. Can I use option of uploading Pre-packaged templates as mentioned below?Prepackaged.gif

        (0) 
  12. Pradyp Parakala

    Hey Luke

    Is MDF going to replace all XML’s part config. How much difference can we notice if SF switch completely to MDF’s.

    Cheers 😉

    Pradyp

    (0) 
    1. Luke Marson Post author

      Hi Pradyp,

      I believe that one day all XML-based configuration will move to MDF, but that will take some time. EC is moving to MDF first and the difference for customers means that everything can be configured in the UI with no XMLs.

      Best regards,

      Luke

      (0) 
  13. Sourav Mukherjee

    Hi Luke,

    This is a really useful blog 🙂

    I have one question on import/export functionality. Is there any way of creating an MDF object definition in one tenant and moving it to another tenant using export and import as file? If I have a set of MDF data objects created in one tenant and I want to create same objects in another tenant, is there any way of moving them as file system.


    I have seen the option export metadata to file options but not sure whether that is the correct way of doing it or not.

    Thanks and Regards,

    Sourav

    (0) 
    1. Luke Marson Post author

      Hi Sourav,

      Yes, you can export MDF objects from one system and import them to another (this includes rules and configuration UIs). However, bear in mind that when they are from different systems with different languages and configurations that the object definitions will not always import without some form of modifications.

      Within the same customer system, you can copy MDF objects from one instance to another using the Instance Synchronization Tool. This is the recommended solution for a customer.

      All the best,

      Luke

      (0) 
      1. Sourav Mukherjee

        Hi Luke,

        I have got the Instance Synchronization Tool enabled in provisioning account. Could you please tell me how to access the tool from my tenant. I am not able to see the option. Do I need to check some options in admin roles?

        Thanks and Regards,

        Sourav

        (0) 
      2. Sourav Mukherjee

        Hi Luke,

        I got the options to enable it 🙂 but now I am facing another issue.

        In the screen below, I need to get my target instance, Could you please tell me where to set up this configuration./wp-content/uploads/2015/06/123_731882.jpg

        Thanks and Regards,

        Sourav

        (0) 
        1. Luke Marson Post author

          Hi Sourav,

          Is this a demo instance or customer instance? If it is a demo instance you won’t get any options.

          All the best,

          Luke

          (0) 
          1. Sourav Mukherjee

            Hi Luke,

            So I won’t get that option as i am on demo instance. But can you please tell me whether there is some separate configuration steps to be done other than just adding the customer instance in provisioning?

            Kind Regards,

            Sourav

            (0) 
            1. Luke Marson Post author

              Hi Sourav,

              The tool only works to sync from one customer instance to another. You can’t sync from a demo instance to a customer instance.

              If you want to transfer configuration from a demo instance to a customer instance then you need to use the import/export options and then modify your object CSV files to ensure they can be imported (e.g. remove/add any languages that are not in the customer instance).

              All the best,

              Luke

              (0) 
  14. Paula DiTallo

    Luke,

    I’m an enterprise integrations developer outside of the SAP stack recently tasked with retrieving data from the SF objects via OData calls for usage in another company wide application. I’ve had success with this– in all but incremental searches, where I am looking for data between a specific date range.  A query such as: https://api[dub].successfactors.com/odata/v2/EmpJob?$&$top=5&fromDate=2015-05-01&toDate=2015-06-10 does not return updated records within the date range.  After reading your post, I see that this may have to do with how SF is configured. I am not well versed in SAP to know how to look to see if this is the root cause. I can contact our SF administrator, however, more broadly speaking, is there an OData call to the metadata framework which can answer that question? The calls to $metadata do not appear to include object definition info.

    (0) 
  15. Raul Cruz

    Hello Luke,

    Is there a limit to how many MDF objects that can be created?  If so, Is there a way to extend beyond the limit?

    I enjoy your informative posts. 

    Thanks,

    Raul

    (0) 
    1. Margaret Black

      My understanding is there’s a 25 MDF object limit for the full suite of modules unless you have Hana Cloud integration platform (HCI). Then the number can go up to unlimited depending on the contract. This is controlled in Provisioning. Hope this helps 🙂

      (0) 
      1. Luke Marson Post author

        The limit depends on the SAP HANA Cloud Platform license (not HCI). It can be more than the provided number if an additional license is purchased.

        (0) 
        1. Margaret Black

          Opps, thanks Luke!

          But also, you can use MDF objects without HCP at all up to 25. Once above 25, HC Platform is required. We had this issue with a customer that has EC but does not have Hana Cloud. There were allowed to use up to 25 MDF objects.

          Thanks!

          (0) 
  16. Wei-Han Jin

    Hello Luke,

    I have a question about import/export MDF positions.

    Here’s my understanding, please correct me if any mis.

    1. Import employee profile through one .csv file

         (Update user information > import employee data)

    2. Import MDF position throuth one .csv file

         (tool search > import and export data)

    Is there any further steps need to be process? How can we find the relationship between employee id and position id?

    Thank you!

    (0) 
    1. Luke Marson Post author

      Hi Wei,

      These steps are correct. You define the Position Id in the Job Information import (called Job History in the Import Employee Data screen).

      Best regards,

      Luke

      (0) 

Leave a Reply