A_ChemicalForSafetyInfo
Chemicals for Safety Relevant Information
A_ChemicalForSafetyInfo is a Composite CDS View that provides data about "Chemicals for Safety Relevant Information" in SAP S/4HANA. It reads from 2 data sources (I_ChemicalRevision, I_EHSRiskRoot) and exposes 9 fields with key fields ChemicalUUID, EHSLocationUUID. It has 5 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_ChemicalRevision | ChemicalRevision | inner |
| I_EHSRiskRoot | EHSRiskRoot | inner |
Associations (5)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..*] | A_ChemicalNameText | _ChemicalNameText | $projection.ChemicalUUID = _ChemicalNameText.ChemicalUUID |
| [0..1] | A_GHSSignalWordForSafetyInfo | _GHSSignalWord | $projection.ChemicalUUID = _GHSSignalWord.ChemicalUUID |
| [0..*] | A_GHSSignalWordText | _GHSSignalWordText | $projection.ghssignalword = _GHSSignalWordText.GHSSignalWord |
| [0..*] | A_GHSClassfctnLblForSafetyInfo | _GHSClassificationLabel | $projection.ChemicalUUID = _GHSClassificationLabel.ChemicalUUID |
| [1..1] | A_EHSLocationForSafetyInfo | _EHSLocation | $projection.EHSLocationUUID = _EHSLocation.EHSLocationUUID |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | ACHEMFORSRI | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| EndUserText.label | Chemicals for Safety Relevant Information | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.representativeKey | ChemicalUUID | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.usageType.dataClass | #MIXED | view |
Fields (9)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ChemicalUUID | I_EHSRiskRoot | ChemicalUUID | |
| KEY | EHSLocationUUID | I_EHSRiskRoot | EHSLocationUUID | |
| EHSJobUUID | I_EHSRiskRoot | EHSJobUUID | ||
| EHSJobUUIDHex | ||||
| GHSSignalWord | _GHSSignalWord | GHSSignalWord | ||
| _ChemicalNameText | _ChemicalNameText | |||
| _GHSSignalWordText | _GHSSignalWordText | |||
| _GHSClassificationLabel | _GHSClassificationLabel | |||
| _EHSLocation | _EHSLocation |
@AbapCatalog.sqlViewName: 'ACHEMFORSRI'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY // SAP note 3355458, 14.07.2023
@EndUserText.label: 'Chemicals for Safety Relevant Information'
@Metadata.ignorePropagatedAnnotations: true
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
representativeKey: 'ChemicalUUID',
usageType:{ serviceQuality: #D,
sizeCategory: #M,
dataClass: #MIXED }
}
define view A_ChemicalForSafetyInfo as select distinct from I_EHSRiskRevision as EHSRiskRevision
inner join I_EHSRiskRoot as EHSRiskRoot on EHSRiskRoot.EHSRiskUUID = EHSRiskRevision.EHSRiskUUID
inner join I_ChemicalRevision as ChemicalRevision on EHSRiskRoot.ChemicalUUID = ChemicalRevision.ChemicalUUID
association [1..*] to A_ChemicalNameText as _ChemicalNameText on $projection.ChemicalUUID = _ChemicalNameText.ChemicalUUID
association [0..1] to A_GHSSignalWordForSafetyInfo as _GHSSignalWord on $projection.ChemicalUUID = _GHSSignalWord.ChemicalUUID
association [0..*] to A_GHSSignalWordText as _GHSSignalWordText on $projection.ghssignalword = _GHSSignalWordText.GHSSignalWord
association [0..*] to A_GHSClassfctnLblForSafetyInfo as _GHSClassificationLabel on $projection.ChemicalUUID = _GHSClassificationLabel.ChemicalUUID
association [1..1] to A_EHSLocationForSafetyInfo as _EHSLocation on $projection.EHSLocationUUID = _EHSLocation.EHSLocationUUID
{
@ObjectModel.text.association: '_ChemicalNameText'
key EHSRiskRoot.ChemicalUUID,
@ObjectModel.foreignKey.association: '_EHSLocation'
key EHSRiskRoot.EHSLocationUUID, // SAP note 3355458, 14.07.2023
EHSRiskRoot.EHSJobUUID, // SAP note 3355458, 14.07.2023
bintohex(EHSRiskRoot.EHSJobUUID) as EHSJobUUIDHex, // SAP note 3355458, 14.07.2023
@ObjectModel.text.association: '_GHSSignalWordText'
_GHSSignalWord.GHSSignalWord,
//exposed text and foreign key associations
_ChemicalNameText,
_GHSSignalWordText,
_GHSClassificationLabel,
_EHSLocation
} where EHSRiskRoot.ChemicalUUID != hextobin( '00000000000000000000000000000000' ) // SAP note 3355458, 14.07.2023
and EHSRiskRevision.EHSRiskStatus = '03' //display only chemicals for released risks, SAP note 3355458, 14.07.2023
and ChemicalRevision.RevisionStartDate <= $session.system_date //consider the current chemical revision only
and ChemicalRevision.RevisionEndDate >= $session.system_date
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"A_GHSSIGNALWORDFORSAFETYINFO",
"I_CHEMICALREVISION",
"I_EHSRISKREVISION",
"I_EHSRISKROOT"
],
"ASSOCIATED":
[
"A_CHEMICALNAMETEXT",
"A_EHSLOCATIONFORSAFETYINFO",
"A_GHSCLASSFCTNLBLFORSAFETYINFO",
"A_GHSSIGNALWORDFORSAFETYINFO",
"A_GHSSIGNALWORDTEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA