C_CtrlgObjectSettlementRule

DDL: C_CTRLGOBJECTSETTLEMENTRULE SQL: CCTLOBJSTLMTRULE Type: view CONSUMPTION Package: ODATA_SETTLEMENT

Controlling Object Settlement Rule

C_CtrlgObjectSettlementRule is a Consumption CDS View that provides data about "Controlling Object Settlement Rule" in SAP S/4HANA. It has 4 associations to related views. It is exposed through 2 OData services (FCO_ACTUAL_SETTLEMENT, FCO_SETTLEMENT_DOCUMENT). Part of development package ODATA_SETTLEMENT.

Associations (4)

CardinalityTargetAliasCondition
[0..1] C_RunSettlmtActualWBSElement _ParentWBSElement $projection.ControllingObject = _ParentWBSElement.WBSElementObject
[0..1] C_RunSettlementActualProject _ParentProject $projection.ControllingObject = _ParentProject.ProjectObject
[0..1] C_RunSettlementActualOrder _ParentOrder $projection.ControllingObject = _ParentOrder.ControllingObject
[0..1] C_RunSettlmtSrvcDocumentItem _ParentServiceDocument $projection.ControllingObject = _ParentServiceDocument.ControllingObject

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName CCTLOBJSTLMTRULE view
AbapCatalog.compiler.compareFilter true view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ClientHandling.type #INHERITED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Controlling Object Settlement Rule view
Metadata.ignorePropagatedAnnotations true view

OData Services (2)

ServiceBindingVersionContractRelease
FCO_ACTUAL_SETTLEMENT UI_FCO_ACTL_SETTLEMENT_O2 V2 C1 NOT_RELEASED
FCO_SETTLEMENT_DOCUMENT UI_FCO_SETL_DOCUMENT_SRV V2 C1 NOT_RELEASED

Fields (49)

KeyFieldSource TableSource FieldDescription
KEY ControllingObject ControllingObject
KEY Ledger Ledger
KEY SettlmtDistrRuleSequence SettlmtDistrRuleSequence
KEY SettlementDistributionRuleGrp SettlementDistributionRuleGrp
KEY LedgerGroup LedgerGroup
AccountAssignmentType AccountAssignmentType
SettlementTransaction SettlementTransaction
SettlementDefaultRule SettlementDefaultRule
SettlementReceiver SettlementReceiver
SettlementReceiverObject
SettlementReceiverText
SettlementReceiverTypeText
SettlementPercentageRate SettlementPercentageRate
SettlementAmount SettlementAmount
SettlementAmountCurrency SettlementAmountCurrency
SettlementType SettlementType
SettlementTypeDesc
ValidityStartFiscalYearPeriod
ValidityEndFiscalYearPeriod
ValidityStartFiscalPeriod ValidityStartFiscalPeriod
ValidityStartFiscalYear ValidityStartFiscalYear
ValidityEndFiscalPeriod ValidityEndFiscalPeriod
ValidityEndFiscalYear ValidityEndFiscalYear
ControllingArea ControllingArea
ProfitCenter ProfitCenter
GLAccount GLAccount
MasterFixedAsset MasterFixedAsset
FixedAsset FixedAsset
CostCenter CostCenter
Material Material
BusinessProcess BusinessProcess
ProjectNetwork ProjectNetwork
SalesOrder SalesOrder
SalesOrderItem SalesOrderItem
CompanyCode CompanyCode
WBSElementExternalID WBSElementExternalID
WBSElementInternalID WBSElementInternalID
OrderID OrderID
ProfitabilitySegment ProfitabilitySegment
CostObject CostObject
OrderItem OrderItem
ServiceDocumentType ServiceDocumentType
ServiceDocument ServiceDocument
ServiceDocumentItem ServiceDocumentItem
ControllingObjectType
_ParentWBSElement _ParentWBSElement
_ParentProject _ParentProject
_ParentOrder _ParentOrder
_ParentServiceDocument _ParentServiceDocument
@AbapCatalog.sqlViewName: 'CCTLOBJSTLMTRULE'
@AbapCatalog.compiler.compareFilter: true
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ClientHandling.type: #INHERITED
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Controlling Object Settlement Rule'
@Metadata.ignorePropagatedAnnotations: true

define view C_CtrlgObjectSettlementRule
  as select distinct from I_CtrlgObjSettlmtDistrRule

  association [0..1] to C_RunSettlmtActualWBSElement as _ParentWBSElement      on $projection.ControllingObject = _ParentWBSElement.WBSElementObject
  association [0..1] to C_RunSettlementActualProject as _ParentProject         on $projection.ControllingObject = _ParentProject.ProjectObject
  association [0..1] to C_RunSettlementActualOrder   as _ParentOrder           on $projection.ControllingObject = _ParentOrder.ControllingObject
  association [0..1] to C_RunSettlmtSrvcDocumentItem as _ParentServiceDocument on $projection.ControllingObject = _ParentServiceDocument.ControllingObject

{
      @UI.hidden: true
  key ControllingObject,
      @UI.hidden: true
  key Ledger,
      @UI.lineItem: [ { position: 60 } ]
      @Semantics.fiscal.period: true
  key SettlmtDistrRuleSequence,
      @UI.hidden: true
  key SettlementDistributionRuleGrp,

  key LedgerGroup,
      @UI.hidden: true
      AccountAssignmentType,
      @UI.hidden: true
      SettlementTransaction,
      @UI.hidden: true
      SettlementDefaultRule,
      @UI.hidden: true
      SettlementReceiver,
      @UI.lineItem: [ { position: 10 } ]
      @ObjectModel.text.element: [ 'SettlementReceiverText' ]
      @UI.textArrangement: #TEXT_LAST
      @ObjectModel: {
          readOnly: true,
          virtualElement,
          virtualElementCalculatedBy: 'ABAP:CL_FCO_SETTL_REC_INFO_CDS_EXIT'
       }
      cast( '' as fco_stlmnt_receiver_id_out )                                                               as SettlementReceiverObject,

      @ObjectModel: {
                readOnly: true,
                virtualElement,
                virtualElementCalculatedBy: 'ABAP:CL_FCO_SETTL_REC_INFO_CDS_EXIT'
             }
      @UI.lineItem: [ { position: 15 } ]
      cast( '' as fco_stlmnt_receiver_txt )                                                                  as SettlementReceiverText,

      @UI.lineItem: [ { position: 20 } ]
      @Semantics.text: true
      cast( _AccountAssignmentTypeT.AccountAssignmentTypeName as fco_settlmt_rec_type_text preserving type ) as SettlementReceiverTypeText,
      @UI.lineItem: [ { position: 30 } ]
      SettlementPercentageRate,
      @UI.lineItem: [ { position: 40 } ]
      SettlementAmount,
      @UI.hidden: true
      SettlementAmountCurrency,
      @UI.lineItem: [ { position: 50 } ]
      @ObjectModel.text.element: [ 'SettlementTypeDesc' ]
      @UI.textArrangement: #TEXT_ONLY
      SettlementType,
      @UI.hidden: true
      @Semantics.text: true
      cast( _SettlementTypeText.SettlementTypeDesc as ddtext preserving type )                               as SettlementTypeDesc,
      @UI.lineItem: [ { position: 70, importance: #HIGH } ]
      @Semantics.fiscal.yearPeriod: true
      cast( concat( ValidityStartFiscalYear, ValidityStartFiscalPeriod ) as fco_stlmt_start_fyearperiod )    as ValidityStartFiscalYearPeriod,
      @UI.lineItem: [ { position: 80, importance: #HIGH } ]
      @Semantics.fiscal.yearPeriod: true
      cast( concat( ValidityEndFiscalYear, ValidityEndFiscalPeriod ) as fco_stlmt_end_fyearperiod )          as ValidityEndFiscalYearPeriod,
      @UI.hidden: true
      ValidityStartFiscalPeriod,
      @UI.hidden: true
      ValidityStartFiscalYear,
      @UI.hidden: true
      ValidityEndFiscalPeriod,
      @UI.hidden: true
      ValidityEndFiscalYear,

      @UI.hidden: true
      ControllingArea,
      @UI.hidden: true
      ProfitCenter,
      @UI.hidden: true
      GLAccount,
      @UI.hidden: true
      MasterFixedAsset,
      @UI.hidden: true
      FixedAsset,
      @UI.hidden: true
      CostCenter,
      @UI.hidden: true
      Material,
      @UI.hidden: true
      BusinessProcess,
      @UI.hidden: true
      ProjectNetwork,
      @UI.hidden: true
      SalesOrder,
      @UI.hidden: true
      SalesOrderItem,
      @UI.hidden: true
      CompanyCode,
      @UI.hidden: true
      WBSElementExternalID,
      @UI.hidden: true
      WBSElementInternalID,
      @UI.hidden: true
      OrderID,
      @UI.hidden: true
      ProfitabilitySegment,
      @UI.hidden: true
      CostObject,
      @UI.hidden: true
      OrderItem,
      @UI.hidden: true
      ServiceDocumentType,
      @UI.hidden: true
      ServiceDocument,
      @UI.hidden: true
      ServiceDocumentItem,
      @UI.hidden: true
      cast( left( ControllingObject, 2 ) as j_obart preserving type )                                        as ControllingObjectType,

      @UI.hidden: true
      _ParentWBSElement,
      @UI.hidden: true
      _ParentProject,
      @UI.hidden: true
      _ParentOrder,
      @UI.hidden: true
      _ParentServiceDocument

}
where
     Ledger = '00'
  or Ledger = ''