This blog details about how to extract statistical, usage and other app based information for all the existing FIORI and UI5 based apps connected via SAP NWG(Netweaver Gateway).
Fiori and UI5 based apps related details(Technical Name, Entities, operations, users, device types etc) are stored in Metering table(Ex: /IWFND/L_MET_DAT ).
Before proceeding further lets look at below jobs related to metering tables.
SAP_IWFND_METERING_AGG job : SAP has provided this standard jobs to aggregate the data from Metering tables and store the same in aggregate tables( Ex: /IWFND/L_METAGR, /IWFND/SU_ASTATS etc) . This job aggregates data on Year and monthly basis. Generally, this job will be scheduled on daily basis.
SAP_IWFND_METERING_DEL Job : This is standard job . This job will retain only latest 2 day’s data in Metering tables and deletes the data prior to two days. This is recommended by SAP for better performance of apps as all the backend calls(ODATA) requests done within apps will be recorded in this table.
Requirement:
Our Requirement is to extract details of the apps based on the given date range. Input can be days/months/years.Output should be in months/years. If Input date range is greater than 1 year then show output Year wise else month wise.
Following Insights to be displayed in the app.
1.Active Users
2.Device Types
3.New Users
4.User Location
5.App Response Time
6.App Errors
7.App operations
Prerequisite:
Device type(Device from which app is accessed i,e Desktop/Mobile(Android/iPhone/Others) and user who accessed the app are not available in any of the aggregated tables so we have suspended
SAP_IWFND_METERING_DEL Job to retain past data in metering tables.
Alternatively, you can also store required details from Metering tables in Custom table as per your requirement(daily/monthly) and access the data from custom table.
Solution:
- To view the usage/operations of Fiori and UI5 app's, develop a new app Ex:Fiori Dashboard in Fiori.
- Create ODATA service to extract the data from NWG system and pass this URI to Fiori to view the details in the Fiori App.For Each Insight create 1 entity.If different entities access same database tables,for better performance you can Use Extended Entity option and pass multiple entities data as single output.
- Create a custom table to store below details. This table will be useful in identifying the new users assigned to the app as the “App Role Name” is stored in this table, and also to store External service name of the app so in future if the "Fiori Dashboard" app should show the details of any new app, we can just add the app details in this table without making any changes to the code.
- App Service Name- External service name
- App Technical name- Technical Name of the app.
- App Role – Role assigned to app.
App External Service Name and Technical name will be available in /iwfnd/maint_service.
Note: If Namespace is available for app then in tables “External service Name” along with “Name space” will be stored.
Source Tables Details:
As the Fiori/UI5 details are available in NWG system. below most of the tables other than HRMS tables are NWG system tables.
Insight Name |
Insight Description |
Data Source |
Limitation |
|
User Devices |
Count of Type of devices used like iPhone, android, windows mobile, desktop etc. |
Table : /IWFND/L_MET_DAT
Field : CONSUMER_TYPE
In the field data, if 'mobile' string is there then the App is accessed by mobile device else from Desktop.
For Mobile Devices,Device Type like Android,iphone etc will be available in data string.
|
|
|
Active Users |
Count of distinct users using the app |
Table : /IWFND/L_MET_DAT
Field:USERID |
|
|
New Users |
Count of new users assigned to the app based on the Fiori roles assigned in the given period. |
Tables:CDPOS
Or
AGR_USERS |
If user leaves organization his/her SAP access and Roles will be deleted so we cannot find that user details from AGR_USERS.
If your organization deletes user details after users leaves organization then instead of AGR_USERS, you can use CDPOS tables based on below Keys
CDPOS:
OBJECTCLAS = 'PFCG'
OBJECTID = App Role Name
TABNAME = 'AGR_USERS'
FNAME = 'KEY'
CHNGIND = 'I' or 'D' |
|
|
Response Time |
Provides the response time of the App recorded in NWG |
Table :
/IWFND/SU_ASTATSField:AVG_GWTOTAL |
Data in table is stored Year and Month wise hence even though few days of a month are given in Input, data of the month will be shown |
|
|
User location |
Count of the users utilizing the app based on country / region. |
HR Tables : PA0105, PA001,T500T,T500P
Source(SAP system that stores HRMS data) |
|
|
|
Total Logins |
Total count of user logins to the app in the given month/year |
Table: /IWFND/L_METAGR
Field: CALLS_TOTAL |
Data in table is stored Year and Month wise hence even though few days of a month are given in Input, aggregated logins of that particular month will be shown in the Insight |
|
|
|
|
|
|
App Errors |
Number of instances with App front end (UI) issues. |
Table :/IWFND/SU_ERRLOG
Field: ERROR_TEXT
Error_CNT : "No of Instances of same error" |
|
|
Output:
Month Wise
Year Wise: