Skip to Content

Overview

This blog post will explain how to setup an integration center flow for creating an output file being used to synchronize user data from Foundation to Learning Management System via Integration Center. Therefore we use SF User Connector in LMS.

Many thanks to those blog posts, who really prepared this scenario, but did not finally answer some question in terms of using IC for LMS specific connectors in depth:

 

Scenario

In most scenarios a standard provisioning job is used to create an comma separated output file which is imported by SF User Connector.

There might be scenarios where an Integration Center Flow exceeds the functionality of the provisioning job:

  • Delta Handling
  • Filtering acc. to dynamic criteria
  • Multiple export jobs
  • Admin/customer-controlled jobs for synchronizing FO to LMS
  • Custom Adaptions to fields (like inactive in foundation and active in LMS)

 

Goal

My goal is to provide an explanation how to build this flow.

 

Please excuse that there might be technical differences according to business configuration of the system, custom adaption should be possible after reading this blog.

 

Realization

  1. Go to Integration Center
  2. Create a new schedulable flow
    Scheduled
    Source Type SF
    Destination Type SFTP
    Format: EDI/Stacked Delimited –> necessary for double headline
  3. Options
    Comma Separated
    CR/LN -> Carriage Return / New Line –> to delimit lines correctly from each other
  4. Now, the magic 🙂 … it was quite difficult to understand how to build and use this EDI file format… at the end you have to insert a new segment, select the segment (row 1 column 1) and click “insert sibling (which creates row 1 column 2). You have to continue this for all your fields as headline 1, headline 2 and content line. At the end in my productive file I have created each line with 42 fields and it took quite some time to insert them, fill the labels and so on.
  5. I used calculated fields in row 3 to manage the double quotes being used as a wrapper for every content per column. There were also some specialties and difficulties calculating the correct values for Manager, HR and the Hire as well as the Company Exit Date
  6. Sorting should be adapted like in the provisioning job (ends up in importing active users first, then all inactive users)
  7. Now you are good to go. You need to define your sFTP Destination like contracted with SAP and define your file name (e.g. user_data_xxx.txt).
  8. In filter section you might do some filtering according to your requirements (e.g. Delta Handling)

 

Conclusion

It took quite some time to build this flow including all specialities like double headline, double quote separation incl. comma separated values. At the end this effort turns out beeing useful for admins. Full control of the job in terms of scheduling and adapting to your requirements.

Important Information with scheduling this flow: it turned out that planning this flow with schedule (e.g. nightly run) an job in provisioning will be created. If, however, two of the same flows exists, this job fails telling you that there is another Provisioning Job for SF User Connector. In this case, remove all jobs (delete, not only unschedule) and re-schedule the job in Integration Center.

 

 

Cheers

Christian

 

 

To report this post you need to login first.

3 Comments

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

  1. Vasiliy Baranovskiy

    Thanks for sharing Christian!

    In our case, additional filters in Advanced Filters were needed to include inactive employees. Are inactive employees work ok for your case?

     

    (0) 
    1. Christian Czakaj Post author

      Hi Vasily, thanks for your comment. I set priority on realizing a flow, which does exactly the same as the provisioning job.

      The answer is yes. Inactive handling works (even if a user is inactive in FO and not yet existing in LMS, as well as existing as inactive in both). In Filtering you can use “In Range” and as value “active, inactive” but also keep it blank because you want “everything” from FO to LMS no matter if active or inactive.

      (0) 

Leave a Reply