EHS stands for Environment, Health and Safety. The Goal of EHS is to protect employees, the public, the environment and to comply with applicable laws and protect the Company's reputation. EHS departments, of some companies are responsible for environmental protection, occupational health and safety.
This application offers a set of reports about EHS specifications and documents.
Assessment Report FFS: https://drive.google.com/open?id=1GMdZG9r5NZTGLFTTp-R0dIg9AGv5vYcNDOksMO204_A
Shared Pure Sub BUR: https://drive.google.com/open?id=1-LzduYSYn6ZepXOemnTzB5nsC8fbYpOsGs9AtCgfJQU
Report Shipping FFS: https://drive.google.com/open?id=1335-xQFGQLE4V1QMHN-rTDzQkDVq3lhEJJCb8LSxH2Y
Tool Leader + IT leader of the application:
Reporting Coordinator: Célia Gonzalez-Roux
Around 50 users. Some reports are only for the use of the EHS Admin team (Role menu EHS - Admin).
Provide some history of the application : When was it created ? What was the initial project ? Who was the original requestor ? If possible provide link to the project information
List of application role + menu role and explanation if we have several applications role with specials rules.
| Role Code | Role Description | Explanation |
|---|---|---|
| ZR_RCS_CA_M51 | Role menu for EHS admin team reports | |
| Role menu for EHS reports "documents generation" and "SDS shipping" | ||
| ZBI_RCS_EHS_A02 | Environment, Health and Safety Analysis - End User Role | Application Role:
|
Link to the BW Catalog of role
https://drive.google.com/open?id=10GEfKYqrT1eeTO_uHYAheL1GX7L5y_pvH0KQU64qh5I
Reporting documentation drive folder:
https://drive.google.com/open?id=0B03hryo6pwqdTUtSSldyOXB0U1k
SAP system logs all the changes that are made within the Specification Management (changes on substances properties, compositions…). This flow extracts these changes, from the table EST_CHANGE_DOCS which updated using the program RC1_CHANGE_DOCS_GET.

Zone determination (R1)
General case: the zone is obtained from the characteristics (C_ATWRT) attribute.
Special case: if the modification type is "Delete" and the characteritic value is empty, the zone is obtained from the Value Assignement Type (C_ESTCAT) attribute.
PURE_SUB determination when LIST_SUB inheritance (R2)
Some data are managed at LIST_SUB level and transfer to the PURE_SUB by inheritance link. In that case, the modification recovered in EST_CHANGE_DOCS table is at LIST_SUB level but not at PURE_SUB level.
In order to recover the LIST_SUB modifications at PURE_SUB level, the inheritance link are extracted into BW (DSO_EHSG). Each modification at LIST_SUB level is duplicated for each corresponding PURE_SUB. The LIST_SUB specification is kept in infoobject EHS_SPEC and the PURE_SUB specification in infoobject C_SPEC2. The flag "Inherited data" (C_SUBFLG) is filled.
Modification type (R3)
The field "Change Indicator Flag" (C_CHIND) is used to know how the EHS data have been modified: deletion, first load (insert), update, inactivation.
The change indicator field (CHNGIND) in source table EST_CHANGE_DOCS is used to determine a different value in C_CHIND, depending of the other lines on the change document:
Modification type = Insert
If records with TABNAM = ESTCAT have CHNGIND = U, and have a record with TABNAM = ESTDU and CHNGIND = I and with same MASTER_RECN, then modification type field = Insert.
Modification type = Update
If records with TABNAM = ESTCAT have CHNGIND = U, and do not have records with TABNAM = ESTDU with same MASTER_RECN, then modification type field = Update.
Modification type = Delete
If records with TABNAM = ESTDU have CHNGIND = D, then modification type field = Delete.
Modification type = Inactivate
If we have records with TABNAM = ESTDU, FNAM = ACTVFLG, VALUE_OLD = X and VALUE_NEW is empty, then modification type = Inactivate.
Instance ID determination (R3)
The instance ID on the lines concerning changes on characteristics value or usage is not filled in the table EST_CHANGE_DOCS. That is why the instance ID is determined in the extractor from ESTVA table. However, if the instance is deleted, the corresponding record is first flagged as "deleted" in the tables and then is physically removed from ESTVA. In consequence, to be able to retrieve the instance ID when the instance is deleted, we have to find it in the logs concerning ESTVA table changes => this is done by a look up in the propagation layer DSO DPEHS01 where tabname = "ESTVA".
Datasources customer exit:
Compositions are extracted using specific datasources based on Infosets. A filter in the Value Assignment Type (ESTCAT) allows to restrict the extraction to Legal (EHS_1012_024) and Standard (SAP_EHS_1012_003) compositions.
Full loading is required because data can be deleted in source system database: deletion flags are filled but database entries can be deleted before the loading into BW so we could miss some deletion if we work with delta.

To not delete Data Propagation DSO content
DSO content must not be deleted because deleted compositions and specifications are not kept in the source system, so it is not possible to recover historical data.
Historical data is only needed for the DSO DBEHAD02 which is used for EHS KPI.
Inherited compositions
Inherited compositions (from a template specification) are not extracted by the datasource “DTS_EHS_LEGAL_COMPO”. Another datasource “DTS_EHS_COMPO_INHERITED” was created in order to extract these inherited compositions.
No technical rules were given to handle the case of breaking an inheritance as this case should not occur.
"General" authorization group (R1)
If the key of the authorization group is ZZ_BU*X or ZZ_BU*R, the “general” authorization group is the authorization group without the last character (example : authorization group = ZZ_BU_01R => “general” authorization group = ZZ_BU_01). We check the existence of the “general” authorization group in MD 0EHS_AUTH.
Else, the "general" authorization group is the authorization group.
Report shipping dataflow:
SAP shipping process send SDS (Safety Data Sheet) to customers when Rhodia Legacy or Solvay legacy sold a product to them
SDS shipping trigger is the sale order. When a sale order is created, the SDS is sent to customer.
This flow extracts these shipping data from tables CVDDH (EHS: Report shipping orders), CVDDP (EHS: Parameter Values for Report Shipping) and VBAK (Sales Documents).
Full loading is required because data in EHS tables can be deleted in source system database: deletion flags are filled but database entries can be deleted before the loading into BW so we could miss some deletion if we work with delta.
To avoid a daily complete deletion and reloading, a selective deletion of the 12 last months in DSO and cubes is done and only this perimeter is reloaded.

Filter on status (C_ESTATUS) in Business Propagation Layer
Only status required for the reporting are updated:
Filter on document types (C_EHDOKAR) in Business Propagation Layer
The following type are excluded:
Data from sales documents (sales org, sales group, sales office) (R1)
The link between the report shipping order and the sales document exists in table CVDDP (EHS: Parameter Values for Report Shipping).
The sales document is filled in the field VALUE of the table CVDDP lines with ATTRIB = "VBELN".
The datasource DTS_ZEHS_CVDDP_S (resp. DTS_ZEHS_RS_CVDDP for Rhodia) is based on a view on tables CVDDP and VBAK (Sales Documents), restricted on CVDDP-ATTRIB = "VBELN".
Characteristic (C_ATWRT):
Attributes:
C_ATWRT attributes are loading from a flat file.
The file contains 2 informations :
The file loading is not scheduled.
Flat files :
Value Assignment Type :
Characteristic :
Dependencies with other application (BW, QV, Externals tools like PVelocity or Dynasis etc...
Main Process Chains
Process Chain | Code | Type | Frequency | Comments |
|---|---|---|---|---|
| EHS Daily Transacional | EHS_TRANSACIONAL | SLAVE |
|
|
| EHS Assessment Report | PC_EHS_ASSESSMENT | SLAVE |
|
|
| EHS Dailly MD Attributes | EHS_MASTER_DATA | SLAVE |
|
|
| EHS: TD - D - Admin | PC_EHS_ADMIN_01 | SLAVE |
|
|
| EHS Revision Documents | PC_EHS_REV_DOC | SLAVE |
|
|
Detail of frequency : monthly; weekly or else
if possible, give some information on average process chain duration, amount of data loaded and total data volume example: daily process chain loaded in 30 min, weekly chain loaded in 1h15, with around 2k to 10k lines in DELTA mode for a total of 10M lines in cube. The purpose is to give a general overview of the volume of data managed y the application
| Key Figure | Estimation |
|---|---|
| ~ Average Process Chain Runtime | |
| ~ Average nb of rows loaded per load | |
| ~ Total nb of rows loaded (if full) | |
| ~ Average Runtime for 10k lines |
All records.
Query end user documentation should be created in the public "Customer Support Wiki" space under the corresponding BW application page : BW - Application. Technical query query documentation, if necessary should be added as a sub-page of this documentation using the BW Technical Query Documentation template.
List the most important and complex queries only with a link to the documentation
Give detail on all complex functionalities: list most important and/or complex KPI, query jump, alerts
Indicate if there are broadcasts and give some details on the broadcast settings.
Give the list and explanation on the known, not-solved, bugs.
List recurring procedures
Detail planned major evolution if already known. Example: complete decommissioning of application is planned in 2017 / Extension to solvay perimeter planned in 2nd semester of 2016