I_FrcElmntToCtrlgRelshpUnion

DDL: I_FRCELMNTTOCTRLGRELSHPUNION SQL: IFECTRLGRELUNIN Type: view COMPOSITE

Interface View of FE to Profit Cost Center Group Union

I_FrcElmntToCtrlgRelshpUnion is a Composite CDS View that provides data about "Interface View of FE to Profit Cost Center Group Union" in SAP S/4HANA. It reads from 3 data sources (I_FrcElmntToCtrlgRelshpDrft, I_FrcElmntToCtrlgRelshpDrft, I_DraftAdministrativeData) and exposes 36 fields with key fields DfsObjectID, DfsObjectDraftUUID, DfsObjectDraftUUID.

Data Sources (3)

SourceAliasJoin Type
I_FrcElmntToCtrlgRelshpDrft FrcElmntToCtrlgRelshpDrft from
I_FrcElmntToCtrlgRelshpDrft FrcElmntToCtrlgRelshpDrft union_all
I_DraftAdministrativeData I_DraftAdministrativeData inner

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName IFECTRLGRELUNIN view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
EndUserText.label Interface View of FE to Profit Cost Center Group Union view

Fields (36)

KeyFieldSource TableSource FieldDescription
KEY DfsObjectID FrcElmntToCtrlgRelshpUnion DfsObjectID
KEY DfsObjectDraftUUID
DfsAssgmtActiveDraft
DfsObjectSubType FrcElmntToCtrlgRelshpUnion DfsObjectSubType
DfsObjectPlngStatus FrcElmntToCtrlgRelshpUnion DfsObjectPlngStatus
DfsObjectValdtyStartDate FrcElmntToCtrlgRelshpUnion DfsObjectValdtyStartDate
DfsObjectValdtyEndDate FrcElmntToCtrlgRelshpUnion DfsObjectValdtyEndDate
DfsObjectPlanVersion FrcElmntToCtrlgRelshpUnion DfsObjectPlanVersion
DfsObjectType FrcElmntToCtrlgRelshpUnion DfsObjectType
FrcElmntOrgVariationID FrcElmntToCtrlgRelshpUnion FrcElmntOrgVariationID
NumberOfForceElementOrg FrcElmntToCtrlgRelshpUnion NumberOfForceElementOrg
DfsObjectInfoType FrcElmntToCtrlgRelshpUnion DfsObjectInfoType
FrcElmntOrgGroupName FrcElmntToCtrlgRelshpUnion FrcElmntOrgGroupName
FrcElmntOrgControllingArea FrcElmntToCtrlgRelshpUnion FrcElmntOrgControllingArea
DfsObjRelshpLastChgdDate FrcElmntToCtrlgRelshpUnion DfsObjRelshpLastChgdDate
DfsObjRelshpLastChgdByUser FrcElmntToCtrlgRelshpUnion DfsObjRelshpLastChgdByUser
IsActiveEntity
HasActiveEntity
DfsObjectID
KEY DfsObjectDraftUUID I_FrcElmntToCtrlgRelshpDrft DfsObjectDraftUUID
DfsObjectSubType I_FrcElmntToCtrlgRelshpDrft DfsObjectSubType
DfsObjectPlngStatus I_FrcElmntToCtrlgRelshpDrft DfsObjectPlngStatus
DfsObjectValdtyStartDate I_FrcElmntToCtrlgRelshpDrft DfsObjectValdtyStartDate
DfsObjectValdtyEndDate I_FrcElmntToCtrlgRelshpDrft DfsObjectValdtyEndDate
DfsObjectPlanVersion I_FrcElmntToCtrlgRelshpDrft DfsObjectPlanVersion
DfsObjectType I_FrcElmntToCtrlgRelshpDrft DfsObjectType
FrcElmntOrgVariationID I_FrcElmntToCtrlgRelshpDrft FrcElmntOrgVariationID
NumberOfForceElementOrg I_FrcElmntToCtrlgRelshpDrft NumberOfForceElementOrg
DfsObjectInfoType I_FrcElmntToCtrlgRelshpDrft DfsObjectInfoType
FrcElmntOrgGroupName I_FrcElmntToCtrlgRelshpDrft FrcElmntOrgGroupName
FrcElmntOrgControllingArea I_FrcElmntToCtrlgRelshpDrft FrcElmntOrgControllingArea
DfsObjRelshpLastChgdDate I_FrcElmntToCtrlgRelshpDrft DfsObjRelshpLastChgdDate
DfsObjRelshpLastChgdByUser I_FrcElmntToCtrlgRelshpDrft DfsObjRelshpLastChgdByUser
IsActiveEntity
HasActiveEntity I_FrcElmntToCtrlgRelshpDrft HasActiveEntity
HasDraftEntity
@AbapCatalog.sqlViewName: 'IFECTRLGRELUNIN'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #COMPOSITE
@ObjectModel:{
                usageType:{
                            dataClass: #TRANSACTIONAL,
                            serviceQuality: #C,
                            sizeCategory: #L
                          }
              }
@EndUserText.label: 'Interface View of FE to Profit Cost Center Group Union'
define view I_FrcElmntToCtrlgRelshpUnion
  as select distinct from  I_FrcElmntToAcctgCtrlgRelshp as FrcElmntToCtrlgRelshpUnion
    left outer to one join I_FrcElmntToCtrlgRelshpDrft  as FrcElmntToCtrlgRelshpDrft on FrcElmntToCtrlgRelshpUnion.DfsObjectID = FrcElmntToCtrlgRelshpDrft.DfsObjectID
{
  key     FrcElmntToCtrlgRelshpUnion.DfsObjectID,
  key     cast ( hextobin('00000000000000000000000000000000') as sysuuid_x preserving type ) as DfsObjectDraftUUID,
          '1'                                                                                as DfsAssgmtActiveDraft,
          FrcElmntToCtrlgRelshpUnion.DfsObjectSubType,
          FrcElmntToCtrlgRelshpUnion.DfsObjectPlngStatus,
          case FrcElmntToCtrlgRelshpUnion.DfsObjectPlngStatus
          when '1' then 3 when '5' then 1 else 2 end                                         as FrcElmntOrgPlngStsCritlty,
          FrcElmntToCtrlgRelshpUnion.DfsObjectValdtyStartDate,
          FrcElmntToCtrlgRelshpUnion.DfsObjectValdtyEndDate,
          FrcElmntToCtrlgRelshpUnion.DfsObjectPlanVersion,
          FrcElmntToCtrlgRelshpUnion.DfsObjectType,
          FrcElmntToCtrlgRelshpUnion.FrcElmntOrgVariationID,
          FrcElmntToCtrlgRelshpUnion.NumberOfForceElementOrg,
          FrcElmntToCtrlgRelshpUnion.DfsObjectInfoType,
          FrcElmntToCtrlgRelshpUnion.DfsObjectConcatenatedID,
          FrcElmntToCtrlgRelshpUnion.FrcElmntOrgGroupName,
          FrcElmntToCtrlgRelshpUnion.FrcElmntOrgControllingArea,
          FrcElmntToCtrlgRelshpUnion.DfsObjRelshpLastChgdDate,
          FrcElmntToCtrlgRelshpUnion.DfsObjRelshpLastChgdByUser,
          case FrcElmntToCtrlgRelshpUnion.DfsObjectSubType
              when '0106'
             then FrcElmntToCtrlgRelshpUnion.FrcElmntOrgGroupName
             else ' '
             end                                                                             as FrcElmntOrgProfitCtrGrpName,

          case FrcElmntToCtrlgRelshpUnion.DfsObjectSubType
           when '0101'
           then FrcElmntToCtrlgRelshpUnion.FrcElmntOrgGroupName
           else ' '
          end                                                                                as FrcElmntOrgCostCenterGrpName,
          cast( 'X' as boole_d preserving type )                                             as IsActiveEntity,
          cast( ' ' as boole_d preserving type )                                             as HasActiveEntity,
          case
          //   when( DraftDocument.DfsAssgmtUUID is null ) then cast( ' ' as boole_d preserving type )

            when( FrcElmntToCtrlgRelshpDrft.DfsObjectDraftUUID is null ) then cast( ' ' as boole_d preserving type )
            else cast( 'X' as boole_d preserving type )
          end                                                                                as HasDraftEntity,
          cast( 3 as int1)                                                                   as Criticality
          // FrcElmntToCtrlgRelshpUnion.FrcElmntOrgPlngStsCritlty

}
union all select from I_FrcElmntToCtrlgRelshpDrft as FrcElmntToCtrlgRelshpDrft
  inner join          I_DraftAdministrativeData on I_DraftAdministrativeData.DraftUUID = FrcElmntToCtrlgRelshpDrft.DfsObjectDraftUUID
{
  key  FrcElmntToCtrlgRelshpDrft.DfsObjectID,
  key  FrcElmntToCtrlgRelshpDrft.DfsObjectDraftUUID,
       case
       // Locked by somebody else

                    when(I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X'   and
                         I_DraftAdministrativeData.DraftIsCreatedByMe   <> 'X'   and
                         I_DraftAdministrativeData.InProcessByUser      <> ' ')  then '2' //2 = Locked

       // Locked by somebody else

                    when (I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X'  and
                          I_DraftAdministrativeData.DraftIsCreatedByMe    = 'X'  and
                          I_DraftAdministrativeData.InProcessByUser      <> ' ') then '2'

                    when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                          I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                          I_DraftAdministrativeData.InProcessByUser      = ' ' ) then '3' //3 = Draft


                    when (I_DraftAdministrativeData.DraftIsProcessedByMe = ' '   and
                          I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                          I_DraftAdministrativeData.InProcessByUser      = ' ' ) then '3'

                    when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                          I_DraftAdministrativeData.DraftIsCreatedByMe  <> 'X'   and
                          I_DraftAdministrativeData.InProcessByUser     <> ' ' ) then '3'

                    when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                          I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                          I_DraftAdministrativeData.InProcessByUser     <> ' ' ) then '3'

                     when (I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X' and
                           I_DraftAdministrativeData.DraftIsCreatedByMe   <> 'X' and
                           I_DraftAdministrativeData.InProcessByUser      = ' ' ) then '4' //4 = Draft by Other

                     else  '0'
                     end                                   as DfsAssgmtActiveDraft,

       FrcElmntToCtrlgRelshpDrft.DfsObjectSubType,
       FrcElmntToCtrlgRelshpDrft.DfsObjectPlngStatus,
       case FrcElmntToCtrlgRelshpDrft.DfsObjectPlngStatus
               when '1' then 3 when '5' then 1  else 2 end as FrcElmntOrgPlngStsCritlty,
       FrcElmntToCtrlgRelshpDrft.DfsObjectValdtyStartDate,
       FrcElmntToCtrlgRelshpDrft.DfsObjectValdtyEndDate,
       FrcElmntToCtrlgRelshpDrft.DfsObjectPlanVersion,
       FrcElmntToCtrlgRelshpDrft.DfsObjectType,
       FrcElmntToCtrlgRelshpDrft.FrcElmntOrgVariationID,
       FrcElmntToCtrlgRelshpDrft.NumberOfForceElementOrg,
       FrcElmntToCtrlgRelshpDrft.DfsObjectInfoType,
       FrcElmntToCtrlgRelshpDrft.DfsObjectConcatenatedID,
       FrcElmntToCtrlgRelshpDrft.FrcElmntOrgGroupName,
       FrcElmntToCtrlgRelshpDrft.FrcElmntOrgControllingArea,
       // FrcElmntToProfitCostCtrDraft.frcelmntorgplngstscritlty,

       FrcElmntToCtrlgRelshpDrft.DfsObjRelshpLastChgdDate,
       FrcElmntToCtrlgRelshpDrft.DfsObjRelshpLastChgdByUser,


       case DfsObjectSubType
             when '0106'
             then FrcElmntToCtrlgRelshpDrft.FrcElmntOrgGroupName
            else ' '
             end                                           as FrcElmntOrgProfitCtrGrpName,

       case DfsObjectSubType
        when '0101'
        then FrcElmntOrgGroupName
        else ' '
        end                                                as FrcElmntOrgCostCenterGrpName,

       cast( ' ' as boole_d preserving type )              as IsActiveEntity,
       FrcElmntToCtrlgRelshpDrft.HasActiveEntity,
       cast( ' ' as boole_d preserving type)               as HasDraftEntity,
       case
       // Locked by somebody else

                   when(I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X'   and
                        I_DraftAdministrativeData.DraftIsCreatedByMe   <> 'X'   and
                        I_DraftAdministrativeData.InProcessByUser      <> ' ')  then  cast( 1 as int1)  //2 = Locked

       // Locked by somebody else

                   when (I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X'  and
                         I_DraftAdministrativeData.DraftIsCreatedByMe    = 'X'  and
                         I_DraftAdministrativeData.InProcessByUser      <> ' ') then cast( 1 as int1)

                   when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                         I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                         I_DraftAdministrativeData.InProcessByUser      = ' ' ) then cast( 2 as int1)  //3 = Draft


                   when (I_DraftAdministrativeData.DraftIsProcessedByMe = ' '   and
                         I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                         I_DraftAdministrativeData.InProcessByUser      = ' ' ) then cast( 2 as int1)

                   when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                         I_DraftAdministrativeData.DraftIsCreatedByMe  <> 'X'   and
                         I_DraftAdministrativeData.InProcessByUser     <> ' ' ) then cast( 2 as int1)

                   when (I_DraftAdministrativeData.DraftIsProcessedByMe = 'X'   and
                         I_DraftAdministrativeData.DraftIsCreatedByMe   = 'X'   and
                         I_DraftAdministrativeData.InProcessByUser     <> ' ' ) then  cast( 2 as int1)

                    when (I_DraftAdministrativeData.DraftIsProcessedByMe <> 'X' and
                          I_DraftAdministrativeData.DraftIsCreatedByMe   <> 'X' and
                          I_DraftAdministrativeData.InProcessByUser      = ' ' ) then  cast( 1 as int1)   //4 = Draft by Other

                    else  cast( 0 as int1)
                    end                                    as Criticality
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_DRAFTADMINISTRATIVEDATA",
"I_FRCELMNTTOACCTGCTRLGRELSHP",
"I_FRCELMNTTOCTRLGRELSHPDRFT"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/