Post-installation automation of SAP deployments utilizing Hibersap and SAP Java Connector, including post-installation automation of SAP Fiori and SAP S/4HANA.

Some of the problems included:

  • Company’s product required post-installation automation of SAP deployments
  • Version of SAP Java Connector library used in Company’s product was over 5 years old
  • Working with SAP Java Connector required a lot of boilerplate code
  • It was not known which SAP API to use for working with task lists to facilitate post-install automation
  • It was not known how to interact with “SAP Technical Configuration ABAP API Task Manager Application Client” due to lack of documentation and examples
  • Due to lack of technical documentation for “SAP Technical Configuration ABAP API Task Manager Application Client”, it was not known whether variants / templates can be created
  • Due to lack of technical documentation for “SAP Technical Configuration ABAP API Task Manager Application Client”, there was insufficient information about data structures utilized, preventing implementation of automatic confirmation of tasks as well as feedback of status in case of unsuccessful task list run
  • Some post install task lists contained tasks which required manual activities
  • Some post install task lists contained tasks which required GUI to be executed
  • Some post install task lists contained tasks which were blocked from remote execution
  • Some post install task lists contained tasks that had internal dependencies which could not be passed via input parameter making it impossible to remotely execute them

Some of the solutions applied included:

  • Researching and prototyping to understand how post installation of SAP can be automated
  • Upgrading SAP Java Connector library used in Company’s product to latest available version
  • Developing proof of concept of reading tasks lists via remote functions provided by “SAP Technical Configuration ABAP API Task Manager Application Client”, utilizing Hibersap on top of SAP Java Connector
  • Integrating Hibersap library, which adds abstraction layer on top of SAP’s JConnector, allowing Hibernate/ORM-like binding of requests and responses to Java POJOs, resulting in faster code development and elimination of most boilerplate code
  • Implementing Java client for “SAP Technical Configuration ABAP API”, utilizing Hibersap and SAP Java Connector
  • Creating data model to be used as input for post-install automation, including tasks lists, sequence in which they should run, parameters to be passed to each and whether manual tasks should be auto-confirmed
  • Utilizing “SAP Technical Configuration ABAP API Task Manager Application Client”, part of “SAP Technical Configuration ABAP API”, for working with task lists to facilitate post-install automation
  • Implementing pseudo-variant execution programmatically, utilizing session initialize, skip, resume and finalize functions of “SAP Technical Configuration ABAP API Task Manager Application Client”
  • Utilizing direct RFC function calls to create same effects as created by those tasks which require GUI or are blocked from execution and skip executing those tasks from a given task list run
  • Accepting user input via GUI of Company’s product to be passed as input parameters for specific tasks to be executed, which require manual intervention
  • Automatically confirming tasks, which require manual intervention and resuming task list run
  • Implementing post-installation automation of SAP Fiori
  • Implementing post-installation automation of SAP S/4HANA

Technology stack

  • Java
  • OSGi
  • SAP Technical Configuration ABAP API
  • SAP Java Connector (JCo / jConnector)
  • Hibersap

Industry

IT