I_EntProjElmntBlockFunc

DDL: I_ENTPROJELMNTBLOCKFUNC SQL: IPRJELMNTBLKFUNC Type: view BASIC

Block Functions for Enterprise Project Elements

I_EntProjElmntBlockFunc is a Basic CDS View that provides data about "Block Functions for Enterprise Project Elements" in SAP S/4HANA. It reads from 1 data source (entprobj_blkfunc) and exposes 14 fields with key field EntProjElementFunctionUUID. It has 3 associations to related views.

Data Sources (1)

SourceAliasJoin Type
entprobj_blkfunc BlockFunction from

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_WBSElementBasicData _WBSElement $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
[0..1] I_BlockFunctionStatus _BlockFunctionStatus $projection.EntProjElementFunctionIsBlkd = _BlockFunctionStatus.EntProjElementFunctionIsBlkd
[0..*] I_BlockFunctionStatusText _BlockFunctionText $projection.EntProjElementFunctionIsBlkd = _BlockFunctionText.EntProjElementFunctionIsBlkd

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IPRJELMNTBLKFUNC view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Block Functions for Enterprise Project Elements view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #L view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY EntProjElementFunctionUUID entprobj_blkfunc guid
ProjectUUID entprobj_blkfunc project_guid
ParentObjectUUID entprobj_blkfunc parent_object_guid
EntProjElementFunctionID entprobj_blkfunc function_id
EntProjElementFunctionIsBlkd entprobj_blkfunc is_blocked
WBSElementInternalID entprobj_blkfunc wbs_element_internal_id
EntProjTimeRecgIsBlkd
EntProjStaffExpensePostgIsBlkd
EntProjServicePostingIsBlkd
EntProjOtherExpensePostgIsBlkd
EntProjPurchasingIsBlkd
_WBSElement _WBSElement
_BlockFunctionStatus _BlockFunctionStatus
_BlockFunctionText _BlockFunctionText
@AbapCatalog.sqlViewName: 'IPRJELMNTBLKFUNC'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Block Functions for Enterprise Project Elements'
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #SAP_INTERNAL_API
}
@ObjectModel: {

   usageType: {
     serviceQuality:  #A,
     dataClass:       #TRANSACTIONAL,
     sizeCategory:    #L
    }
}
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_EntProjElmntBlockFunc
  as select from entprobj_blkfunc as BlockFunction

  association [0..1] to I_WBSElementBasicData     as _WBSElement          on $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
  association [0..1] to I_BlockFunctionStatus     as _BlockFunctionStatus on $projection.EntProjElementFunctionIsBlkd = _BlockFunctionStatus.EntProjElementFunctionIsBlkd
  association [0..*] to I_BlockFunctionStatusText as _BlockFunctionText   on $projection.EntProjElementFunctionIsBlkd = _BlockFunctionText.EntProjElementFunctionIsBlkd

{
  key BlockFunction.guid                                                    as EntProjElementFunctionUUID,
      BlockFunction.project_guid                                            as ProjectUUID,
      BlockFunction.parent_object_guid                                      as ParentObjectUUID,
      BlockFunction.function_id                                             as EntProjElementFunctionID,
      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      BlockFunction.is_blocked                                              as EntProjElementFunctionIsBlkd,
      BlockFunction.wbs_element_internal_id                                 as WBSElementInternalID,

      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      cast(BlockFunction.is_blocked as boole_d) as EntProjTimeRecgIsBlkd,

      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      cast(BlockFunction.is_blocked as boole_d) as EntProjStaffExpensePostgIsBlkd,

      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      cast(BlockFunction.is_blocked as boole_d) as EntProjServicePostingIsBlkd,

      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      cast(BlockFunction.is_blocked as boole_d) as EntProjOtherExpensePostgIsBlkd,

      @ObjectModel.foreignKey.association: '_BlockFunctionStatus'
      @ObjectModel.text.association: '_BlockFunctionText'
      cast(BlockFunction.is_blocked as boole_d) as EntProjPurchasingIsBlkd,
      
//      _BlockFunctionText[1:Language = $session.system_language].BlockStatusDescription      as BlockStatusDescription,


      _WBSElement,
      _BlockFunctionStatus,
      _BlockFunctionText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"ENTPROBJ_BLKFUNC"
],
"ASSOCIATED":
[
"I_BLOCKFUNCTIONSTATUS",
"I_BLOCKFUNCTIONSTATUSTEXT",
"I_WBSELEMENTBASICDATA"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/