R_SlsContrPricingElementTP

DDL: R_SLSCONTRPRICINGELEMENTTP Type: view_entity TRANSACTIONAL

Pricing Elemnt for Sls Contr - TP

R_SlsContrPricingElementTP is a Transactional CDS View that provides data about "Pricing Elemnt for Sls Contr - TP" in SAP S/4HANA. It reads from 1 data source (I_SalesContractPricingElement) and exposes 35 fields with key fields SalesContract, PricingProcedureStep, PricingProcedureCounter.

Data Sources (1)

SourceAliasJoin Type
I_SalesContractPricingElement SalesContractPrcgElmnt from

Annotations (8)

NameValueLevelField
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
VDM.viewType #TRANSACTIONAL view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Pricing Elemnt for Sls Contr - TP view

Fields (35)

KeyFieldSource TableSource FieldDescription
KEY SalesContract I_SalesContractPricingElement SalesContract
KEY PricingProcedureStep I_SalesContractPricingElement PricingProcedureStep
KEY PricingProcedureCounter I_SalesContractPricingElement PricingProcedureCounter
ConditionApplication I_SalesContractPricingElement ConditionApplication
ConditionType I_SalesContractPricingElement ConditionType
ConditionTypeName
ConditionCalculationType I_SalesContractPricingElement ConditionCalculationType
ConditionRateAmount I_SalesContractPricingElement ConditionRateAmount
ConditionRateRatio I_SalesContractPricingElement ConditionRateRatio
ConditionBaseAmount I_SalesContractPricingElement ConditionBaseAmount
ConditionBaseQuantity I_SalesContractPricingElement ConditionBaseQuantity
ConditionQuantity I_SalesContractPricingElement ConditionQuantity
ConditionAmount I_SalesContractPricingElement ConditionAmount
ConditionCurrency I_SalesContractPricingElement ConditionCurrency
TransactionCurrency I_SalesContractPricingElement TransactionCurrency
ConditionQuantityUnit I_SalesContractPricingElement ConditionQuantityUnit
ConditionRateRatioUnit I_SalesContractPricingElement ConditionRateRatioUnit
ConditionIsForStatistics I_SalesContractPricingElement ConditionIsForStatistics
ConditionIsManuallyChanged I_SalesContractPricingElement ConditionIsManuallyChanged
ConditionInactiveReason I_SalesContractPricingElement ConditionInactiveReason
ConditionClass I_SalesContractPricingElement ConditionClass
ConditionOrigin I_SalesContractPricingElement ConditionOrigin
SalesContractType _SalesContract SalesContractType
SalesOrganization _SalesContract SalesOrganization
DistributionChannel _SalesContract DistributionChannel
OrganizationDivision _SalesContract OrganizationDivision
_SalesContract _SalesContract
_ConditionApplication I_SalesContractPricingElement _ConditionApplication
_PricingConditionType I_SalesContractPricingElement _PricingConditionType
_ConditionCurrency I_SalesContractPricingElement _ConditionCurrency
_TransactionCurrency I_SalesContractPricingElement _Currency
_ConditionQuantityUnit I_SalesContractPricingElement _ConditionQuantityUnit
_ConditionInactiveReason I_SalesContractPricingElement _ConditionInactiveReason
_ConditionClass I_SalesContractPricingElement _ConditionClass
_ConditionOrigin I_SalesContractPricingElement _ConditionOrigin
@VDM: {
  lifecycle.contract.type: #SAP_INTERNAL_API,
  viewType: #TRANSACTIONAL
}

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

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

@ObjectModel.semanticKey: ['SalesContract', 'PricingProcedureStep', 'PricingProcedureCounter']

@Metadata.ignorePropagatedAnnotations: true

@EndUserText.label: 'Pricing Elemnt for Sls Contr - TP'
define view entity R_SlsContrPricingElementTP
  as select from I_SalesContractPricingElement as SalesContractPrcgElmnt

  association to parent R_SalesContractTP as _SalesContract on $projection.SalesContract = _SalesContract.SalesContract

{

  key SalesContractPrcgElmnt.SalesContract,

  key SalesContractPrcgElmnt.PricingProcedureStep,

  key SalesContractPrcgElmnt.PricingProcedureCounter,

      @ObjectModel.foreignKey.association: '_ConditionApplication'
      SalesContractPrcgElmnt.ConditionApplication,

      @ObjectModel.foreignKey.association: '_PricingConditionType'
      SalesContractPrcgElmnt.ConditionType,

      SalesContractPrcgElmnt._PricingConditionType._Text_2[1: Language=$session.system_language].ConditionTypeName as ConditionTypeName,
      
      SalesContractPrcgElmnt.ConditionCalculationType,

      @Semantics.amount.currencyCode: 'ConditionCurrency'
      @OData.v2.amount.noDecimalShift: true
      SalesContractPrcgElmnt.ConditionRateAmount,

      @Semantics.quantity.unitOfMeasure: 'ConditionRateRatioUnit'
      SalesContractPrcgElmnt.ConditionRateRatio,

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      @OData.v2.amount.noDecimalShift: true
      SalesContractPrcgElmnt.ConditionBaseAmount,

      @Semantics.quantity.unitOfMeasure: 'ConditionQuantityUnit'
      SalesContractPrcgElmnt.ConditionBaseQuantity,

      @Semantics.quantity.unitOfMeasure: 'ConditionQuantityUnit'
      SalesContractPrcgElmnt.ConditionQuantity,

      @Semantics.amount.currencyCode: 'TransactionCurrency'
      SalesContractPrcgElmnt.ConditionAmount,

      @ObjectModel.foreignKey.association: '_ConditionCurrency'
      SalesContractPrcgElmnt.ConditionCurrency,

      @ObjectModel.foreignKey.association: '_TransactionCurrency'
      SalesContractPrcgElmnt.TransactionCurrency,

      @ObjectModel.foreignKey.association: '_ConditionQuantityUnit'
      SalesContractPrcgElmnt.ConditionQuantityUnit,

      SalesContractPrcgElmnt.ConditionRateRatioUnit,

      SalesContractPrcgElmnt.ConditionIsForStatistics,

      SalesContractPrcgElmnt.ConditionIsManuallyChanged,

      @ObjectModel.foreignKey.association: '_ConditionInactiveReason'
      SalesContractPrcgElmnt.ConditionInactiveReason,

      @ObjectModel.foreignKey.association: '_ConditionClass'
      SalesContractPrcgElmnt.ConditionClass,

      @ObjectModel.foreignKey.association: '_ConditionOrigin'
      SalesContractPrcgElmnt.ConditionOrigin,
      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionRateRatioUnit = ''
          then 'X'
        else ''
      end as boole_d )                 as ConditionRateValueIsAmount,

      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionRateRatioUnit = ''
          then ''
        else 'X'
      end as boole_d )                 as ConditionRateValueIsRatio,
      
      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionCalculationType = 'A'
            or ConditionCalculationType = 'B'
            or ConditionCalculationType = 'H'
            or ConditionCalculationType = 'I'
            or ConditionCalculationType = 'J'
            or ConditionCalculationType = 'K'
            or ConditionCalculationType = 'W'
          then ''
        else 'X'
      end as boole_d )                                                                                               as ConditionBaseValueIsQuantity,

      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionCalculationType = 'A'
            or ConditionCalculationType = 'B'
            or ConditionCalculationType = 'H'
            or ConditionCalculationType = 'I'
            or ConditionCalculationType = 'J'
            or ConditionCalculationType = 'K'
            or ConditionCalculationType = 'W'
          then 'X'
        else ''
      end as boole_d )                                                                                               as ConditionBaseValueIsAmount,

      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionRateAmount is initial
           and ConditionRateRatio  is initial
           then 'X'
          else ''
       end as boole_d )                as ConditionRateValueIsNull,

      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionQuantity is initial
           then 'X'
          else ''
       end as boole_d )                as ConditionQuantityIsNull,

      @Semantics.booleanIndicator: true
      cast(
        case
          when ConditionAmount is initial
           then 'X'
          else ''
       end as boole_d )                as ConditionAmountIsNull,

      //for DCL

      @Consumption.hidden: true
      _SalesContract.SalesContractType,
      @Consumption.hidden: true
      _SalesContract.SalesOrganization,
      @Consumption.hidden: true
      _SalesContract.DistributionChannel,
      @Consumption.hidden: true
      _SalesContract.OrganizationDivision,

      //Associations

      _SalesContract,
      SalesContractPrcgElmnt._ConditionApplication,
      SalesContractPrcgElmnt._PricingConditionType,
      SalesContractPrcgElmnt._ConditionCurrency,
      SalesContractPrcgElmnt._Currency as _TransactionCurrency,
      SalesContractPrcgElmnt._ConditionQuantityUnit,
      SalesContractPrcgElmnt._ConditionInactiveReason,
      SalesContractPrcgElmnt._ConditionClass,
      SalesContractPrcgElmnt._ConditionOrigin
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PRICINGCONDITIONTYPE",
"I_PRICINGCONDITIONTYPETEXT",
"I_SALESCONTRACTPRICINGELEMENT",
"R_SALESCONTRACTTP"
],
"ASSOCIATED":
[
"I_CONDITIONAPPLICATION",
"I_CONDITIONCLASS",
"I_CONDITIONINACTIVEREASON",
"I_CONDITIONORIGIN",
"I_CURRENCY",
"I_PRICINGCONDITIONTYPE",
"I_UNITOFMEASURE",
"R_SALESCONTRACTTP"
],
"BASE":
[
"I_SALESCONTRACTPRICINGELEMENT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/