C_SrcgProjQuotationCompare

DDL: C_SRCGPROJQUOTATIONCOMPARE Type: view_entity CONSUMPTION Package: ODATA_MM_PUR_SRCGPROJ_COMPARE

Sourcing Project Quotation

C_SrcgProjQuotationCompare is a Consumption CDS View that provides data about "Sourcing Project Quotation" in SAP S/4HANA. It reads from 1 data source (R_SourcingProjectQuotation) and exposes 40 fields with key field SourcingProjectQuotationUUID. It has 8 associations to related views. It is exposed through 1 OData service (UI_SOURCING_PROJECT_COMPARE). Part of development package ODATA_MM_PUR_SRCGPROJ_COMPARE.

Data Sources (1)

SourceAliasJoin Type
R_SourcingProjectQuotation R_SourcingProjectQuotation from

Parameters (1)

NameTypeDefault
P_DisplayCurrency displaycurrency

Associations (8)

CardinalityTargetAliasCondition
[0..1] I_BusinessPartnerSupplier _BusinessPartnerSupplier $projection.Bidder = _BusinessPartnerSupplier.BusinessPartner
[0..1] P_SrcgProjQuotationDeviation _SrcgProjQuotationDeviation $projection.SourcingProjectQuotationUUID = _SrcgProjQuotationDeviation.SourcingProjectQuotationUUID
[0..1] I_UnitOfMeasure _UnitOfMeasure _UnitOfMeasure.UnitOfMeasure = '%'
[0..*] I_SrcgProjQtnSuitabilityTxt _SrcgProjQtnSuitabilityTxt $projection.SrcgProjQtnSuitability = _SrcgProjQtnSuitabilityTxt.SrcgProjQtnSuitability
[1..1] E_SourcingProjectQuotation _Extension $projection.SourcingProjectQuotationUUID = _Extension.SourcingProjectQuotationUUID
[0..*] C_SPQtnItmCmmdtyQtyCompare _SPQtnItmCmmdtyQtyCompare $projection.SourcingProjectQuotationUUID = _SPQtnItmCmmdtyQtyCompare.SourcingProjectQuotationUUID
[0..1] R_SourcingProjectNegotiation _SourcingProjectNegotiation $projection.SourcingProjectNegotiationUUID = _SourcingProjectNegotiation.SourcingProjectNegotiationUUID
[0..1] I_Country _Country $projection.country = _Country.Country

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
ObjectModel.representativeKey SourcingProjectQuotationUUID view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #CONSUMPTION view
EndUserText.label Sourcing Project Quotation view
Search.searchable true view

OData Services (1)

ServiceBindingVersionContractRelease
UI_SOURCING_PROJECT_COMPARE UI_SRCGPROJ_COMPARE V2 C1 NOT_RELEASED

Fields (40)

KeyFieldSource TableSource FieldDescription
KEY SourcingProjectQuotationUUID SourcingProjectQuotationUUID
SourcingProjectQuotation SourcingProjectQuotation
SrcgProjQuotationVersion SrcgProjQuotationVersion
SrcgProjQuotationIsSimulated SrcgProjQuotationIsSimulated
SourcingProjectQuotationName SourcingProjectQuotationName
SrcgProjQtnLifecycleStatus SrcgProjQtnLifecycleStatus
Bidder Bidder
Country
BusinessPartnerName _BusinessPartner BusinessPartnerName
Supplier _BusinessPartnerSupplier Supplier
SourcingProject _SourcingProject SourcingProject
SourcingProjectVersion _SourcingProject SourcingProjectVersion Sourcing Project Version
SrcgProjLifecycleStatus _SourcingProject SrcgProjLifecycleStatus
DisplayCurrency
SrcgProjQtnOfferCurrency SrcgProjQtnOfferCurrency
SrcgProjQtnDeviationAmount _SrcgProjQuotationDeviation SrcgProjQtnDeviationAmount Deviation (in Quotation Currency)
SrcgProjQtnDeviationPercent _SrcgProjQuotationDeviation SrcgProjQtnDeviationPercent
UnitOfMeasure _UnitOfMeasure UnitOfMeasure
SourcingProjectQuotationType SourcingProjectQuotationType
SourcingProjectUUID SourcingProjectUUID
CompanyCode CompanyCode
PurchasingOrganization PurchasingOrganization
PurchasingGroup PurchasingGroup
SrcgProjQtnSuitability SrcgProjQtnSuitability
SrcgProjQtnSuitabilityText Suitability
IsEndOfPurposeBlocked IsEndOfPurposeBlocked
MaterialGroup MaterialGroup
UICT_InAwarding
UICT_InNegotiation
SourcingProjectNegotiationUUID SourcingProjectNegotiationUUID
SourcingProjectNegotiationType _SourcingProjectNegotiation SourcingProjectNegotiationType
_SourcingProject _SourcingProject
_SrcgProjQtnLifecycleSts _SrcgProjQtnLifecycleSts
_BusinessPartner _BusinessPartner
_CompanyCode _CompanyCode
_PurchasingOrganization _PurchasingOrganization
_SrcgProjQtnSuitabilityTxt _SrcgProjQtnSuitabilityTxt
_PurchasingGroup _PurchasingGroup
_SPQtnItmCmmdtyQtyCompare _SPQtnItmCmmdtyQtyCompare
_Country _Country
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED

@ObjectModel: { representativeKey: 'SourcingProjectQuotationUUID',
                semanticKey: ['SourcingProjectQuotation', 'SrcgProjQuotationVersion'],

                usageType.dataClass: #TRANSACTIONAL,
                usageType.serviceQuality:  #C,
                usageType.sizeCategory: #L
              }

@VDM.viewType: #CONSUMPTION

@EndUserText.label: 'Sourcing Project Quotation'

@Search.searchable: true

define view entity C_SrcgProjQuotationCompare
  with parameters
    @UI.hidden:true
    P_DisplayCurrency : displaycurrency
  as select from R_SourcingProjectQuotation

  association [0..1] to I_BusinessPartnerSupplier    as _BusinessPartnerSupplier    on $projection.Bidder = _BusinessPartnerSupplier.BusinessPartner

  association [0..1] to P_SrcgProjQuotationDeviation as _SrcgProjQuotationDeviation on $projection.SourcingProjectQuotationUUID = _SrcgProjQuotationDeviation.SourcingProjectQuotationUUID

  association [0..1] to I_UnitOfMeasure              as _UnitOfMeasure              on _UnitOfMeasure.UnitOfMeasure = '%'

  association [0..*] to I_SrcgProjQtnSuitabilityTxt  as _SrcgProjQtnSuitabilityTxt  on $projection.SrcgProjQtnSuitability = _SrcgProjQtnSuitabilityTxt.SrcgProjQtnSuitability
  //Extension

  association [1..1] to E_SourcingProjectQuotation   as _Extension                  on $projection.SourcingProjectQuotationUUID = _Extension.SourcingProjectQuotationUUID

  association [0..*] to C_SPQtnItmCmmdtyQtyCompare   as _SPQtnItmCmmdtyQtyCompare   on $projection.SourcingProjectQuotationUUID = _SPQtnItmCmmdtyQtyCompare.SourcingProjectQuotationUUID
  
  association [0..1] to R_SourcingProjectNegotiation as _SourcingProjectNegotiation on $projection.SourcingProjectNegotiationUUID = _SourcingProjectNegotiation.SourcingProjectNegotiationUUID
  
  association [0..1] to I_Country                    as _Country                    on $projection.country = _Country.Country
  
{

      @UI.hidden: true
  key SourcingProjectQuotationUUID,
      @Consumption.semanticObject: 'SourcingProjectQuotation'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 1 }
      @UI.selectionField: [{ position: 10 }]
      @UI.lineItem: [{ position: 10 }]
      @UI.identification: [{ position: 10, importance: #HIGH  }]
      SourcingProjectQuotation,
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 1 }
      @UI.selectionField: [{ position: 20 }]
      @UI.lineItem: [{ position: 20 }]
      @UI.identification: [{ position: 20, importance: #HIGH  }]
      SrcgProjQuotationVersion,

      @UI.lineItem: [{ position: 21, criticality: 'UICT_SrcgProjQtnIsSimulated', criticalityRepresentation: #WITHOUT_ICON }]
      @UI.identification: [{ position: 21, importance: #HIGH, criticality: 'UICT_SrcgProjQtnIsSimulated', criticalityRepresentation: #WITHOUT_ICON }]
      SrcgProjQuotationIsSimulated,

      @UI.lineItem: [{ position: 22, importance: #HIGH }]
      @UI.identification: [{ position: 22, importance: #HIGH }]
      SourcingProjectQuotationName,

      @UI.hidden: true
      case
        when SrcgProjQuotationIsSimulated = 'X'
          then 2
        else 0
      end                                                                                                              as UICT_SrcgProjQtnIsSimulated,

      @UI.selectionField: [{ position: 30 }]
      @UI.textArrangement: #TEXT_ONLY
      @UI.lineItem: [{ position: 30 }]
      @ObjectModel.foreignKey.association: '_SrcgProjQtnLifecycleSts'
      @UI.identification: [{ position: 30, importance: #HIGH  }]
      SrcgProjQtnLifecycleStatus,

      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 1 }
      @UI.selectionField: [{ position: 40 }]
      @UI.lineItem: [{ position: 40 }]
      @ObjectModel.foreignKey.association: '_BusinessPartner'
      Bidder,

      @UI.lineItem: [{ position: 50 }]
      @ObjectModel.foreignKey.association: '_Country'
      _BusinessPartner._CurrentDefaultAddress._AddressDefaultRepresentation.Country,      

      _BusinessPartner.BusinessPartnerName,

      _BusinessPartnerSupplier.Supplier,

      @UI.hidden: true
      _SourcingProject.SourcingProject,

      //@UI.hidden: true

      @UI.selectionField: [{ position: 100 }]
      //@UI.lineItem: { position: 100, importance: #HIGH }

      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 1 }
      @EndUserText.label: 'Sourcing Project Version'
      _SourcingProject.SourcingProjectVersion,

      @UI.hidden: true
      _SourcingProject.SrcgProjLifecycleStatus,

      @Consumption.filter.hidden: true
      $parameters.P_DisplayCurrency                                                                                    as DisplayCurrency,

      @UI.lineItem: [{ position: 60, importance: #HIGH }]
      @Semantics.amount.currencyCode: 'DisplayCurrency'
      cast(currency_conversion( amount => SrcgProjQtnTotNetAmt,
                                source_currency => SrcgProjQtnOfferCurrency,
                                round => 'X',
                                target_currency => $parameters.P_DisplayCurrency,
                                exchange_rate_date => cast($session.system_date as abap.dats),
                                exchange_rate_type => cast(_SourcingProject.ExchangeRateType as kurst),
                                error_handling => 'SET_TO_NULL' ) as vdm_srcgprojqtntotnetamt preserving type )        as SrcgProjQtnTotNetAmt,

      @Semantics.amount.currencyCode: 'DisplayCurrency'
      cast(currency_conversion( amount => _SourcingProject.SrcgProjTotalTargetAmount,
                                source_currency => _SourcingProject.DocumentCurrency,
                                round => 'X',
                                target_currency => $parameters.P_DisplayCurrency,
                                exchange_rate_date => cast($session.system_date as abap.dats),
                                exchange_rate_type => cast(_SourcingProject.ExchangeRateType as kurst),
                                error_handling => 'SET_TO_NULL' )  as vdm_srcgprojqtntottargetamount preserving type ) as SrcgProjQtnTotalTargetAmount,

      SrcgProjQtnOfferCurrency,

      @Semantics.amount.currencyCode: 'SrcgProjQtnOfferCurrency'
      @EndUserText.label: 'Deviation (in Quotation Currency)'
      _SrcgProjQuotationDeviation.SrcgProjQtnDeviationAmount,

      @Semantics.quantity.unitOfMeasure: 'UnitOfMeasure'
      _SrcgProjQuotationDeviation.SrcgProjQtnDeviationPercent,

      _UnitOfMeasure.UnitOfMeasure,

      @UI.hidden: true
      SourcingProjectQuotationType,

      @UI.hidden: true
      SourcingProjectUUID,
      @ObjectModel.foreignKey.association: '_CompanyCode'
      CompanyCode,
      @ObjectModel.foreignKey.association: '_PurchasingOrganization'
      PurchasingOrganization,
      @ObjectModel.foreignKey.association: '_PurchasingGroup'
      PurchasingGroup,

      @UI.hidden: true
      SrcgProjQtnSuitability,

      @EndUserText.label: 'Suitability'
      @EndUserText.quickInfo: 'Suitability'
      _SrcgProjQtnSuitabilityTxt[1:Language = $session.system_language ].SrcgProjQtnSuitabilityText,

      @UI.hidden: true
      IsEndOfPurposeBlocked,
      @UI.hidden: true
      MaterialGroup,
      
      @UI.hidden: true
      @ObjectModel.sort.enabled: false
      @ObjectModel.filter.enabled: false
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_SPQTN_COM_HD_TRN_EXT'
      cast ( '' as boole_d preserving type )                                  as UICT_InAwarding,       

      @UI.hidden: true
      @ObjectModel.sort.enabled: false
      @ObjectModel.filter.enabled: false
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_SPQTN_COM_HD_TRN_EXT'
      cast ( '' as boole_d preserving type )                                  as UICT_InNegotiation,   
      
      @UI.hidden: true      
      SourcingProjectNegotiationUUID,
      _SourcingProjectNegotiation.SourcingProjectNegotiationType,
      
      //DCL

      _SourcingProject,

      //foreign key

      @Consumption.filter.hidden: true
      _SrcgProjQtnLifecycleSts,
      @Consumption.filter.hidden: true
      _BusinessPartner,
      @Consumption.filter.hidden: true
      _CompanyCode,
      @Consumption.filter.hidden: true
      _PurchasingOrganization,
      _SrcgProjQtnSuitabilityTxt,
      @Consumption.filter.hidden: true
      _PurchasingGroup,
      _SPQtnItmCmmdtyQtyCompare,
      @Consumption.filter.hidden: true
      _Country

}