C_BusSolnOrdNetAmountSitn

DDL: C_BUSSOLNORDNETAMOUNTSITN SQL: CSOLENTPRJVALCHN Type: view CONSUMPTION Package: CRMS4_SOLUTIONORDER_FIORI_UI

Situation for project cost change

C_BusSolnOrdNetAmountSitn is a Consumption CDS View that provides data about "Situation for project cost change" in SAP S/4HANA. It reads from 1 data source (I_ServiceDocumentItemEnhcd) and exposes 24 fields with key fields BusinessSolutionOrder, BusinessSolutionOrderItem, ServiceObjectType. It has 1 association to related views. Part of development package CRMS4_SOLUTIONORDER_FIORI_UI.

Data Sources (1)

SourceAliasJoin Type
I_ServiceDocumentItemEnhcd SolutionOrderProjectItem from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_BusinessUser _ResponsibleEmployee SolutionOrderProjectItem.ResponsibleEmployee = _ResponsibleEmployee.BusinessPartner

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName CSOLENTPRJVALCHN view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
VDM.viewType #CONSUMPTION view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.uniqueIdField BusSolnOrderItemCharUUID view
EndUserText.label Situation for project cost change view

Fields (24)

KeyFieldSource TableSource FieldDescription
KEY BusinessSolutionOrder I_ServiceDocumentItemEnhcd ServiceDocument
KEY BusinessSolutionOrderItem
KEY ServiceObjectType I_ServiceDocumentItemEnhcd ServiceObjectType
ServiceDocumentType I_ServiceDocumentItemEnhcd ServiceDocumentType
BusSolnOrderItemCharUUID I_ServiceDocumentItemEnhcd ServiceDocumentItemCharUUID
ResponsibleEmployeeUserID _ResponsibleEmployee UserID Responsible Employee
SalesOrganization I_ServiceDocumentItemEnhcd SalesOrganization
DistributionChannel I_ServiceDocumentItemEnhcd DistributionChannel
Division I_ServiceDocumentItemEnhcd Division
SalesOffice I_ServiceDocumentItemEnhcd SalesOffice
SalesGroup I_ServiceDocumentItemEnhcd SalesGroup
SalesOfficeOrgUnitID I_ServiceDocumentItemEnhcd SalesOfficeOrgUnitID
SalesOrganizationOrgUnitID I_ServiceDocumentItemEnhcd SalesOrganizationOrgUnitID
SalesGroupOrgUnitID I_ServiceDocumentItemEnhcd SalesGroupOrgUnitID
ServiceOrganization I_ServiceDocumentItemEnhcd ServiceOrganization
_SalesOrganization _SalesOrganization
_SalesOffice _SalesOffice
_SalesGroup _SalesGroup
_DistributionChannel _DistributionChannel
_Division _Division
_SalesOrganizationOrgUnit_2 _SalesOrganizationOrgUnit_2
_SalesOfficeOrgUnit_2 _SalesOfficeOrgUnit_2
_SalesGroupOrgUnit_2 _SalesGroupOrgUnit_2
_ServiceOrganizationOrgUnit_2 _ServiceOrganizationOrgUnit_2
@AbapCatalog.sqlViewName: 'CSOLENTPRJVALCHN'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true

@ClientHandling.algorithm: #SESSION_VARIABLE

@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}

@ObjectModel:{
  usageType: {
    dataClass: #TRANSACTIONAL,
    serviceQuality: #C,
    sizeCategory: #XL
  }
}

@ObjectModel.supportedCapabilities:[ #SITUATION_ANCHOR, #SITUATION_TRIGGER]

@VDM: {
  viewType: #CONSUMPTION,
  lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@Metadata.ignorePropagatedAnnotations:true

/* Semantic key used for navigation */
@ObjectModel.semanticKey: ['BusinessSolutionOrder', 'BusinessSolutionOrderItem']
/* Unique key for situation */
@ObjectModel.uniqueIdField: 'BusSolnOrderItemCharUUID'

@EndUserText.label: 'Situation for project cost change'

/* 
    ***    Customer Project Amount Value Changed Situation
    ***    Anchor and Trigger are same for this situation
*/
define view C_BusSolnOrdNetAmountSitn
  as select from I_ServiceDocumentItemEnhcd as SolutionOrderProjectItem
//  left outer to many join  I_ServiceDocumentEnhcd as _ServiceDocument on SolutionOrderProjectItem.ServiceDocument = _ServiceDocument.ServiceDocument  

//                                                                  and SolutionOrderProjectItem.ServiceObjectType = _ServiceDocument.ServiceObjectType 

                                                                  
   association [0..1] to I_BusinessUser as _ResponsibleEmployee on  SolutionOrderProjectItem.ResponsibleEmployee = _ResponsibleEmployee.BusinessPartner
{

      //Key fields

      @Consumption.hidden: true
  key SolutionOrderProjectItem.ServiceDocument as BusinessSolutionOrder,

      @Consumption.hidden: true
  key cast(ltrim(SolutionOrderProjectItem.ServiceDocumentItem, '0') as abap.numc( 6 )) as BusinessSolutionOrderItem,

      @UI.hidden: true
  key SolutionOrderProjectItem.ServiceObjectType,

      @UI.hidden: true
      SolutionOrderProjectItem.ServiceDocumentType,

      //Unique key for situation

      @Consumption.hidden: true
      @Semantics.uuid: true
      SolutionOrderProjectItem.ServiceDocumentItemCharUUID as BusSolnOrderItemCharUUID,

       //Employee responsible for notification/action

      @UI.hidden: true
      @EndUserText.label: 'Responsible Employee'
      _ResponsibleEmployee.UserID  as                      ResponsibleEmployeeUserID,
      
   
      // Sales Area and Related fields for authorization

      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_SalesOrganization'
      SolutionOrderProjectItem.SalesOrganization,

      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_DistributionChannel'
      SolutionOrderProjectItem.DistributionChannel,


      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_Division'
      SolutionOrderProjectItem.Division,

      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_SalesOffice'
      SolutionOrderProjectItem.SalesOffice,

      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_SalesGroup'
      SolutionOrderProjectItem.SalesGroup,

      @UI.hidden: true
   
      @ObjectModel.foreignKey.association: '_SalesOfficeOrgUnit_2'
      SolutionOrderProjectItem.SalesOfficeOrgUnitID,

      @UI.hidden: true
  
      @ObjectModel.foreignKey.association: '_SalesOrganizationOrgUnit_2'
      SolutionOrderProjectItem.SalesOrganizationOrgUnitID,

      @UI.hidden: true
      
      @ObjectModel.foreignKey.association: '_SalesGroupOrgUnit_2'
      SolutionOrderProjectItem.SalesGroupOrgUnitID,

      @UI.hidden: true
      
      @ObjectModel.foreignKey.association: '_ServiceOrganizationOrgUnit_2'
      SolutionOrderProjectItem.ServiceOrganization,


     
      @UI.hidden:true
      _SalesOrganization,
      @UI.hidden:true
      _SalesOffice,
      @UI.hidden:true
      _SalesGroup,
      @UI.hidden:true
      _DistributionChannel,
      @UI.hidden:true
      _Division,
      @UI.hidden:true
      _SalesOrganizationOrgUnit_2,
      @UI.hidden:true
      _SalesOfficeOrgUnit_2,
      @UI.hidden:true
      _SalesGroupOrgUnit_2,
      @UI.hidden:true
      _ServiceOrganizationOrgUnit_2
   //   @UI.hidden:true

  //    _ServiceDocument

    
}
where
  SolutionOrderProjectItem.ServiceDocumentItemObjectType = 'BUS2000193'
  and SolutionOrderProjectItem.ServiceDocumentItemIsReleased = 'X'