A_ServiceOrderTemplateItem
Service Order Template Items
A_ServiceOrderTemplateItem is a Composite CDS View that provides data about "Service Order Template Items" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 26 fields with key fields ServiceOrderTemplate, ServiceOrderTemplateItem. It has 8 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentItemEnhcd | ServiceOrderTemplateItem | from |
Associations (8)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | A_ServiceOrderTmplItemRefObj | _ReferenceObject | $projection.ServiceOrderTemplate = _ReferenceObject.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _ReferenceObject.ServiceOrderTemplateItem |
| [0..*] | A_ServiceOrderTmplItemText | _Text | $projection.ServiceOrderTemplate = _Text.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _Text.ServiceOrderTemplateItem |
| [1] | A_ServiceOrderTemplate | _ServiceOrderTemplate | $projection.ServiceOrderTemplate = _ServiceOrderTemplate.ServiceOrderTemplate |
| [0..1] | E_ServiceDocumentItem | _Extension | _Extension.ServiceCategory = 'BUS2000116' and $projection.ServiceOrderTemplate = _Extension.ServiceOrderItem and $projection.ServiceOrderTemplateItem = _Extension.ServiceLineExternalID |
| [0..*] | A_SrvcOrdTmplItemUserStatus | _SrvcOrdTmplItemUserStatus | $projection.ServiceOrderTemplate = _SrvcOrdTmplItemUserStatus.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _SrvcOrdTmplItemUserStatus.ServiceOrderTemplateItem |
| [0..*] | A_SrvcOrdTmplItemPartner | _Partner | $projection.ServiceOrderTemplate = _Partner.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _Partner.ServiceOrderTemplateItem |
| [0..*] | A_SrvcOrdTmplItemDuration | _Duration | $projection.ServiceOrderTemplate = _Duration.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _Duration.ServiceOrderTemplateItem |
| [0..*] | A_SrvcOrdTmplItemAppointment | _Appointment | $projection.ServiceOrderTemplate = _Appointment.ServiceOrderTemplate and $projection.ServiceOrderTemplateItem = _Appointment.ServiceOrderTemplateItem |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Service Order Template Items | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.sqlViewName | ASRVORDTMPLITM | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.deleteEnabled | true | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (26)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceOrderTemplate | ServiceDocument | ||
| KEY | ServiceOrderTemplateItem | ServiceDocumentItem | ||
| ServiceOrderTemplateItemUUID | ServiceDocumentItemUUID | |||
| SrvcOrdTmplItmDescription | ServiceDocumentItemDescription | |||
| ServiceObjectType | ServiceObjectType | |||
| ServiceDocumentItemObjectType | ServiceDocumentItemObjectType | |||
| Language | Language | |||
| Product | OriginallyRequestedProduct | |||
| Quantity | ServiceDocumentItemQuantity | |||
| QuantityUnit | ServiceDocItemQuantityUnit | |||
| SrvcOrdTmplItmCategory | ServiceDocItemCategory | |||
| SrvcDocItmValdtyStartDateTime | SrvcDocItmValdtyStartDateTime | |||
| SrvcDocItmValdtyEndDateTime | SrvcDocItmValdtyEndDateTime | |||
| PersonResponsible | ResponsibleEmployee | |||
| SrvcOrdTmplItmIsReleased | ServiceDocumentItemIsReleased | |||
| ParentServiceOrderTemplateItem | _ParentServiceDocItem | ServiceDocumentItem | ||
| SrvcDocItmPartReferenceItem | SrvcDocItmPartReferenceItem | |||
| SrvcDocItmApptReferenceItem | SrvcDocItmApptReferenceItem | |||
| SrvcDocItmApptRefObjectUUID | SrvcDocItmApptRefObjectUUID | |||
| _ReferenceObject | _ReferenceObject | |||
| _Text | _Text | |||
| _ServiceOrderTemplate | _ServiceOrderTemplate | |||
| _SrvcOrdTmplItemUserStatus | _SrvcOrdTmplItemUserStatus | |||
| _Partner | _Partner | |||
| _Duration | _Duration | |||
| _Appointment | _Appointment |
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Service Order Template Items'
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
sqlViewName: 'ASRVORDTMPLITM',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
createEnabled: true,
updateEnabled: true,
deleteEnabled: true,
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #XXL
}
}
@Metadata.ignorePropagatedAnnotations: true
define view A_ServiceOrderTemplateItem
as select from I_ServiceDocumentItemEnhcd as ServiceOrderTemplateItem
association [0..*] to A_ServiceOrderTmplItemRefObj as _ReferenceObject on $projection.ServiceOrderTemplate = _ReferenceObject.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _ReferenceObject.ServiceOrderTemplateItem
association [0..*] to A_ServiceOrderTmplItemText as _Text on $projection.ServiceOrderTemplate = _Text.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _Text.ServiceOrderTemplateItem
association [1] to A_ServiceOrderTemplate as _ServiceOrderTemplate on $projection.ServiceOrderTemplate = _ServiceOrderTemplate.ServiceOrderTemplate
//Extensibility
association [0..1] to E_ServiceDocumentItem as _Extension on _Extension.ServiceCategory = 'BUS2000116'
and $projection.ServiceOrderTemplate = _Extension.ServiceOrderItem
and $projection.ServiceOrderTemplateItem = _Extension.ServiceLineExternalID
association [0..*] to A_SrvcOrdTmplItemUserStatus as _SrvcOrdTmplItemUserStatus on $projection.ServiceOrderTemplate = _SrvcOrdTmplItemUserStatus.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _SrvcOrdTmplItemUserStatus.ServiceOrderTemplateItem
association [0..*] to A_SrvcOrdTmplItemPartner as _Partner on $projection.ServiceOrderTemplate = _Partner.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _Partner.ServiceOrderTemplateItem
association [0..*] to A_SrvcOrdTmplItemDuration as _Duration on $projection.ServiceOrderTemplate = _Duration.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _Duration.ServiceOrderTemplateItem
association [0..*] to A_SrvcOrdTmplItemAppointment as _Appointment on $projection.ServiceOrderTemplate = _Appointment.ServiceOrderTemplate
and $projection.ServiceOrderTemplateItem = _Appointment.ServiceOrderTemplateItem
{
/* ORDERADM_I */
key ServiceDocument as ServiceOrderTemplate,
key ServiceDocumentItem as ServiceOrderTemplateItem,
ServiceDocumentItemUUID as ServiceOrderTemplateItemUUID,
ServiceDocumentItemDescription as SrvcOrdTmplItmDescription,
ServiceObjectType,
ServiceDocumentItemObjectType,
Language,
OriginallyRequestedProduct as Product,
@Semantics: { quantity : {unitOfMeasure: 'QuantityUnit'} }
ServiceDocumentItemQuantity as Quantity,
ServiceDocItemQuantityUnit as QuantityUnit,
@ObjectModel.sapObjectNodeTypeReference: 'ServiceDocumentItemCategory'
ServiceDocItemCategory as SrvcOrdTmplItmCategory,
SrvcDocItmValdtyStartDateTime,
SrvcDocItmValdtyEndDateTime,
ResponsibleEmployee as PersonResponsible,
/* STATUS */
ServiceDocumentItemIsReleased as SrvcOrdTmplItmIsReleased,
_ParentServiceDocItem.ServiceDocumentItem as ParentServiceOrderTemplateItem,
//case ServiceDocumentItemStatus
//when 'C' then 'X'
//else ''
//end as SrvcOrdTmplItmIsCompleted,
case ServiceDocumentItemIsOpen
when '' then
case ServiceDocumentItemIsReleased
when '' then 'X' else ''
end
else ''
end as SrvcOrdTmplItmIsCompleted,
//Inheritance of complex set
@ObjectModel.readOnly: true
SrvcDocItmPartReferenceItem,
@ObjectModel.readOnly: true
SrvcDocItmApptReferenceItem,
@ObjectModel.readOnly: true
SrvcDocItmApptRefObjectUUID,
//Associations
_ReferenceObject,
_Text,
_ServiceOrderTemplate,
_SrvcOrdTmplItemUserStatus,
//@feature: 'BF:API_FULLSCOPE'
_Partner,
_Duration,
_Appointment
}
where
ServiceObjectType = 'BUS2000116' // Service Process
and ServiceDocumentItemIsQuotation is initial
and ServiceDocumentTemplateType is not initial
and RefInHouseRepairIsExisting is initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SERVICEDOCUMENTITEMENHCD"
],
"ASSOCIATED":
[
"A_SERVICEORDERTEMPLATE",
"A_SERVICEORDERTMPLITEMREFOBJ",
"A_SERVICEORDERTMPLITEMTEXT",
"A_SRVCORDTMPLITEMAPPOINTMENT",
"A_SRVCORDTMPLITEMDURATION",
"A_SRVCORDTMPLITEMPARTNER",
"A_SRVCORDTMPLITEMUSERSTATUS",
"E_SERVICEDOCUMENTITEM"
],
"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