CRM and CX Blog Posts by Members
cancel
Showing results for 
Search instead for 
Did you mean: 
SerkanKara
Explorer
5,572

 

Hello Everyone,

This blog provides comprehensive information about the "Custom Fields" or "Custom Fields and Logic" applications available in the SAP S/4HANA Fiori platform. The blog extensively covers topics such as the creation, usage, functionalities in the GUI, transport, import-export, and authorizations of custom fields. Additionally, it includes details on data source usage areas, functionalities in the GUI, import-export, and logic process. The blog addresses the errors encountered during these processes and necessary authorizations.

 

 

Authorizations and Controls

 

Custom Fields and Logic

To utilize the "Custom Fields and Logic" app for creating custom fields, data sources, or logic, the following catalogs and groups need to be added to the role in the "PFCG":

 

SAP_BASIS_BC_EXT:

SerkanKara_52-1718440328899.png

 

SAP_BASIS_BCG_EXT:

SerkanKara_53-1718440350089.png

 

SAP_BASIS_TCR_T :

SerkanKara_55-1718440397664.png

 

After assigning the necessary authorizations, the application will appear on the "App Finder" page. Additionally, the application needs to be added to the group to ensure it is accessible to users who have been granted the required permissions.

SerkanKara_56-1718440428541.png

 

 

OData Services

The following OData services need to be activated. Controls for this purpose are provided on the page after accessing the "/IWFND/MAINT_SERVICE" transaction

code.

  • APS_CUSTOM_FIELD_MAINTENANCE_SRV
  • APS_DATA_SOURCE_EXTENSION_SRV
  • SBLE_BADI_CTX_REGISTRY_SRV

If the service is not active, it can be activated using the “ICF Node” button. If there is an error in the service or it needs to be edited, assistance can be obtained from the buttons located above.

SerkanKara_57-1718440474800.png

 

 

ICF nodes

The following services need to be enabled. Service edits are made using the transaction code “SICF”.

component

Technical Name

Path to ICF Node

SAP UI5 Component

SAP UI5 Application

 

NW_APS_EXT_CFL

/sap/bc/ui5_ui5/sap/nw_aps_ext_cfl

 

nw.core.extcfl

 

 

NW_APS_EXT_LIB*

 

/sap/bc/ui5_ui5/sap/nw_aps_ext_lib

 

 

 

NW_APS_LIB*

 

/sap/bc/ui5_ui5/sap/nw_aps_lib

 

 

 

SerkanKara_58-1718440506165.png

SerkanKara_59-1718440515849.png

 

                            

Set Adapt UI Button

/UIF/SAP_RTA_PLUGIN:

SerkanKara_60-1718440570324.png

SerkanKara_61-1718440577336.png

 

 

Custom Fields and Logic App

With this application:

  • Create data source extensions,
  • Create custom fields,
  • Enable custom database fields for usage in SAP Fiori applications,
  • Create custom logic.

 

 

Custom Fields

In this tab:

-  Create a new field,

-  Edit field,

-  View detailed information for the field,

-  Define business scenariosField assignment to UI or reports,

- Check API and IDOC services,

- Enable for Mail and Form templates.

Note: To run extensibility scenarios end-to-end, the user must have the “ SAP_UI_FLEX_KEY_USER ” role.

 

After entering the business context, type and identifiers, click the " Create and edit " button.

SerkanKara_62-1718440631109.png

 

With this tab, contexts are added based on the scenario.

SerkanKara_63-1718440653590.png

 

For example, when a field is created as a service header and extended to an activity scenario, a new field specific to the activity will automatically be created.

SerkanKara_64-1718440661387.png

 

OData APIs are activated with the “ OData APIs ” tab.

SerkanKara_65-1718440672342.png

 

SOAP APIs are activated with the “ SOAP APIs ” tab.

SerkanKara_66-1718440731796.png

 

BAPIs are displayed with the “BAPIs” tab.

SerkanKara_67-1718440748751.png

 

The forms activated with the “ Form Templates ” tab.

SerkanKara_68-1718440758317.png

 

 

Using Created Fields

Click the “Show Configurable Areas” button and select the area to which the field will be added.

SerkanKara_69-1718440773950.png

 

Click the “Show Available Fields” button. The field is selected from the open block and added with the “+” button. Then, use the “Show Field Properties” button to adjust properties.

-To change the position of the field, simply drag and drop it to the desired location within the form,

-To make it mandatory, toggle the corresponding option in the field properties,

-To change the text displayed for the field, you can edit the "Label" property in the field properties.

SerkanKara_70-1718440813050.png

 

 

 

View custom fields in context

All custom fields within the contexts can be displayed using the “SCFD_REGISTRY” transaction code. For instance, click on the service header.

SerkanKara_71-1718440823033.png

 

Enter “ CRMS4S_SERV_H_INCL_EEW_PS ”.

SerkanKara_72-1718440844973.png

 

All published fields appear within this structure.

SerkanKara_73-1718440858397.png

 

 

Field Change History

Changes to the data of the fields can be checked using the “SCFD_CHANGE_LOG” transaction code.

SerkanKara_74-1718440873495.png

 

 

Control and Consistency of Objects

The consistency of objects is checked by selecting the following properties using the “SCFD_CHECK_EXT_OBJ” transaction code.

SerkanKara_75-1718440885485.png

 

Error, checks etc. results look like the following.

SerkanKara_76-1718441006239.png

 

 

Access and Control of Custom Fields via GUI

Custom fields display and checking are provided with the “SCFD_FIELDVIEWER” transaction code. It includes the following properties and more.

  • Field definition,
  • Enhancement information,
  • Change history,
  • Where is it used?
  • Fiori UI usages,
  • Error information,
  • Version update.
  • SerkanKara_77-1718441021943.png
 

 

Export Fields as XML

Export in XML format using the transaction code “SCFD_MD_DOWNLOAD”. Select the desired fields and export them with the "Export Metadata" button.

SerkanKara_79-1718441078450.png

 

Example export :

SerkanKara_80-1718441092182.png

 

 

 

Import Fields as XML

Custom fields can be createdorting the XML format file using the transaction code “SCFD_MD_UPLOAD”.

SerkanKara_82-1718441141860.png

 

 

Field Archive Information

Display archive information for the fields using the transaction code “SCFD_RECOVERY

SerkanKara_83-1718441507012.png

 

 

Active-Inactive Properties of Fields Via GUI

Inactive fields can be activated using the “SCFD_EUI” transaction code. If there is an error, its details can be displayed.

SerkanKara_84-1718441526374.png

 

 

Field Extensibility Information

Details regarding the extensibility of the field can be accessed with the “SCFD_SEARCH” transaction code.

SerkanKara_85-1718441550902.png

 

 

Transport of Custom Field     

The Configure Software Packages application is used to include the created custom field in the request. The following steps are required for this application:

The "APS_EXT_ATO_PK_CFG_SRV" oData service is added and the user is assigned the "SAP_NW_APS_EXT_ATO_PK_CFG_APP" role. The following services are enabled with the SICF transaction code.

  • /sap/bc/ui5_ui5/sap/nw_aps_ato_conf
  • /sap/bc/ui5_ui5/sap/nw_aps_ato_lib
  • /sap/bc/ui5_ui5/sap/nw_aps_lib  

 

The package is added.

SerkanKara_86-1718441619457.png

 

The request is selected.

SerkanKara_87-1718441653795.png

 

After selecting the field, click the "Reassign to Package" button. The field is added to the request.

SerkanKara_88-1718441667070.png

 

Custom Field Text Table

Click on the data element from the SE11 transaction code.

SerkanKara_89-1718441692505.png

 

Click on the domain.

SerkanKara_90-1718441708215.png

 

Open the table in the value table.

SerkanKara_91-1718441723457.png

 

The table contains texts of field.

SerkanKara_92-1718441737902.png

 

 

 

Data Source

Data Sources Export/Import Usage Areas:

In SAP Fiori applications, data sources are utilized through various methods. These include OData services, CDS views, SAP Gateway, BAPIs, SAP HANA Calculation Views, RAP, and various backend APIs. These methods enable flexible, powerful, and user-friendly data access solutions in Fiori applications.

 

  1. OData Services

OData (Open Data Protocol) is a widely used protocol for data exchange between SAP Fiori applications and data sources. OData services provide access to the data source and support CRUD (Create, Read, Update, Delete) operations.

 

  1. Core Data Services (CDS)

CDS is an SAP technology used to define data models on SAP HANA. CDS views define the database-based business logic and relationships. These views can be exposed as OData services and used by Fiori applications.

 

  1. SAP Gateway and BAPI (Business Application Programming Interface)

SAP Gateway acts as a middleware to access data in SAP systems. BAPIs are standardized interfaces to business functions in SAP ERP systems.

 

  1. SAP HANA Calculation Views

SAP HANA Calculation Views are used to model data and business logic on SAP HANA. These views can be directly used or exposed as OData services for Fiori applications.

 

  1. RESTful ABAP Programming Model (RAP)

RAP is a model used in modern ABAP development to facilitate the creation and management of OData services. RAP enables integration between Fiori applications and data sources.

 

  1. Backend System APIs

Various SAP systems (e.g., SuccessFactors, Ariba, Concur) provide APIs to access data and business processes. These APIs can be REST or SOAP-based, and Fiori applications can use them to access data sources.

 

A new data source is created using the “Data Source Extensions” tab in the “Custom Fields and Logic” app.

 

SerkanKara_93-1718441809885.png

 

The fields desired to be included in the data source are added from the "Available Fields" breakdown. The field name can be changed using the "Custom Text" checkbox. Search help is added with the “Value Help” checkbox. It is activated by clicking the “Publish” button.

SerkanKara_94-1718441821055.png

 

NOTE1: Adding additional standard fields might enable end users to access restricted data in the extended data source, without having the required authorization.

NOTE2: Depending on the field path and the nature of the selected fields, data retrieval might become slower after a data source extension has been added.

NOTE3: Fiori must be restarted after adding a new field to the data source.

 

 

Displaying and Controlling the Data Source via GUI

Data sources are displayed, and detailed access is provided with the “SCFD_DE_COCKPIT” transaction code. It includes the following properties and more.

  • General information,
  • Enhancement information,
  • Change history,
  • Where is it used?
  • Fiori UI usages,
  • Error information,
  • Version update.
 

SerkanKara_95-1718441885265.png

 

Creating a Data Source with XML

The data source template with XML extension is imported with the “ SCFD_DE_MD_UPLOAD ” transaction code. To download the data source template, it can be with the “ Export Metadata ” button in the “ SCFD_DE_COCKPIT ” transaction code.

 

 

Example XML :

SerkanKara_97-1718441925510.png

 

After importing, the data source is created by clicking the "Import" button.

Imported XML :

SerkanKara_98-1718441956207.png

 

 

Logic

With the logic, field-specific rules, error messages, controls, etc. can be defined. These are typically implemented using ABAP. For example, you might select "Service document check before save" to define a check that should be performed before saving a service document.

SerkanKara_99-1718441975426.png

 

Standard fields are present in the "serviceheader" and "serviceitems" entities, while custom fields are found in the "serviceheader_extension" and "serviceitems_extension" entities.

If the "BOLUM" field is initial, an error message is displayed

SerkanKara_100-1718441997567.png

 

 There is a message of error type “ CRM_S4_ORDER_MISC ”.

SerkanKara_101-1718442015253.png

 

 

Errors

 

1-     App stuck on loading

When encountering the issue of the application not opening when clicked, you can check for error details using the browser's developer tools (F12). If it's determined that the error is due to a missing alias in the OData services, you can follow these steps:

Access the transaction code “/IWFND/MAINT_SERVICE” to manage OData services.

Select the relevant service from the list. At the bottom right of the screen, there should be a button to add a system nickname. Click on this button and provide the necessary alias or nickname for the system. Save the changes. By adding the system nickname, you are providing a reference for the OData service, which should resolve the error and allow the application to open properly when clicked.

SerkanKara_102-1718442082471.png

 

 

To customize fields and logic implementation, buttons for editing, deleting, etc., are missing

To resolve the issue of missing buttons, follow these steps:

Navigate to SIMG > ABAP Platform > Application Server > System Administration > Configuration: Applications in Software Component UI FOR BASIS APPLICATIONS >Set up the Adaptation Transport Organizer and complete the Adaptation Transport Organizer setup with default data on the following page.

SerkanKara_103-1718442107532.png

 

2-     Getting an error when trying to create logic

SerkanKara_104-1718442126579.png

 

It has been determined that the reason for the above error is that the virus scanning adaptations are active but not active. Since there is no need for virus scanning, active virus scans have been disabled on the page that appears with the " VSCANPROFILE" transaction code.

SerkanKara_105-1718442140953.png

 

The virus scan is executed with the profile empty and virus scanning turned off.

SerkanKara_106-1718442167082.png

 

 

 

2 Comments