C_CrdtMBusinessPartnerTP

DDL: C_CRDTMBUSINESSPARTNERTP Type: view_entity CONSUMPTION Package: ODATA_CREDIT_MGMT_MASTER

Maintain Business Partner in Credit Mgmt

C_CrdtMBusinessPartnerTP is a Consumption CDS View that provides data about "Maintain Business Partner in Credit Mgmt" in SAP S/4HANA. It reads from 1 data source (R_CrdtMBusinessPartnerTP) and exposes 44 fields with key field BusinessPartner. It has 5 associations to related views. It is exposed through 1 OData service (UI_CRDTMGMTACCOUNT_MANAGE). It is used in 1 Fiori application: Manage Credit Accounts. Part of development package ODATA_CREDIT_MGMT_MASTER.

Data Sources (1)

SourceAliasJoin Type
R_CrdtMBusinessPartnerTP R_CrdtMBusinessPartnerTP projection

Associations (5)

CardinalityTargetAliasCondition
[0..*] C_CreditWorthinessScoreTrend _CreditWorthinessScoreTrend $projection.BusinessPartner = _CreditWorthinessScoreTrend.ChangeDocObject
[0..*] C_CreditLimitTrend _CreditLimitTrend $projection.BusinessPartner = _CreditLimitTrend.ChangeDocObject and $projection.MainCreditSegment = _CreditLimitTrend.CreditSegment
[0..*] C_CrdtMAcctAgingGrid _AgingGrid $projection.BusinessPartner = _AgingGrid.BusinessPartner and $projection.MainCreditSegment = _AgingGrid.CreditSegment
[0..*] C_CrdtMgmtBusPrtnFinRatioTP _CrdtMgmtBusPrtnFinRatioTP $projection.BusinessPartner = _CrdtMgmtBusPrtnFinRatioTP.BusinessPartner
[0..*] C_CrdtMAcctPaytBehaviorTrend _CrdtMAcctPaytBehaviorTrend $projection.BusinessPartner = _CrdtMAcctPaytBehaviorTrend.BusinessPartner and $projection.MainCreditSegment = _CrdtMAcctPaytBehaviorTrend.CreditSegment

Annotations (8)

NameValueLevelField
EndUserText.label Maintain Business Partner in Credit Mgmt view
VDM.viewType #CONSUMPTION view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.representativeKey BusinessPartner view
AccessControl.authorizationCheck #CHECK view
Metadata.allowExtensions true view

OData Services (1)

ServiceBindingVersionContractRelease
UI_CRDTMGMTACCOUNT_MANAGE UI_CRDTMGMTACCOUNT_MANAGE V2 C1 NOT_TO_BE_RELEASED_STABLE

Fiori Apps (1)

App IDApp NameTypeDescription
F4596 Manage Credit Accounts Transactional

Manage Credit Accounts

Business Role: Credit Controller

Use this app to display and update the credit data for business parters. Edit the credit data of business partners and update the scoring. On the global credit data page, you can see the credit profile for your business partners, as well as detailed information about blocked sales documents or credit limit requests. Find the credit exposure and credit limit utilization highlighted for each credit segment. Navigate to credit segment level to find further information about credit-relevant data, or details about the related sales documents.

Fields (44)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartner BusinessPartner
BusinessPartnerFullName
BusinessPartnerName1
BusinessPartnerName2
SearchTerm1
SearchTerm2
BusinessPartnerCountry _CreditMgmtBPAddress Country
CountryNameasCountryNamelocalized
BusinessPartnerCityName _CreditMgmtBPAddress CityName
Customer _Customer Customer
CrdtMgmtBusinessPartnerGroup CrdtMgmtBusinessPartnerGroup
OrganizationFoundationDate _BusinessPartner OrganizationFoundationDate
CreditWorthinessScoreValue CreditWorthinessScoreValue
CrdtWrthnssScoreValdtyEndDate CrdtWrthnssScoreValdtyEndDate
CrdtWorthinessScoreLastChgDate CrdtWorthinessScoreLastChgDate
CalcdCrdtWorthinessScoreValue CalcdCrdtWorthinessScoreValue
CreditRiskClass CreditRiskClass
CalculatedCreditRiskClass CalculatedCreditRiskClass
CreditRiskClassLastChangeDate CreditRiskClassLastChangeDate
CreditCheckRule CreditCheckRule
CreditScoreAndLimitCalcRule CreditScoreAndLimitCalcRule
MainCreditSegment MainCreditSegment
MainCreditSegmentCurrency
MainCreditSegmentLimitAmount
CustBusinessRelshpStartYear CustBusinessRelshpStartYear
CrdtMAccountNoteUUID CrdtMAccountNoteUUID
virtualUICT_CreditLimitAmountxfeld
virtualUICT_CrdtAgencyIntegURLMigxfeld
virtualUICT_Hide_DCD_V1ukm_hide_dcd_v1
virtualUICT_Hide_DCD_V2ukm_hide_dcd_v2
_BusinessPartner _BusinessPartner
_Customer _Customer
_CreditMgmtBPAddress _CreditMgmtBPAddress
_MainCreditSegment _MainCreditSegment
_CrdtMBusPartnerGroup _CrdtMBusPartnerGroup
_RiskClass _RiskClass
_CalcRiskClass _CalcRiskClass
_CheckRule _CheckRule
_CalcRule _CalcRule
_CreditWorthinessScoreTrend _CreditWorthinessScoreTrend
_CreditLimitTrend _CreditLimitTrend
_AgingGrid _AgingGrid
_CrdtMgmtBusPrtnFinRatioTP _CrdtMgmtBusPrtnFinRatioTP
_CrdtMAcctPaytBehaviorTrend _CrdtMAcctPaytBehaviorTrend
@EndUserText.label: 'Maintain Business Partner in Credit Mgmt'

@VDM: {
        viewType:   #CONSUMPTION,
        usage.type: [ #TRANSACTIONAL_PROCESSING_SERVICE]
      }

@ObjectModel: { usageType: { dataClass:      #MASTER,
                             sizeCategory:   #L,
                             serviceQuality: #C
                           },
                semanticKey:       ['BusinessPartner'],  //Enable semantic (intend-based) navigation

                representativeKey:  'BusinessPartner'
              }

@AccessControl: { authorizationCheck: #CHECK,
                  privilegedAssociations: [ '_CreditWorthinessScoreTrend' ]
}
@Metadata.allowExtensions: true
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]

define root view entity C_CrdtMBusinessPartnerTP
  provider contract transactional_query
  as projection on R_CrdtMBusinessPartnerTP as _CrdtMBTP

  // Score Trend

  association [0..*] to C_CreditWorthinessScoreTrend as _CreditWorthinessScoreTrend on  $projection.BusinessPartner = _CreditWorthinessScoreTrend.ChangeDocObject

  // Credit Limit Trend

  association [0..*] to C_CreditLimitTrend           as _CreditLimitTrend           on  $projection.BusinessPartner   = _CreditLimitTrend.ChangeDocObject
                                                                                    and $projection.MainCreditSegment = _CreditLimitTrend.CreditSegment

  // Aging Grid

  association [0..*] to C_CrdtMAcctAgingGrid         as _AgingGrid                  on  $projection.BusinessPartner   = _AgingGrid.BusinessPartner
                                                                                    and $projection.MainCreditSegment = _AgingGrid.CreditSegment

  // Financial Statement Data

  association [0..*] to C_CrdtMgmtBusPrtnFinRatioTP  as _CrdtMgmtBusPrtnFinRatioTP  on  $projection.BusinessPartner = _CrdtMgmtBusPrtnFinRatioTP.BusinessPartner

  // Payment Behavior Trend

  association [0..*] to C_CrdtMAcctPaytBehaviorTrend as _CrdtMAcctPaytBehaviorTrend on  $projection.BusinessPartner   = _CrdtMAcctPaytBehaviorTrend.BusinessPartner
                                                                                    and $projection.MainCreditSegment = _CrdtMAcctPaytBehaviorTrend.CreditSegment

{
          // Business Partner

          //        @ObjectModel: { text.element: ['BusinessPartnerName1']   //Name1 is filled only for organizations, not for persons

          @ObjectModel: { text.element: ['BusinessPartnerFullName']
                        }
          @Consumption: { semanticObject:      'BusinessPartner',
                          valueHelpDefinition: [{ entity:{ name:    'I_CrdtMBusinessPartnerVH',
                                                           element: 'BusinessPartner'     } }]
                        }
  key     BusinessPartner,

          @Semantics.text:true
          @Consumption.filter.hidden: true
          //        _BusinessPartner._CurrentDefaultAddress._Address.FullName                                              as BusinessPartnerFullName, //filled only for organizations, not for persons

          _BusinessPartner._CurrentDefaultAddress._AddressDefaultRepresentation.AddresseeFullName                as BusinessPartnerFullName, //filled for both, organizations and persons

          @Semantics.text:true
          _BusinessPartner._CurrentDefaultAddress._Address.BusinessPartnerName1                                  as BusinessPartnerName1, //filled only for organizations, not for persons

          @Semantics.text:true
          @Consumption.filter.hidden: true
          _BusinessPartner._CurrentDefaultAddress._Address.BusinessPartnerName2                                  as BusinessPartnerName2, //filled only for organizations, not for persons


          _BusinessPartner._CurrentDefaultAddress._Address.SearchTerm1                                           as SearchTerm1,
          @Consumption.filter.hidden: true
          _BusinessPartner._CurrentDefaultAddress._Address.SearchTerm2                                           as SearchTerm2,

          @ObjectModel.text.element: ['CountryName']
          @Consumption.valueHelpDefinition: [{ entity: { name:    'I_CountryVH',
                                                         element: 'Country' } }]
          _CreditMgmtBPAddress.Country                                                                           as BusinessPartnerCountry,
          @Semantics.text:true
          _CreditMgmtBPAddress._Country._Text.CountryName                                                        as CountryName                   : localized,
          @Semantics.text:true
          _CreditMgmtBPAddress.CityName                                                                          as BusinessPartnerCityName,

          @Consumption: { semanticObject:      'Customer',
                          filter: { hidden: true}
                        }
          _Customer.Customer                                                                                     as Customer,


          @ObjectModel.text.element: ['CrdtMgmtBusPartnerGroupName']
          @Consumption.valueHelpDefinition: [{ entity: { name:    'I_CrdtMBusPartnerGroupVH',
                                                         element: 'CrdtMgmtBusinessPartnerGroup' } }]
          CrdtMgmtBusinessPartnerGroup,
          @Consumption.filter.hidden: true
          _CrdtMBusPartnerGroup._Text.CrdtMgmtBusPartnerGroupName                                                as CrdtMgmtBusPartnerGroupName   : localized,

          _BusinessPartner.OrganizationFoundationDate,

          // Own company's score

          CreditWorthinessScoreValue,
          CrdtWrthnssScoreValdtyEndDate,
          CrdtWorthinessScoreLastChgDate,
          @EndUserText: { label:     'Calc. Score',
                          quickInfo: 'Calculated Score' }
          CalcdCrdtWorthinessScoreValue,

          // Risk class

          @ObjectModel.text.element: ['CreditRiskClassName']
          @Consumption.valueHelpDefinition: [{ entity:{ name:    'I_CreditRiskClassValueHelp',
                                                        element: 'CreditRiskClass' } }]
          CreditRiskClass,
          @Consumption.filter.hidden: true
          @Semantics.text: true
          _RiskClass._Text.CreditRiskClassName                                                                   as CreditRiskClassName           : localized,

          @ObjectModel.text.element: ['CalculatedCreditRiskClassName']
          @Consumption: { valueHelpDefinition: [{ entity:{ name:    'I_CreditRiskClassValueHelp',
                                                           element: 'CreditRiskClass'
                                                         }
                                               }],
                          filter.hidden: true
                        }
          CalculatedCreditRiskClass,
          @Consumption.filter.hidden: true
          @Semantics.text: true
          cast(_CalcRiskClass._Text.CreditRiskClassName as ukm_risk_class_calc_txt preserving type )             as CalculatedCreditRiskClassName : localized,

          CreditRiskClassLastChangeDate,


          // Rules

          @ObjectModel.text.element: ['CreditCheckRuleName']
          @Consumption.valueHelpDefinition: [{ entity:{ name: 'I_CreditCheckRuleVH' ,
                                                        element: 'CreditCheckRule' } }]
          CreditCheckRule,
          @Consumption.filter.hidden: true
          @Semantics.text: true
          _CheckRule._Text.CreditCheckRuleName                                                                   as CreditCheckRuleName           : localized,

          @ObjectModel.text.element: ['CrdtScoreAndLimitCalcRuleName']
          @Consumption.valueHelpDefinition: [{ entity:{ name: 'I_CrdtScrAndLmtCalcRuleVH' ,
                                                        element: 'CreditScoreAndLimitCalcRule' } }]
          CreditScoreAndLimitCalcRule,
          @Consumption.filter.hidden: true
          @Semantics.text: true
          cast(_CalcRule._Text.CrdtScoreAndLimitCalcRuleName as ukm_limit_and_score_calc_rulet preserving type ) as CrdtScoreAndLimitCalcRuleName : localized,

          // Main Segment

          @Consumption.filter.hidden: true
          @ObjectModel.text.association: null // Inherited annotation _text - must not be present in Consumption View

          MainCreditSegment,
          @Consumption.filter.hidden: true
          cast(_MainCreditSegment.CreditSegmentCurrency as ukm_main_segment_currency preserving type )           as MainCreditSegmentCurrency,
          @Semantics.amount.currencyCode: 'MainCreditSegmentCurrency'
          cast(_MainCreditSegmentAccount.CreditLimitAmount as ukm_credit_limit_main_segment preserving type)     as MainCreditSegmentLimitAmount, //it might appear zero if there's no data in main segment


          CustBusinessRelshpStartYear,

          // used for integration of NotesReuse component

          CrdtMAccountNoteUUID,

          // Virtual Elements

          @Semantics.amount.currencyCode: 'MainCreditSegmentCurrency'
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual StaticCreditExposureAmount     : ukm_static_exposure_amt_main,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual StaticCreditExposurePercent    : ukm_credlimit_used_static,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual StaticCrdtExposureCriticality  : ukm_limit_utilzn_criticality,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_CreditLimitAmount         : xfeld,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual CrdtAgencyIntegURLIsAvailable  : xfeld,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_CrdtAgencyIntegURLMig     : xfeld, //used for second migration button


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_SemanticObjectAction      : /ui2/semantic_action,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPATP2_CALC_EXIT'
  virtual FormattedAddress               : ukm_bupa_address_string, //replaces field AddressText


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual BusinessPartnerText            : ukm_bupa_description,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_Hide_DCD_V1               : ukm_hide_dcd_v1, //true -> hide UI facet


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_Hide_DCD_V2               : ukm_hide_dcd_v2, //true -> hide UI facet


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_HasGlobalHierarchy        : ukm_bp_not_part_of_hierarchy, //true -> hide UI facet


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual CrdtScoreValidityRemainingDays : ukm_score_validity_rmng_days,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual UICT_HasScoreValidityEndDate   : ukm_scorevaldtyenddate_empty, //true -> hide UI facet


          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual CrdtMgmtAccountNoteIdentifier  : nte_objectid, //reuse notes: provide business partner with leading zeros


          @ObjectModel.text.element: ['CreditManagementCntryRiskName']
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual CreditManagementCountryRisk    : ukm_country_risk,

          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_UKM_BP_VE'
  virtual CreditManagementCntryRiskName  : ukm_country_risk_description,

          // Associations to all entities at this business object node

          _BusinessPartner,
          _Customer,
          _CreditMgmtBPAddress,
          _MainCreditSegment,
          _CrdtMBusPartnerGroup,
          _RiskClass,
          _CalcRiskClass,
          _CheckRule,
          _CalcRule,


          // Associations to other Business Object nodes

          _CreditMgmtAccountTP        : redirected to composition child C_CreditMgmtAccountTP,
          _CrdtMBusPartnerRatingTP    : redirected to composition child C_CrdtMBusPartnerRatingTP,

          _CrdtMBPCollateralTP        : redirected to composition child C_CrdtMBPCollateralTP,
          _CrdtMBPNegativeEventTP     : redirected to composition child C_CrdtMBPNegativeEventTP,
          _CrdtMBPSpprsdCheckStepTP   : redirected to composition child C_CrdtMBPSpprsdCheckStepTP,
          _CrdtMBPCreditInsuranceTP   : redirected to composition child C_CrdtMBPCreditInsuranceTP,
          _CrdtMFmlaScoreEvalResultTP : redirected to composition child C_CrdtMFmlaScoreEvalResultTP,

          @ObjectModel.filter.enabled: false
          _CrdtMBPRelationshipTP      : redirected to C_CrdtMBPRelationshipTP,
          _CreditDecisionDocument     : redirected to C_CreditDecisionDocumentTP,
          _CreditDecisionDocument2    : redirected to C_CreditDecisionDocumentTP_2,
          _CreditLimitRequest         : redirected to C_CreditLimitRequestTP,

          //Charts

          @ObjectModel: { filter: { enabled: false } }
          _CreditWorthinessScoreTrend,

          @ObjectModel: { filter: { enabled: false } }
          _CreditLimitTrend,

          @ObjectModel: { filter: { enabled: false } }
          _AgingGrid,

          @ObjectModel: { filter: { enabled: false } }
          _CrdtMgmtBusPrtnFinRatioTP,

          @ObjectModel: { filter: { enabled: false } }
          _CrdtMAcctPaytBehaviorTrend

}