A_ServiceQuotation
Service Quotation
A_ServiceQuotation is a Composite CDS View that provides data about "Service Quotation" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentEnhcd) and exposes 38 fields with key field ServiceQuotation. It has 11 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ServiceDocumentEnhcd | ServiceQuotation | from |
Associations (11)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | A_ServiceQuotationItem | _Item | $projection.ServiceQuotation = _Item.ServiceQuotation |
| [0..*] | A_ServiceQtanPersonResp | _PersonResponsible | $projection.ServiceQuotation = _PersonResponsible.ServiceQuotation |
| [0..*] | A_ServiceQtanRefObject | _ReferenceObject | $projection.ServiceQuotation = _ReferenceObject.ServiceQuotation |
| [0..*] | A_ServiceQuotationText | _Text | $projection.ServiceQuotation = _Text.ServiceQuotation |
| [0..*] | A_ServiceQtanPriceElement | _PricingElement | $projection.ServiceQuotation = _PricingElement.ServiceQuotation |
| [0..*] | A_ServiceQtanFUPSrvcOrd | _FollowUpServiceOrder | $projection.ServiceQuotation = _FollowUpServiceOrder.ServiceQuotation |
| [0..1] | I_CustMgmtExtRefID | _CustMgmtExtRef | $projection.ServiceQuotation = _CustMgmtExtRef.CustMgmtDocument and _CustMgmtExtRef.CustMgmtObjectType = ServiceObjectType and _CustMgmtExtRef.CustMgmtExtRefIDType = '0009' |
| [0..1] | P_SrvcQtanWithSglFUPSrvcOrd | _RefServiceOrder | $projection.ServiceQuotationUUID = _RefServiceOrder.ServiceQuotationUUID and $projection.ServiceQuotation = _RefServiceOrder.ServiceQuotation |
| [0..1] | I_ServiceDocumentPredecessor | _RefServiceContract | $projection.ServiceQuotationUUID = _RefServiceContract.ServiceDocumentUUID and _RefServiceContract.ServiceDocPrdcssrBusObjType = 'BUS2000112' |
| [0..1] | E_ServiceDocument | _Extension | _Extension.ServiceCategory = 'BUS2000116' and $projection.ServiceQuotation = _Extension.ServiceOrder |
| [0..*] | A_SrvcQtanInHouseRepairItem | _InHouseRepairItem | $projection.ServiceQuotation = _InHouseRepairItem.ServiceQuotation |
Annotations (16)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Service Quotation | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.sqlViewName | ASRVQTAN | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.representativeKey | ServiceQuotation | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.deleteEnabled | false | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| AbapCatalog.preserveKey | true | view |
Fields (38)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ServiceQuotation | ServiceDocument | ||
| ServiceQuotationType | ServiceDocumentType | |||
| ServiceQuotationUUID | ServiceDocumentUUID | |||
| ServiceQuotationDescription | ServiceDocumentDescription | |||
| Language | Language | |||
| RequestedServiceStartDateTime | RequestedServiceStartDateTime | |||
| RequestedServiceEndDateTime | RequestedServiceEndDateTime | |||
| SrvcQtanValidityStartDateTime | ||||
| SrvcQtanValidityEndDateTime | ||||
| ServiceQtanExtReference | _CustMgmtExtRef | CustMgmtExtRefID | ||
| ServiceQuotationIsReleased | ServiceDocumentIsReleased | |||
| ServiceQuotationIsRejected | ServiceDocumentIsRejected | |||
| SrvcQuotationRejectionReason | ServiceDocumentRejectionReason | |||
| SalesOrganization | SalesOrganization | |||
| DistributionChannel | DistributionChannel | |||
| Division | Division | |||
| SalesOffice | SalesOffice | |||
| SalesGroup | SalesGroup | |||
| SoldToParty | SoldToParty | |||
| ShipToParty | ShipToParty | |||
| ContactPerson | ContactPerson | |||
| ServiceQtanSuccessorOrder | _RefServiceOrder | ServiceOrder | ||
| RespyMgmtServiceTeam | RespyMgmtServiceTeam | |||
| RespyMgmtServiceTeamName | _ServiceTeamHeader | TeamName | ||
| RespyMgmtGlobalTeamID | _ServiceTeamHeader | RespyMgmtGlobalTeamID | ||
| PaymentTerms | PaymentTerms | |||
| TransactionCurrency | TransactionCurrency | |||
| ServiceDocGrossAmount | ServiceDocGrossAmount | |||
| ServiceDocNetAmount | ServiceDocNetAmount | |||
| ServiceDocTaxAmount | ServiceDocTaxAmount | |||
| ReferenceInHouseRepair | ReferenceInHouseRepair | |||
| _Item | _Item | |||
| _PersonResponsible | _PersonResponsible | |||
| _ReferenceObject | _ReferenceObject | |||
| _Text | _Text | |||
| _PricingElement | _PricingElement | |||
| _FollowUpServiceOrder | _FollowUpServiceOrder | |||
| _InHouseRepairItem | _InHouseRepairItem |
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Service Quotation'
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
sqlViewName: 'ASRVQTAN',
compiler.compareFilter: true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'ServiceQuotation',
createEnabled: true,
updateEnabled: true,
deleteEnabled: false,
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #L
}
}
@Metadata.ignorePropagatedAnnotations: true
@AbapCatalog.preserveKey:true
define view A_ServiceQuotation
as select from I_ServiceDocumentEnhcd as ServiceQuotation
association [0..*] to A_ServiceQuotationItem as _Item on $projection.ServiceQuotation = _Item.ServiceQuotation
association [0..*] to A_ServiceQtanPersonResp as _PersonResponsible on $projection.ServiceQuotation = _PersonResponsible.ServiceQuotation
association [0..*] to A_ServiceQtanRefObject as _ReferenceObject on $projection.ServiceQuotation = _ReferenceObject.ServiceQuotation
association [0..*] to A_ServiceQuotationText as _Text on $projection.ServiceQuotation = _Text.ServiceQuotation
association [0..*] to A_ServiceQtanPriceElement as _PricingElement on $projection.ServiceQuotation = _PricingElement.ServiceQuotation
association [0..*] to A_ServiceQtanFUPSrvcOrd as _FollowUpServiceOrder on $projection.ServiceQuotation = _FollowUpServiceOrder.ServiceQuotation
association [0..1] to I_CustMgmtExtRefID as _CustMgmtExtRef on $projection.ServiceQuotation = _CustMgmtExtRef.CustMgmtDocument
and _CustMgmtExtRef.CustMgmtObjectType = ServiceObjectType
and _CustMgmtExtRef.CustMgmtExtRefIDType = '0009'
association [0..1] to P_SrvcQtanWithSglFUPSrvcOrd as _RefServiceOrder on $projection.ServiceQuotationUUID = _RefServiceOrder.ServiceQuotationUUID
and $projection.ServiceQuotation = _RefServiceOrder.ServiceQuotation
association [0..1] to I_ServiceDocumentPredecessor as _RefServiceContract on $projection.ServiceQuotationUUID = _RefServiceContract.ServiceDocumentUUID
and _RefServiceContract.ServiceDocPrdcssrBusObjType = 'BUS2000112'
// //Extensibility
association [0..1] to E_ServiceDocument as _Extension on _Extension.ServiceCategory = 'BUS2000116'
and $projection.ServiceQuotation = _Extension.ServiceOrder
association [0..*] to A_SrvcQtanInHouseRepairItem as _InHouseRepairItem on $projection.ServiceQuotation = _InHouseRepairItem.ServiceQuotation
{
key ServiceDocument as ServiceQuotation,
ServiceDocumentType as ServiceQuotationType,
ServiceDocumentUUID as ServiceQuotationUUID,
ServiceDocumentDescription as ServiceQuotationDescription,
Language,
RequestedServiceStartDateTime,
RequestedServiceEndDateTime,
cast ( SrvcQtanValidityStartDateTime as crms4_cont_start_dec15 preserving type ) as SrvcQtanValidityStartDateTime,
cast ( SrvcQtanValidityEndDateTime as crms4_cont_end_dec15 preserving type ) as SrvcQtanValidityEndDateTime,
_CustMgmtExtRef.CustMgmtExtRefID as ServiceQtanExtReference,
/* STATUS */
ServiceDocumentIsReleased as ServiceQuotationIsReleased,
case when ServiceDocumentIsOpen = '' and ServiceDocumentIsRejected = ''
then 'X'
else ''
end as ServiceQuotationIsAccepted,
ServiceDocumentIsRejected as ServiceQuotationIsRejected,
ServiceDocumentRejectionReason as SrvcQuotationRejectionReason,
//ServiceDocumentIsQuotation, - system already recongnize its a service quotation based on the configuration.so no need of this field.
/* ORG */
SalesOrganization,
DistributionChannel,
Division,
SalesOffice,
SalesGroup,
/* PARTNER */
SoldToParty,
ShipToParty,
ContactPerson,
_RefServiceOrder.ServiceOrder as ServiceQtanSuccessorOrder,
//_RefServiceContract._ServiceDoc.ServiceDocument as ReferenceServiceContract,
/********************************************************/
/********* Cloud Specific Fields **************************/
/* Dont delete this comment:
This field always should be commented while publishing and add it later as the ATC will not allow to delete the field which is already released.
In end of 2008 we have removed it at the time of API publishing since this field is not required to be exposed to the customer, with help of API
hub team. Later in 2011 it was decided to remove it from odata, which was not possible. Since depreaction was not possible, we added this field
back to the odata. This is a work around until a permanent solution is found*/
@Feature: 'BF:API_ESSENTIALSCOPE'
RespyMgmtServiceTeam,
@Feature: 'BF:API_ESSENTIALSCOPE'
@ObjectModel.readOnly: true
_ServiceTeamHeader.TeamName as RespyMgmtServiceTeamName,
@Feature: 'BF:API_ESSENTIALSCOPE'
_ServiceTeamHeader.RespyMgmtGlobalTeamID as RespyMgmtGlobalTeamID,
/********************************************************/
@ObjectModel.sapObjectNodeTypeReference: 'PaymentTerms'
PaymentTerms,
/* CUMULAT_H */
TransactionCurrency,
@Semantics.amount.currencyCode: 'TransactionCurrency'
ServiceDocGrossAmount,
@Semantics.amount.currencyCode: 'TransactionCurrency'
ServiceDocNetAmount,
@Semantics.amount.currencyCode: 'TransactionCurrency'
ServiceDocTaxAmount,
/********************************************************/
/********* In-House Repair Specific Fields *************/
ReferenceInHouseRepair as ReferenceInHouseRepair,
//Associations
_Item,
_PersonResponsible,
_ReferenceObject,
_Text,
_PricingElement,
_FollowUpServiceOrder,
_InHouseRepairItem
}
where
ServiceObjectType = 'BUS2000116'
and ServiceDocumentIsQuotation = 'X' // Service Process
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