I_CntrlPurContrVersionHistory

DDL: I_CNTRLPURCONTRVERSIONHISTORY SQL: IVERSIONHISTORY Type: view BASIC

Basic View for CCTR Version History

I_CntrlPurContrVersionHistory is a Basic CDS View that provides data about "Basic View for CCTR Version History" in SAP S/4HANA. It reads from 2 data sources (R_CentralPurchaseContract, erev) and exposes 65 fields with key field CentralPurchaseContract. It has 3 associations to related views.

Data Sources (2)

SourceAliasJoin Type
R_CentralPurchaseContract Document inner
erev VersionHistory from

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_User _UserDetails $projection.CreatedByUser = _UserDetails.UserID
[1..1] I_CntrlPurContrVersionType _VersionType $projection.PurgDocChangeRequestStatus = _VersionType.PurgDocChangeRequestStatus
[0..1] I_PaymentTermsText _PaymentTermsText $projection.PaymentTerms = _PaymentTermsText.PaymentTerms and _PaymentTermsText.Language = $session.system_language

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IVERSIONHISTORY view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Basic View for CCTR Version History view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.viewType #BASIC view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (65)

KeyFieldSource TableSource FieldDescription
KEY CentralPurchaseContract R_CentralPurchaseContract CentralPurchaseContract
PurchaseContractType R_CentralPurchaseContract PurchaseContractType
PurchasingDocumentCategory R_CentralPurchaseContract PurchasingDocumentCategory
Supplier R_CentralPurchaseContract Supplier
PurchasingDocumentSubtype R_CentralPurchaseContract PurchasingDocumentSubtype
CompanyCode R_CentralPurchaseContract CompanyCode
PurchasingOrganization R_CentralPurchaseContract PurchasingOrganization
PurchasingGroup R_CentralPurchaseContract PurchasingGroup
DocumentCurrency R_CentralPurchaseContract DocumentCurrency
Currency R_CentralPurchaseContract Currency
IncotermsClassification R_CentralPurchaseContract IncotermsClassification
IncotermsTransferLocation R_CentralPurchaseContract IncotermsTransferLocation
PaymentTerms R_CentralPurchaseContract PaymentTerms
CashDiscount1Days R_CentralPurchaseContract CashDiscount1Days
CashDiscount2Days R_CentralPurchaseContract CashDiscount2Days
NetPaymentDays R_CentralPurchaseContract NetPaymentDays
CashDiscount1Percent R_CentralPurchaseContract CashDiscount1Percent
CashDiscount2Percent R_CentralPurchaseContract CashDiscount2Percent
PurchaseContractTargetAmount R_CentralPurchaseContract PurchaseContractTargetAmount
ValidityStartDate R_CentralPurchaseContract ValidityStartDate
ValidityEndDate R_CentralPurchaseContract ValidityEndDate
ReleaseCode R_CentralPurchaseContract ReleaseCode
PurchasingDocumentDeletionCode R_CentralPurchaseContract PurchasingDocumentDeletionCode
ManualSupplierAddressID R_CentralPurchaseContract ManualSupplierAddressID
SupplyingSupplier R_CentralPurchaseContract SupplyingSupplier
InvoicingParty R_CentralPurchaseContract InvoicingParty
ExchangeRate R_CentralPurchaseContract ExchangeRate
ExchangeRateIsFixed R_CentralPurchaseContract ExchangeRateIsFixed
QuotationSubmissionDate R_CentralPurchaseContract QuotationSubmissionDate
SupplierQuotation R_CentralPurchaseContract SupplierQuotation
ReleaseIsNotCompleted R_CentralPurchaseContract ReleaseIsNotCompleted
CorrespncExternalReference R_CentralPurchaseContract CorrespncExternalReference
CorrespncInternalReference R_CentralPurchaseContract CorrespncInternalReference
SupplierRespSalesPersonName R_CentralPurchaseContract SupplierRespSalesPersonName
SupplierPhoneNumber R_CentralPurchaseContract SupplierPhoneNumber
IncotermsVersion R_CentralPurchaseContract IncotermsVersion
IncotermsLocation1 R_CentralPurchaseContract IncotermsLocation1
IncotermsLocation2 R_CentralPurchaseContract IncotermsLocation2
PurchasingDocumentName R_CentralPurchaseContract PurchasingDocumentName
LastChangeDateTime R_CentralPurchaseContract LastChangeDateTime
PurchasingParentDocument R_CentralPurchaseContract PurchasingParentDocument
ProcmtHubCompanyCodeGroupingID R_CentralPurchaseContract ProcmtHubCompanyCodeGroupingID
PurchasingProcessingStatus R_CentralPurchaseContract PurchasingProcessingStatus
IsEndOfPurposeBlocked R_CentralPurchaseContract IsEndOfPurposeBlocked
ActivePurchasingDocument R_CentralPurchaseContract ActivePurchasingDocument
PurgDocChangeRequestStatus R_CentralPurchaseContract PurgDocChangeRequestStatus
PurchasingDocumentVersion R_CentralPurchaseContract PurchasingDocumentVersion
PurgDocIsChgVers R_CentralPurchaseContract PurgDocIsChgVers
CreatedByUser erev ernam
CreationDate erev erdat
CreationTime erev eruhr
PurchasingDocVersionReasonCode erev rscod
PurchasingDocVersionStatus erev strev
AccWorkflowApprover
AccWorkflowApproverFirstName
ApprovalStatusName
ApproverUser
PurgContractIsInPreparation
PurchasingDocumentStatus
_PurchasingDocumentTypeText _PurchasingDocumentTypeText
_PaymentTermsText _PaymentTermsText
_CntrlPurContrStatusText _CntrlPurContrStatusText
_CntrlPurContrAggrgnDistrSts _CntrlPurContrAggrgnDistrSts
_UserDetails _UserDetails
_VersionType _VersionType
@AbapCatalog.sqlViewName: 'IVERSIONHISTORY'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Basic View for CCTR Version History'
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API

@ObjectModel:{
  usageType.serviceQuality: #B,
  usageType.sizeCategory: #L,
  usageType.dataClass: #TRANSACTIONAL
}
@VDM.viewType: #BASIC

@AccessControl.personalData.blocking: #REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE

define view I_CntrlPurContrVersionHistory 

  as select from erev as VersionHistory
    inner join R_CentralPurchaseContract as Document on    VersionHistory.edokn                =  Document.ActivePurchasingDocument
                                                     and   VersionHistory.revno                =  Document.PurchasingDocumentVersion
                                                     and ( Document.PurgDocChangeRequestStatus = '1' or  Document.PurgDocChangeRequestStatus = '2' or
                                                           Document.PurgDocChangeRequestStatus = '4' or Document.PurgDocChangeRequestStatus = '' )
                                                   

  association [1..1] to I_User                       as _UserDetails                 on $projection.CreatedByUser = _UserDetails.UserID
  association [1..1] to I_CntrlPurContrVersionType   as _VersionType                 on $projection.PurgDocChangeRequestStatus = _VersionType.PurgDocChangeRequestStatus
  association [0..1] to I_PaymentTermsText           as _PaymentTermsText            on  $projection.PaymentTerms   = _PaymentTermsText.PaymentTerms
                                                                                     and _PaymentTermsText.Language = $session.system_language
{
  key Document.CentralPurchaseContract,
      Document.PurchaseContractType,
      Document.PurchasingDocumentCategory,
      Document.Supplier,
      Document.PurchasingDocumentSubtype,
      Document.CompanyCode,
      Document.PurchasingOrganization,
      Document.PurchasingGroup,
      @Semantics.currencyCode:true
      Document.DocumentCurrency,
      @ObjectModel.readOnly: true
      Document.Currency,
      Document.IncotermsClassification,
      Document.IncotermsTransferLocation,
      Document.PaymentTerms,
      Document.CashDiscount1Days,
      Document.CashDiscount2Days,
      Document.NetPaymentDays,
      Document.CashDiscount1Percent,
      Document.CashDiscount2Percent,
      Document.PurchaseContractTargetAmount,
      Document.ValidityStartDate,
      Document.ValidityEndDate,
      Document.ReleaseCode,
      Document.PurchasingDocumentDeletionCode,
      Document.ManualSupplierAddressID,
      Document.SupplyingSupplier,
      Document.InvoicingParty,
      Document.ExchangeRate ,
      Document.ExchangeRateIsFixed,
      Document.QuotationSubmissionDate,
      Document.SupplierQuotation,
      Document.ReleaseIsNotCompleted,
      Document.CorrespncExternalReference,
      Document.CorrespncInternalReference,
      Document.SupplierRespSalesPersonName,
      Document.SupplierPhoneNumber,
      Document.IncotermsVersion,
      Document.IncotermsLocation1,
      Document.IncotermsLocation2,
      Document.PurchasingDocumentName,
      Document.LastChangeDateTime,
      cast( case when PurgDocumentDistributionType = 'F'
                   then 'X'
                 else ' '
            end as boolean) as CntrlPurContrFlxblDistrIsAllwd,
      Document.PurchasingParentDocument,
      Document.ProcmtHubCompanyCodeGroupingID,
      Document.PurchasingProcessingStatus,
      Document.IsEndOfPurposeBlocked,
      Document.ActivePurchasingDocument,      
      Document.PurgDocChangeRequestStatus,
      Document.PurchasingDocumentVersion,
      Document.PurgDocIsChgVers,
     
      VersionHistory.ernam as CreatedByUser,
      VersionHistory.erdat as CreationDate,
      VersionHistory.eruhr as CreationTime,
      VersionHistory.rscod as PurchasingDocVersionReasonCode,
      VersionHistory.strev as PurchasingDocVersionStatus,
      
      /** Fields for approval details starts...**/
      @ObjectModel.readOnly: true
      cast ('' as mm_oa_approver_id) as AccWorkflowApprover,

      @ObjectModel.readOnly: true
      cast ('' as mm_oa_approver_name) as AccWorkflowApproverFirstName,

      @ObjectModel.readOnly: true
      cast( '' as val_text ) as ApprovalStatusName,

      @ObjectModel.readOnly: true
      cast( '' as sww_aagent ) as ApproverUser,
      /** Fields for approval details ends...**/

      cast('' as boolean ) as PurgContractIsInPreparation,

      @ObjectModel.readOnly: true
      cast('' as mmpur_doc_status) as PurchasingDocumentStatus,  //VDM


      _PurchasingDocumentTypeText,
      _PaymentTermsText,
      _CntrlPurContrStatusText,
      _CntrlPurContrAggrgnDistrSts,
      _UserDetails,
      _VersionType

}
where (  PurgDocChangeRequestStatus = '1' or 
         PurgDocChangeRequestStatus = '2' or
         PurgDocChangeRequestStatus = '4' or 
         PurgDocChangeRequestStatus = '' )
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"R_CENTRALPURCHASECONTRACT",
"EREV"
],
"ASSOCIATED":
[
"I_CNTRLPURCONTRAGGRGNDISTRSTS",
"I_CNTRLPURCONTRDOCSTSTEXT",
"I_CNTRLPURCONTRVERSIONTYPE",
"I_PAYMENTTERMSTEXT",
"I_PURCHASINGDOCUMENTTYPETEXT",
"I_USER"
],
"BASE":
[
"R_CENTRALPURCHASECONTRACT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/