diff --git a/tutorials/cap-extend-sfsf-add-launchpad/cap-extend-sfsf-add-launchpad.md b/tutorials/cap-extend-sfsf-add-launchpad/cap-extend-sfsf-add-launchpad.md index 1f00d9640c..fc5a23e6ce 100644 --- a/tutorials/cap-extend-sfsf-add-launchpad/cap-extend-sfsf-add-launchpad.md +++ b/tutorials/cap-extend-sfsf-add-launchpad/cap-extend-sfsf-add-launchpad.md @@ -30,68 +30,68 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Access the Launchpad Service Site Manager)] +[ACCORDION-BEGIN [Step 1: ](Access the launchpad service site manager)] -In the **SAP BTP cockpit**, on the **left-hand pane** expand the **Services** menu and click on **Instances and Subscriptions**. On the right side, locate the **Launchpad Service** under **Subscriptions** and click on the **Go to Application** icon next to it. +In the **SAP BTP cockpit**, on the **left-hand pane** expand the **Services** menu and (1) click on **Instances and Subscriptions**. On the right side, locate the **Launchpad Service** under **Subscriptions** and (2) click on the **Go to Application** icon next to it. ![Figure 1 – Go to Application on Launchpad Service subscription](launch-service.png) The **Site Manager UI** will open-up in a new browser tab. So, the first thing you need to do is to **refresh** (grab) the content from the **HTML5 applications** repository for bring in our application from there. -Click on the **sandwich menu** at the top-left corner of the page to expand the app menu and click on the **Provider Manager** option. Then, click on the **refresh button** at the far right of the **HTML5 apps** provider to bring-in the content from there. +(1) Click on the **sandwich menu** at the top-left corner of the page to expand the app menu and (2) click on the **Provider Manager** option. Then, (3) click on the **refresh button** at the far right of the **HTML5 apps** provider to bring-in the content from there. ![Figure 2 – Refresh content from the HTML5 apps repository](refresh-content.png) [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Prepare Business Content: Application, Group and Catalog)] +[ACCORDION-BEGIN [Step 2: ](Prepare the business content - application, group and catalog)] To learn about the **concepts** managed by the **SAP Launchpad Service**, please refer to the official documentation in [**this link**](https://help.sap.com/viewer/8c8e1958338140699bd4811b37b82ece/Cloud/en-US/3f619a13ca2a4a59a14bec8507c3fb69.html). -Click on the **Content Manager** option, then on the **Content Explorer** tab and, finally, on the **HTML5 Apps** tile. +(1) Click on the **Content Manager** option, then (2) on the **Content Explorer** tab and, finally, (3) on the **HTML5 Apps** tile. ![Figure 3 – Access HTML5 Apps Repository](access-repo.png) -Select the **Manage Projects** app, then click on the **Add to My Content** button. +(1) Select the **Manage Projects** app, then (2) click on the **Add to My Content** button. ![Figure 4 – Add Manage Projects App to My Content](add-app.png) -Click on the **My Content** tab, then on the **New** button and select **Catalog** from the menu. +(1) Click on the **My Content** tab, then (2) on the **New** button and (3) select **Catalog** from the menu. ![Figure 5 – Add New Catalog](add-catalog.png) -Type **Project Management** as **Title** and **Project Management Catalog** as **Description**. Click on the **Assign Items** search bar and, then, on the "**+**" icon to the right of the **Manage Projects** app. Finally, click on the **Save** button. +Type **Project Management** as **Title** and **Project Management Catalog** as **Description**. (1) Click on the **Assign Items** search bar and, then, (2) on the "**+**" icon to the right of the **Manage Projects** app. Finally, (3) click on the **Save** button. ![Figure 6 – Project Management Catalog Information](catalog-info.png) -Go back to the **Content Manager** home page, click on the **New** button and select **Group** from the menu. +Go back to the **Content Manager** home page, (1) click on the **New** button and (2) select **Group** from the menu. ![Figure 7 – Add New Group](add-group.png) -Type **SuccessFactors Extensions** as **Title** and **SuccessFactors Extensions Group** as **Description**. Click on the **Assign Items** search bar and, then, on the "**+**" icon to the right of the **Manage Projects** app. Finally, click on the **Save** button. +Type **SuccessFactors Extensions** as **Title** and **SuccessFactors Extensions Group** as **Description**. (1) Click on the **Assign Items** search bar and, then, (2) on the "**+**" icon to the right of the **Manage Projects** app. Finally, (3) click on the **Save** button. ![Figure 8 – SuccessFactors Extensions Group Information](group-info.png) [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Assign the Application to Everyone)] +[ACCORDION-BEGIN [Step 3: ](Assign the application to everyone)] Go back to the **Content Manager** home page and click on the **Everyone** role in the list. ![Figure 9 – Access the Everyone Role](access-role.png) -Click on the **Edit** button at the top-right and then on the **Assign Items** search bar. Click on the "**+**" icon to the right of the **Manage Projects** app. Finally, click on the **Save** button. +Click on the **Edit** button at the top-right and then (1) on the **Assign Items** search bar. (2) Click on the "**+**" icon to the right of the **Manage Projects** app. Finally, (3) click on the **Save** button. ![Figure 10 – Assign the Manage Projects app to the Everyone Role](assign-app.png) [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Create the Launchpad Site)] +[ACCORDION-BEGIN [Step 4: ](Create the launchpad site)] -Click on the **Site Directory** option and then on the **Create Site** button. +(1) Click on the **Site Directory** option and then (2) on the **Create Site** button. ![Figure 11 – Create New Site](create-site.png) @@ -102,7 +102,7 @@ Name the site **BTP Extensions** and click on the **Create** button. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Test the Site and Application)] +[ACCORDION-BEGIN [Step 5: ](Test the site and application)] Click on the link below the **URL** field to **launch the site**, which will open-up in a new browser tab. @@ -131,12 +131,12 @@ And this is the **final step** to **Extend SAP SuccessFactors on SAP BTP with CA [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 6: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 6: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END] -[ACCORDION-BEGIN [Step 7: ](Stretch Yourself)] +[ACCORDION-BEGIN [Step 7: ](Stretch yourself)] **Congratulations**! After having gone through and completed the tutorials in this group you should have successfully **Extended SAP SuccessFactors on SAP BTP with CAP** with a **simple project management application**! diff --git a/tutorials/cap-extend-sfsf-add-logic/cap-extend-sfsf-add-logic.md b/tutorials/cap-extend-sfsf-add-logic/cap-extend-sfsf-add-logic.md index 823f646b1a..3b2a37e144 100644 --- a/tutorials/cap-extend-sfsf-add-logic/cap-extend-sfsf-add-logic.md +++ b/tutorials/cap-extend-sfsf-add-logic/cap-extend-sfsf-add-logic.md @@ -24,13 +24,13 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Create the Service Module Code File)] +[ACCORDION-BEGIN [Step 1: ](Create the service module code file)] The **business logic** of the application is implemented via **custom service handlers** for the various operations executed on its entities (create, read, update, delete, etc.). Those handlers are defined in a **module** within a `JavasScript` file with the **same name** of the service but with the `.js` extension. So, now it's time for you to create it. -On the **left-hand pane** of **SAP Business Application Studio**, select the `srv` folder, then click on the **three dots** to the right of the project name and select **New File**. +On the **left-hand pane** of **SAP Business Application Studio**, (1) select the `srv` folder, then (2) click on the **three dots** to the right of the project name and (3) select **New File**. ![Figure 1 – Create New File](create-file.png) @@ -41,7 +41,7 @@ On the **dialog** name the file `projman-service.js` and click **OK**. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Code the Service Module)] +[ACCORDION-BEGIN [Step 2: ](Code the service module)] Copy and paste the **code snippet below** into the recently created file: @@ -71,7 +71,7 @@ Finally, you make some **comments** as **placeholders** to mark where you will f [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Organize Your Code)] +[ACCORDION-BEGIN [Step 3: ](Organize your code)] It is a best practice to have your code organized into **files** representing the nature of the code (i.e. **utility functions** should go into some `utils` file, **handlers** should go into some `handlers` file and so on). Those files represent your "code library", so it's appropriate to store them into some `lib` folder. @@ -96,11 +96,11 @@ Type `touch lib/handlers.js` and press **Enter**. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Code the Service Handlers)] +[ACCORDION-BEGIN [Step 4: ](Code the service handlers)] Now, you'll develop the required service handlers according to the business rules that have been defined in the [**group introduction and preparation**](cap-extend-sfsf-intro). -### Users Read Handler +### Users READ handler On the **left-hand pane** expand the `lib` folder, then click on the `hanlers.js` file to open it. @@ -204,7 +204,7 @@ Click on the `SFSF_User` link Now, you should be able to view the users that are being read from **SAP SuccessFactors** via the **User entity** from the `PLTUserManagement` service. -### Other Handlers +### Other handlers That was the most important handler you should first implement as it's the one responsible for bringing the SAP SuccessFactors' employees into your application. @@ -508,7 +508,7 @@ The code logic is well explained in the comments details. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Attach the Service Handlers to the Service Module Events)] +[ACCORDION-BEGIN [Step 5: ](Attach the service handlers to the service module events)] Open the `srv/projman-service.js` file, then copy and paste the **following code** over (overwrite) the current content: @@ -560,7 +560,7 @@ And, with that, you completed the coding of the business logic for your applicat [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 6: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 6: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END] diff --git a/tutorials/cap-extend-sfsf-add-security/cap-extend-sfsf-add-security.md b/tutorials/cap-extend-sfsf-add-security/cap-extend-sfsf-add-security.md index 708e406dd5..e4de9f2713 100644 --- a/tutorials/cap-extend-sfsf-add-security/cap-extend-sfsf-add-security.md +++ b/tutorials/cap-extend-sfsf-add-security/cap-extend-sfsf-add-security.md @@ -25,7 +25,7 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Set Service to Require Authentication)] +[ACCORDION-BEGIN [Step 1: ](Set service to require authentication)] So far, you have been working on a local project which only developers would have access to. Therefore, it's OK to leave your service "unprotected" as it's not yet publicly available. But, as soon as you deploy it to the cloud, it will be available to anyone who knows the service endpoint (which is not quite difficult). @@ -46,7 +46,7 @@ As you are still in development you can provide whatever information you like an [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Set Authorization for Service Entities Access)] +[ACCORDION-BEGIN [Step 2: ](Set authorization for service entities access)] But, in an **administrative scenario** like this one, just **being an authenticated user is not enough**. It's appropriate that, additionally, the authenticated user must be granted some **administrative role** (i.e. an **Admin** role). @@ -119,7 +119,7 @@ After deployment, you just need to assign it to the user who should be granted s [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Add Required Dependencies)] +[ACCORDION-BEGIN [Step 4: ](Add required dependencies)] Now, you just need to add four dependencies to the CAP service for it to properly handle security and other related stuff – such as the user JSON Web Token (JWT) – during runtime. Those are: @@ -142,7 +142,7 @@ When the commands complete, your `package.json` file should like the screenshot [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 5: ](Check your knowledge)] diff --git a/tutorials/cap-extend-sfsf-deploy-cf/cap-extend-sfsf-deploy-cf.md b/tutorials/cap-extend-sfsf-deploy-cf/cap-extend-sfsf-deploy-cf.md index a9755add03..b2f20ee16a 100644 --- a/tutorials/cap-extend-sfsf-deploy-cf/cap-extend-sfsf-deploy-cf.md +++ b/tutorials/cap-extend-sfsf-deploy-cf/cap-extend-sfsf-deploy-cf.md @@ -28,7 +28,7 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Build the MTA Archive)] +[ACCORDION-BEGIN [Step 1: ](Build the MTA archive)] Before you build the MTA Archive for deployment, do not forget to switch back the database from **in-memory `SQLite`** to **SAP HANA** (if not already). For that, just open the `package.json` file from the CAP service and set the `cds.requires.db.kind` parameter to `hana` like demonstrated below: @@ -74,7 +74,7 @@ It's going to take a while until the deployment process finishes. When it does, [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Assign Admin Role to your Business User)] +[ACCORDION-BEGIN [Step 3: ](Assign Admin role to your business user)] Before you jump into testing the application, you must remember that it's meant for **project administrators**, meaning, users with the Admin role assigned. So, assign the role to your user in SAP BTP. @@ -91,9 +91,9 @@ Now you are OK to test the application. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Test the Deployed Application)] +[ACCORDION-BEGIN [Step 4: ](Test the deployed application)] -On the **left-hand pane**, click on **HTML5 Applications** and locate your **Business Solution** (`sfsf-projman-`). Then, click on the link of the **Application Name**. +On the **left-hand pane**, (1) click on **HTML5 Applications** and locate your **Business Solution** (`sfsf-projman-`). Then, (2) click on the link of the **Application Name**. ![Figure 10 – Start application](launch-app.png) @@ -118,7 +118,7 @@ Finally, the last step in the journey of this tutorial group is to add your appl [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 5: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END] diff --git a/tutorials/cap-extend-sfsf-deploy-hc/cap-extend-sfsf-deploy-hc.md b/tutorials/cap-extend-sfsf-deploy-hc/cap-extend-sfsf-deploy-hc.md index af2595b4e3..6a9e33a074 100644 --- a/tutorials/cap-extend-sfsf-deploy-hc/cap-extend-sfsf-deploy-hc.md +++ b/tutorials/cap-extend-sfsf-deploy-hc/cap-extend-sfsf-deploy-hc.md @@ -25,7 +25,7 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Setup Project for SAP HANA)] +[ACCORDION-BEGIN [Step 1: ](Setup project for SAP HANA)] So far, all data persistence of your application has been utilizing a **default `SQLite` in-memory database**, which means that, each time you restart the application, all data that has been added/updated is completely lost. @@ -48,7 +48,7 @@ In the **Terminal** type `npm install` and press **Enter** to install the newly [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Deploy the Database to SAP HANA Cloud)] +[ACCORDION-BEGIN [Step 2: ](Deploy the database to SAP HANA Cloud)] > **IMPORTANT NOTE**: before executing the next steps first make sure: > @@ -81,7 +81,7 @@ If you click on the **Cloud Foundry icon** (small light bulb) on the left-hand p [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Run Project locally with the Database in the Cloud)] +[ACCORDION-BEGIN [Step 3: ](Run project locally with the database in the cloud)] Now, checkout what happens when you execute the application. @@ -100,7 +100,7 @@ If you want to **switch to the `SQLite` in-memory database** again for developme [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 4: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END] diff --git a/tutorials/cap-extend-sfsf-fiori-elements/cap-extend-sfsf-fiori-elements.md b/tutorials/cap-extend-sfsf-fiori-elements/cap-extend-sfsf-fiori-elements.md index 016809b2fa..942723b61e 100644 --- a/tutorials/cap-extend-sfsf-fiori-elements/cap-extend-sfsf-fiori-elements.md +++ b/tutorials/cap-extend-sfsf-fiori-elements/cap-extend-sfsf-fiori-elements.md @@ -28,7 +28,7 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Add MTA Configuration to the Project)] +[ACCORDION-BEGIN [Step 1: ](Add MTA configuration to the project)] To deploy your application to Cloud Foundry on SAP BTP, you are going to use the **MTA** (Multi-Target Application) approach, which facilitates the deployment as it **pushes everything at once** to the platform: UI application, backend service, database, service instances creation and binding, etc. @@ -55,7 +55,7 @@ The next step is to create an `approuter` module with a **unique route name** (i [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Add AppRouter Configuration to the MTA file)] +[ACCORDION-BEGIN [Step 2: ](Add AppRouter configuration to the MTA file)] Before you move forward with the creation of the `approuter` module, you need to make a **copy** of your `xs-security.json` file as the **module generator will overwrite it** with some specific `approuter` configuration. @@ -120,7 +120,7 @@ And that's it! This completes the `approuter` configuration. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Create the Fiori Elements App as an MTA Module)] +[ACCORDION-BEGIN [Step 3: ](Create the Fiori elements app as an MTA Module)] Now it's finally come the time to create your **SAP Fiori Elements app** (the front-end of your project management solution) and, to facilitate and speed-up the project configuration, you will **add it** to your project directly as an **MTA module**. @@ -167,7 +167,7 @@ Also, the **actual SAP Fiori application** has been created under the `app` fold [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Launch the Fiori Elements App)] +[ACCORDION-BEGIN [Step 4: ](Launch the Fiori elements app)] You can, now, test the newly created SAP Fiori app. In the **Terminal**, run `cds watch` and `CTRL+Click` the `http://localhost:4004` link to open the CAP application home page. Notice that under **Web Applications** the link to the **SAP Fiori app home page** is listed: @@ -194,7 +194,7 @@ You can, now, test it at your will, in the same way you did using the **Fiori Pr [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Add Additional MTA Configuration)] +[ACCORDION-BEGIN [Step 5: ](Add additional MTA configuration)] A few more configurations are required to get the solution fully ready for deployment. @@ -260,7 +260,7 @@ And that concludes the **full project configuration** required to **deploy** the [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 6: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 6: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END] diff --git a/tutorials/cap-extend-sfsf-ui-annotations/cap-extend-sfsf-ui-annotations.md b/tutorials/cap-extend-sfsf-ui-annotations/cap-extend-sfsf-ui-annotations.md index 6d0cf56860..9f188f09be 100644 --- a/tutorials/cap-extend-sfsf-ui-annotations/cap-extend-sfsf-ui-annotations.md +++ b/tutorials/cap-extend-sfsf-ui-annotations/cap-extend-sfsf-ui-annotations.md @@ -26,11 +26,11 @@ primary_tag: software-product-function>sap-cloud-application-programming-model --- -[ACCORDION-BEGIN [Step 1: ](Create the Annotations File)] +[ACCORDION-BEGIN [Step 1: ](Create the annotations file)] It is a best practice to maintain the UI annotations in a separate file referencing your CAP service. So, go ahead and create that file. -On the **left-hand pane** of **SAP Business Application Studio**, select the `srv` folder, then click on the **three dots** to the right of the project name and select **New File**. +On the **left-hand pane** of **SAP Business Application Studio**, (1) select the `srv` folder, then (2) click on the **three dots** to the right of the project name and (3) select **New File**. ![Figure 1 – Create New File](create-file.png) @@ -41,7 +41,7 @@ On the **dialog** name the file `projman-service-ui.cds` and click **OK**. [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 2: ](Code the CDS Annotations)] +[ACCORDION-BEGIN [Step 2: ](Code the CDS annotations)] Copy and paste the **code snippet below** into the recently created file: @@ -639,7 +639,7 @@ annotate service.Status @(Capabilities : { [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 3: ](Understand the Value Help Annotations)] +[ACCORDION-BEGIN [Step 3: ](Understand the value help annotations)] The code from the previous step contains all required CDS annotations to make the UI look and behave like expected by the business rules defined in the [**group introduction and preparation**](cap-extend-sfsf-intro). @@ -662,7 +662,7 @@ Therefore, to filter the records in the second value help so only members of the [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 4: ](Test the Application UI)] +[ACCORDION-BEGIN [Step 4: ](Test the application UI)] Finally, it's come the time to test everything that you have done so far! For that, you can rely on the nice **Fiori Preview** feature that's available during development. @@ -717,7 +717,7 @@ Click on the **Save** button in the bottom-right corner to **save the project** [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 5: ](Check Operation Result on SAP SuccessFactors)] +[ACCORDION-BEGIN [Step 5: ](Check operation result on SAP SuccessFactors)] You'll now check what happened on the **SAP SuccessFactors side** after this operation. @@ -738,7 +738,7 @@ Now, search for the Special Assignments block from the profile to verify whether [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 6: ](Execute Other Tests)] +[ACCORDION-BEGIN [Step 6: ](Execute other tests)] The **test sequence** you've executed is the **most important** in the context of extending the SAP SuccessFactors solution with **data flowing in both directions**: from and to SAP SuccessFactors. @@ -759,7 +759,7 @@ If all those tests are successful, then you can say your application is working [DONE] [ACCORDION-END] -[ACCORDION-BEGIN [Step 7: ](Check Your Knowledge)] +[ACCORDION-BEGIN [Step 7: ](Check your knowledge)] [VALIDATE_1] [ACCORDION-END]