Files
arena-plm-fiori/app/README.md
T
2026-09-16 01:47:28 -07:00

4.6 KiB

Application Details

Generation Date and Time
Mon Sep 14 2026 12:49:13 GMT-0700 (Pacific Daylight Time)
App Generator
SAP Fiori Application Generator
App Generator Version
1.32.0
Generation Platform
Visual Studio Code
Template Used
List Report Page V4
Service Type
File
Metadata File
metadata.xml
Module Name
app
Application Title
Arena PLM Engineering Changes Approval Flow
Namespace
com.minicircuits
UI5 Theme
sap_horizon
UI5 Version
1.152.0
Enable TypeScript
True
Add Eslint configuration
True, see https://www.npmjs.com/package/@sap-ux/eslint-plugin-fiori-tools#rules for the eslint rules.
Main Entity
ChangeApprovals

Service binding (provisional)

The app binds to the RAP UI service binding, not the A2X binding the worker uses. The single source of truth for the service identity is the header comment of webapp/localService/mainService/metadata.xml:

Item Value
Service binding (OData V4 - UI) ZUI_ARENA_CHANGE_APPROVAL_O4
Service definition ZUI_ARENA_CHANGE_APPROVAL
Service URL /sap/opu/odata4/sap/zui_arena_change_approval_o4/srvd/sap/zui_arena_change_approval/0001/
Schema namespace / alias com.sap.gateway.srvd.zui_arena_change_approval_o4.v0001 / SAP__self
Entity type / entity set ChangeApproval_Type / ChangeApproval

The first URL segment and the schema namespace are derived from the service binding name, the segment after srvd/sap/ from the service definition name - strongly indicated by the tenant's /sap/opu/odata4/sap/api_currencyexchangerate/srvd_a2x/sap/currencyexchangerate/0001 (namespace com.sap.gateway.srvd_a2x.api_currencyexchangerate.v0001) and SAP Help's /sap/opu/odata4/sap/api_product/srvd_a2x/sap/product/0002 [source: sap-docs sap-help loio 5f45f125dfe84c20beb18f5de1512f5a, verified 2026-09-14].

webapp/manifest.json (sap.app.dataSources.mainService.uri, routing) and webapp/annotations/annotation.xml (edmx:Reference, every Annotations Target, every DataFieldForAction.Action) must stay in sync with it. JSON cannot carry comments, so the manifest references this note instead.

Provisional - namespace = binding name is strongly indicated, not proven; reconcile namespace, entity type suffix and URL segments against the live $metadata of the RAP UI service binding at PRD V-2 before deploy.

Status model and actions

Status: PENDING -> APPROVED -> EXECUTING -> SYNCED | FAILED; REJECTED is terminal; FAILED -> retrySync -> EXECUTING. approve/reject are enabled only for PENDING, retrySync only for FAILED (mocked via IsApprovable / IsRetriable, which stand in for the Core.OperationAvailable RAP emits for ( features : instance ) actions - PRD RAP-1). Actions are offered on the object page header only; the list report table is display-only (selectionMode: "None").

Launchpad

sap.app.crossNavigation.inbounds declares the intent ArenaChangeApproval-manage; on deployment to the ABAP environment the launchpad app descriptor item (target mapping + tile) is generated from it, and an IAM app / business catalog / business role make it visible [source: sap-docs /btp-cloud-platform/30-development/sap-fiori-applications-in-the-abap-environment-1d9deef, verified 2026-09-14]. sap.fiori.registrationIds stays empty: it holds SAP Fiori IDs of SAP-delivered apps and is not required for a custom app (only archeType is mandatory) [source: sap-docs /sapui5/04_Essentials/manifest-descriptor-for-applications-components-and-libraries-be0cf40, verified 2026-09-14].

Dev server: npm run start-mock / npm run int-test bind to port 8082 (8080 is taken on the dev host). Mock data lives in webapp/localService/mainService/data/ChangeApproval.json (generateMockData: false), 8 rows covering every status.

app

An SAP Fiori application.

Starting the generated app

  • This app has been generated using the SAP Fiori tools - App Generator, as part of the SAP Fiori tools suite. To launch the generated application, run the following from the generated application root folder:
    npm start
  • It is also possible to run the application using mock data that reflects the OData Service URL supplied during application generation. In order to run the application with Mock Data, run the following from the generated app root folder:
    npm run start-mock

Pre-requisites:

  1. Active NodeJS LTS (Long Term Support) version and associated supported NPM version. (See https://nodejs.org)