R_BUSINESSSOLUTIONORDERTP

CDS View

Business Solution Order - TP

R_BUSINESSSOLUTIONORDERTP is a CDS View in S/4HANA. Business Solution Order - TP. 3 CDS views read from this table.

CDS Views using this table (3)

ViewTypeJoinVDMDescription
C_BusSolnOrdListRptAndObjPg view_entity projection CONSUMPTION Projection: Solution Order
I_BusinessSolutionOrderTP view_entity projection TRANSACTIONAL Business Solution Order - TP
R_BusSolnOrdPartnerTP view_entity inner TRANSACTIONAL Business Solution Order Partner - TP
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}

@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.sapObjectNodeType.name: 'BusinessSolutionOrder'

@ObjectModel: {
  semanticKey: ['BusinessSolutionOrder'],
  representativeKey: 'BusinessSolutionOrder',
  usageType:{
    dataClass:      #TRANSACTIONAL,
    serviceQuality: #C,
    sizeCategory:   #L
  }
}

@VDM: {
  viewType: #TRANSACTIONAL,
  lifecycle.contract.type: #SAP_INTERNAL_API
}

@EndUserText.label: 'Business Solution Order - TP'

define root view entity R_BusinessSolutionOrderTP
  as select from I_ServiceDocumentEnhcd

  association [0..1] to I_CustMgmtExtRefID             as _ExternalReference            on  $projection.BusinessSolutionOrder       = _ExternalReference.CustMgmtDocument
                                                                                        and _ExternalReference.CustMgmtObjectType   = 'BUS2000172'
                                                                                        and _ExternalReference.CustMgmtExtRefIDType = '0012'

  association [0..*] to I_CustMgmtPartner              as _PersonResponsible            on  $projection.BusinessSolutionOrder               = _PersonResponsible.CustMgmtDocument
                                                                                        and _PersonResponsible.CustMgmtObjectType           = 'BUS2000172'
                                                                                        and _PersonResponsible.CustMgmtPartFunctionCategory = '0008'

  association [0..1] to I_SrvcMgmtObjectStatus       as _SolutionOrderStatus          on  $projection.BusinessSolutionOrderUUID = _SolutionOrderStatus.SrvcMgmtObjectUUID
                                                                                        and (
                                                                                           _SolutionOrderStatus.SrvcMgmtObjectStatus        = 'I1002'
                                                                                           or _SolutionOrderStatus.SrvcMgmtObjectStatus     = 'I1003'
                                                                                           or _SolutionOrderStatus.SrvcMgmtObjectStatus     = 'I1004'
                                                                                           or _SolutionOrderStatus.SrvcMgmtObjectStatus     = 'I1005'
                                                                                         )
                                                                                        and _SolutionOrderStatus.SrvcMgmtObjectStatusIsInactive   = ''
  
  association [0..1] to E_ServiceDocument              as _Extension                    on  $projection.ServiceObjectType     = _Extension.ServiceCategory
                                                                                        and $projection.BusinessSolutionOrder = _Extension.ServiceOrder


  // Added Associations for C_BusSolnOrdListRptAndObjPg

  association [1..1] to I_ServiceDocumentEnhcd         as _ServiceDocumentEnhcd         on  $projection.BusinessSolutionOrder       = _ServiceDocumentEnhcd.ServiceDocument
                                                                                        and _ServiceDocumentEnhcd.ServiceObjectType = 'BUS2000172'

  association [1]    to I_SrvcDocErrorStatusVH         as _ServiceDocHasError           on  $projection.BusSolnOrdHasError = _ServiceDocHasError.ServiceDocumentHasError


  association [1]    to I_BusinessPartner              as _ServiceDocCreatedBy          on  $projection.ServiceDocumentCreatedByUser = _ServiceDocCreatedBy.BusinessPartner
  association [1]    to I_BusinessPartner              as _ServiceDocChangedBy          on  $projection.ServiceDocumentChangedByUser = _ServiceDocChangedBy.BusinessPartner

  association [0..1] to I_SrvcMgmtBPQuickView_2        as _SrvcDocBPSoldToParty         on  $projection.SoldToParty = _SrvcDocBPSoldToParty.BusinessPartner
  association [0..1] to I_SrvcMgmtBPQuickView_2        as _SrvcDocBPContactCard         on  $projection.ContactPersonBusinessPartnerId = _SrvcDocBPContactCard.BusinessPartner
  association [0..1] to I_SrvcMgmtBPQuickView_2        as _SrvcDocBPRespEmployee        on  $projection.RespEmployeeBusinessPartnerId = _SrvcDocBPRespEmployee.BusinessPartner

  association [0..1] to I_CustMgmtLifecycleUserStsText as _CustMgmtLifecycleUserStsText on  $projection.BusSolnOrdStatus           = _CustMgmtLifecycleUserStsText.CustMgmtLifecycleUserStatus
                                                                                        and _CustMgmtLifecycleUserStsText.Language = $session.system_language

  association [0..1] to P_BusSolnOrdCstmStsMappgEnhcd  as _BusSolnOrdCstmStsMappgEnhcd  on  $projection.BusSolnOrdType            = _BusSolnOrdCstmStsMappgEnhcd.ServiceDocumentType
                                                                                        and $projection.BusSolnOrdStatus          = _BusSolnOrdCstmStsMappgEnhcd.ServiceDocumentStatus
                                                                                        and _BusSolnOrdCstmStsMappgEnhcd.Language = $session.system_language
  association [0..1] to I_SrvcLifeCycleSystemStatusT   as _SrvcLifeCycleSystemStatusT   on  $projection.BusSolnOrdStatus         = _SrvcLifeCycleSystemStatusT.SrvcLifeCycleSystemStatus
                                                                                        and _SrvcLifeCycleSystemStatusT.Language = $session.system_language


  composition [0..*] of R_BusinessSolutionOrderItemTP  as _BusinessSolutionOrderItemTP
  composition [0..*] of R_BusSolnOrdPartnerTP          as _BusSolnOrdPartnerTP
  composition [0..*] of R_BusSolnOrdItemRelationshipTP as _BusSolnOrdItemRelationshipTP
  composition [0..*] of R_BusSolnOrdFUPSalesOrderTP    as _BusSolnOrdFUPSalesOrderTP
  composition [0..*] of R_BusSolnOrdFUPSrvcOrdTP       as _BusSolnOrdFUPSrvcOrdTP
  composition [0..*] of R_BusSolnOrdFUPSrvcContrTP     as _BusSolnOrdFUPSrvcContrTP
  composition [0..*] of R_BusSolnOrdFUPSubscrpnTP      as _BusSolnOrdFUPSubscrpnTP
  composition [0..*] of R_BusSolnOrdFUPEntProjectTP    as _BusSolnOrdFUPEntProjectTP
  composition [0..*] of R_BusSolnOrdUserStatusTP       as _BusSolnOrdUserStatusTP
  composition [0..*] of R_BSOrdPrdcssrSrvcContrTP      as _BSOrdPrdcssrSrvcContrTP
  composition [0..*] of R_BusSolnOrdPriceElementTP     as _BusSolnOrdPriceElementTP
  composition [0..*] of R_BusSolnOrdLongTextTP         as _BusSolnOrdLongTextTP
{
      // Administrative

  key ServiceDocument                                  as BusinessSolutionOrder,

      @ObjectModel.foreignKey.association: '_ServiceDocumentType'
      ServiceDocumentType                              as BusSolnOrdType,
      @Semantics.uuid: true
      ServiceDocumentUUID                              as BusinessSolutionOrderUUID,

      @Semantics.uuid: true
      ServiceDocumentCharUUID,
      ServiceDocumentDescription                       as BusSolnOrdDescription,
      Language,
      PostingDate,
      ServiceDocCreationDateTime,
      ServiceDocChangedDateTime,
      ServiceDocumentCreatedByUser,
      ServiceDocumentChangedByUser,
      _ExternalReference.CustMgmtExtRefID              as BusSolnOrdExtReference,


      // Partners

      @ObjectModel.foreignKey.association: '_SoldToParty'
      SoldToParty,

      @ObjectModel.foreignKey.association: '_ShipToParty'
      ShipToParty,

      @ObjectModel.foreignKey.association: '_BillToParty'
      BillToParty,

      @ObjectModel.foreignKey.association: '_PayerParty'
      PayerParty,

      @ObjectModel.foreignKey.association: '_ContactPerson'
      ContactPerson                                    as ContactPersonBusinessPartnerId,

      @ObjectModel.foreignKey.association: '_RespEmployee'
      ResponsibleEmployee                              as RespEmployeeBusinessPartnerId,


      // Status

      cast(case _SolutionOrderStatus.SrvcMgmtObjectStatus
      when 'I1002' then 'X'
      else ' '
      end                  as   xfeld preserving type) as BusSolnOrdIsNew,

      cast(case _SolutionOrderStatus.SrvcMgmtObjectStatus
      when 'I1003' then 'X'
      else ' '
      end                  as   xfeld preserving type) as BusSolnOrdIsInProcess,

      cast(case _SolutionOrderStatus.SrvcMgmtObjectStatus
      when 'I1004' then 'X'
      else ' '
      end                  as   xfeld preserving type) as BusSolnOrdIsReleased,

      cast(case _SolutionOrderStatus.SrvcMgmtObjectStatus
      when 'I1005' then 'X'
      else ' '
      end                  as   xfeld preserving type) as BusSolnOrdIsCompleted,
      
      cast(case _SolutionOrderStatus.SrvcMgmtObjectStatus
      when 'I1075' then 'C'
      else ' '
      end                  as   xfeld preserving type) as ServiceDocOvrlBillgBlkSts,

      ServiceDocumentStatus                            as BusSolnOrdStatus,

      case _ServiceDocumentType.StatusProfile
      when ''
        then _SrvcLifeCycleSystemStatusT.SrvcLifeCycleSystemStatusName
      else
         case _BusSolnOrdCstmStsMappgEnhcd.ServiceDocumentStatus
         when ''
          then _SrvcLifeCycleSystemStatusT.SrvcLifeCycleSystemStatusName
          else _BusSolnOrdCstmStsMappgEnhcd.StatusDescription
         end
       end                                             as ServiceDocumentStatusName,

      // Dates and Durations

      CustomerPurchaseOrderDate,


      // Pricing

      @ObjectModel.foreignKey.association: '_TransactionCurrency'
      TransactionCurrency,

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      ServiceDocNetAmount,

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      ServiceDocGrossAmount,

      // Organization

      @ObjectModel.foreignKey.association: '_SalesOrganization'
      SalesOrganization,

      @ObjectModel.foreignKey.association: '_DistributionChannel'
      DistributionChannel,

      @ObjectModel.foreignKey.association: '_Division'
      Division,

      @ObjectModel.foreignKey.association: '_SalesOffice'
      SalesOffice,

      @ObjectModel.foreignKey.association: '_SalesGroup'
      SalesGroup,


      // Others

      @Semantics.booleanIndicator
      ServiceDocumentHasError                          as BusSolnOrdHasError,
      PaymentTerms,
      PurchaseOrderByCustomer,


      // For Authorization

      @ObjectModel.foreignKey.association: '_SalesOrganizationOrgUnit_2'
      SalesOrganizationOrgUnitID,

      @ObjectModel.foreignKey.association: '_SalesOfficeOrgUnit_2'
      SalesOfficeOrgUnitID,

      @ObjectModel.foreignKey.association: '_SalesGroupOrgUnit_2'
      SalesGroupOrgUnitID,

      @ObjectModel.foreignKey.association: '_ServiceOrganizationOrgUnit_2'
      ServiceOrganization,

      @ObjectModel.foreignKey.association: '_ServiceObjType'
      ServiceObjectType,


      // Compositions

      _BusinessSolutionOrderItemTP,
      _BusSolnOrdPartnerTP,
      _BusSolnOrdItemRelationshipTP,
      _BusSolnOrdFUPSalesOrderTP,
      _BusSolnOrdFUPSrvcOrdTP,
      _BusSolnOrdFUPSrvcContrTP,
      _BusSolnOrdFUPSubscrpnTP,
      _BusSolnOrdFUPEntProjectTP,
      _BusSolnOrdUserStatusTP,
      _BSOrdPrdcssrSrvcContrTP,
      _BusSolnOrdPriceElementTP,
      _BusSolnOrdLongTextTP,       


      // Associations

      _ContactPerson,
      _RespEmployee,
      _ServiceObjType,
      _SoldToParty,
      _ShipToParty,
      _BillToParty,
      _PayerParty,
      _PersonResponsible,

      _SalesOrganization,
      _DistributionChannel,
      _Division,
      _SalesOffice,
      _SalesGroup,

      _SalesOrganizationOrgUnit_2,
      _SalesOfficeOrgUnit_2,
      _SalesGroupOrgUnit_2,
      _ServiceOrganizationOrgUnit_2,

      _TransactionCurrency,


      // Associations for C_BusSolnListRptAndObjPg

      _ServiceDocumentEnhcd,
      _ServiceDocHasError,
      _SolutionOrderStatus,
      _ServiceDocCreatedBy,
      _ServiceDocChangedBy,
      _ServiceDocumentType,
      _SrvcDocBPSoldToParty,
      _SrvcDocBPContactCard,
      _SrvcDocBPRespEmployee,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_SrvcDocLifecycleStatus'
      _ServiceDocumentStatus,
      _SrvcDocLifecycleStatus,
      _SrvcLifeCycleSystemStatusT
}
where
  ServiceObjectType = 'BUS2000172'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTEXTREFID",
"I_SERVICEDOCUMENTENHCD",
"I_SERVICEDOCUMENTTYPE",
"I_SRVCLIFECYCLESYSTEMSTATUST",
"I_SRVCMGMTOBJECTSTATUS",
"P_BUSSOLNORDCSTMSTSMAPPGENHCD"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_CURRENCY",
"I_CUSTMGMTBUSOBJTYPE",
"I_CUSTMGMTPARTNER",
"I_DISTRIBUTIONCHANNEL",
"I_DIVISION",
"I_SALESGROUP",
"I_SALESOFFICE",
"I_SALESORGANIZATION",
"I_SERVICEDOCUMENTENHCD",
"I_SERVICEDOCUMENTSTATUS",
"I_SERVICEDOCUMENTTYPE",
"I_SRVCDOCERRORSTATUSVH",
"I_SRVCDOCLIFECYCLESTATUS",
"I_SRVCLIFECYCLESYSTEMSTATUST",
"I_SRVCMGMTBPQUICKVIEW_2",
"I_SRVCMGMTOBJECTSTATUS",
"I_SRVCMGMTORGANIZATIONUNIT",
"R_BSORDPRDCSSRSRVCCONTRTP",
"R_BUSINESSSOLUTIONORDERITEMTP",
"R_BUSSOLNORDFUPENTPROJECTTP",
"R_BUSSOLNORDFUPSALESORDERTP",
"R_BUSSOLNORDFUPSRVCCONTRTP",
"R_BUSSOLNORDFUPSRVCORDTP",
"R_BUSSOLNORDFUPSUBSCRPNTP",
"R_BUSSOLNORDITEMRELATIONSHIPTP",
"R_BUSSOLNORDLONGTEXTTP",
"R_BUSSOLNORDPARTNERTP",
"R_BUSSOLNORDPRICEELEMENTTP",
"R_BUSSOLNORDUSERSTATUSTP"
],
"BASE":
[
"I_SERVICEDOCUMENTENHCD"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/