All Projects → SAP-samples → cloud-cap-multitenancy

SAP-samples / cloud-cap-multitenancy

Licence: Apache-2.0 license
SAP Cloud Application Programming Model (CAP) sample code project with multitenancy using service manager-created SAP HANA containers for tenant data isolation.

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects
CAP CDS
7 projects
HTML
75241 projects

Projects that are alternatives of or similar to cloud-cap-multitenancy

devtoberfest-2021
The home of Devtoberfest 2021 - an open celebration of what makes us developers - coding and collaboration!
Stars: ✭ 212 (+542.42%)
Mutual labels:  sample, sap-hana, sample-code, sap-cap
btp-full-stack-typescript-app
A sample project to demonstrate how to implement a full-stack app with SAP Cloud Application Programming Model, plus SAPUI5 and TypeScript.
Stars: ✭ 27 (-18.18%)
Mutual labels:  sample, cloud-foundry, sap-hana, sap-cap
cloud-cap-risk-management
The SAP Risk Management example applications show how to deploy a CAP (SAP Cloud Application Programming model) application to Cloud Foundry and Kyma.
Stars: ✭ 36 (+9.09%)
Mutual labels:  sample, cloud-foundry, sample-code, sap-cap
teched2021-developer-keynote
SAP TechEd 2021 Developer Keynote: Improving Developers' Lives.
Stars: ✭ 23 (-30.3%)
Mutual labels:  sample, sap-hana, sample-code, sap-cap
hana-shine-xsa
SAP HANA Interactive Education for SAP HANA Extended Application Services, Advanced Model (SHINE for XS Advanced) is an education content to learn, develop, and deploy SAP HANA XS Advanced Model application and is a successor of SHINE for XS Classic.
Stars: ✭ 115 (+248.48%)
Mutual labels:  sample, sap-hana, sample-code
hana-ml-samples
This project provides code examples for SAP HANA Predictive and Machine Learning scenarios and is educational content. It covers simple Predictive Analysis Library SQL examples as well as complete SAP HANA design-time “ML scenario”-application content or HANA-ML Python Notebook examples.
Stars: ✭ 67 (+103.03%)
Mutual labels:  sample, sap-hana, sample-code
ui5-cap-event-app
Showcase of SAP Cloud Application Programming Model and OData V4 with draft mode in a freestyle SAPUI5 app and an SAP Fiori elements app.
Stars: ✭ 70 (+112.12%)
Mutual labels:  sample, sample-code, sap-cap
cloud-espm-cloud-native
Enterprise Sales and Procurement Model (ESPM) Cloud Native is a project that showcases how an application can be made resilient by implementing resilience design patterns. This application is developed using Spring Boot framework and can be deployed locally as well as on SAP BTP, Cloud Foundry environment.
Stars: ✭ 29 (-12.12%)
Mutual labels:  sample, cloud-foundry, sample-code
cap-sflight
Using SAP Cloud Application Programming Model and SAP Fiori elements to build a simple travel management app, both with Node.js and Java.
Stars: ✭ 65 (+96.97%)
Mutual labels:  sample, sample-code, sap-cap
fiori-elements-feature-showcase
Sample application that demonstrates and documents a broad variety of features of SAP Fiori elements for OData V4. Developers can play around with the new features and learn how to implement them.
Stars: ✭ 76 (+130.3%)
Mutual labels:  sample, sample-code, sap-cap
btp-workflow-management-opensap
This repository contain the exercises for the openSAP course "Improve Business Processes with SAP Workflow Management."
Stars: ✭ 30 (-9.09%)
Mutual labels:  sample, cloud-foundry, sample-code
cloud-bulletinboard-ads
This is the bulletinboard-ads sample application code used in the openSAP course: Cloud-Native Development with SAP Business Technology Platform (formerly SAP Cloud Platform).
Stars: ✭ 75 (+127.27%)
Mutual labels:  sample, cloud-foundry, sample-code
hana-developer-cli-tool-example
Learn how to build a developer-centric SAP HANA command line tool, particularly designed to be used when performing SAP HANA development in non-SAP tooling (for example from VS Code).
Stars: ✭ 73 (+121.21%)
Mutual labels:  sample, sap-hana, sample-code
smb-summit-hackathon
Build Blocks for the SAP SMB Summit Hackathons.
Stars: ✭ 23 (-30.3%)
Mutual labels:  sample, sample-code
ui5-webcomponents-sample-angular
UI5 Web Components Sample TODO application built with Angular.
Stars: ✭ 34 (+3.03%)
Mutual labels:  sample, sample-code
abap-platform-jak
The JSON ABAP Konverter
Stars: ✭ 16 (-51.52%)
Mutual labels:  sample, sample-code
ui5-webcomponents-sample-vue
UI5 Web Components Sample TODO application built with Vue.
Stars: ✭ 52 (+57.58%)
Mutual labels:  sample, sample-code
cloud-hana-helloworld
This project provides the full source code for the "Hello World" tutorials on https://hcp.sap.com. In this tutorials you can learn how to make your very first steps on SAP HANA by developing a very simple "Hello World" application using the SAP HANA web-based Development Workbench on the SAP HANA Cloud Platform.
Stars: ✭ 26 (-21.21%)
Mutual labels:  sample, sap-hana
abap-alv-google-upload-sheet
Sample demonstrating export of ALV Grid data from SAP GUI directly to Google Drive and display exported data snapshots automatically in Google Sheets.
Stars: ✭ 24 (-27.27%)
Mutual labels:  sample, sample-code
cloud-workflow-samples
Workflow sample projects as reference content. Users can download and import the content of this project to their tenant to understand and learn how to consume workflow.
Stars: ✭ 52 (+57.58%)
Mutual labels:  sample, sample-code

REUSE status

Cloud CAP Multitenancy

SAP Cloud Application Programming (CAP) Node.JS sample code project with multitenancy using service manager created HANA containers for tenant data isolation.

Description

This repository contains a complete Multi-Target Application (MTA) sample project that is an example of using the SAP Cloud Application Programming (CAP) approach and it's multitenancy support library to provide true enterprise multitenant application.

There are many disparate pieces of information found throughout the SAP documentation as well as the CAP centric documentation, but it is difficult to bring them together as a cohesive whole. This sample code project provides a good starting point for those wanting to build a best-practice multitenant enterprise application on SAP Business Technology Platform.

This project is implemented completely in the Node.JS programming language. A Java programing language multitenant sample code project can be found in the repository cloud-cap-samples-java. See the Demonstrated Features section of the README.

Branches

There are several branches in this repo and a little context is warranted.

This sample utilizes the CAP multitenancy library (cds-mtx) to handle customer subscriptions which result in the ServiceManager creating run-time HANA hdi-shared containers. In the original master branch this was tested where each subscribing customer would have their own distinct container with no need of joining the customer container with any shared data. If this is your use case, then you'll find this version was saved in the single-container branch which will work with versions of the cds-mtx library < 1.0.27. For use cases where joining per subscriber containers with a singluar common container, a bug was discovered in the library that prevented run-time container deployments upon subscriptions. A work-around is provided in the xcontainer branch that will work with cds-mtx library < 1.0.27. This work-around effectively performs a secondary deploy with the proper environment that accomplishes the desired result. Once a fix was provided in cds-mtx >= 1.0.27, the work-around was no longer needed and the code removed and the fix-things branch was created in order to facilitate testing of the fix. Once the fix was confirmed effective the code was merged back into the master branch.

The master branch going forward implements the use-case where each run-time container will be joined with a "common container"(as defined in the db_comm folder). The cds-mtx >= 1.0.27 will accomodate this use-case.

Requirements

Download and Installation

modules:
- name: capmt-srv
  type: nodejs
  path: srv
...
  properties:
     CF_API_USER: [email protected]
     CF_API_PW: xxxxxx
...
  • OR - after deployment,
  1. Create a file called .env with the following.
CF_API_USER=<Your User>
CF_API_PW=<Your Password>
  1. Run this command to set the ENVIRONMENT with your specifics.
set -o allexport; source .env; set +o allexport
  1. Update the environment for the capmt-srv module in the CF_CDEDS.sh script.
cf set-env capmt-srv CF_API_USER $CF_API_USER
cf set-env capmt-srv CF_API_PW $CF_API_PW
cf restage capmt-srv

Project Structure

File / Folder Purpose
README.md this getting started guide
COMMANDS.md commands for building/deploying
app/ content for UI frontends go here
db/ database definitions go here
documentation/ supplemental documentation
srv/ your service module code goes here
mta.yaml project structure and relationships
package.json project metadata and configuration

Instructions

Replace .hana.demand.com with the landscape region variant for your account.

See the COMMANDS file for commands for building and deploying the project.

Known Issues

This example project contains no known issues.

Limitations

The creation and assignment of Roles to Roll Collections and the assignment of Roll Collections is limited to global accounts with "Feature Set B".

How to obtain support

Create an issue in this repository if you find a bug or have questions about the content.

For additional support, ask a question in SAP Community.

Documentation

See the Multitenancy section under Cookbook in the CAP documentation. Multitanancy

Also the broader public CAP Documentation.

Reporting Problems and Contributing Enhancements

An SAP Code Sample such as this is open software but is not quite a typical full-blown open source project. If you come across a problem, we’d encourage you to check the project’s issue tracker and to file a new issue if needed. If you are especially passionate about something you’d like to improve, you are welcome to fork the repository and submit improvements or changes as a pull request.

To-Do (upcoming changes)

Tools used throughout the development of this project are evolving and my change over time. This may result in discrepancies in the exact procedures or screen-clips in the accompanying blog posts. All efforts will be made to update the content in order to keep pace with the tooling, but cannot be guaranteed.

Learn more...

Learn more in the CAP documentation at CAPIRE.

A blog post discussing this code sample can be found on SAP Community. See: Getting your head into Cloud Application Programming model multitenancy for a detailed discussion.

License

Copyright (c) 2020 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].