I_ProductPlantSupplyPlanning

DDL: I_PRODUCTPLANTSUPPLYPLANNING Type: view_entity BASIC

Product Plant Supply Planning

I_ProductPlantSupplyPlanning is a Basic CDS View that provides data about "Product Plant Supply Planning" in SAP S/4HANA. It reads from 4 data sources (P_ProductPlantBasic, t001, t001k, t001w) and exposes 92 fields with key fields Product, Plant. It has 22 associations to related views.

Data Sources (4)

SourceAliasJoin Type
P_ProductPlantBasic SupplyPlanning from
t001 t001 inner
t001k t001k inner
t001w t001w inner

Associations (22)

CardinalityTargetAliasCondition
[1..1] I_Product _Product $projection.Product = _Product.Product
[0..1] I_RangeOfCoverageProfile _RangeOfCvrgPrflCode $projection.Plant = _RangeOfCvrgPrflCode.Plant and $projection.RangeOfCvrgPrflCode = _RangeOfCvrgPrflCode.RangeOfCoverageProfile
[0..1] I_StorageCostsPercentageCode _StorageCostsPercentage $projection.StorageCostsPercentageCode = _StorageCostsPercentage.StorageCostsPercentageCode and $projection.Plant = _StorageCostsPercentage.Plant
[0..1] I_SafetyTimePeriodProfile _SafetyTimePeriodProfile $projection.Plant = _SafetyTimePeriodProfile.Plant and $projection.SafetyTimePeriodProfile = _SafetyTimePeriodProfile.SafetyTimePeriodProfile
[0..1] I_ATPCheckingGroup _AvailabilityCheckType_2 $projection.AvailabilityCheckType = _AvailabilityCheckType_2.ATPCheckingGroup
[0..1] I_ConsignmentControl _ConsignmentControl $projection.ConsignmentControl = _ConsignmentControl.ConsignmentControl
[0..1] I_MRPPlanningPeriod _MRPPlanningCalendar $projection.Plant = _MRPPlanningCalendar.MRPPlant and $projection.MRPPlanningCalendar = _MRPPlanningCalendar.MRPPlanningCalendar
[0..1] I_MRPGroup _MRPGroup $projection.Plant = _MRPGroup.MRPPlant and $projection.MRPGroup = _MRPGroup.MRPGroup
[0..1] I_MRPLotSizingProcedure _LotSizingProcedure $projection.LotSizingProcedure = _LotSizingProcedure.MaterialLotSizingProcedure
[0..*] I_MRPTypeText _MRPTypeText $projection.MRPType = _MRPTypeText.MRPType
[0..1] I_Prodabclassfctn _ABCIndicator $projection.ConsumptionValueCategory = _ABCIndicator.MaterialABCClassification
[0..1] I_StorageLocation _DfltStorageLocationExtProcmt $projection.Plant = _DfltStorageLocationExtProcmt.Plant and $projection.DfltStorageLocationExtProcmt = _DfltStorageLocationExtProcmt.StorageLocation
[0..1] I_ProdConsumptionMode _ProdRqmtsConsumptionMode $projection.ProdRqmtsConsumptionMode = _ProdRqmtsConsumptionMode.ProdRqmtsConsumptionMode
[0..1] I_LogisticalRoundingProfile _LogisticalRoundingProfile $projection.Plant = _LogisticalRoundingProfile.Plant and $projection.RoundingProfile = _LogisticalRoundingProfile.LogisticalRoundingProfile
[0..1] I_LogisticalRoundingUoMGroup _ProdUoMGroup $projection.ProductUnitGroup = _ProdUoMGroup.LogisticalRoundingUoMGroup
[0..1] I_ProdProcurementType _ProdProcurementType $projection.ProcurementType = _ProdProcurementType.ProcurementType
[0..1] I_ProductProcmtProfile _ProductProcmtProfile $projection.Plant = _ProductProcmtProfile.Plant and $projection.ProcurementSubType = _ProductProcmtProfile.ProcurementSubType
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[0..1] I_PlannedOrderActionControl _PlannedOrderActionControl $projection.PlannedOrderActionControl = _PlannedOrderActionControl.PlannedOrderActionControl
[0..1] I_ProdBackflushType _ProdBackflushType $projection.ProductComponentBackflushCode = _ProdBackflushType.MatlCompIsMarkedForBackflush
[0..1] I_RepetitiveMfgProfile _RepetitiveMfgProfile $projection.RepetitiveManufacturingProfile = _RepetitiveMfgProfile.RepetitiveManufacturingProfile
[0..1] I_MRPSafetyStockMethod _MRPSafetyStockMethod $projection.MRPSafetyStockMethod = _MRPSafetyStockMethod.MRPSafetyStockMethod

Annotations (10)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Product Plant Supply Planning view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #BASIC view
ObjectModel.modelingPattern #NONE view
Analytics.dataExtraction.enabled true view
Analytics.technicalName IPRODPLANSUPPlAN view

Fields (92)

KeyFieldSource TableSource FieldDescription
KEY Product
KEY Plant P_ProductPlantBasic Plant
FixedLotSizeQuantity P_ProductPlantBasic FixedLotSizeQuantity
MaximumLotSizeQuantity P_ProductPlantBasic MaximumLotSizeQuantity
MinimumLotSizeQuantity P_ProductPlantBasic MinimumLotSizeQuantity
LotSizeRoundingQuantity P_ProductPlantBasic LotSizeRoundingQuantity
LotSizingProcedure P_ProductPlantBasic LotSizingProcedure
MRPType P_ProductPlantBasic MRPType
MRPResponsible P_ProductPlantBasic MRPResponsible
SafetyStockQuantity P_ProductPlantBasic SafetyStockQuantity
MinimumSafetyStockQuantity P_ProductPlantBasic MinimumSafetyStockQuantity
PlanningTimeFence P_ProductPlantBasic PlanningTimeFence
ConsumptionValueCategory P_ProductPlantBasic ABCIndicator
MaximumStockQuantity P_ProductPlantBasic MaximumStockQuantity
ReorderThresholdQuantity P_ProductPlantBasic ReorderThresholdQuantity
PlannedDeliveryDurationInDays P_ProductPlantBasic PlannedDeliveryDurationInDays
SafetySupplyDurationInDays P_ProductPlantBasic SafetyDuration
PlanningStrategyGroup P_ProductPlantBasic PlanningStrategyGroup
TotalReplenishmentLeadTime P_ProductPlantBasic TotalReplenishmentLeadTime
ProcurementType P_ProductPlantBasic ProcurementType
ProcurementSubType P_ProductPlantBasic ProcurementSubType
AssemblyScrapPercent P_ProductPlantBasic AssemblyScrapPercent
AvailabilityCheckType P_ProductPlantBasic AvailabilityCheckType
GoodsReceiptDuration P_ProductPlantBasic GoodsReceiptDuration
PlanAndOrderDayDetermination P_ProductPlantBasic PlanAndOrderDayDetermination
RoundingProfile P_ProductPlantBasic RoundingProfile
DfltStorageLocationExtProcmt P_ProductPlantBasic DfltStorageLocationExtProcmt
GoodIssueProcessingDays P_ProductPlantBasic GoodIssueProcessingDays
ConsignmentControl P_ProductPlantBasic ConsignmentControl
IsActiveEntity
MRPGroup P_ProductPlantBasic MRPGroup
LotSizeIndependentCosts P_ProductPlantBasic LotSizeIndependentCosts
StorageCostsPercentageCode P_ProductPlantBasic StorageCostsPercentageCode
RqmtQtyRcptTaktTmeInWrkgDays P_ProductPlantBasic RqmtQtyRcptTaktTmeInWrkgDays
MRPPlanningCalendar P_ProductPlantBasic MRPPlanningCalendar
RangeOfCvrgPrflCode P_ProductPlantBasic RangeOfCvrgPrflCode
ProductSafetyTimeMRPRelevance P_ProductPlantBasic IsSafetyTime
SafetyTimePeriodProfile P_ProductPlantBasic PerdPrflForSftyTme
DependentRqmtMRPRelevance P_ProductPlantBasic IsMRPDependentRqmt
ProductServiceLevelInPercent P_ProductPlantBasic SrvcLvl
ProdInhProdnDurationInWorkDays P_ProductPlantBasic InHouseProductionTime
MRPAvailabilityType P_ProductPlantBasic MRPAvailabilityType
CrossProjectProduct P_ProductPlantBasic ProductIsForCrossProject
ProdnPlngAndControlCalendar P_ProductPlantBasic MRPPlanningCalendar
FollowUpProduct P_ProductPlantBasic FollowUpProduct
RepetitiveManufacturingIsAllwd P_ProductPlantBasic RepetitiveManufacturingIsAllwd
DependentRequirementsType P_ProductPlantBasic DependentRequirementsType
ProductIsBulkComponent P_ProductPlantBasic IsBulkMaterialComponent
RepetitiveManufacturingProfile P_ProductPlantBasic RepetitiveManufacturingProfile
BackwardCnsmpnPeriodInWorkDays P_ProductPlantBasic BackwardCnsmpnPeriodInWorkDays
FwdConsumptionPeriodInWorkDays P_ProductPlantBasic FwdConsumptionPeriodInWorkDays
ProdRqmtsConsumptionMode P_ProductPlantBasic ProdRqmtsConsumptionMode
ProdFcstRequirementsSplitCode P_ProductPlantBasic ForecastRequirementsAreSplit
EffectiveOutDate P_ProductPlantBasic EffectiveOutDate
MRPProfile P_ProductPlantBasic MRPProfile
SchedulingFloatProfile P_ProductPlantBasic SchedulingMarginKey
ComponentScrapInPercent P_ProductPlantBasic ComponentScrapInPercent
ProductDiscontinuationCode P_ProductPlantBasic ProductIsToBeDiscontinued
ProductRequirementsGrouping P_ProductPlantBasic ProdRqmtsAreConsolidated
ProductionInvtryManagedLoc P_ProductPlantBasic ProductionInvtryManagedLoc
ProductComponentBackflushCode P_ProductPlantBasic MatlCompIsMarkedForBackflush
ProposedProductSupplyArea P_ProductPlantBasic ProposedProductSupplyArea
PlannedOrderActionControl P_ProductPlantBasic PlannedOrderActionControl
ProductUnitGroup P_ProductPlantBasic ProductUnitGroup
MRPSafetyStockMethod P_ProductPlantBasic MRPSafetyStockMethod
JITProdnConfProfile P_ProductPlantBasic JITProdnConfProfile
Currency t001 waers
CompanyCode t001k bukrs
ValuationArea t001k bwkey
BaseUnit _Product BaseUnit
_Product _Product
_RangeOfCvrgPrflCode _RangeOfCvrgPrflCode
_SafetyTimePeriodProfile _SafetyTimePeriodProfile
_MRPPlanningCalendar _MRPPlanningCalendar
_MRPGroup _MRPGroup
_MRPTypeText _MRPTypeText
_ABCIndicator _ABCIndicator
_StorageCostsPercentage _StorageCostsPercentage
_LotSizingProcedure _LotSizingProcedure
_DfltStorageLocationExtProcmt _DfltStorageLocationExtProcmt
_ProdRqmtsConsumptionMode _ProdRqmtsConsumptionMode
_ConsignmentControl _ConsignmentControl
_LogisticalRoundingProfile _LogisticalRoundingProfile
_ProdProcurementType _ProdProcurementType
_ProductProcmtProfile _ProductProcmtProfile
_Plant _Plant
_PlannedOrderActionControl _PlannedOrderActionControl
_ProdBackflushType _ProdBackflushType
_RepetitiveMfgProfile _RepetitiveMfgProfile
_MRPSafetyStockMethod _MRPSafetyStockMethod
_ProdUoMGroup _ProdUoMGroup
_AvailabilityCheckType_2 _AvailabilityCheckType_2
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Product Plant Supply Planning'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #MIXED
}
@VDM.viewType: #BASIC
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE,
                                      #CDS_MODELING_DATA_SOURCE,
                                      #CDS_MODELING_ASSOCIATION_TARGET,
                                      #EXTRACTION_DATA_SOURCE
]
@ObjectModel.modelingPattern: #NONE
@Analytics:{
    dataExtraction: {
        enabled: true,
        delta.changeDataCapture: {
        mapping:
        [ { table: 'MARC',
            role: #MAIN,
            viewElement: ['Product','Plant'],
            tableElement: ['MATNR','WERKS'] },
          
          { table: 'T001W',
            role: #LEFT_OUTER_TO_ONE_JOIN,
            viewElement: ['Plant'],
            tableElement: ['WERKS']
          },  

          { table: 'T001K',
            role: #LEFT_OUTER_TO_ONE_JOIN,
            viewElement: ['ValuationArea'],
            tableElement: ['BWKEY']
          },

          { table: 'T001',
            role: #LEFT_OUTER_TO_ONE_JOIN,
            viewElement: ['CompanyCode'],
            tableElement: ['BUKRS']
          },
          { table: 'MARA',
            role: #LEFT_OUTER_TO_ONE_JOIN,
            viewElement: ['Product'],
            tableElement: ['MATNR']

          }
       ]
     }
    }
}

@Analytics.technicalName: 'IPRODPLANSUPPlAN'

define view entity I_ProductPlantSupplyPlanning
  as select from P_ProductPlantBasic as SupplyPlanning
    inner join   t001w on SupplyPlanning.Plant = t001w.werks
    inner join   t001k on t001k.bwkey = t001w.bwkey
    inner join   t001  on t001.bukrs = t001k.bukrs
  
  association [1..1] to I_Product                     as _Product                      on  $projection.Product = _Product.Product

  association [0..1] to I_RangeOfCoverageProfile      as _RangeOfCvrgPrflCode          on  $projection.Plant               = _RangeOfCvrgPrflCode.Plant
                                                                                       and $projection.RangeOfCvrgPrflCode = _RangeOfCvrgPrflCode.RangeOfCoverageProfile
  
  association [0..1] to I_StorageCostsPercentageCode  as _StorageCostsPercentage       on  $projection.StorageCostsPercentageCode = _StorageCostsPercentage.StorageCostsPercentageCode
                                                                                       and $projection.Plant          = _StorageCostsPercentage.Plant    
                                                                                                                                                                        
  association [0..1] to I_SafetyTimePeriodProfile     as _SafetyTimePeriodProfile      on  $projection.Plant              = _SafetyTimePeriodProfile.Plant
                                                                                       and $projection.SafetyTimePeriodProfile = _SafetyTimePeriodProfile.SafetyTimePeriodProfile
 
  association [0..1] to I_ATPCheckingGroup            as _AvailabilityCheckType_2      on  $projection.AvailabilityCheckType = _AvailabilityCheckType_2.ATPCheckingGroup
  
  association [0..1] to I_ConsignmentControl          as _ConsignmentControl           on  $projection.ConsignmentControl = _ConsignmentControl.ConsignmentControl
 
  association [0..1] to I_MRPPlanningPeriod           as _MRPPlanningCalendar          on  $projection.Plant               = _MRPPlanningCalendar.MRPPlant
                                                                                       and $projection.MRPPlanningCalendar = _MRPPlanningCalendar.MRPPlanningCalendar

  
  association [0..1] to I_MRPGroup                    as _MRPGroup                     on  $projection.Plant    = _MRPGroup.MRPPlant
                                                                                       and $projection.MRPGroup = _MRPGroup.MRPGroup

  
  association [0..1] to I_MRPLotSizingProcedure       as _LotSizingProcedure           on  $projection.LotSizingProcedure = _LotSizingProcedure.MaterialLotSizingProcedure
  
  association [0..*] to I_MRPTypeText                 as _MRPTypeText                  on  $projection.MRPType = _MRPTypeText.MRPType

  association [0..1] to I_Prodabclassfctn             as _ABCIndicator                 on  $projection.ConsumptionValueCategory = _ABCIndicator.MaterialABCClassification

  
  association [0..1] to I_StorageLocation             as _DfltStorageLocationExtProcmt on  $projection.Plant                        = _DfltStorageLocationExtProcmt.Plant
                                                                                       and $projection.DfltStorageLocationExtProcmt = _DfltStorageLocationExtProcmt.StorageLocation

  association [0..1] to I_ProdConsumptionMode         as _ProdRqmtsConsumptionMode     on  $projection.ProdRqmtsConsumptionMode = _ProdRqmtsConsumptionMode.ProdRqmtsConsumptionMode
  
  association [0..1] to I_LogisticalRoundingProfile   as _LogisticalRoundingProfile    on  $projection.Plant           = _LogisticalRoundingProfile.Plant
                                                                                       and $projection.RoundingProfile = _LogisticalRoundingProfile.LogisticalRoundingProfile

 
  association [0..1] to I_LogisticalRoundingUoMGroup  as _ProdUoMGroup                 on  $projection.ProductUnitGroup   = _ProdUoMGroup.LogisticalRoundingUoMGroup                                                                                       
  association [0..1] to I_ProdProcurementType         as _ProdProcurementType          on  $projection.ProcurementType = _ProdProcurementType.ProcurementType
  association [0..1] to I_ProductProcmtProfile        as _ProductProcmtProfile         on  $projection.Plant              = _ProductProcmtProfile.Plant
                                                                                       and $projection.ProcurementSubType = _ProductProcmtProfile.ProcurementSubType

  association [1..1] to I_Plant                       as _Plant                        on  $projection.Plant = _Plant.Plant
  association [0..1] to I_PlannedOrderActionControl   as _PlannedOrderActionControl    on  $projection.PlannedOrderActionControl = _PlannedOrderActionControl.PlannedOrderActionControl

  association [0..1] to I_ProdBackflushType           as _ProdBackflushType            on  $projection.ProductComponentBackflushCode = _ProdBackflushType.MatlCompIsMarkedForBackflush
  association [0..1] to I_RepetitiveMfgProfile        as _RepetitiveMfgProfile         on  $projection.RepetitiveManufacturingProfile = _RepetitiveMfgProfile.RepetitiveManufacturingProfile

  association [0..1] to I_MRPSafetyStockMethod        as _MRPSafetyStockMethod         on  $projection.MRPSafetyStockMethod = _MRPSafetyStockMethod.MRPSafetyStockMethod

{
   @ObjectModel.foreignKey.association: '_Product'
 key cast (SupplyPlanning.Product as productnumber preserving type ) as Product,
      @ObjectModel.foreignKey.association: '_Plant'
  key SupplyPlanning.Plant,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.FixedLotSizeQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.MaximumLotSizeQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.MinimumLotSizeQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.LotSizeRoundingQuantity,
      @ObjectModel.foreignKey.association: '_LotSizingProcedure'
      
      SupplyPlanning.LotSizingProcedure,
      @ObjectModel.text.association: '_MRPTypeText'
      SupplyPlanning.MRPType,
      @ObjectModel.sapObjectNodeTypeReference:'MRPController'
      SupplyPlanning.MRPResponsible,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.SafetyStockQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.MinimumSafetyStockQuantity,
      SupplyPlanning.PlanningTimeFence,
      @ObjectModel.foreignKey.association: '_ABCIndicator'
      
      @ObjectModel.sapObjectNodeTypeReference:'ProdConsumptionValueCategory'
      SupplyPlanning.ABCIndicator as ConsumptionValueCategory,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.MaximumStockQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      SupplyPlanning.ReorderThresholdQuantity,
      SupplyPlanning.PlannedDeliveryDurationInDays,
      SupplyPlanning.SafetyDuration as SafetySupplyDurationInDays,
      SupplyPlanning.PlanningStrategyGroup,
      SupplyPlanning.TotalReplenishmentLeadTime,
      @ObjectModel.foreignKey.association: '_ProdProcurementType'
      @ObjectModel.sapObjectNodeTypeReference:'ProcurementType'
      SupplyPlanning.ProcurementType,
      @ObjectModel.foreignKey.association: '_ProductProcmtProfile'
      @ObjectModel.sapObjectNodeTypeReference:'ProcurementSubType'
      SupplyPlanning.ProcurementSubType,
      SupplyPlanning.AssemblyScrapPercent,
      @ObjectModel.foreignKey.association: '_AvailabilityCheckType_2'
      SupplyPlanning.AvailabilityCheckType,
      SupplyPlanning.GoodsReceiptDuration,
      SupplyPlanning.PlanAndOrderDayDetermination,
      @ObjectModel.foreignKey.association: '_LogisticalRoundingProfile'
      SupplyPlanning.RoundingProfile,
      @ObjectModel.foreignKey.association: '_DfltStorageLocationExtProcmt'
      @ObjectModel.sapObjectNodeTypeReference:'StorageLocation'
      SupplyPlanning.DfltStorageLocationExtProcmt,
      SupplyPlanning.GoodIssueProcessingDays,
      @ObjectModel.foreignKey.association: '_ConsignmentControl'
      SupplyPlanning.ConsignmentControl,
      cast( 'X' as sdraft_is_active preserving type ) as IsActiveEntity, // to enbale extensibility in Draft 2.0 

      
      //New fields added as part of MRP area to be added at plant level also

      @ObjectModel.foreignKey.association: '_MRPGroup'
      SupplyPlanning.MRPGroup,
      // SupplyPlanning.lfrhy                                        as PlanAndOrderDayDetermination,

      //SupplyPlanning.rdprf                                        as RoundingProfile,

      @Semantics.amount.currencyCode: 'Currency'
      SupplyPlanning.LotSizeIndependentCosts,
      @ObjectModel.foreignKey.association: '_StorageCostsPercentage'
      @ObjectModel.sapObjectNodeTypeReference:'StorageCostsPercentageCode'
      SupplyPlanning.StorageCostsPercentageCode,
      SupplyPlanning.RqmtQtyRcptTaktTmeInWrkgDays, //to be added

      //SupplyPlanning.takzt                                              as TaktTime,

      @ObjectModel.foreignKey.association: '_MRPPlanningCalendar'
      SupplyPlanning.MRPPlanningCalendar,
      //SupplyPlanning.plifz                                        as PlannedDeliveryDurationInDays,

      @ObjectModel.foreignKey.association: '_RangeOfCvrgPrflCode'
      SupplyPlanning.RangeOfCvrgPrflCode,
      SupplyPlanning.IsSafetyTime as ProductSafetyTimeMRPRelevance,
      @ObjectModel.foreignKey.association: '_SafetyTimePeriodProfile'
      SupplyPlanning.PerdPrflForSftyTme    as SafetyTimePeriodProfile,
      SupplyPlanning.IsMRPDependentRqmt    as DependentRqmtMRPRelevance,
      SupplyPlanning.SrvcLvl               as ProductServiceLevelInPercent,
      SupplyPlanning.InHouseProductionTime as ProdInhProdnDurationInWorkDays,
      @ObjectModel.sapObjectNodeTypeReference:'MRPAvailabilityType'
      SupplyPlanning.MRPAvailabilityType,

      //New fields from MDG model, as part of unified API development

      SupplyPlanning.ProductIsForCrossProject as CrossProjectProduct,
      
      SupplyPlanning.MRPPlanningCalendar              as ProdnPlngAndControlCalendar,
      SupplyPlanning.FollowUpProduct,
      SupplyPlanning.RepetitiveManufacturingIsAllwd,
      @ObjectModel.sapObjectNodeTypeReference:'ProdDependentRequirementsType'
      SupplyPlanning.DependentRequirementsType,
      SupplyPlanning.IsBulkMaterialComponent as ProductIsBulkComponent,
      @ObjectModel.foreignKey.association: '_RepetitiveMfgProfile'
      SupplyPlanning.RepetitiveManufacturingProfile,

      SupplyPlanning.BackwardCnsmpnPeriodInWorkDays,
      SupplyPlanning.FwdConsumptionPeriodInWorkDays,
      @ObjectModel.foreignKey.association: '_ProdRqmtsConsumptionMode'
      @ObjectModel.sapObjectNodeTypeReference:'ProdRqmtsConsumptionMode'
      SupplyPlanning.ProdRqmtsConsumptionMode,
      SupplyPlanning.ForecastRequirementsAreSplit as ProdFcstRequirementsSplitCode,
      SupplyPlanning.EffectiveOutDate,
      @ObjectModel.sapObjectNodeTypeReference:'MRPProfile'
      SupplyPlanning.MRPProfile,
      SupplyPlanning.SchedulingMarginKey as SchedulingFloatProfile,
      SupplyPlanning.ComponentScrapInPercent,
      SupplyPlanning.ProductIsToBeDiscontinued as ProductDiscontinuationCode,
      SupplyPlanning.ProdRqmtsAreConsolidated as ProductRequirementsGrouping,
      @ObjectModel.sapObjectNodeTypeReference:'StorageLocation'
      SupplyPlanning.ProductionInvtryManagedLoc,
      @ObjectModel.foreignKey.association: '_ProdBackflushType'
      SupplyPlanning.MatlCompIsMarkedForBackflush as ProductComponentBackflushCode,
      SupplyPlanning.ProposedProductSupplyArea,
      @ObjectModel.foreignKey.association: '_PlannedOrderActionControl'
      SupplyPlanning.PlannedOrderActionControl,
      @ObjectModel.foreignKey.association: '_ProdUoMGroup' 
      SupplyPlanning.ProductUnitGroup, // to be used only for retail

      @ObjectModel.foreignKey.association: '_MRPSafetyStockMethod'
      SupplyPlanning.MRPSafetyStockMethod,
      SupplyPlanning.JITProdnConfProfile,
            //@Semantics.currencyCode: true

      t001.waers                                      as Currency,
      t001k.bukrs                  as CompanyCode,
      t001k.bwkey                  as ValuationArea,
      //@Semantics.unitOfMeasure: true

      _Product.BaseUnit                               as BaseUnit,
      _Product,
      _RangeOfCvrgPrflCode,
      _SafetyTimePeriodProfile,
      _MRPPlanningCalendar,
      _MRPGroup,
      _MRPTypeText,
      _ABCIndicator,
      _StorageCostsPercentage,
      _LotSizingProcedure,
      _DfltStorageLocationExtProcmt,
      _ProdRqmtsConsumptionMode,
      _ConsignmentControl,
      _LogisticalRoundingProfile,
      _ProdProcurementType,
      _ProductProcmtProfile,
      _Plant,
      _PlannedOrderActionControl,
      _ProdBackflushType,
      _RepetitiveMfgProfile,
      _MRPSafetyStockMethod,
      _ProdUoMGroup,
      _AvailabilityCheckType_2
      
      
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PRODUCT",
"P_PRODUCTPLANTBASIC",
"T001",
"T001K",
"T001W"
],
"ASSOCIATED":
[
"I_ATPCHECKINGGROUP",
"I_CONSIGNMENTCONTROL",
"I_LOGISTICALROUNDINGPROFILE",
"I_LOGISTICALROUNDINGUOMGROUP",
"I_MRPGROUP",
"I_MRPLOTSIZINGPROCEDURE",
"I_MRPPLANNINGPERIOD",
"I_MRPSAFETYSTOCKMETHOD",
"I_MRPTYPETEXT",
"I_PLANNEDORDERACTIONCONTROL",
"I_PLANT",
"I_PRODABCLASSFCTN",
"I_PRODBACKFLUSHTYPE",
"I_PRODCONSUMPTIONMODE",
"I_PRODPROCUREMENTTYPE",
"I_PRODUCT",
"I_PRODUCTPROCMTPROFILE",
"I_RANGEOFCOVERAGEPROFILE",
"I_REPETITIVEMFGPROFILE",
"I_SAFETYTIMEPERIODPROFILE",
"I_STORAGECOSTSPERCENTAGECODE",
"I_STORAGELOCATION"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/