A_ServiceOrderTemplate
Service Order Template
A_ServiceOrderTemplate is a Composite CDS View that provides data about "Service Order Template" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentEnhcd) and exposes 31 fields with key field ServiceOrderTemplate. It has 9 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentEnhcd | ServiceOrderTemplate | from |
Associations (9)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | A_ServiceOrderTemplateItem | _Item | $projection.ServiceOrderTemplate = _Item.ServiceOrderTemplate |
| [0..*] | A_ServiceOrderTmplPersonResp | _PersonResponsible | $projection.ServiceOrderTemplate = _PersonResponsible.ServiceOrderTemplate |
| [0..*] | A_ServiceOrderTmplRefObject | _ReferenceObject | $projection.ServiceOrderTemplate = _ReferenceObject.ServiceOrderTemplate |
| [0..*] | A_ServiceOrderTmplText | _Text | $projection.ServiceOrderTemplate = _Text.ServiceOrderTemplate |
| [0..1] | E_ServiceDocument | _Extension | _Extension.ServiceCategory = 'BUS2000116' and $projection.ServiceOrderTemplate = _Extension.ServiceOrder |
| [0..*] | A_SrvcOrdTmplUserStatus | _SrvcOrdTmplUserStatus | $projection.ServiceOrderTemplate = _SrvcOrdTmplUserStatus.ServiceOrderTemplate |
| [0..*] | A_SrvcOrdTmplPartner | _Partner | $projection.ServiceOrderTemplate = _Partner.ServiceOrderTemplate |
| [0..*] | A_SrvcOrdTmplDuration | _Duration | $projection.ServiceOrderTemplate = _Duration.ServiceOrderTemplate |
| [0..*] | A_SrvcOrdTmplAppointment | _Appointment | $projection.ServiceOrderTemplate = _Appointment.ServiceOrderTemplate |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Service Order Template | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.sqlViewName | ASRVORDTMPL | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.representativeKey | ServiceOrderTemplate | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (31)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceOrderTemplate | ServiceDocument | ||
| ServiceOrderTemplateUUID | ServiceDocumentUUID | |||
| ServiceOrderTemplateType | ServiceDocumentType | |||
| ServiceObjectType | ServiceObjectType | |||
| SrvcOrdTmplDescription | ServiceDocumentDescription | |||
| ServiceDocumentTemplateType | ServiceDocumentTemplateType | |||
| SrvcDocTemplateSearchTermText | SrvcDocTemplateSearchTermText | |||
| Language | Language | |||
| ServiceDocumentPriority | ServiceDocumentPriority | |||
| SrvcDocTmplValdtyStartDateTime | SrvcDocTmplValdtyStartDateTime | |||
| SrvcDocTmplValdtyEndDateTime | SrvcDocTmplValdtyEndDateTime | |||
| SrvcOrdTmplIsReleased | ServiceDocumentIsReleased | |||
| ServiceOrderType | ServiceObjectType | |||
| ServiceDocumentType | ServiceDocumentType | |||
| SalesOrganizationOrgUnitID | SalesOrganizationOrgUnitID | |||
| SalesOrganization | SalesOrganization | |||
| SalesOfficeOrgUnitID | SalesOfficeOrgUnitID | |||
| SalesGroupOrgUnitID | SalesGroupOrgUnitID | |||
| EnterpriseServiceOrganization | EnterpriseServiceOrganization | |||
| DistributionChannel | DistributionChannel | |||
| Division | Division | |||
| SalesOffice | SalesOffice | |||
| SalesGroup | SalesGroup | |||
| _Item | _Item | |||
| _PersonResponsible | _PersonResponsible | |||
| _ReferenceObject | _ReferenceObject | |||
| _Text | _Text | |||
| _SrvcOrdTmplUserStatus | _SrvcOrdTmplUserStatus | |||
| _Partner | _Partner | |||
| _Duration | _Duration | |||
| _Appointment | _Appointment |
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Service Order Template'
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
sqlViewName: 'ASRVORDTMPL',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'ServiceOrderTemplate',
createEnabled: true,
updateEnabled: true,
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #L
}
}
@Metadata.ignorePropagatedAnnotations: true
define view A_ServiceOrderTemplate
as select from I_ServiceDocumentEnhcd as ServiceOrderTemplate
association [0..*] to A_ServiceOrderTemplateItem as _Item on $projection.ServiceOrderTemplate = _Item.ServiceOrderTemplate
association [0..*] to A_ServiceOrderTmplPersonResp as _PersonResponsible on $projection.ServiceOrderTemplate = _PersonResponsible.ServiceOrderTemplate
association [0..*] to A_ServiceOrderTmplRefObject as _ReferenceObject on $projection.ServiceOrderTemplate = _ReferenceObject.ServiceOrderTemplate
association [0..*] to A_ServiceOrderTmplText as _Text on $projection.ServiceOrderTemplate = _Text.ServiceOrderTemplate
//Extensibility
association [0..1] to E_ServiceDocument as _Extension on _Extension.ServiceCategory = 'BUS2000116'
and $projection.ServiceOrderTemplate = _Extension.ServiceOrder
association [0..*] to A_SrvcOrdTmplUserStatus as _SrvcOrdTmplUserStatus on $projection.ServiceOrderTemplate = _SrvcOrdTmplUserStatus.ServiceOrderTemplate
association [0..*] to A_SrvcOrdTmplPartner as _Partner on $projection.ServiceOrderTemplate = _Partner.ServiceOrderTemplate
association [0..*] to A_SrvcOrdTmplDuration as _Duration on $projection.ServiceOrderTemplate = _Duration.ServiceOrderTemplate
association [0..*] to A_SrvcOrdTmplAppointment as _Appointment on $projection.ServiceOrderTemplate = _Appointment.ServiceOrderTemplate
{
key ServiceDocument as ServiceOrderTemplate,
ServiceDocumentUUID as ServiceOrderTemplateUUID,
@ObjectModel.sapObjectNodeTypeReference: 'ServiceDocumentType'
ServiceDocumentType as ServiceOrderTemplateType,
ServiceObjectType,
ServiceDocumentDescription as SrvcOrdTmplDescription,
ServiceDocumentTemplateType,
SrvcDocTemplateSearchTermText,
Language,
@ObjectModel.sapObjectNodeTypeReference: 'ServiceDocumentPriority'
ServiceDocumentPriority,
SrvcDocTmplValdtyStartDateTime,
SrvcDocTmplValdtyEndDateTime,
/* STATUS */
ServiceDocumentIsReleased as SrvcOrdTmplIsReleased,
//case ServiceDocumentStatus
//when 'C' then 'X'
//else ''
//end as SrvcOrdTmplIsCompleted,
case ServiceDocumentIsOpen
when '' then
case ServiceDocumentIsReleased
when '' then 'X' else ''
end
else ''
end as SrvcOrdTmplIsCompleted,
ServiceObjectType as ServiceOrderType,
ServiceDocumentType,
/* ORG */
/********************************************************/
/********* OP Specific Fields **************************/
@feature: 'BF:API_FULLSCOPE'
SalesOrganizationOrgUnitID,
SalesOrganization,
@feature: 'BF:API_FULLSCOPE'
SalesOfficeOrgUnitID,
@feature: 'BF:API_FULLSCOPE'
SalesGroupOrgUnitID,
@feature: 'BF:API_FULLSCOPE'
@ObjectModel.sapObjectNodeTypeReference: 'EnterpriseServiceOrganization'
EnterpriseServiceOrganization,
/********************************************************/
DistributionChannel,
@ObjectModel.sapObjectNodeTypeReference: 'Division'
Division,
SalesOffice,
SalesGroup,
//Associations
_Item,
_PersonResponsible,
_ReferenceObject,
_Text,
_SrvcOrdTmplUserStatus,
//@feature: 'BF:API_FULLSCOPE'
_Partner,
_Duration,
_Appointment
}
where
ServiceObjectType = 'BUS2000116' // Service Process
and ServiceDocumentIsQuotation is initial
and ServiceDocumentTemplateType is not initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SERVICEDOCUMENTENHCD"
],
"ASSOCIATED":
[
"A_SERVICEORDERTEMPLATEITEM",
"A_SERVICEORDERTMPLPERSONRESP",
"A_SERVICEORDERTMPLREFOBJECT",
"A_SERVICEORDERTMPLTEXT",
"A_SRVCORDTMPLAPPOINTMENT",
"A_SRVCORDTMPLDURATION",
"A_SRVCORDTMPLPARTNER",
"A_SRVCORDTMPLUSERSTATUS",
"E_SERVICEDOCUMENT"
],
"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