A_SalesOrderSimulation

DDL: A_SALESORDERSIMULATION Type: view COMPOSITE

Sales Order Simulation

A_SalesOrderSimulation is a Composite CDS View that provides data about "Sales Order Simulation" in SAP S/4HANA. It reads from 1 data source (I_SalesOrder) and exposes 54 fields with key field SalesOrder. It has 6 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_SalesOrder SalesOrder from

Associations (6)

CardinalityTargetAliasCondition
[0..*] A_SalesOrderItemSimulation _Item _Item.SalesOrder = $projection.SalesOrder
[0..*] A_SalesOrderPartnerSimulation _Partner _Partner.SalesOrder = $projection.SalesOrder
[0..*] A_SalesOrderPrcgElmntSimln _PricingElement _PricingElement.SalesOrder = $projection.SalesOrder
[1..1] A_SalesOrderPricingSimulation _Pricing _Pricing.SalesOrder = $projection.SalesOrder
[1..1] A_SalesOrderCreditSimulation _Credit _Credit.SalesOrder = $projection.SalesOrder
[0..1] E_SalesDocumentBasic _Extension $projection.SalesOrder = _Extension.SalesDocument

Annotations (13)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Sales Order Simulation view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName ASOSIM view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey SalesOrder view
ObjectModel.createEnabled true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
Metadata.ignorePropagatedAnnotations true view

Fields (54)

KeyFieldSource TableSource FieldDescription
KEY SalesOrder SalesOrder
SalesOrderType SalesOrderType
SalesOrganization SalesOrganization
DistributionChannel DistributionChannel
OrganizationDivision OrganizationDivision
SalesGroup SalesGroup
SalesOffice SalesOffice
SalesDistrict SalesDistrict
SoldToParty SoldToParty
CustomerGroup CustomerGroup
AdditionalCustomerGroup1 AdditionalCustomerGroup1
AdditionalCustomerGroup2 AdditionalCustomerGroup2
AdditionalCustomerGroup3 AdditionalCustomerGroup3
AdditionalCustomerGroup4 AdditionalCustomerGroup4
AdditionalCustomerGroup5 AdditionalCustomerGroup5
PurchaseOrderByCustomer PurchaseOrderByCustomer
CustomerPurchaseOrderType CustomerPurchaseOrderType
CustomerPurchaseOrderDate CustomerPurchaseOrderDate
SalesOrderDate SalesOrderDate
TransactionCurrency TransactionCurrency
AccountingDocExternalReference AccountingDocExternalReference
CustomerTaxClassification1 CustomerTaxClassification1
CustomerTaxClassification2 CustomerTaxClassification2
CustomerTaxClassification3 CustomerTaxClassification3
CustomerTaxClassification4 CustomerTaxClassification4
CustomerTaxClassification5 CustomerTaxClassification5
CustomerTaxClassification6 CustomerTaxClassification6
CustomerTaxClassification7 CustomerTaxClassification7
CustomerTaxClassification8 CustomerTaxClassification8
CustomerTaxClassification9 CustomerTaxClassification9
TaxDepartureCountry TaxDepartureCountry
VATRegistrationCountry VATRegistrationCountry
PriceListType PriceListType
CustomerPriceGroup CustomerPriceGroup
SDDocumentReason SDDocumentReason
PricingDate PricingDate
SDPricingProcedure SDPricingProcedure
RequestedDeliveryDate RequestedDeliveryDate
ShippingCondition ShippingCondition
CompleteDeliveryIsDefined CompleteDeliveryIsDefined
ShippingType ShippingType
IncotermsClassification IncotermsClassification
IncotermsTransferLocation IncotermsTransferLocation
IncotermsLocation1 IncotermsLocation1
IncotermsLocation2 IncotermsLocation2
IncotermsVersion IncotermsVersion
ReferenceSDDocument ReferenceSDDocument
CustomerPaymentTerms CustomerPaymentTerms
PaymentMethod PaymentMethod
_Item _Item
_Partner _Partner
_PricingElement _PricingElement
_Pricing _Pricing
_Credit _Credit
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Sales Order Simulation'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'ASOSIM',
  compiler.compareFilter: true
}
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
   representativeKey: 'SalesOrder',
   createEnabled: true,
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #B,
     sizeCategory:   #L
   }
}
@Metadata.ignorePropagatedAnnotations: true

define view A_SalesOrderSimulation
  as select from I_SalesOrder as SalesOrder

  association [0..*] to A_SalesOrderItemSimulation    as _Item           on _Item.SalesOrder = $projection.SalesOrder

  association [0..*] to A_SalesOrderPartnerSimulation as _Partner        on _Partner.SalesOrder = $projection.SalesOrder

  association [0..*] to A_SalesOrderPrcgElmntSimln    as _PricingElement on _PricingElement.SalesOrder = $projection.SalesOrder
  
  association [1..1] to A_SalesOrderPricingSimulation as _Pricing        on _Pricing.SalesOrder = $projection.SalesOrder
  
  association [1..1] to A_SalesOrderCreditSimulation  as _Credit         on _Credit.SalesOrder = $projection.SalesOrder
  
    //Extensibility

    association [0..1] to E_SalesDocumentBasic           as _Extension              on $projection.SalesOrder = _Extension.SalesDocument
{

  key SalesOrder,
  
      SalesOrderType,

      SalesOrganization,
      DistributionChannel,
      OrganizationDivision,

      SalesGroup,
      SalesOffice,
      SalesDistrict,

      SoldToParty,
      
      CustomerGroup,
      AdditionalCustomerGroup1,
      AdditionalCustomerGroup2,
      AdditionalCustomerGroup3,
      AdditionalCustomerGroup4,
      AdditionalCustomerGroup5,

      PurchaseOrderByCustomer,
      CustomerPurchaseOrderType,
      CustomerPurchaseOrderDate,

      SalesOrderDate,

      @Semantics.currencyCode: true
      TransactionCurrency,
      
      AccountingDocExternalReference,
      
      CustomerTaxClassification1,
      CustomerTaxClassification2,
      CustomerTaxClassification3,
      CustomerTaxClassification4,
      CustomerTaxClassification5,
      CustomerTaxClassification6,
      CustomerTaxClassification7,
      CustomerTaxClassification8,
      CustomerTaxClassification9,
      
      TaxDepartureCountry,
      VATRegistrationCountry,
      
      PriceListType,
      CustomerPriceGroup,
      
      
      SDDocumentReason,
      PricingDate,
      @ObjectModel.readOnly: true
      SDPricingProcedure,

      RequestedDeliveryDate,
      ShippingCondition,
      CompleteDeliveryIsDefined,
      ShippingType,
      
      IncotermsClassification,
      IncotermsTransferLocation,
      IncotermsLocation1,
      IncotermsLocation2,
      IncotermsVersion,
      
      ReferenceSDDocument,

      CustomerPaymentTerms,
      PaymentMethod,

//    Expose own associations

      _Item,
      _Partner,
      _PricingElement,
      _Pricing,
      _Credit
}
where SalesOrder.SalesOrder = '0'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SALESORDER"
],
"ASSOCIATED":
[
"A_SALESORDERCREDITSIMULATION",
"A_SALESORDERITEMSIMULATION",
"A_SALESORDERPARTNERSIMULATION",
"A_SALESORDERPRCGELMNTSIMLN",
"A_SALESORDERPRICINGSIMULATION",
"E_SALESDOCUMENTBASIC"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/