R_CashBankTP

DDL: R_CASHBANKTP Type: view_entity TRANSACTIONAL

Cash Transactional Bank TP

R_CashBankTP is a Transactional CDS View that provides data about "Cash Transactional Bank TP" in SAP S/4HANA. It reads from 1 data source (I_Bank_2) and exposes 38 fields with key fields BankCountry, BankInternalID. It has 15 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_Bank_2 Bank from

Associations (15)

CardinalityTargetAliasCondition
[1..1] R_BankTP _Bank $projection.BankCountry = _Bank.BankCountry and $projection.BankInternalID = _Bank.BankInternalID
[0..1] I_RiskBusinessPartner _RiskBP $projection.BankCountry = _RiskBP.BankCountry and $projection.BankInternalID = _RiskBP.BankInternalID and _RiskBP.ValidFrom <= $session.system_date and _RiskBP.ValidTo >= $session.system_date
[0..1] I_NumberOfCashBankUsage _BankUsage $projection.BankCountry = _BankUsage.BankCountry and $projection.BankInternalID = _BankUsage.BankInternalID
[0..1] I_CashBankHierarchyRootName _BankHierarchy $projection.BankCountry = _BankHierarchy.BankCountry and $projection.BankInternalID = _BankHierarchy.BankInternalID
[0..1] I_User _CreatedBy $projection.createdbyuser = _CreatedBy.UserID
[1..1] I_CshBkCatWithSEPAValueHelp _BankCategory $projection.BankCategory = _BankCategory.BankCategory
[0..1] I_Region _Region $projection.addressregion = _Region.Region and $projection.BankCountry = _Region.Country
[0..1] I_Country _Country $projection.BankCountry = _Country.Country
[0..1] I_UserContactCard _UserContactCardCreation $projection.createdbyuser = _UserContactCardCreation.ContactCardID
[0..*] R_CashBankHouseBankTP _HouseBank
[0..*] R_CashBankServiceMappingTP _BankServiceMapping
[0..*] R_CashBankNettingPartnerTP _NettingBusinessPartner
[0..*] R_CashBankRelatedBranchTP _RelatedBranch
[0..1] R_BankIntradayStatementRuleTP _BankIntradayStatementRule
[0..1] R_BankRiskBusinessPartnerTP _RiskBusinessPartner

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Cash Transactional Bank TP view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
Search.searchable false view
ObjectModel.sapObjectNodeType.name Bank view

Fields (38)

KeyFieldSource TableSource FieldDescription
KEY BankCountry I_Bank_2 BankCountry
KEY BankInternalID I_Bank_2 BankInternalID
CreatedByUser _Bank CreatedByUser
BankNetworkGrouping _Bank BankNetworkGrouping
BankNumber _Bank BankNumber
SWIFTCode _Bank SWIFTCode
IsMarkedForDeletion _Bank IsMarkedForDeletion
BankHierarchyGroupName _BankHierarchy BankHierarchyGroupName
LastChangeDateTime _Bank LastChangeDateTime
LongBankName _Bank LongBankName
LongBankBranch _Bank LongBankBranch
StreetName _Bank StreetName
CityName _Bank CityName
AddressRegion _Bank AddressRegion
BankIsInternal _Bank BankIsInternal
CashBankKeyForDisplay _Bank BankInternalID
AddressID _Bank AddressID
BankIsStandard _Bank BankIsStandard
LongBankBranchIsHidden _Bank LongBankBranchIsHidden
BankNumberIsHidden _Bank BankNumberIsHidden
SWIFTCodeIsHidden _Bank SWIFTCodeIsHidden
BankNetworkGroupingIsHidden _Bank BankNetworkGroupingIsHidden
BankAddressIsHidden _Bank BankAddressIsHidden
BankScriptedAddressIsHidden _Bank BankScriptedAddressIsHidden
_BankCategory _BankCategory
_BankUsage _BankUsage
_Country _Country
_Region _Region
_CreatedBy _CreatedBy
_BankHierarchy _BankHierarchy
_RiskBP _RiskBP
_HouseBank _HouseBank
_BankServiceMapping _BankServiceMapping
_NettingBusinessPartner _NettingBusinessPartner
_RelatedBranch _RelatedBranch
_UserContactCardCreation _UserContactCardCreation
_BankIntradayStatementRule _BankIntradayStatementRule
_RiskBusinessPartner _RiskBusinessPartner
@AccessControl.authorizationCheck:#MANDATORY
@EndUserText.label: 'Cash Transactional Bank TP'
@VDM.viewType:#TRANSACTIONAL
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #MASTER
}
@Search.searchable: false
@ObjectModel.sapObjectNodeType.name:'Bank'
define root view entity R_CashBankTP as select from I_Bank_2 as Bank
  composition [0..*] of R_CashBankHouseBankTP         as _HouseBank
  composition [0..*] of R_CashBankServiceMappingTP    as _BankServiceMapping
  composition [0..*] of R_CashBankNettingPartnerTP    as _NettingBusinessPartner
  composition [0..*] of R_CashBankRelatedBranchTP     as _RelatedBranch
  composition [0..1] of R_BankIntradayStatementRuleTP as _BankIntradayStatementRule   //CE2402:change data modeling

  composition [0..1] of R_BankRiskBusinessPartnerTP   as _RiskBusinessPartner         //CE2402:change modeling

  association [1..1] to R_BankTP                      as _Bank                on $projection.BankCountry = _Bank.BankCountry
                                                                             and $projection.BankInternalID = _Bank.BankInternalID
  //association [0..1] to I_BankIntraStaRule            as _Rule                on $projection.BankCountry = _Rule.BankCountry

  //                                                                           and $projection.BankInternalID = _Rule.BankInternalID

  association [0..1] to I_RiskBusinessPartner         as _RiskBP              on $projection.BankCountry = _RiskBP.BankCountry
                                                                             and $projection.BankInternalID = _RiskBP.BankInternalID
                                                                             and _RiskBP.ValidFrom <= $session.system_date
                                                                             and _RiskBP.ValidTo   >= $session.system_date
  association [0..1] to I_NumberOfCashBankUsage       as _BankUsage           on $projection.BankCountry    = _BankUsage.BankCountry
                                                                             and $projection.BankInternalID = _BankUsage.BankInternalID
  association [0..1] to I_CashBankHierarchyRootName   as _BankHierarchy       on $projection.BankCountry    = _BankHierarchy.BankCountry
                                                                             and $projection.BankInternalID = _BankHierarchy.BankInternalID
  association [0..1] to I_User                        as _CreatedBy           on $projection.createdbyuser = _CreatedBy.UserID
  association [1..1] to I_CshBkCatWithSEPAValueHelp   as _BankCategory        on $projection.BankCategory  = _BankCategory.BankCategory
  association [0..1] to I_Region                      as _Region              on $projection.addressregion = _Region.Region
                                                                             and $projection.BankCountry = _Region.Country
  association [0..1] to I_Country                     as _Country             on $projection.BankCountry = _Country.Country
  association [0..1] to I_UserContactCard             as _UserContactCardCreation on  $projection.createdbyuser  = _UserContactCardCreation.ContactCardID
//  association [0..1] to I_BusinessPartner             as _BusinessPartner     on $projection.RiskPartnerNo = _BusinessPartner.BusinessPartner

//  association [0..1] to I_BPCrdtWrthnssRatingText     as _RatingText          on $projection.BPCreditStandingRating  = _RatingText.BPCreditStandingRating

//                                                                             and _RatingText.Language = $session.system_language

//  association [0..1] to I_IntraBkStaRuleText          as _RuleText            on $projection.intrabkstaruleexternalid = _RuleText.IntraBkStaRuleExternalID

//                                                                             and _RuleText.Language = $session.system_language


{     @ObjectModel.foreignKey.association: '_Country'
  key Bank.BankCountry,
  key Bank.BankInternalID,
      @Semantics.user.createdBy: true
      _Bank.CreatedByUser,
      case
        when _Bank.BankCategory is not initial then cast( _Bank.BankCategory as bf_bank_category preserving type )
        else cast( ' ' as bf_bank_category preserving type)
      end                                       as BankCategory,
      _Bank.BankNetworkGrouping,
      _Bank.BankNumber,
      _Bank.SWIFTCode,
      _Bank.IsMarkedForDeletion,
//     _Rule.IntraBkStaRuleExternalID,

//      case when _RiskBP._BusinessPartner._BPCreditWorthiness.BPCreditStandingRating is null then ''

//      else _RiskBP._BusinessPartner._BPCreditWorthiness.BPCreditStandingRating

//      end as BPCreditStandingRating,   //Support the empty filter

//      case when _RiskBP._BusinessPartner.BusinessPartnerGrouping is null then ''

//      else _RiskBP._BusinessPartner.BusinessPartnerGrouping

//      end as BusinessPartnerGrouping,

//      case when _RiskBP.BusinessPartnerNumber is null then ''

//      else _RiskBP.BusinessPartnerNumber

//      end as RiskPartnerNo,

//      _RiskBP.ValidTo as RiskPartnerValidToDate,      // It is used to lock

      _BankHierarchy.BankHierarchyGroupName,

      cast(
        case when _BankUsage.NumberOfHouseBanks = 0 then ''
          else 'X'
        end      as xfeld preserving type )        as BankHasHouseBanks,

      cast(
        case when _BankUsage.NumberOfBankAccounts = 0  then ''
          else 'X'
        end   as xfeld preserving type )           as BankHasBankAccounts,

      cast(
      case when _BankUsage.NumberOfHouseBanks <> 0 or
                _BankUsage.NumberOfBankAccounts <> 0 or
                _RiskBP.BusinessPartnerNumber is not null  then 'X'

      else  ''
      end   as xfeld preserving type )             as BankIsMyBank,//MyBank,


//      @Semantics.booleanIndicator:true

//      case

//        when BankCategory = '4' or

//             BankCategory = '5' or

//             BankCategory = '9'

//        then cast( 'X' as xfeld preserving type)

//        else cast( ' ' as xfeld preserving type)

//      end                                          as IntradayStatementsRuleIsHidden,


      //local ETag field --> OData ETag

      _Bank.LastChangeDateTime,

      //Refer to R_BankTP

      _Bank.LongBankName,
      _Bank.LongBankBranch,
      _Bank.StreetName,
      _Bank.CityName,
      _Bank.AddressRegion,
      _Bank.BankIsInternal,    // It is used in class CL_CA_BNK_RAP_MB_UI_FIELD_EXIT

      _Bank.BankInternalID as CashBankKeyForDisplay,
      _Bank.AddressID,
      _Bank.BankIsStandard,     // It is used in class CL_CA_BNK_RAP_MB_UI_FIELD_EXIT

      _Bank.LongBankBranchIsHidden,
      _Bank.BankNumberIsHidden,
      _Bank.SWIFTCodeIsHidden,
      _Bank.BankNetworkGroupingIsHidden,
      _Bank.BankAddressIsHidden,
      _Bank.BankScriptedAddressIsHidden,

      _BankCategory,
      _BankUsage,
//      _Rule,

//      _RiskBP,

      _Country,
      _Region,
      _CreatedBy,
      _BankHierarchy,
      _RiskBP,                     //CE2402:change modeling


      /* Associations */
      _HouseBank,
      _BankServiceMapping,
      _NettingBusinessPartner,
      _RelatedBranch,
      _UserContactCardCreation,
//      _BusinessPartner,

//      _RatingText,

//      _RuleText,

      _BankIntradayStatementRule,  //CE2402:change modeling

      _RiskBusinessPartner         //CE2402:change modeling


}where _Bank.BankCategory <> '2' or _Bank.BankCategory is null;
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BANK_2",
"I_CASHBANKHIERARCHYROOTNAME",
"I_NUMBEROFCASHBANKUSAGE",
"I_RISKBUSINESSPARTNER",
"R_BANKTP"
],
"ASSOCIATED":
[
"I_CASHBANKHIERARCHYROOTNAME",
"I_COUNTRY",
"I_CSHBKCATWITHSEPAVALUEHELP",
"I_NUMBEROFCASHBANKUSAGE",
"I_REGION",
"I_RISKBUSINESSPARTNER",
"I_USER",
"I_USERCONTACTCARD",
"R_BANKINTRADAYSTATEMENTRULETP",
"R_BANKRISKBUSINESSPARTNERTP",
"R_CASHBANKHOUSEBANKTP",
"R_CASHBANKNETTINGPARTNERTP",
"R_CASHBANKRELATEDBRANCHTP",
"R_CASHBANKSERVICEMAPPINGTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/