I_ServiceEntrySheetTP

DDL: I_SERVICEENTRYSHEETTP SQL: ISRVCENTRSHTTP Type: view TRANSACTIONAL

Service Entry Sheet with Draft

I_ServiceEntrySheetTP is a Transactional CDS View that provides data about "Service Entry Sheet with Draft" in SAP S/4HANA. It reads from 1 data source (I_ServiceEntrySheet) and exposes 52 fields with key field ServiceEntrySheet. It has 10 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ServiceEntrySheet Document from

Associations (10)

CardinalityTargetAliasCondition
[1..*] I_ServiceEntrySheetItemTP _ServiceEntrySheetItem _ServiceEntrySheetItem.ServiceEntrySheet = $projection.ServiceEntrySheet
[0..1] I_SrvcEntrShtApprovalStatus _ApprovalStatusValueHelp _ApprovalStatusValueHelp.ApprovalStatus = $projection.ApprovalStatus
[0..*] I_SrvcEntrShtApprvlStsTxt _ApprovalStatusText _ApprovalStatusText.ApprovalStatus = $projection.ApprovalStatus
[0..1] I_SESWorkflowStatusValueHelp _WorkflowStatusValueHelp _WorkflowStatusValueHelp.SESWorkflowStatus = $projection.SESWorkflowStatus
[0..*] I_SESWorkflowStatusText _WorkflowStatusText _WorkflowStatusText.SESWorkflowStatus = $projection.SESWorkflowStatus
[0..1] I_SrvcEntrShtRespUsrValueHelp _ResponsiblePersonValueHelp $projection.ResponsiblePerson = _ResponsiblePersonValueHelp.EmploymentInternalID
[0..1] I_PersonWorkAgreement_1 _PersonWorkAgreement_1 $projection.ResponsiblePerson = _PersonWorkAgreement_1.PersonWorkAgreement
[1..*] I_PersonWorkAgrmtStatus _PersonWorkAgrmtStatus _PersonWorkAgrmtStatus.PersonWorkAgreement = $projection.ResponsiblePerson and _PersonWorkAgrmtStatus.StartDate <= $session.system_date
[0..1] I_SrvcEntrShtOriginObjectType _OriginObjectType $projection.OriginObjectType = _OriginObjectType.OriginObjectType ----Extension
[1..1] E_ServiceEntrySheet _ServiceEntrySheetExtension $projection.ServiceEntrySheet = _ServiceEntrySheetExtension.ServiceEntrySheet

Annotations (20)

NameValueLevelField
AbapCatalog.sqlViewName ISRVCENTRSHTTP view
EndUserText.label Service Entry Sheet with Draft view
ObjectModel.compositionRoot true view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.writeDraftPersistence SRVCENTRSHT_D view
ObjectModel.writeActivePersistence ISRVCENTRSHTTP view
VDM.viewType #TRANSACTIONAL view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
ObjectModel.entityChangeStateId LastChangeDateTime view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.draftEnabled true view
ObjectModel.sapObjectNodeType.name ServiceEntrySheet view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (52)

KeyFieldSource TableSource FieldDescription
KEY ServiceEntrySheet I_ServiceEntrySheet ServiceEntrySheet
ServiceEntrySheetName I_ServiceEntrySheet ServiceEntrySheetName
Supplier I_ServiceEntrySheet Supplier
SupplierName
PurchaseOrder I_ServiceEntrySheet PurchaseOrder
PurchaseOrderCurrency I_ServiceEntrySheet PurchaseOrderCurrency
IsDeleted I_ServiceEntrySheet IsDeleted
ApprovalStatus I_ServiceEntrySheet ApprovalStatus
SESWorkflowStatus I_ServiceEntrySheet SESWorkflowStatus
ApprovalDateTime I_ServiceEntrySheet ApprovalDateTime
ResponsiblePerson I_ServiceEntrySheet ResponsiblePerson
ResponsiblePersonName
FormattedAddress
NormalizedPhoneNumber
MobilePhoneNumber
DefaultEmailAddress
OriginObjectType I_ServiceEntrySheet OriginObjectType
Currency I_ServiceEntrySheet Currency
MaterialDocument I_ServiceEntrySheet MaterialDocument
MaterialDocumentYear I_ServiceEntrySheet MaterialDocumentYear
CreationDateTime I_ServiceEntrySheet CreationDateTime
CreatedByUser
LastChangeDateTime I_ServiceEntrySheet LastChangeDateTime
LastChangeUser
PurchasingOrganization I_ServiceEntrySheet PurchasingOrganization
PurchasingGroup I_ServiceEntrySheet PurchasingGroup
IsEndOfPurposeBlocked I_ServiceEntrySheet IsEndOfPurposeBlocked
PurgDocExternalSystem I_ServiceEntrySheet PurgDocExternalSystem
PurgDocExternalReference I_ServiceEntrySheet PurgDocExternalReference
ExternalRevisionDateTime I_ServiceEntrySheet ExternalRevisionDateTime
PostingDate I_ServiceEntrySheet PostingDate
TotalNetAmount I_ServiceEntrySheet TotalNetAmount
TotalSESNetAmountInclSalesTax I_ServiceEntrySheet TotalSESNetAmountInclSalesTax
PricingDocument I_ServiceEntrySheet PricingDocument
PriceInSESHasChanged Price Changed
SendToApprovalIsPossible
CancelApprovalIsPossible
RevokeIsPossible
SESMassEditIsUtilized
_ServiceEntrySheetItem _ServiceEntrySheetItem
_ApprovalStatusValueHelp _ApprovalStatusValueHelp
_ApprovalStatusText _ApprovalStatusText
_WorkflowStatusValueHelp _WorkflowStatusValueHelp
_WorkflowStatusText _WorkflowStatusText
_ResponsiblePersonValueHelp _ResponsiblePersonValueHelp
_SrvcEntrShtPurOrdValueHelp _SrvcEntrShtPurOrdValueHelp
_DocumentCurrency _DocumentCurrency
_PurchaseOrderCurrency _PurchaseOrderCurrency
_PersonWorkAgreement_1 _PersonWorkAgreement_1
_PersonWorkAgrmtStatus _PersonWorkAgrmtStatus
_Supplier _Supplier
_OriginObjectType _OriginObjectType
@AbapCatalog.sqlViewName: 'ISRVCENTRSHTTP'
@EndUserText.label: 'Service Entry Sheet with Draft'
@ObjectModel.compositionRoot: true
@ObjectModel.transactionalProcessingEnabled: true
@ObjectModel.writeDraftPersistence: 'SRVCENTRSHT_D'
@ObjectModel.writeActivePersistence: 'ISRVCENTRSHTTP'
@VDM.viewType: #TRANSACTIONAL
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations: [ '_WorkflowStatusText' ]
@AccessControl.personalData.blocking: #REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.createEnabled: true
@ObjectModel.updateEnabled: 'EXTERNAL_CALCULATION'
@ObjectModel.deleteEnabled: 'EXTERNAL_CALCULATION'
@ObjectModel.semanticKey: ['ServiceEntrySheet']
@ObjectModel.entityChangeStateId: 'LastChangeDateTime'
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.draftEnabled:true
@ObjectModel.sapObjectNodeType.name: 'ServiceEntrySheet'

@VDM.lifecycle.contract.type: #SAP_INTERNAL_API

define view I_ServiceEntrySheetTP
  as select from I_ServiceEntrySheet as Document
  association [1..*] to I_ServiceEntrySheetItemTP     as _ServiceEntrySheetItem      on  _ServiceEntrySheetItem.ServiceEntrySheet = $projection.ServiceEntrySheet
  association [0..1] to I_SrvcEntrShtApprovalStatus   as _ApprovalStatusValueHelp    on  _ApprovalStatusValueHelp.ApprovalStatus = $projection.ApprovalStatus
  association [0..*] to I_SrvcEntrShtApprvlStsTxt     as _ApprovalStatusText         on  _ApprovalStatusText.ApprovalStatus = $projection.ApprovalStatus
  association [0..1] to I_SESWorkflowStatusValueHelp  as _WorkflowStatusValueHelp    on  _WorkflowStatusValueHelp.SESWorkflowStatus = $projection.SESWorkflowStatus
  association [0..*] to I_SESWorkflowStatusText       as _WorkflowStatusText         on  _WorkflowStatusText.SESWorkflowStatus = $projection.SESWorkflowStatus
  association [0..1] to I_SrvcEntrShtRespUsrValueHelp as _ResponsiblePersonValueHelp on  $projection.ResponsiblePerson = _ResponsiblePersonValueHelp.EmploymentInternalID
  //  association [0..*] to I_SrvcEntrShtPurOrdValueHelp  as _SrvcEntrShtPurOrdValueHelp on  _SrvcEntrShtPurOrdValueHelp.PurchaseOrder = $projection.PurchaseOrder

  association [0..1] to I_PersonWorkAgreement_1       as _PersonWorkAgreement_1      on  $projection.ResponsiblePerson = _PersonWorkAgreement_1.PersonWorkAgreement
  association [1..*] to I_PersonWorkAgrmtStatus       as _PersonWorkAgrmtStatus      on  _PersonWorkAgrmtStatus.PersonWorkAgreement = $projection.ResponsiblePerson
                                                                                     and _PersonWorkAgrmtStatus.StartDate           <= $session.system_date
  association [0..1] to I_SrvcEntrShtOriginObjectType as _OriginObjectType           on  $projection.OriginObjectType = _OriginObjectType.OriginObjectType


  ----Extension Association
  association [1..1] to E_ServiceEntrySheet           as _ServiceEntrySheetExtension on  $projection.ServiceEntrySheet = _ServiceEntrySheetExtension.ServiceEntrySheet

{
  key Document.ServiceEntrySheet,
      Document.ServiceEntrySheetName,
      Document.Supplier,
      cast(Document.SupplierName as mmpur_ses_suppliername preserving type )                                           as SupplierName,
      Document.PurchaseOrder,
      Document.PurchaseOrderCurrency,
      Document.IsDeleted,
      Document.ApprovalStatus,
      Document.SESWorkflowStatus,
      Document.ApprovalDateTime,

      @ObjectModel.text.element: 'ResponsiblePersonName'
      Document.ResponsiblePerson,

      @Semantics.text: true
      @ObjectModel.readOnly: true
      cast(_PersonWorkAgreement_1._WorkforcePerson.PersonFullName     as mmpur_ses_responsibleperson preserving type ) as ResponsiblePersonName,
      @ObjectModel.readOnly: true
      _PersonWorkAgreement_1._WorkforcePerson._WorkplaceAddress.AddressID                                              as FormattedAddress,
      @Semantics.text: true
      @ObjectModel.readOnly: true
      _PersonWorkAgreement_1._WorkforcePerson._WorkplaceAddress.NormalizedPhoneNumber                                  as NormalizedPhoneNumber,
      @Semantics.text: true
      @ObjectModel.readOnly: true
      _PersonWorkAgreement_1._WorkforcePerson._WorkplaceAddress.MobilePhoneNumber                                      as MobilePhoneNumber,
      @Semantics.text: true
      @ObjectModel.readOnly: true
      _PersonWorkAgreement_1._WorkforcePerson._WorkplaceAddress.DefaultEmailAddress                                    as DefaultEmailAddress,

      @ObjectModel: {  foreignKey.association: '_OriginObjectType'}
      Document.OriginObjectType,
      Document.Currency,
      Document.MaterialDocument,
      Document.MaterialDocumentYear,
      Document.CreationDateTime,
      cast(Document.CreatedByUser as mmpur_ses_createdbyuser preserving type )                                         as CreatedByUser,
      Document.LastChangeDateTime,
      cast(Document.LastChangeUser as mmpur_ses_lastchangeuser preserving type )                                       as LastChangeUser,
      Document.PurchasingOrganization,
      Document.PurchasingGroup,
      Document.IsEndOfPurposeBlocked,
      Document.PurgDocExternalSystem,
      Document.PurgDocExternalReference,
      Document.ExternalRevisionDateTime,
      Document.PostingDate,

      Document.TotalNetAmount,
      Document.TotalSESNetAmountInclSalesTax,
      Document.PricingDocument,

      @UI.hidden: true
      @EndUserText.label: 'Price Changed'
      @ObjectModel: { readOnly: true,
      virtualElement: true,
      virtualElementCalculatedBy: 'CL_MM_PUR_SES_TRANS_EXIT'
      }
      cast( '' as mmpur_ses_price_changed )                       as PriceInSESHasChanged,

      @ObjectModel.readOnly: true
      cast( ' ' as mmpur_ses_send_to_appr_ac preserving type )                                                         as SendToApprovalIsPossible,
      @ObjectModel.readOnly: true
      cast( ' ' as mmpur_ses_cancel_approval_ac preserving type )                                                      as CancelApprovalIsPossible,
      @ObjectModel.readOnly: true
      cast( ' ' as mmpur_ses_revoke_appr_ac preserving type )                                                          as RevokeIsPossible,

      cast( '' as mmpur_ses_mass_edit_utilized )                                                                       as SESMassEditIsUtilized,

      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _ServiceEntrySheetItem,

      @Consumption.filter.hidden: true
      _ApprovalStatusValueHelp,
      _ApprovalStatusText,
      @Consumption.filter.hidden: true
      _WorkflowStatusValueHelp,
      _WorkflowStatusText,
      _ResponsiblePersonValueHelp,
      _SrvcEntrShtPurOrdValueHelp,
      _DocumentCurrency,
      _PurchaseOrderCurrency,
      _PersonWorkAgreement_1,
      _PersonWorkAgrmtStatus,
      _Supplier,
      @Consumption.filter.hidden: true
      _OriginObjectType
}