I_ProjectBillingRequest

DDL: I_PROJECTBILLINGREQUEST Type: view_entity BASIC

Project Billing Request

I_ProjectBillingRequest is a Basic CDS View that provides data about "Project Billing Request" in SAP S/4HANA. It reads from 1 data source (projbillgreq) and exposes 18 fields with key field ProjectBillingRequestUUID. It has 6 associations to related views.

Data Sources (1)

SourceAliasJoin Type
projbillgreq projbillgreq from

Associations (6)

CardinalityTargetAliasCondition
[0..*] I_ProjectBillingRequestItem _ProjectBillingRequestItem $projection.ProjectBillingRequestUUID = _ProjectBillingRequestItem.ProjectBillingRequestUUID
[0..1] I_ProjectBillingRequestStatus _ProjectBillingRequestStatus $projection.ProjectBillingRequestStatus = _ProjectBillingRequestStatus.ProjectBillingRequestStatus
[0..1] I_ProjBillgReqApprovalStatus _ProjBillgReqApprovalStatus $projection.ProjBillgReqApprovalStatus = _ProjBillgReqApprovalStatus.ProjBillgReqApprovalStatus
[0..1] I_ProjectBillingCategory _ProjectBillingCategory $projection.ProjectBillingCategory = _ProjectBillingCategory.ProjectBillingCategory
[0..1] I_SalesDocument _SalesDocument $projection.SalesDocument = _SalesDocument.SalesDocument
[1..1] I_EnterpriseProject _EnterpriseProject $projection.ProjectInternalID = _EnterpriseProject.ProjectInternalID

Annotations (12)

NameValueLevelField
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
EndUserText.label Project Billing Request view
VDM.viewType #BASIC view
AccessControl.authorizationCheck #MANDATORY view
Analytics.dataExtraction.enabled true view
Analytics.dataExtraction.delta.changeDataCapture.automatic true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.representativeKey ProjectBillingRequestUUID view
Metadata.ignorePropagatedAnnotations true view

Fields (18)

KeyFieldSource TableSource FieldDescription
KEY ProjectBillingRequestUUID projectbillingrequestuuid
ProjectBillingRequest projectbillingrequest
ProjectBillingRequestStatus projectbillingrequeststatus
ProjBillgReqApprovalStatus projbillgreqapprovalstatus
ProjectBillingRequestType projectbillingrequesttype
SalesDocument salesdocument
ProjectBillingCategory projectbillingcategory
ProjBillgReqLastChgdBy projbillgreqlastchgdby
ProjBillgReqLastChgdAtDteTme projbillgreqlastchgdatdtetme
ProjBillgReqCreatedBy projbillgreqcreatedby
ProjBillgReqCreatedAtDteTme projbillgreqcreatedatdtetme
ProjectInternalID projectinternalid
_ProjectBillingRequestItem _ProjectBillingRequestItem
_ProjectBillingRequestStatus _ProjectBillingRequestStatus
_ProjBillgReqApprovalStatus _ProjBillgReqApprovalStatus
_ProjectBillingCategory _ProjectBillingCategory
_SalesDocument _SalesDocument
_EnterpriseProject _EnterpriseProject
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@EndUserText.label: 'Project Billing Request'
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #MANDATORY
@Analytics.dataExtraction.enabled: true
@Analytics.dataExtraction.delta.changeDataCapture.automatic: true
@ObjectModel: {
    modelingPattern: #ANALYTICAL_DIMENSION,
    supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION, #EXTRACTION_DATA_SOURCE ],
    usageType: {
        sizeCategory: #L,
        dataClass:  #TRANSACTIONAL,
        serviceQuality: #A
    },
    representativeKey: 'ProjectBillingRequestUUID'
}
@Metadata.ignorePropagatedAnnotations: true

define view entity I_ProjectBillingRequest
  as select from projbillgreq
  association [0..*] to I_ProjectBillingRequestItem   as _ProjectBillingRequestItem   on $projection.ProjectBillingRequestUUID = _ProjectBillingRequestItem.ProjectBillingRequestUUID
  association [0..1] to I_ProjectBillingRequestStatus as _ProjectBillingRequestStatus on $projection.ProjectBillingRequestStatus = _ProjectBillingRequestStatus.ProjectBillingRequestStatus
  association [0..1] to I_ProjBillgReqApprovalStatus  as _ProjBillgReqApprovalStatus  on $projection.ProjBillgReqApprovalStatus = _ProjBillgReqApprovalStatus.ProjBillgReqApprovalStatus
  association [0..1] to I_ProjectBillingCategory      as _ProjectBillingCategory      on $projection.ProjectBillingCategory = _ProjectBillingCategory.ProjectBillingCategory

  association [0..1] to I_SalesDocument               as _SalesDocument               on $projection.SalesDocument = _SalesDocument.SalesDocument
  association [1..1] to I_EnterpriseProject           as _EnterpriseProject           on $projection.ProjectInternalID = _EnterpriseProject.ProjectInternalID  
{
  key projectbillingrequestuuid    as ProjectBillingRequestUUID,
      projectbillingrequest        as ProjectBillingRequest,
      @ObjectModel.foreignKey.association: '_ProjectBillingRequestStatus'
      projectbillingrequeststatus  as ProjectBillingRequestStatus,
      @ObjectModel.foreignKey.association: '_ProjBillgReqApprovalStatus'
      projbillgreqapprovalstatus   as ProjBillgReqApprovalStatus,
      projectbillingrequesttype    as ProjectBillingRequestType,
      @ObjectModel.foreignKey.association: '_SalesDocument'
      salesdocument                as SalesDocument,
//      salesdocumenttype            as SalesDocumentType,

      @ObjectModel.foreignKey.association: '_ProjectBillingCategory'
      projectbillingcategory       as ProjectBillingCategory,
      @Semantics.user.lastChangedBy: true
      projbillgreqlastchgdby       as ProjBillgReqLastChgdBy,
      @Semantics.systemDateTime.lastChangedAt: true
      projbillgreqlastchgdatdtetme as ProjBillgReqLastChgdAtDteTme,
      @Semantics.user.createdBy: true
      projbillgreqcreatedby        as ProjBillgReqCreatedBy,
      @Semantics.systemDateTime.createdAt: true
      projbillgreqcreatedatdtetme  as ProjBillgReqCreatedAtDteTme,
      projectinternalid            as ProjectInternalID,

      _ProjectBillingRequestItem,
      _ProjectBillingRequestStatus,
      _ProjBillgReqApprovalStatus,
      _ProjectBillingCategory,

      _SalesDocument,
      _EnterpriseProject
}