Status

OwnerYILMAZTURK-ext, Gokhan 
StakeholdersLEIGHTON-ext, Dean 
Jira Request ID

Jira Development ID

High- Level Specification

ParameterValue
Application SystemSAP S/4HANA ROW, SAP S/4HANA China, SAP S/4HANA CUI
Business Process Reference07.05.01.01. Manage Asset, Faults and Incidents

Functional Overview

For requesting maintenance on regular activities, the app “Create Maintenance Request”  (App ID : F1511A) will be used. However, when requesting Project Work, we will need to use a different WDA application called “Create Maintenance Notification” (App ID : W0006). In this application, we will need to make WBS Element field mandatory. Also after the WBS Element is entered, we will need to validate if this WBSE is a valid one. (e.g. Accounting Indicator must be set etc.)


Scope and Objectives

This development has 3 main objectives as follows;

  1. Launchpad Design & App Tile Configuration: In A2D, the app “Create Maintenance Request”  (App ID : F1511A) will be used for raising maintenance requests on regular activities. However, we will need a separate Fiori application to raise "Project Work". For this purpose, the WDA application called “Create Maintenance Notification” (App ID : W0006) will be used with certain launchpad configuration which is mentioned in detail at the Configuration Details section. This app will be targeted only for certain user groups (e.g. Project Managers), which is also explained in the Security, Integrity and Controls section.
  2. Enabling certain standard fields and making them mandatory: In standard app “Create Maintenance Request”  (App ID : F1511A), WBS Element field (which is also a standard field) is not present. It is also not supplied with OData Services/CDS Views the app is using as well. On the other hand, the field is available in the “Create Maintenance Notification” (App ID : W0006) which is intended to be used for this process but hidden. Therefore, this field needs to be configured to become visible and also have to be a mandatory field via configuration that is explained in the Configuration Details section. 
  3. Performing checks and validations during saving the notification: Once the WBS element field is entered, a validation has to be done to check if the WBS Element is a valid one. A valid WBS Element has Accounting indicator as true.


Process Flow Diagram


Insert the flowchart and fill in the steps

Step

Description

Comment

1User launches app “Create Maintenance Notification” (App ID : W0006) using a following parameter: "QMART=Y3", initial screen where the notification type needs to be selected, will be skipped.
2User enters Notification Detailse.g. Notification Description, Technical Object, Maintenance Plant, Company Code, etc.
3User enters WBS Element in Locations Tab
4Enhancement triggers checks for WBS Element to see if it's validif not it will populate an error
5User saves the notification


Assumptions

The “Create Maintenance Notification” (App ID : W0006) will only be used for creating Y3 Notifications via a targeted group of users. For regular maintenance activities, “Create Maintenance Request”  (App ID : F1511A) app will be used instead.

Dependencies

WBS Element needs to be created prior to create a Y3 Notification as a prerequisite.

Security, Integrity and Controls

To detail the security requirements for processing this enhancement, any data integrity issues associated with the object and the teams that will be responsible for processing the object, i.e. authorization/roles required to who can execute the enhancements, etc.

- Custom Tables, enhancement, transaction codes, programs, Web Dynpro Application, Code Data Services (CDS), Open Data Protocol (OData), BI reports, and Functional Modules need to have at least one authority check either standard or custom. (custom should be an exception)

- All custom tables will be maintained in a certain Authorization Group (example: ZFIN, etc.)

- In the case of transaction codes an additional check other than the object S_TCODE is required. You can use SU24 to find the related authorization objects to check.

All other WRICEFs

- If the authorization check is already performed in the calling Programs, this section can be filled as “Follow calling programs authorization check” (example : BADI to redirect DMS to OpenText, in which the calling Manage Purchase requisition Fiori App already performed authorization check)

- If the authorization check is not checked in any of the development, this section should be filled with the proposed authorization check. You can refer to SU24 to see the standard authorization objects. (example: full custom Fiori App to enable user to download/upload the project plan)

Since the app intended to be used, “Create Maintenance Notification” (App ID : W0006), is a standard one. The authorization checks it has is sufficient. Nevertheless, this app is intended for a targeted user group, therefore, following Launchpad design changes needs to be applied from Security, Integrity and Controls perspective;

  • The app can be copied from Technical Catalog: SAP_TC_EAM_BE_APPS or from the business catalog: SAP_EAM_BC_NTF_MW to a new Business Catalog: ZSAP_EAM_BC_NTF_MW_PS, Description: EAM - Notification for Projects. The new business catalog and fiori app tile than can be added to the dedicated role created for this process.

The details of Fiori Tile configuration will be mentioned in the Configuration Requirements section below.

Configuration Requirements

Below you can find the details for the App Tile Configuration;

ConfigurationValue
TitleCreate Maintenance Notification
Subtitlefor Projects
KeywordsEAMS_WDA_ORDNTF_OIF
Iconsap-icon://request
Use semantic object navigationTrue
Semantic ObjectMaintenanceNotification
Actioncreate
Parameters

sap-ui-tech-hint=WDA&QMART=Y3


Specify the configuration requirements for this object. Like in case of substitution/ routine specify the configuration needed

Language Requirements

Since this is a standard Fiori app, there is no language requirement for the UI. However, the error messages that will be used, needs to be translated accordingly.

Specify the language requirements for this object. Specify the required language and type of translation, like labels, data.

Special Requirements

Specify any special requirements or considerations that may impact the enhancement based on specific locations, regulatory compliance or system limitations. Clearly outline requirements e.g. localization rules for countries like China

If the enhancement interacts with third-party systems such as Icertis, describe any additional integration, security or authentication considerations that must be taken into account.


Design Rationale

Functional Requirements


Detail the functional requirements that are desired to be achieved by the Enhancement compared to current functionality

Proposed Technology to Use

The UI Extensensions referred in this FS, can be done via Key User Extensions for Web Dynpro Apps.

Typically, an enhancement will be based on an existing SAP BADI / user exit. If this is the case, please provide the proposed details of the BADI / user exit.

Data Source Considerations

Include an overview of the source

TableField NameComments/Calculation/Field Manipulation











Data Validation Considerations

Include an overview of the data validation requirement

TableField NameComments/Calculation/Field Manipulation













Custom Tables

N/A

Master Data

<Title Custom Table 1>

<Include an overview of the table and what it’s used for>

FieldDescriptionData Type/LengthValidation rule/ Value Help









Configuration Table

Title Configuration Table 1

Include an overview of the table and what it’s used for

FieldDescriptionData Type/LengthValidation rule/ Value Help








Selection Screen Enhancement

This section will give the details on the selection screen parameters, parameter type and whether it’s obligatory or not. This section can be used to define the Import Export parameters for Function Module or User Exit or Screens.

Field NameDescription

Select:

Option or Parameter

Check box or Radio button

Import or Export

Data Type/LengthDefault Value/ Validation rule/ Value HelpSelection Logic













Processing Logic

This section defines the detailed step-by-step logic implemented within the BAdI/User Exit to process the data received from the standard SAP program and database retrieval. It explains the operations performed on the data, the expected outcomes in different scenarios and how the system should behave in response to specific conditions.



Volumetrics

Provide volumetrics details: Initial load volumes, Number of Records, Expected Frequency, Expected Long term Growth)


Performance Considerations

Specify if there are any specific performance factors that need to be taken into consideration during development i.e. enhancement must be able to be executed by 10 users at the same time, etc.



Error Handling

Detail how errors will be handled: Notification, Restart/ Recovery and Re-Processing Procedures


Testing

How to Test

Please provide some guidance and/or test data to help the developer unit test the enhancement. Please include both positive and negative testing (to validate error situations handling). The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again or explain how to create new input data to the test. The developer will need logons for test users representing the various roles within the approval process.

Test Conditions and Expected Results

IDConditionExpected Result










Test Considerations/Dependencies

List any considerations essential for application test planning (e.g., test this before ABC along with DEF separate from GHI). If the development encompasses a user interface, explain how to test it. List any insights as to how this component could be tested the most efficiently.


Other Information


Development Details

Package

Package NameParent Package




Enhancement Implementation

Enhancement TypeStandard Definition NameCustom Implementation NameDesign Rationale Reference









Other Development Objects

Object TypeObject NamePurpose/High Level LogicDesign Rationale Reference








Appendix

Custom Authorization Group Naming Convention

This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.

ABAP

ZFIZMMZPSZCOZSDZBCZFIZCA
TABLESZFITZMMTZPSTZCOTZSDTZBCTZFITZCAT

See also

Insert links and references to other documents which are relevant when trying to understand this decision and its implications. Other decisions are often impacted, so it's good to list them here with links. Attachments are also possible but dangerous as they are static documents and not updated by their authors.


Change log