I_OrderBasic

DDL: I_ORDERBASIC SQL: IORDERBASIC Type: view BASIC Package: VDM_PP_SFC

Order Header Basic

I_OrderBasic is a Basic CDS View (Dimension) that provides data about "Order Header Basic" in SAP S/4HANA. It reads from 1 data source (aufk) and exposes 103 fields with key field OrderID. It has 37 associations to related views. Part of development package VDM_PP_SFC.

Data Sources (1)

SourceAliasJoin Type
aufk aufk from

Associations (37)

CardinalityTargetAliasCondition
[1..1] I_OrderCategory _OrderCategory $projection.OrderCategory = _OrderCategory.OrderCategory
[1..1] I_OrderType _OrderType $projection.OrderType = _OrderType.OrderType
[0..1] I_OrderLongText _LongText $projection.OrderID = _LongText.OrderID
[1..1] I_Order _ReferenceOrder $projection.ReferenceOrder= _ReferenceOrder.OrderID
[1..1] I_LogisticsOrderBasic _LogisticsOrder $projection.OrderID = _LogisticsOrder.OrderID
[0..*] I_OrderHierarchyNode _OrderHierarchyNode $projection.OrderID = _OrderHierarchyNode.OrderID
[1..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID
[0..1] I_Currency _Currency $projection.Currency = _Currency.Currency
[0..1] I_Language _LongTextLanguage $projection.LongTextLanguage = _LongTextLanguage.Language
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[0..1] I_Plant _MainWorkCenterPlant $projection.MainWorkCenterPlant = _MainWorkCenterPlant.Plant
[0..1] I_Plant _LocationPlant $projection.LocationPlant = _LocationPlant.Plant
[0..1] I_WorkCenterBySemanticKey _MainWorkCenter $projection.MainWorkCenter = _MainWorkCenter.WorkCenter and $projection.MainWorkCenterPlant = _MainWorkCenter.Plant
[0..1] I_Location _MaintenanceObjectLocation $projection.LocationPlant = _MaintenanceObjectLocation.Plant and $projection.MaintenanceObjectLocation = _MaintenanceObjectLocation.Location
[0..1] I_SalesOrder _SalesOrder $projection.SalesOrder = _SalesOrder.SalesOrder
[0..1] I_SalesOrderItem _SalesOrderItem $projection.SalesOrder = _SalesOrderItem.SalesOrder and $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem
[0..1] I_WBSElementBasicData _WBSElementBasicData $projection.WBSElementInternalID = _WBSElementBasicData.WBSElementInternalID
[0..1] I_WBSElementBasicData _WBSElementBasicData2 $projection.WBSElementInternalID_2 = _WBSElementBasicData2.WBSElementInternalID
[1..1] I_StatusObject _StatusObject $projection.ObjectInternalID = _StatusObject.StatusObject
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_CompanyCode _RequestingCompanyCode $projection.RequestingCompanyCode = _RequestingCompanyCode.CompanyCode
[0..1] I_BusinessArea _BusinessArea $projection.BusinessArea = _BusinessArea.BusinessArea
[0..*] I_ProfitCenter _ProfitCenter $projection.ControllingArea = _ProfitCenter.ControllingArea and $projection.ProfitCenter = _ProfitCenter.ProfitCenter
[0..*] I_CostCenter _CostCenter $projection.ControllingArea = _CostCenter.ControllingArea and $projection.CostCenter = _CostCenter.CostCenter
[0..*] I_CostCenter _ResponsibleCostCenter $projection.ControllingArea = _ResponsibleCostCenter.ControllingArea and $projection.ResponsibleCostCenter = _ResponsibleCostCenter.CostCenter
[0..*] I_CostCenter _RequestingCostCenter $projection.RequestingCostCenter = _RequestingCostCenter.CostCenter and $projection.ControllingArea = _RequestingCostCenter.ControllingArea
[0..1] I_ProductCostCtrlgOrder _ProductCostCtrlgOrder $projection.ProductCostCollector = _ProductCostCtrlgOrder.OrderID
[0..1] I_GLAccount _GLAccount $projection.GLAccount = _GLAccount.GLAccount and $projection.CompanyCode = _GLAccount.CompanyCode
[0..1] I_CostElement _CostElement $projection.ControllingArea = _CostElement.ControllingArea and $projection.CostElement = _CostElement.CostElement
[0..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea
[0..1] I_ControllingObjectClass _ControllingObjectClass $projection.ControllingObjectClass = _ControllingObjectClass.ControllingObjectClass
[0..1] I_FunctionalArea _FunctionalArea $projection.FunctionalArea = _FunctionalArea.FunctionalArea
[0..1] I_ConditionUsage _ConditionUsage $projection.ConditionUsage = _ConditionUsage.ConditionUsage
[0..1] I_ConditionApplication _ConditionApplication $projection.ConditionApplication = _ConditionApplication.ConditionApplication
[0..1] I_CostingSheetProcedure _CostingSheetProcedure $projection.ConditionUsage = _CostingSheetProcedure.ConditionUsage and $projection.ConditionApplication = _CostingSheetProcedure.ConditionApplication and $projection.CostingSheet = _CostingSheetProcedure.CostingSheetProcedure
[0..1] I_OrderProcessingGroup _OrderProcessingGroup $projection.ControllingArea = _OrderProcessingGroup.ControllingArea and $projection.OrderProcessingGroup = _OrderProcessingGroup.OrderProcessingGroup

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName IORDERBASIC view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
Analytics.dataCategory #DIMENSION view
Analytics.internalName #LOCAL view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey OrderID view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #BASIC view
EndUserText.label Order Header Basic view

Fields (103)

KeyFieldSource TableSource FieldDescription
KEY OrderID aufk aufnr
OrderCategory
OrderType
OrderDescription
LongTextLanguage
IsMarkedForDeletion aufk loekz
IsStatisticalOrder aufk astkz
OrderHasMultipleItems aufk flg_mltps
OrderIsRefurbishmentOrder aufk rsord
OrdIsUsedInIntegratedPlanning
CreationDate
CreationTime
CreatedByUser aufk ernam
LastChangeDate aufk aedat
LastChangeTime aufk aezeit
LastChangedByUser aufk aenam
ReferenceOrder
Plant aufk werks
MainWorkCenter aufk vaplz
MainWorkCenterPlant aufk wawrk
MaintenanceObjectLocation aufk stort
LocationPlant aufk sowrk
SalesOrder aufk kdauf
SalesOrderItem aufk kdpos
WBSElementInternalID aufk pspel
WBSElementInternalID_2
ObjectInternalID
ProjInterestCalcProfile aufk zschm
ExternalOrder aufk aufex
BusinessArea aufk gsber
CompanyCode aufk bukrs
RequestingCompanyCode aufk abukr
ControllingArea aufk kokrs
ProfitCenter aufk prctr
CostCenter aufk kostl
RequestingCostCenter aufk akstl
ResponsibleCostCenter
CostElement
GLAccount aufk saknr
ProductCostCollector aufk pkosa
ConditionUsage aufk kvewe
ConditionApplication aufk kappl
CostingSheet aufk kalsm
ControllingObjectClass
FunctionalArea aufk func_area
OrderProcessingGroup
OverheadCode
ActualPostedCostCenter
TaxJurisdiction
ResultAnalysisInternalID
VarianceKey aufk awsls
EventBasedPostingMethod aufk eb_post
OrderSettlementTriggerType aufk eb_post_type
EventBasedProcessingKey aufk ebw_key
JointVenture aufk vname
JointVentureClass aufk jv_jibcl
JointVentureSubClass aufk jv_jibsa
JointVentureOriginalCostObject aufk jv_oco
JointVentureObjectType aufk otype
InvestmentReason aufk izwek
EnvironmentalInvestmentReason aufk umwkz
PlannedReleaseDate aufk pdat1
PlannedCompletionDate aufk pdat2
TechnicalCompletionDate aufk idat2
Currency aufk waers
EstimatedTotalOrderCost aufk user4
_OrderCategory _OrderCategory
_OrderType _OrderType
_ReferenceOrder _ReferenceOrder
_LogisticsOrder _LogisticsOrder
_OrderHierarchyNode _OrderHierarchyNode
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
_LongText _LongText
_LongTextLanguage _LongTextLanguage
_Currency _Currency
_Plant _Plant
_LocationPlant _LocationPlant
_MainWorkCenter _MainWorkCenter
_MainWorkCenterPlant _MainWorkCenterPlant
_MaintenanceObjectLocation _MaintenanceObjectLocation
_SalesOrder _SalesOrder
_SalesOrderItem _SalesOrderItem
_WBSElementBasicData _WBSElementBasicData
_WBSElementBasicData2 _WBSElementBasicData2
_StatusObject _StatusObject
_CompanyCode _CompanyCode
_RequestingCompanyCode _RequestingCompanyCode
_BusinessArea _BusinessArea
_ProfitCenter _ProfitCenter
_CostCenter _CostCenter
_RequestingCostCenter _RequestingCostCenter
_ResponsibleCostCenter _ResponsibleCostCenter
_ProductCostCtrlgOrder _ProductCostCtrlgOrder
_CostElement _CostElement
_GLAccount _GLAccount
_ControllingArea _ControllingArea
_ControllingObjectClass _ControllingObjectClass
_FunctionalArea _FunctionalArea
_ConditionUsage _ConditionUsage
_ConditionApplication _ConditionApplication
_CostingSheetProcedure _CostingSheetProcedure
_OrderProcessingGroup _OrderProcessingGroup
@AbapCatalog.sqlViewName: 'IORDERBASIC'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_CreatedByUser', '_LastChangedByUser', '_LongText']
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName: #LOCAL 
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #CDS_MODELING_DATA_SOURCE, #SQL_DATA_SOURCE]
@ObjectModel.representativeKey: 'OrderID'
@ObjectModel.semanticKey: ['OrderID']
@ObjectModel.usageType: {serviceQuality: #A, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Order Header Basic'
// Basic view selecting from order header table AUFK only - without restriction on any category

// Due to the high number of consumers, this CDS view is protected against incompatible changes

   
/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ]  } */
define view I_OrderBasic
  as select from aufk as aufk
    
  association [1..1] to I_OrderCategory           as _OrderCategory          on  $projection.OrderCategory = _OrderCategory.OrderCategory
  association [1..1] to I_OrderType               as _OrderType              on  $projection.OrderType = _OrderType.OrderType
  association [0..1] to I_OrderLongText           as _LongText               on  $projection.OrderID = _LongText.OrderID
  association [1..1] to I_Order                   as _ReferenceOrder         on  $projection.ReferenceOrder= _ReferenceOrder.OrderID
  association [1..1] to I_LogisticsOrderBasic     as _LogisticsOrder         on  $projection.OrderID = _LogisticsOrder.OrderID
  association [0..*] to I_OrderHierarchyNode      as _OrderHierarchyNode     on  $projection.OrderID = _OrderHierarchyNode.OrderID
  association [1..1] to I_User                    as _CreatedByUser          on  $projection.CreatedByUser = _CreatedByUser.UserID
  association [0..1] to I_User                    as _LastChangedByUser      on  $projection.LastChangedByUser = _LastChangedByUser.UserID
  association [0..1] to I_Currency                as _Currency               on  $projection.Currency = _Currency.Currency
  association [0..1] to I_Language                as _LongTextLanguage       on  $projection.LongTextLanguage = _LongTextLanguage.Language
  association [1..1] to I_Plant                   as _Plant                  on  $projection.Plant = _Plant.Plant
  association [0..1] to I_Plant                   as _MainWorkCenterPlant    on  $projection.MainWorkCenterPlant = _MainWorkCenterPlant.Plant
  association [0..1] to I_Plant                   as _LocationPlant          on  $projection.LocationPlant = _LocationPlant.Plant
  association [0..1] to I_WorkCenterBySemanticKey as _MainWorkCenter         on  $projection.MainWorkCenter      = _MainWorkCenter.WorkCenter
                                                                             and $projection.MainWorkCenterPlant = _MainWorkCenter.Plant
  association [0..1] to I_Location                as _MaintenanceObjectLocation  on  $projection.LocationPlant             = _MaintenanceObjectLocation.Plant
                                                                                 and $projection.MaintenanceObjectLocation = _MaintenanceObjectLocation.Location
  association [0..1] to I_SalesOrder              as _SalesOrder             on  $projection.SalesOrder = _SalesOrder.SalesOrder
  association [0..1] to I_SalesOrderItem          as _SalesOrderItem         on  $projection.SalesOrder     = _SalesOrderItem.SalesOrder
                                                                             and $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem
  association [0..1] to I_WBSElementBasicData     as _WBSElementBasicData    on  $projection.WBSElementInternalID = _WBSElementBasicData.WBSElementInternalID
  association [0..1] to I_WBSElementBasicData     as _WBSElementBasicData2   on  $projection.WBSElementInternalID_2 = _WBSElementBasicData2.WBSElementInternalID
  association [1..1] to I_StatusObject            as _StatusObject           on  $projection.ObjectInternalID = _StatusObject.StatusObject
  association [0..1] to I_CompanyCode             as _CompanyCode            on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_CompanyCode             as _RequestingCompanyCode  on  $projection.RequestingCompanyCode = _RequestingCompanyCode.CompanyCode
  association [0..1] to I_BusinessArea            as _BusinessArea           on  $projection.BusinessArea = _BusinessArea.BusinessArea
  association [0..*] to I_ProfitCenter            as _ProfitCenter           on  $projection.ControllingArea = _ProfitCenter.ControllingArea
                                                                             and $projection.ProfitCenter    = _ProfitCenter.ProfitCenter
  association [0..*] to I_CostCenter              as _CostCenter             on  $projection.ControllingArea = _CostCenter.ControllingArea
                                                                             and $projection.CostCenter      = _CostCenter.CostCenter
  association [0..*] to I_CostCenter              as _ResponsibleCostCenter  on  $projection.ControllingArea       = _ResponsibleCostCenter.ControllingArea
                                                                             and $projection.ResponsibleCostCenter = _ResponsibleCostCenter.CostCenter
  association [0..*] to I_CostCenter              as _RequestingCostCenter   on  $projection.RequestingCostCenter = _RequestingCostCenter.CostCenter
                                                                             and $projection.ControllingArea      = _RequestingCostCenter.ControllingArea
  association [0..1] to I_ProductCostCtrlgOrder   as _ProductCostCtrlgOrder  on  $projection.ProductCostCollector = _ProductCostCtrlgOrder.OrderID
  association [0..1] to I_GLAccount               as _GLAccount              on  $projection.GLAccount   = _GLAccount.GLAccount
                                                                             and $projection.CompanyCode = _GLAccount.CompanyCode
  association [0..1] to I_CostElement             as _CostElement            on  $projection.ControllingArea = _CostElement.ControllingArea
                                                                             and $projection.CostElement     = _CostElement.CostElement
  association [0..1] to I_ControllingArea         as _ControllingArea        on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [0..1] to I_ControllingObjectClass  as _ControllingObjectClass on  $projection.ControllingObjectClass = _ControllingObjectClass.ControllingObjectClass
  association [0..1] to I_FunctionalArea          as _FunctionalArea         on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea
  association [0..1] to I_ConditionUsage          as _ConditionUsage         on  $projection.ConditionUsage = _ConditionUsage.ConditionUsage
  association [0..1] to I_ConditionApplication    as _ConditionApplication   on  $projection.ConditionApplication = _ConditionApplication.ConditionApplication
  association [0..1] to I_CostingSheetProcedure   as _CostingSheetProcedure  on  $projection.ConditionUsage       = _CostingSheetProcedure.ConditionUsage
                                                                             and $projection.ConditionApplication = _CostingSheetProcedure.ConditionApplication
                                                                             and $projection.CostingSheet         = _CostingSheetProcedure.CostingSheetProcedure
  association [0..1] to I_OrderProcessingGroup    as _OrderProcessingGroup   on  $projection.ControllingArea = _OrderProcessingGroup.ControllingArea
                                                                             and $projection.OrderProcessingGroup = _OrderProcessingGroup.OrderProcessingGroup   
{
      // Key

      @ObjectModel.text.element: ['OrderDescription']
  key aufk.aufnr                                        as OrderID,

      // Category and Type

      @ObjectModel.foreignKey.association: '_OrderCategory'
      cast(aufk.autyp as pph_autyp preserving type)     as OrderCategory,
      @ObjectModel.foreignKey.association: '_OrderType'
      cast(aufk.auart as aufart    preserving type)     as OrderType,

      // Text

      @Semantics.text: true
      cast(aufk.ktext as pph_auftext preserving type)   as OrderDescription,
      cast(case 
             when aufk.ltext is not initial then 'X'
             else ''
           end as aufltext preserving type)             as OrderHasLongText,
      @ObjectModel.foreignKey.association: '_LongTextLanguage'
      cast(aufk.ltext as pph_longtextlang)              as LongTextLanguage,
      
      // Attributes

      aufk.loekz                                        as IsMarkedForDeletion,
      aufk.astkz                                        as IsStatisticalOrder,
      @Semantics.booleanIndicator 
      aufk.flg_mltps                                    as OrderHasMultipleItems,
      aufk.rsord                                        as OrderIsRefurbishmentOrder,
      cast(aufk.plint as fco_plint preserving type )    as OrdIsUsedInIntegratedPlanning,

      // Admin

      @Semantics.systemDate.createdAt: true
      cast(aufk.erdat   as ordercreationdate preserving type) as CreationDate,
      @Semantics.systemTime.createdAt: true
      cast(aufk.erfzeit as ordercreationtime preserving type) as CreationTime,
      @Semantics.user.createdBy: true
      aufk.ernam                                        as CreatedByUser,
      @Semantics.systemDate.lastChangedAt: true
      aufk.aedat                                        as LastChangeDate,
      @Semantics.systemTime.lastChangedAt: true
      aufk.aezeit                                       as LastChangeTime,
      @Semantics.user.lastChangedBy: true
      aufk.aenam                                        as LastChangedByUser,

      // Assignments

      @ObjectModel.foreignKey.association: '_ReferenceOrder'
      cast(aufk.refnr as fis_aufrefnr preserving type)  as ReferenceOrder,
      @ObjectModel.foreignKey.association: '_Plant'
      aufk.werks                                        as Plant,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WrkCtrBySemanticKeyStdVH', element: 'WorkCenter' } } ]
      @ObjectModel.foreignKey.association: '_MainWorkCenter'
      aufk.vaplz                                        as MainWorkCenter,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
      @ObjectModel.foreignKey.association: '_MainWorkCenterPlant'
      aufk.wawrk                                        as MainWorkCenterPlant,
      @ObjectModel.foreignKey.association: '_MaintenanceObjectLocation'
      aufk.stort                                        as MaintenanceObjectLocation,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
      @ObjectModel.foreignKey.association: '_LocationPlant'
      aufk.sowrk                                        as LocationPlant,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderStdVH', element: 'SalesOrder' } } ]
      @ObjectModel.foreignKey.association: '_SalesOrder'
      aufk.kdauf                                        as SalesOrder,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderItemStdVH', element: 'SalesOrderItem' } } ]  
      @ObjectModel.foreignKey.association: '_SalesOrderItem'
      aufk.kdpos                                        as SalesOrderItem,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: 'WBSElementInternalID_2'
      @ObjectModel.foreignKey.association: '_WBSElementBasicData'
      aufk.pspel                                        as WBSElementInternalID,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WBSElementBasicDataStdVH', element: 'WBSElementInternalID' } } ]  
      @ObjectModel.foreignKey.association: '_WBSElementBasicData2'
      cast(aufk.pspel as ps_s4_pspnr preserving type)   as WBSElementInternalID_2,  // w/o conversion exit

      @ObjectModel.foreignKey.association: '_StatusObject'
      cast(aufk.objnr as pph_objnr preserving type)     as ObjectInternalID,
      aufk.zschm                                        as ProjInterestCalcProfile,
      aufk.aufex                                        as ExternalOrder,
      
      // Assignments FI/CO

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_BusinessAreaStdVH', element: 'BusinessArea' } } ]
      @ObjectModel.foreignKey.association: '_BusinessArea'
      aufk.gsber                                        as BusinessArea,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
      @ObjectModel.foreignKey.association: '_CompanyCode'
      aufk.bukrs                                        as CompanyCode,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
      @ObjectModel.foreignKey.association: '_RequestingCompanyCode'
      aufk.abukr                                        as RequestingCompanyCode,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ControllingAreaStdVH', element: 'ControllingArea' } } ] 
      @ObjectModel.foreignKey.association: '_ControllingArea'
      aufk.kokrs                                        as ControllingArea,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProfitCenterStdVH', element: 'ProfitCenter' } } ]
      aufk.prctr                                        as ProfitCenter,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CostCenterStdVH', element: 'CostCenter' } } ]
      aufk.kostl                                        as CostCenter,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CostCenterStdVH', element: 'CostCenter' } } ]
      aufk.akstl                                        as RequestingCostCenter,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CostCenterStdVH', element: 'CostCenter' } } ]
      cast(aufk.kostv as pph_kostl preserving type)     as ResponsibleCostCenter,
      @ObjectModel.foreignKey.association: '_CostElement'
      cast(aufk.kstar as pph_kstar preserving type)     as CostElement,
      @ObjectModel.foreignKey.association: '_GLAccount'
      aufk.saknr                                        as GLAccount,
      @ObjectModel.foreignKey.association: '_ProductCostCtrlgOrder'      
      aufk.pkosa                                        as ProductCostCollector,
      @ObjectModel.foreignKey.association: '_ConditionUsage'
      aufk.kvewe                                        as ConditionUsage,
      @ObjectModel.foreignKey.association: '_ConditionApplication'
      aufk.kappl                                        as ConditionApplication,
      @ObjectModel.foreignKey.association: '_CostingSheetProcedure'
      aufk.kalsm                                        as CostingSheet,
      @ObjectModel.foreignKey.association: '_ControllingObjectClass'
      cast(aufk.scope as pph_scope preserving type)     as ControllingObjectClass,
      @ObjectModel.foreignKey.association: '_FunctionalArea'
      aufk.func_area                                    as FunctionalArea,
      @ObjectModel.foreignKey.association: '_OrderProcessingGroup'
      cast(aufk.abkrs as fco_aufabkrs preserving type)  as OrderProcessingGroup,
      cast(aufk.zschl as fco_aufzschl preserving type)  as OverheadCode,
      cast(aufk.cycle as fins_st_kostl preserving type) as ActualPostedCostCenter,
      cast(aufk.txjcd as fis_txjcd preserving type)     as TaxJurisdiction,
      cast(aufk.abgsl as fco_abgr_schl preserving type) as ResultAnalysisInternalID,
      aufk.awsls                                        as VarianceKey,
      aufk.eb_post                                      as EventBasedPostingMethod,
      aufk.eb_post_type                                 as OrderSettlementTriggerType,
      aufk.ebw_key                                      as EventBasedProcessingKey,
      aufk.vname                                        as JointVenture,
      aufk.jv_jibcl                                     as JointVentureClass,
      aufk.jv_jibsa                                     as JointVentureSubClass,
      aufk.jv_oco                                       as JointVentureOriginalCostObject,
      aufk.otype                                        as JointVentureObjectType,
      aufk.izwek                                        as InvestmentReason,
      aufk.umwkz                                        as EnvironmentalInvestmentReason,
      
      // Dates

      aufk.pdat1                                        as PlannedReleaseDate,
      aufk.pdat2                                        as PlannedCompletionDate,
      aufk.idat2                                        as TechnicalCompletionDate,

      // Amount and Currency

      @ObjectModel.foreignKey.association: '_Currency'
      @Semantics.currencyCode: true
      aufk.waers                                        as Currency,
      @Aggregation.default: #SUM
      @Semantics.amount.currencyCode: 'Currency'
      aufk.user4                                        as EstimatedTotalOrderCost,

      // Associations

      _OrderCategory,
      _OrderType,
      _ReferenceOrder,
      _LogisticsOrder,
      _OrderHierarchyNode,
      _CreatedByUser,
      _LastChangedByUser,
      _LongText,
      _LongTextLanguage,
      _Currency,
      _Plant,
      _LocationPlant,
      _MainWorkCenter,
      _MainWorkCenterPlant,
      _MaintenanceObjectLocation,
      _SalesOrder,
      _SalesOrderItem,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_WBSElementBasicData2' 
      _WBSElementBasicData,
      _WBSElementBasicData2,
      _StatusObject,
      _CompanyCode,
      _RequestingCompanyCode,
      _BusinessArea,
      _ProfitCenter,
      _CostCenter,
      _RequestingCostCenter,
      _ResponsibleCostCenter,
      _ProductCostCtrlgOrder,
      _CostElement,
      _GLAccount,
      _ControllingArea,
      _ControllingObjectClass,
      _FunctionalArea,
      _ConditionUsage,
      _ConditionApplication,
      _CostingSheetProcedure,
      _OrderProcessingGroup
};