The SAP Event Registration app is a community project licensed under Apache License Version 2.0. The app provided organizers of SAP community events a platform for the participant registration. It was running in production until end of 2023 using the SAP Mentors SAP Cloud Platform Account sponsored by SAP IT.
This repository contains the backend for the SITreg app. It was developed on SAP HANA XS Classic (XSC) using mainly XSODATA to expose an OData API. For more details check out the information in the Wiki. You can find the frontend projects here:
In addition to the following expert guide you can check out the setup guide in the Wiki.
You must have developer authorization in your HANA System. To try this project just spin up your own HANA Multitennant Database Container (MDC) on the HANA Cloud Platform Trial (HCP). Open the SAP HANA Web-based Development Workbench and create the package:
com/sap/sapmentors/sitreg
After you've created the package right click on the sitreg package and choose Syncronize with GitHub. Provide your GitHub credentials to allow the HANA system to read your GitHub repositories. As you can't specify a GitHub repository URL you have to fork the project so you have it in your repository list. Then choose the cloned repository and GitHub branch master. Click Fetch to retreive the content. After that step you have to activate the artifacts. Try a right click activate all.
To test the different services with the correct authorizations setup the users:
- PARTICIPANT
- ORGANIZER
- COORGANIZER
- RECEPTIONIST
- SITREGADMIN
Assign the roles:
- com.sap.sapmentors.sitreg.roles::participant (to PARTICIPANT)
- com.sap.sapmentors.sitreg.roles::organizer (to ORGANIZER and COORGANIZER)
- com.sap.sapmentors.sitreg.roles::receptionist (to RECEPTIONIST)
- com.sap.sapmentors.sitreg.roles::admin (to SITREGADMIN)
to be able to test the different services also according the correct implementation of the authorizations.
To be able to test the two frontend apps with the backend you have to create a destination in the SAP HANA Cloud Platform Cockpit. If you adjust the following and save it in a file called HANAMDC you can use the Import Destination function. After that you only have to maintain the password for your user.
For the application sapmentors/SITregParticipantList you need the destination HANAMDC_PUBLIC. The steps of creation are the same as already described.
The user stored in this destination is used for accessing the HANA database in the backend. In order to use the needed OData services the user needs to have the following roles assigned:
- com.sap.sapmentors.sitreg.roles::public
- com.sap.sapmentors.sitreg.roles::participant
- com.sap.sapmentors.sitreg.roles::organizer
- com.sap.sapmentors.sitreg.roles::receptionist
Roles are assigned in the Security part of the SAP HANA Web-based Development Workbench.
Type=HTTP
Authentication=BasicAuthentication
Name=HANAMDC
WebIDEEnabled=true
URL=https\://<your-hana-mdc-host>.hanatrial.ondemand.com
ProxyType=Internet
User=<user_on_HANAMDC>
WebIDESystem=HANAMDC
For the Setup of the Frontend Application itself refer to the Readme and Setup Guide of sapmentors/SITrefParticipant
If you want to use AppToAppSSO as described in the Frontend section, you further must activate the SAML Authentication Method for the odataorganizer and odataparticipant. You do that by calling the XS Admin via the path:
- /sap/hana/xs/admin/#/package/com.sap.sapmentors.sitreg.odataorganizer
- /sap/hana/xs/admin/#/package/com.sap.sapmentors.sitreg.odataparticipant
For the anonymous access you have to activate the SQL Connection Details via the path:
- /sap/hana/xs/admin/#/package/com.sap.sapmentors.sitreg.odatapublic/sqlcc/public
and also enable Public (No Authentication Required) access to the package odatapublic. You do this via the path
- /sap/hana/xs/admin/#/package/com.sap.sapmentors.sitreg.odatapublic
If you want to use the HANA MDC XSODATA Service in a HCP HTML5 app with App2AppSSO then follow the great Blog by Martin Raepple: Principal Propagation between HTML5- or Java-based applications and SAP HANA XS on SAP HANA Cloud Platform. After you've did the setup you can adjust your destination and set
Authentication=AppToAppSSO