P_SimulationObjectSearch

DDL: P_SIMULATIONOBJECTSEARCH SQL: PSIMOBJSR Type: view CONSUMPTION

P_SimulationObjectSearch is a Consumption CDS View in SAP S/4HANA. It reads from 6 data sources and exposes 59 fields with key fields Type, ConfigurationObject, ConfigurationObjectItem. It has 14 associations to related views.

Data Sources (6)

SourceAliasJoin Type
I_Product _Product inner
I_Material _ProductVariant left_outer
P_VarConfignPurchaseReqnItem _PurchaseRequisitionItem left_outer
P_VarConfignPurchasingDocument _PurchasingDocument left_outer
P_VarConfignSalesDocument _SalesDocument left_outer
P_SimulationObjectUnion SimulationObjectUnion from

Associations (14)

CardinalityTargetAliasCondition
[0..1] I_ProductGroup _ProductGroup $projection.ProductGroup = _ProductGroup.MaterialGroup
[0..1] I_ProductGroup_2 _ProductGroup_2 $projection.ProductGroup = _ProductGroup_2.ProductGroup
[1..1] I_Producttype _ProductType $projection.ProductType = _ProductType.ProductType
[0..1] I_ProductGroup _ProductVariantGroup $projection.ProductVariantGroup = _ProductVariantGroup.MaterialGroup
[0..1] I_ProductGroup_2 _ProductVariantGroup_2 $projection.ProductGroup = _ProductVariantGroup_2.ProductGroup
[1..1] I_Producttype _ProductVariantType $projection.ProductVariantType = _ProductVariantType.ProductType
[1..1] I_ProductText _ProductText $projection.Product = _ProductText.Product and _ProductText.Language = $session.system_language
[0..1] I_ProductText _ProductVariantText $projection.ConfigurationObject = _ProductVariantText.Product and _ProductVariantText.Language = $session.system_language and $projection.Type = 'MVAR'
[0..1] P_SimulationFavorite _Favorite _Favorite.UserAlias = $session.user and $projection.ConfigurationObject = _Favorite.ConfigurationObject and $projection.ConfigurationObjectItem = _Favorite.ConfigurationObjectItem and $projection.Type = _Favorite.Type
[0..1] I_VarConfignSimlnTypeValueHelp _TypeValueHelp $projection.Type = _TypeValueHelp.Type
[1..*] C_VarConfignConfigblProdVH _ConfigblProductValueHelp $projection.Product = _ConfigblProductValueHelp.Product
[0..1] C_VarConfignPlantVH _PlantValueHelp $projection.Plant = _PlantValueHelp.Plant
[0..1] I_ConfigurationStatusValueHelp _StatusValueHelp $projection.ConfigurationStatus = _StatusValueHelp.ConfigurationStatus
[0..1] I_VarConfignSimlnFavoriteVH _FavoriteValueHelp _Favorite.IsFavoriteConfigurationObject = _FavoriteValueHelp.IsFavoriteConfigurationObject

Annotations (6)

NameValueLevelField
AbapCatalog.sqlViewName PSIMOBJSR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
VDM.private true view

Fields (59)

KeyFieldSource TableSource FieldDescription
KEY Type P_SimulationObjectUnion Type
KEY ConfigurationObject P_SimulationObjectUnion ConfigurationObject
KEY ConfigurationObjectItem ConfigurationObjectItem
VariantConfignOwnerTypeDesc _TypeValueHelp VariantConfignOwnerTypeDesc
ProductVariantDescription _ProductVariantText ProductName
Product P_SimulationObjectUnion Product
ProductName _ProductText ProductName
Plant P_SimulationObjectUnion Plant
PlantName _PlantValueHelp PlantName
CreatedByUser P_SimulationObjectUnion CreatedByUser
CreationDate P_SimulationObjectUnion CreationDate
LastChangeDate P_SimulationObjectUnion LastChangeDate
LastChangedByUser P_SimulationObjectUnion LastChangedByUser
IsFavoriteConfigurationObject _Favorite IsFavoriteConfigurationObject
VariantConfigurationSimlnName P_SimulationObjectUnion VariantConfigurationSimlnName
VarConfignSimlnExternalID P_SimulationObjectUnion VarConfignSimlnExternalID
ProductConfiguration P_SimulationObjectUnion ProductConfiguration
DraftUUID P_SimulationObjectUnion DraftUUID
HasActiveEntity P_SimulationObjectUnion HasActiveEntity
ConfigurationProfileNumber P_SimulationObjectUnion ConfigurationProfileNumber
VariantConfigurationSimlnDate P_SimulationObjectUnion VariantConfigurationSimlnDate
ConfigurationProfileProcess P_SimulationObjectUnion ConfigurationProfileProcess
ConfigurationStatus ConfigurationStatus
ConfigurationStatusText _StatusValueHelp ConfigurationStatusText
ConfigurationObjTypeForSorting ConfigurationObjTypeForSorting
SalesDocument P_SimulationObjectUnion SalesDocument
SalesDocumentItem P_SimulationObjectUnion SalesDocumentItem
ProductVariant P_SimulationObjectUnion ProductVariant
PurchasingDocument P_SimulationObjectUnion PurchasingDocument
PurchasingDocumentItem P_SimulationObjectUnion PurchasingDocumentItem
PurchaseRequisition P_SimulationObjectUnion PurchaseRequisition
PurchaseRequisitionItem P_SimulationObjectUnion PurchaseRequisitionItem
ClassType P_SimulationObjectUnion ClassType
ProductType I_Product ProductType
ProductGroup I_Product ProductGroup
ProductAuthorizationGroup I_Product AuthorizationGroup
ProductExternalID I_Product ProductExternalID
SalesDocumentType P_VarConfignSalesDocument SalesDocumentType
OrganizationDivision P_VarConfignSalesDocument OrganizationDivision
SalesOrganization P_VarConfignSalesDocument SalesOrganization
DistributionChannel P_VarConfignSalesDocument DistributionChannel
ProductVariantType I_Material MaterialType
ProductVariantGroup I_Material MaterialGroup
ProductVariantAuthorizationGrp I_Material AuthorizationGroup
PurchasingDocumentType P_VarConfignPurchasingDocument PurchasingDocumentType
PurchaseRequisitionType P_VarConfignPurchaseReqnItem PurchaseRequisitionType
PurchasingGroupasPurchasingGroup
_ConfigblProductValueHelp _ConfigblProductValueHelp
_StatusValueHelp _StatusValueHelp
_PlantValueHelp _PlantValueHelp
_ProductText _ProductText
_ProductVariantType _ProductVariantType
_ProductVariantGroup _ProductVariantGroup
_ProductVariantGroup_2 _ProductVariantGroup_2
_TypeValueHelp _TypeValueHelp
_FavoriteValueHelp _FavoriteValueHelp
_ProductType _ProductType
_ProductGroup _ProductGroup
_ProductGroup_2 _ProductGroup_2
@AbapCatalog.sqlViewName: 'PSIMOBJSR'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED


@ClientHandling.algorithm: #SESSION_VARIABLE

@VDM.viewType: #CONSUMPTION
@VDM.private: true

define view P_SimulationObjectSearch
  as select from    P_SimulationObjectUnion        as SimulationObjectUnion

  //Only existing Products shall be considered

  //inner join I_Material as _Product on SimulationObjectUnion.Product = _Product.Material

    inner join      I_Product                      as _Product                 on  SimulationObjectUnion.Product = _Product.Product
                                                                               and _Product.IsMarkedForDeletion != 'X'

  //Attributes for Product Variant templates

    left outer join I_Material                     as _ProductVariant          on  SimulationObjectUnion.Product = _ProductVariant.Material
                                                                               and SimulationObjectUnion.Type    = 'MVAR'

  //Attributes for Sales Document templates (only header level)

    left outer join P_VarConfignSalesDocument      as _SalesDocument           on  SimulationObjectUnion.SalesDocument = _SalesDocument.SalesDocument
                                                                               and ( SimulationObjectUnion.Type          = 'SORD'
                                                                               or    SimulationObjectUnion.Type          = 'QUOT' )

    left outer join P_VarConfignPurchasingDocument as _PurchasingDocument      on  SimulationObjectUnion.PurchasingDocument = _PurchasingDocument.PurchasingDocument
                                                                               and SimulationObjectUnion.Type               = 'PURO'

    left outer join P_VarConfignPurchaseReqnItem   as _PurchaseRequisitionItem on  SimulationObjectUnion.PurchaseRequisition     = _PurchaseRequisitionItem.PurchaseRequisition
                                                                               and SimulationObjectUnion.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
                                                                               and SimulationObjectUnion.Type                    = 'PURR'

  //Attributes for authorization checks

  //I_ProductGroup is deprecated to I_ProductGroup_2

  association [0..1] to I_ProductGroup                 as _ProductGroup             on  $projection.ProductGroup = _ProductGroup.MaterialGroup

  association [0..1] to I_ProductGroup_2               as _ProductGroup_2           on  $projection.ProductGroup = _ProductGroup_2.ProductGroup

  association [1..1] to I_Producttype                  as _ProductType              on  $projection.ProductType = _ProductType.ProductType

  //I_ProductGroup is deprecated to I_ProductGroup_2

  association [0..1] to I_ProductGroup                 as _ProductVariantGroup      on  $projection.ProductVariantGroup = _ProductVariantGroup.MaterialGroup

  association [0..1] to I_ProductGroup_2               as _ProductVariantGroup_2    on  $projection.ProductGroup = _ProductVariantGroup_2.ProductGroup

  association [1..1] to I_Producttype                  as _ProductVariantType       on  $projection.ProductVariantType = _ProductVariantType.ProductType

  //Source of description for the configurable Product

  association [1..1] to I_ProductText                  as _ProductText              on  $projection.Product   = _ProductText.Product
                                                                                    and _ProductText.Language = $session.system_language

  //Source of description for the Product Variant template

  association [0..1] to I_ProductText                  as _ProductVariantText       on  $projection.ConfigurationObject = _ProductVariantText.Product
                                                                                    and _ProductVariantText.Language    = $session.system_language
                                                                                    and $projection.Type                = 'MVAR'

  //Favorites

  association [0..1] to P_SimulationFavorite           as _Favorite                 on  _Favorite.UserAlias                 = $session.user
                                                                                    and $projection.ConfigurationObject     = _Favorite.ConfigurationObject
                                                                                    and $projection.ConfigurationObjectItem = _Favorite.ConfigurationObjectItem
                                                                                    and $projection.Type                    = _Favorite.Type

  //Value Helps

  association [0..1] to I_VarConfignSimlnTypeValueHelp as _TypeValueHelp            on  $projection.Type = _TypeValueHelp.Type

  association [1..*] to C_VarConfignConfigblProdVH     as _ConfigblProductValueHelp on  $projection.Product = _ConfigblProductValueHelp.Product

  association [0..1] to C_VarConfignPlantVH            as _PlantValueHelp           on  $projection.Plant = _PlantValueHelp.Plant

  association [0..1] to I_ConfigurationStatusValueHelp as _StatusValueHelp          on  $projection.ConfigurationStatus = _StatusValueHelp.ConfigurationStatus

  association [0..1] to I_VarConfignSimlnFavoriteVH    as _FavoriteValueHelp        on  _Favorite.IsFavoriteConfigurationObject = _FavoriteValueHelp.IsFavoriteConfigurationObject
{

  key  SimulationObjectUnion.Type,

  key  SimulationObjectUnion.ConfigurationObject,
  key  ConfigurationObjectItem,

       _TypeValueHelp.VariantConfignOwnerTypeDesc          as VariantConfignOwnerTypeDesc,

       _ProductVariantText.ProductName                     as ProductVariantDescription,
       SimulationObjectUnion.Product,
       _ProductText.ProductName                            as ProductName,
       SimulationObjectUnion.Plant,
       _PlantValueHelp.PlantName,
       SimulationObjectUnion.CreatedByUser,
       SimulationObjectUnion.CreationDate,
       SimulationObjectUnion.LastChangeDate,
       SimulationObjectUnion.LastChangedByUser,
       _Favorite.IsFavoriteConfigurationObject,
       SimulationObjectUnion.VariantConfigurationSimlnName,
       SimulationObjectUnion.VarConfignSimlnExternalID,
       SimulationObjectUnion.ProductConfiguration,
       SimulationObjectUnion.DraftUUID,
       SimulationObjectUnion.HasActiveEntity,
       SimulationObjectUnion.ConfigurationProfileNumber,
       SimulationObjectUnion.VariantConfigurationSimlnDate,
       SimulationObjectUnion.ConfigurationProfileProcess,
       ConfigurationStatus,
       _StatusValueHelp.ConfigurationStatusText            as ConfigurationStatusText,
       case ConfigurationStatus
        when '1' then 3
        when '2' then 1
        when '5' then 1
        when ''  then 0
        else 0
       end                                                 as ConfigurationStatusCriticality,

       //Helper fields

       ConfigurationObjTypeForSorting,

       //These fields are exposed only for enabling searching in them

       SimulationObjectUnion.SalesDocument,
       SimulationObjectUnion.SalesDocumentItem,
       SimulationObjectUnion.ProductVariant,
       SimulationObjectUnion.PurchasingDocument,
       SimulationObjectUnion.PurchasingDocumentItem,
       SimulationObjectUnion.PurchaseRequisition,
       SimulationObjectUnion.PurchaseRequisitionItem,

       //Fields required for athorization checks

       SimulationObjectUnion.ClassType,

       /*_Product.MaterialType                                                        as ProductType,
       _Product.MaterialGroup                                                       as ProductGroup,
       _Product.AuthorizationGroup                                                  as ProductAuthorizationGroup,*/
       _Product.ProductType                                as ProductType,
       _Product.ProductGroup                               as ProductGroup,
       _Product.AuthorizationGroup                         as ProductAuthorizationGroup,
       _Product.ProductExternalID,

       _SalesDocument.SalesDocumentType,
       _SalesDocument.OrganizationDivision,
       _SalesDocument.SalesOrganization,
       _SalesDocument.DistributionChannel,

       _ProductVariant.MaterialType                        as ProductVariantType,
       _ProductVariant.MaterialGroup                       as ProductVariantGroup,
       _ProductVariant.AuthorizationGroup                  as ProductVariantAuthorizationGrp,

       _PurchasingDocument.PurchasingDocumentType          as PurchasingDocumentType,
       _PurchaseRequisitionItem.PurchaseRequisitionType    as PurchaseRequisitionType,

       coalesce(
        _PurchasingDocument.PurchasingOrganization,
        _PurchaseRequisitionItem.PurchasingOrganization  ) as PurchasingOrganization,

       coalesce(
        _PurchasingDocument.PurchasingGroup,
        _PurchaseRequisitionItem.PurchasingGroup  )        as PurchasingGroup,

       //Value Helps

       _ConfigblProductValueHelp,
       _StatusValueHelp,
       _PlantValueHelp,

       //Associations

       _ProductText,
       _ProductVariantType,
       @VDM.lifecycle.status: #DEPRECATED
       @VDM.lifecycle.successor: '_ProductVariantGroup_2'
       _ProductVariantGroup,
       _ProductVariantGroup_2,
       _TypeValueHelp,
       _FavoriteValueHelp,
       _ProductType,
       @VDM.lifecycle.status: #DEPRECATED
       @VDM.lifecycle.successor: '_ProductGroup_2'
       _ProductGroup,
       _ProductGroup_2
}