A_VMSVehicle
Vehicle Details
A_VMSVehicle is a Composite CDS View that provides data about "Vehicle Details" in SAP S/4HANA. It reads from 2 data sources (I_SAPClient, I_VMSVehicle) and exposes 62 fields with key field VMSVehicleUUID. It has 20 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_SAPClient | _SAPClient | inner |
| I_VMSVehicle | I_VMSVehicle | from |
Associations (20)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | E_VMSVehicle | _Extension | _Extension.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [1..*] | A_VMSVehicleInvoice | _VMSVehicleInvoice | _VMSVehicleInvoice.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [1..*] | A_VMSVehicleIncomingInvoice | _VMSVehicleIncomingInvoice | _VMSVehicleIncomingInvoice.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [1..*] | A_VMSVehicleToEquipment | _VMSVehicleToEquipment | _VMSVehicleToEquipment.InstalledBaseComponent = $projection.ConfigurationNumber and $projection.Material = _VMSVehicleToEquipment.ClfnObjectID |
| [1..*] | A_VMSVehicleSalesOrder | _VMSVehicleSalesOrder | _VMSVehicleSalesOrder.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [1..*] | A_VMSVehiclePurchaseOrder | _VMSVehiclePurchaseOrder | _VMSVehiclePurchaseOrder.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [1..*] | A_VMSVehicleHistory | _VMSVehicleHistory | _VMSVehicleHistory.VMSVehicleUUID = $projection.VMSVehicleUUID |
| [0..1] | A_VMSVehicleLocation | _VMSVehicleLocation | I_VMSVehicle.VMSVehicleLocation = _VMSVehicleLocation.AddressNumber and _VMSVehicleLocation.AddressNumber <> ' ' |
| [1..*] | A_VMSVehicleStatusText | _VMSVehiclePrimaryStatusText | _VMSVehiclePrimaryStatusText.VMSVehicleStatus = $projection.VMSVehiclePrimaryStatus |
| [1..*] | A_VMSVehicleStatusText | _VMSVehicleSecondaryStatusText | _VMSVehicleSecondaryStatusText.VMSVehicleStatus = $projection.VMSVehicleSecondaryStatus |
| [1..*] | A_VMSVehicleAvailabilityText | _VMSVehicleAvailabilityText | _VMSVehicleAvailabilityText.VMSVehicleAvailabilityStatus = $projection.VMSVehicleAvailabilityStatus |
| [1..*] | A_VMSVehicleCampaignText | _VMSVehCampaignText | _VMSVehCampaignText.VMSVehicleSalesCampaign = $projection.VMSVehicleSalesCampaign |
| [1..*] | A_VMSVehicleSearchAreaText | _VMSVehicleSearchAreaText | _VMSVehicleSearchAreaText.VMSVehicleSearchArea = $projection.VMSVehicleSearchArea |
| [1..*] | A_VMSVehicleSharingLevelText | _VMSVehSharingLevelText | _VMSVehSharingLevelText.VMSVehicleSharingLevel = $projection.VMSVehicleSharingLevel |
| [1..*] | A_VMSVehicleUsageStatusText | _VMSVehUsageStatusText | _VMSVehUsageStatusText.VMSVehicleUsageStatus = $projection.VMSVehicleUsageStatus |
| [1..*] | A_VMSVehicleLocationText | _LocationText | $projection.vmsvehiclelocation = _LocationText.VMSVehicleLocation |
| [1..1] | A_Customer | _Customer | $projection.VMSVehicleCustomer = _Customer.Customer |
| [1..1] | A_Customer | _OrderingParty | $projection.VMSVehicleOrderingParty = _OrderingParty.Customer |
| [1..1] | A_Supplier | _Supplier | $projection.ReferenceVendor = _Supplier.Supplier |
| [1..1] | A_BusinessPartner | _Partner | $projection.VMSVehicleEndCustomer = _Partner.BusinessPartner |
Annotations (13)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | AVMSVEHICLE | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Vehicle Details | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.viewType | #COMPOSITE | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view |
Fields (62)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | VMSVehicleUUID | VMSVehicleUUID | ||
| Material | Material | |||
| VMSDigitalVehicleHubModel | VMSDigitalVehicleHubModel | |||
| VMSVehicleInternalID | VMSVehicleInternalID | |||
| ReferenceVendor | ReferenceVendor | |||
| VMSVehicleBatch | VMSVehicleBatch | |||
| Equipment | Equipment | |||
| VMSVehicleActionDocType | VMSVehicleActionDocType | |||
| Plant | Plant | |||
| PlantName | _plant | PlantName | ||
| StorageLocation | StorageLocation | |||
| StorageLocationName | _storagelocation | StorageLocationName | ||
| ValuationType | ValuationType | |||
| ConfigurationNumber | ConfigurationNumber | |||
| VMSVehiclePrimActionControl | VMSVehiclePrimActionControl | |||
| VMSVehiclePrimaryStatus | VMSVehiclePrimaryStatus | |||
| VMSVehiclePrimStatusDateTime | VMSVehiclePrimStatusDateTime | |||
| VMSVehicleSecdryActionControl | VMSVehicleSecdryActionControl | |||
| VMSVehicleSecondaryStatus | VMSVehicleSecondaryStatus | |||
| VMSVehicleSecdryStatusDateTime | VMSVehicleSecdryStatusDateTime | |||
| VMSVehicleConfdDelivDateTime | VMSVehicleConfdDelivDateTime | |||
| VMSVehicleProductionDateTime | VMSVehicleProductionDateTime | |||
| VMSVehiclePlndDelivDateTime | VMSVehiclePlndDelivDateTime | |||
| VMSVehicleIsArchived | VMSVehicleIsArchived | |||
| VehicleIdentificationNumber | VehicleIdentificationNumber | |||
| VMSVehicleExternalID | VMSVehicleExternalID | |||
| VMSVehicleAvailabilityStatus | VMSVehicleAvailabilityStatus | |||
| VMSVehicleIsVisible | VMSVehicleIsVisible | |||
| VMSVehicleLocation | _VMSVehicleLocation | VMSVehicleLocation | ||
| VMSVehicleCustomer | VMSVehicleCustomer | |||
| VMSVehicleEndCustomer | VMSVehicleEndCustomer | |||
| CreatedByUserName | CreatedByUserName | |||
| VMSVehicleUsageStatus | VMSVehicleUsageStatus | |||
| VMSVehicleSalesCampaign | VMSVehicleSalesCampaign | |||
| VMSVehicleMileageQuantity | VMSVehicleMileageQuantity | |||
| VMSVehicleMileageUsageUnit | VMSVehicleMileageUsageUnit | |||
| VMSVehicleRegistrationDate | VMSVehicleRegistrationDate | |||
| VMSVehicleSearchArea | VMSVehicleSearchArea | |||
| VMSVehicleOrderingParty | VMSVehicleOrderingParty | |||
| VMSVehGrossPrcAmtInVehPrcCrcy | VMSVehGrossPrcAmtInVehPrcCrcy | |||
| VMSVehiclePriceCrcy | VMSVehiclePriceCrcy | |||
| VMSVehicleSharingLevel | VMSVehicleSharingLevel | |||
| VMSVehicleIsUsed | VMSVehicleIsUsed | |||
| LogicalSystem | I_SAPClient | LogicalSystem | ||
| _VMSVehicleInvoice | _VMSVehicleInvoice | |||
| _VMSVehicleIncomingInvoice | _VMSVehicleIncomingInvoice | |||
| _VMSVehicleToEquipment | _VMSVehicleToEquipment | |||
| _VMSVehicleSalesOrder | _VMSVehicleSalesOrder | |||
| _VMSVehiclePurchaseOrder | _VMSVehiclePurchaseOrder | |||
| _VMSVehicleHistory | _VMSVehicleHistory | |||
| _VMSVehiclePrimaryStatusText | _VMSVehiclePrimaryStatusText | |||
| _VMSVehicleSecondaryStatusText | _VMSVehicleSecondaryStatusText | |||
| _VMSVehicleAvailabilityText | _VMSVehicleAvailabilityText | |||
| _VMSVehCampaignText | _VMSVehCampaignText | |||
| _VMSVehicleSearchAreaText | _VMSVehicleSearchAreaText | |||
| _VMSVehSharingLevelText | _VMSVehSharingLevelText | |||
| _VMSVehUsageStatusText | _VMSVehUsageStatusText | |||
| _LocationText | _LocationText | |||
| _Customer | _Customer | |||
| _OrderingParty | _OrderingParty | |||
| _Supplier | _Supplier | |||
| _Partner | _Partner |
@AbapCatalog.sqlViewName: 'AVMSVEHICLE'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Vehicle Details'
@ObjectModel.usageType.serviceQuality : #C
@ObjectModel.usageType.sizeCategory : #XXL
@ObjectModel.usageType.dataClass : #MIXED
@VDM.viewType: #COMPOSITE
@AccessControl.privilegedAssociations : ['_VMSVehicleHistory' ,'_VMSVehicleIncomingInvoice','_VMSVehicleInvoice','_VMSVehiclePurchaseOrder','_VMSVehicleSalesOrder']
@Metadata.ignorePropagatedAnnotations:true
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
define root view A_VMSVehicle
as select from I_VMSVehicle
inner join I_SAPClient as _SAPClient on _SAPClient.sapclient = $session.client
association [1..1] to E_VMSVehicle as _Extension on _Extension.VMSVehicleUUID = $projection.VMSVehicleUUID
association [1..*] to A_VMSVehicleInvoice as _VMSVehicleInvoice on _VMSVehicleInvoice.VMSVehicleUUID = $projection.VMSVehicleUUID
association [1..*] to A_VMSVehicleIncomingInvoice as _VMSVehicleIncomingInvoice on _VMSVehicleIncomingInvoice.VMSVehicleUUID = $projection.VMSVehicleUUID
association [1..*] to A_VMSVehicleToEquipment as _VMSVehicleToEquipment on _VMSVehicleToEquipment.InstalledBaseComponent = $projection.ConfigurationNumber
and $projection.Material = _VMSVehicleToEquipment.ClfnObjectID
association [1..*] to A_VMSVehicleSalesOrder as _VMSVehicleSalesOrder on _VMSVehicleSalesOrder.VMSVehicleUUID = $projection.VMSVehicleUUID
association [1..*] to A_VMSVehiclePurchaseOrder as _VMSVehiclePurchaseOrder on _VMSVehiclePurchaseOrder.VMSVehicleUUID = $projection.VMSVehicleUUID
association [1..*] to A_VMSVehicleHistory as _VMSVehicleHistory on _VMSVehicleHistory.VMSVehicleUUID = $projection.VMSVehicleUUID
association [0..1] to A_VMSVehicleLocation as _VMSVehicleLocation on I_VMSVehicle.VMSVehicleLocation = _VMSVehicleLocation.AddressNumber
and _VMSVehicleLocation.AddressNumber <> ' '
association [1..*] to A_VMSVehicleStatusText as _VMSVehiclePrimaryStatusText on _VMSVehiclePrimaryStatusText.VMSVehicleStatus = $projection.VMSVehiclePrimaryStatus
association [1..*] to A_VMSVehicleStatusText as _VMSVehicleSecondaryStatusText on _VMSVehicleSecondaryStatusText.VMSVehicleStatus = $projection.VMSVehicleSecondaryStatus
association [1..*] to A_VMSVehicleAvailabilityText as _VMSVehicleAvailabilityText on _VMSVehicleAvailabilityText.VMSVehicleAvailabilityStatus = $projection.VMSVehicleAvailabilityStatus
association [1..*] to A_VMSVehicleCampaignText as _VMSVehCampaignText on _VMSVehCampaignText.VMSVehicleSalesCampaign = $projection.VMSVehicleSalesCampaign
association [1..*] to A_VMSVehicleSearchAreaText as _VMSVehicleSearchAreaText on _VMSVehicleSearchAreaText.VMSVehicleSearchArea = $projection.VMSVehicleSearchArea
association [1..*] to A_VMSVehicleSharingLevelText as _VMSVehSharingLevelText on _VMSVehSharingLevelText.VMSVehicleSharingLevel = $projection.VMSVehicleSharingLevel
association [1..*] to A_VMSVehicleUsageStatusText as _VMSVehUsageStatusText on _VMSVehUsageStatusText.VMSVehicleUsageStatus = $projection.VMSVehicleUsageStatus
association [1..*] to A_VMSVehicleLocationText as _LocationText on $projection.vmsvehiclelocation = _LocationText.VMSVehicleLocation
association to A_Plant as _plant on _plant.Plant = $projection.Plant
association to A_StorageLocation as _storagelocation on _storagelocation.Plant = $projection.Plant
and _storagelocation.StorageLocation = $projection.StorageLocation
association [1..1] to A_Customer as _Customer on $projection.VMSVehicleCustomer = _Customer.Customer
association [1..1] to A_Customer as _OrderingParty on $projection.VMSVehicleOrderingParty = _OrderingParty.Customer
association [1..1] to A_Supplier as _Supplier on $projection.ReferenceVendor = _Supplier.Supplier
association [1..1] to A_BusinessPartner as _Partner on $projection.VMSVehicleEndCustomer = _Partner.BusinessPartner
{
key VMSVehicleUUID,
Material,
VMSDigitalVehicleHubModel,
VMSVehicleInternalID,
ReferenceVendor,
VMSVehicleBatch,
Equipment,
VMSVehicleActionDocType,
@ObjectModel.text.element: ['PlantName','StorageLocationName' ]
Plant,
@Semantics.text:true
_plant.PlantName,
StorageLocation,
@Semantics.text:true
_storagelocation.StorageLocationName,
ValuationType,
ConfigurationNumber,
VMSVehiclePrimActionControl,
@ObjectModel.text.association: '_VMSVehiclePrimaryStatusText'
VMSVehiclePrimaryStatus,
VMSVehiclePrimStatusDateTime,
VMSVehicleSecdryActionControl,
@ObjectModel.text.association: '_VMSVehicleSecondaryStatusText'
VMSVehicleSecondaryStatus,
VMSVehicleSecdryStatusDateTime,
VMSVehicleConfdDelivDateTime,
VMSVehicleProductionDateTime,
VMSVehiclePlndDelivDateTime,
VMSVehicleIsArchived,
VehicleIdentificationNumber,
VMSVehicleExternalID,
@ObjectModel.text.association: '_VMSVehicleAvailabilityText'
VMSVehicleAvailabilityStatus,
VMSVehicleIsVisible,
@ObjectModel.text.association : '_LocationText'
_VMSVehicleLocation.VMSVehicleLocation ,
VMSVehicleCustomer,
VMSVehicleEndCustomer,
CreatedByUserName,
@ObjectModel.text.association: '_VMSVehUsageStatusText'
VMSVehicleUsageStatus,
@ObjectModel.text.association: '_VMSVehCampaignText'
VMSVehicleSalesCampaign,
@Semantics.quantity.unitOfMeasure: 'VMSVehicleMileageUsageUnit'
VMSVehicleMileageQuantity,
VMSVehicleMileageUsageUnit,
VMSVehicleRegistrationDate,
@ObjectModel.text.association: '_VMSVehicleSearchAreaText'
VMSVehicleSearchArea,
VMSVehicleOrderingParty,
@Semantics.amount.currencyCode : 'VMSVehiclePriceCrcy'
VMSVehGrossPrcAmtInVehPrcCrcy,
@Semantics.currencyCode: true
VMSVehiclePriceCrcy,
@ObjectModel.text.association: '_VMSVehSharingLevelText'
VMSVehicleSharingLevel,
VMSVehicleIsUsed,
_SAPClient.LogicalSystem,
_VMSVehicleInvoice,
_VMSVehicleIncomingInvoice,
_VMSVehicleToEquipment,
_VMSVehicleSalesOrder,
_VMSVehiclePurchaseOrder,
_VMSVehicleHistory,
@Consumption.hidden: true
_VMSVehiclePrimaryStatusText,
@Consumption.hidden: true
_VMSVehicleSecondaryStatusText,
@Consumption.hidden: true
_VMSVehicleAvailabilityText,
@Consumption.hidden: true
_VMSVehCampaignText,
@Consumption.hidden: true
_VMSVehicleSearchAreaText,
@Consumption.hidden: true
_VMSVehSharingLevelText,
@Consumption.hidden: true
_VMSVehUsageStatusText,
@Consumption.hidden: true
_LocationText,
@Consumption.hidden: true
_Customer,
@Consumption.hidden: true
_OrderingParty,
@Consumption.hidden: true
_Supplier,
@Consumption.hidden: true
_Partner
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"A_PLANT",
"A_STORAGELOCATION",
"A_VMSVEHICLELOCATION",
"I_SAPCLIENT",
"I_VMSVEHICLE"
],
"ASSOCIATED":
[
"A_BUSINESSPARTNER",
"A_CUSTOMER",
"A_PLANT",
"A_STORAGELOCATION",
"A_SUPPLIER",
"A_VMSVEHICLEAVAILABILITYTEXT",
"A_VMSVEHICLECAMPAIGNTEXT",
"A_VMSVEHICLEHISTORY",
"A_VMSVEHICLEINCOMINGINVOICE",
"A_VMSVEHICLEINVOICE",
"A_VMSVEHICLELOCATION",
"A_VMSVEHICLELOCATIONTEXT",
"A_VMSVEHICLEPURCHASEORDER",
"A_VMSVEHICLESALESORDER",
"A_VMSVEHICLESEARCHAREATEXT",
"A_VMSVEHICLESHARINGLEVELTEXT",
"A_VMSVEHICLESTATUSTEXT",
"A_VMSVEHICLETOEQUIPMENT",
"A_VMSVEHICLEUSAGESTATUSTEXT",
"E_VMSVEHICLE"
],
"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