I_InhRepairNote
Notes for In-House Repair
I_InhRepairNote is a Basic CDS View that provides data about "Notes for In-House Repair" in SAP S/4HANA. It reads from 2 data sources (I_InHouseRepair, stxh) and exposes 18 fields with key fields CustMgmtObjectType, InHouseRepair, TextObjectType, Language. It has 5 associations to related views. Part of development package CRMS4_REPAIR_BO.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_InHouseRepair | InHouseRepair | inner |
| stxh | stxh | from |
Associations (5)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_BusinessObjType | _CustMgmtObjectType | $projection.CustMgmtObjectType = _CustMgmtObjectType.BusinessObjectType |
| [0..1] | I_TextObjectType | _TextObjectType | $projection.TextObjectType = _TextObjectType.TextObjectType and $projection.TextObjectCategory = _TextObjectType.TextObjectCategory |
| [0..1] | I_TextObjectCategory | _TextObjectCategory | $projection.TextObjectCategory = _TextObjectCategory.TextObjectCategory |
| [0..1] | I_Language | _Language | $projection.Language = _Language.Language |
| [0..1] | I_InHouseRepair | _InHouseRepair | $projection.CustMgmtObjectType = _InHouseRepair.CustMgmtObjectType and $projection.InHouseRepair = _InHouseRepair.InHouseRepair |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Notes for In-House Repair | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| VDM.viewType | #BASIC | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view |
Fields (18)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CustMgmtObjectType | I_InHouseRepair | CustMgmtObjectType | |
| KEY | InHouseRepair | I_InHouseRepair | InHouseRepair | |
| KEY | TextObjectType | stxh | tdid | |
| KEY | Language | stxh | tdspras | |
| InHouseRepairUUID | I_InHouseRepair | InHouseRepairUUID | ||
| TextObjectCategory | stxh | tdobject | ||
| CreatedByUser | stxh | tdfuser | ||
| CreationDate | stxh | tdfdate | ||
| CreationTime | stxh | tdftime | ||
| LastChangedByUser | stxh | tdluser | ||
| LastChangeDate | stxh | tdldate | ||
| LastChangeTime | stxh | tdltime | ||
| InhRepairNoteText | _InoteTemp | text | ||
| _CustMgmtObjectType | _CustMgmtObjectType | |||
| _TextObjectType | _TextObjectType | |||
| _TextObjectCategory | _TextObjectCategory | |||
| _Language | _Language | |||
| _InHouseRepair | _InHouseRepair |
@EndUserText.label: 'Notes for In-House Repair'
@VDM: {
lifecycle.contract.type: #PUBLIC_LOCAL_API,
viewType: #BASIC
}
@AccessControl: {
authorizationCheck: #MANDATORY
}
@Metadata: {
ignorePropagatedAnnotations: true
}
@ObjectModel:{
usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}
}
define view entity I_InhRepairNote
as select from stxh as stxh
inner join I_InHouseRepair as InHouseRepair on InHouseRepair.InHouseRepairCharUUID = stxh.tdname
// We need an empty string field for the text. String fields cannot be created as "cast('' as systring)...".
// Hence, we implement a dummy join that never returns a matching record but provides the string field (which then is null).
left outer to one join crms4t_note_temp as _InoteTemp on _InoteTemp.id = stxh.tdname
association [0..1] to I_BusinessObjType as _CustMgmtObjectType on $projection.CustMgmtObjectType = _CustMgmtObjectType.BusinessObjectType
association [0..1] to I_TextObjectType as _TextObjectType on $projection.TextObjectType = _TextObjectType.TextObjectType
and $projection.TextObjectCategory = _TextObjectType.TextObjectCategory
association [0..1] to I_TextObjectCategory as _TextObjectCategory on $projection.TextObjectCategory = _TextObjectCategory.TextObjectCategory
association [0..1] to I_Language as _Language on $projection.Language = _Language.Language
association [0..1] to I_InHouseRepair as _InHouseRepair on $projection.CustMgmtObjectType = _InHouseRepair.CustMgmtObjectType
and $projection.InHouseRepair = _InHouseRepair.InHouseRepair
{
@ObjectModel.foreignKey.association: '_CustMgmtObjectType'
key InHouseRepair.CustMgmtObjectType as CustMgmtObjectType,
key InHouseRepair.InHouseRepair as InHouseRepair,
@ObjectModel.foreignKey.association: '_TextObjectType'
key stxh.tdid as TextObjectType,
@Semantics.language: true
@ObjectModel.foreignKey.association: '_Language'
key stxh.tdspras as Language,
InHouseRepair.InHouseRepairUUID as InHouseRepairUUID,
@ObjectModel.foreignKey.association: '_TextObjectCategory'
stxh.tdobject as TextObjectCategory,
stxh.tdfuser as CreatedByUser,
stxh.tdfdate as CreationDate,
stxh.tdftime as CreationTime,
stxh.tdluser as LastChangedByUser,
stxh.tdldate as LastChangeDate,
stxh.tdltime as LastChangeTime,
@Semantics.text: true
_InoteTemp.text as InhRepairNoteText,
_CustMgmtObjectType,
_TextObjectType,
_TextObjectCategory,
_Language,
_InHouseRepair
}
where
stxh.tdobject = 'CRM_ORDERH'
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