public static final class SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder extends Object
@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder salesContract(SalesContract value)
value
- The SalesContract to build this SalesContractPrcgElmnt with.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder salesContract(String value)
Original property name from the Odata EDM: SalesContract
value
- The salesContract to build this SalesContractPrcgElmnt with.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder pricingProcedureStep(@Nullable String pricingProcedureStep)
Original property name from the Odata EDM: PricingProcedureStep
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder pricingProcedureCounter(@Nullable String pricingProcedureCounter)
Original property name from the Odata EDM: PricingProcedureCounter
During automatic pricing, the system takes into account the sequence specified by the counter.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionType(@Nullable String conditionType)
Original property name from the Odata EDM: ConditionType
The condition type indicates, for example, whether, during pricing, the system applies a price, a discount, a surcharge, or other pricing elements, such as freight costs and sales taxes. For each of these pricing elements, there is a condition type defined in the system.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder pricingDateTime(@Nullable String pricingDateTime)
Original property name from the Odata EDM: PricingDateTime
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionCalculationType(@Nullable String conditionCalculationType)
Original property name from the Odata EDM: ConditionCalculationType
The calculation type can be set when generating new condition records. If this does not happen, the calculation type maintained here is valid for the condition record.
system can calculate a price as a fixed amount or as a percentage based on quantity, volume, or weight.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionBaseValue(@Nullable BigDecimal conditionBaseValue)
Original property name from the Odata EDM: ConditionBaseValue
For each condition type in the pricing procedure, the system calculates the condition value as follows:For several calculation types (for example, A, C, D, E, F, H, I, J, K, M, N, O, P, W), the system multiplies the condition amount with the condition basis to calculate the condition value.For several calculation types (for example, A, C, D, E, F, H, I, M, N, O, P), the system multiplies the condition amount with the condition basis to calculate the condition value.For several calculation types (for example, C, D, E, F, H, I, M, N, O, P), the value of the condition basis refers to a unit of measure. If the unit of measure of the conditions basis differs from the unit of measure of the price condition (condition unit), the system automatically converts the unit of measure to the one for the condition unit. For calculation types C, M, N, O, and P, the item quantity is the default value for the condition basis.For several calculation types (for example, A, B, H, I, J, K, W), the condition basis is a currency field and refers to a currency key field. Such a currency field in the context of pricing is called currency amount. If the currency key of the conditions basis (currency amount) differs from the currency key of the document, the system automatically converts the condition basis (currency amount) into the currency of the document. The system uses the exchange rates for the currencies that are defined in the general settings for currencies.For several calculation types (for example, A, B, H, I), the condition basis is a currency field and refers to a currency key field. Such a currency field in the context of pricing is called currency amount. If the currency key of the conditions basis (currency amount) differs from the currency key of the document, the system automatically converts the condition basis (currency amount) into the currency of the document. The system uses the exchange rates for the currencies that are defined in the general settings for currencies.Note: The standard number of decimal places for a currency is two.Currencies that use a different number of decimal places must in addition be entered into table TCURX, where you can explicitly define the number of decimal places, for example, zero decimals for Japanese yen JPY.Deviations are preconfigured depending on the currency, for example, zero decimals for Japanese yen JPY.If you have defined scales, the system uses the condition basis to determine the valid scale line with the corresponding condition amount.In usage-based pricing models, the usage corresponds to the condition basis.The condition basis can be aQuantityWeightVolumeCurrency AmountA sales order includes an item with a quantity of 120 pieces:The determined list price of USD 101 (condition amount) multiplied with the quantity of 120 pieces (condition basis) results in a condition value of USD 12120.Two discounts are applied to the item of this sales order. The first discount is based on the quantity ordered (condition basis). The second discount is calculated as a percentage applied to the results of the list price and the first discount. Its result is the condition basis for the second discount.
the price condition.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionRateValue(@Nullable BigDecimal conditionRateValue)
Original property name from the Odata EDM: ConditionRateValue
Depending on the condition type, it can be a fixed amount, a percentage, or per mille. If the condition includes a pricing scale, the condition amount or percentage displays the first line of the scale.The following examples illustrate how you can use the condition amount or percentage in different condition types:If you create a condition that includes prices (for example, prices for a material), you enter an amount.If you create a condition based on percentage discounts or surcharges (for example, a customer-specific discount), you enter the value of a percentage. If the condition is a discount, the system automatically enters a minus sign behind the amount and a percent sign in the Condition Unit field.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionCurrency(@Nullable String conditionCurrency)
Original property name from the Odata EDM: ConditionCurrency
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionQuantity(@Nullable BigDecimal conditionQuantity)
Original property name from the Odata EDM: ConditionQuantity
You want to create a condition record for a material price of US$8 for 1 piece. You enter "8" in the Rate field, "USD" in the Unit field, and "1" as the condition pricing unit in this field.You create a condition record that gives a fixed discount of $10 to a customer who buys 1000 bottles. In this case, the condition pricing unit is 1000.
example, bottles).this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionQuantityUnit(@Nullable String conditionQuantityUnit)
Original property name from the Odata EDM: ConditionQuantityUnit
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionCategory(@Nullable String conditionCategory)
Original property name from the Odata EDM: ConditionCategory
relate to freight costs).this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionIsForStatistics(@Nullable Boolean conditionIsForStatistics)
Original property name from the Odata EDM: ConditionIsForStatistics
altering the value).this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder pricingScaleType(@Nullable String pricingScaleType)
Original property name from the Odata EDM: PricingScaleType
From a certain quantity or value (base scale)Up to a certain quantity or value (to-scale)Alternatively, it is possible to work with interval scales. Interval scales must be stored in the condition type, that is, the scale type "interval scale" cannot be changed in the condition record. The reason for this is technical restrictions resulting from the programming within pricing.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionOrigin(@Nullable String conditionOrigin)
Original property name from the Odata EDM: ConditionOrigin
whether the system determined it automatically).this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder isGroupCondition(@Nullable String isGroupCondition)
Original property name from the Odata EDM: IsGroupCondition
For a group condition to be effective, the items must belong to a group. You can freely define the group to meet the needs of your own organization. The items can, for example, all belong to the same material group.A sales order contains two items. Both items belong to the material group 01.Material Quantity Material groupA 150 01B 100 01The group condition indicator is set in the definition of the condition type for material group discounts. The condition record for material group 01 includes the following pricing scale:Scale quantity Discountfrom 1 pc -1%from 200 pc -2%Neither item alone qualifies for the 2% discount. However, when the items are combined as part of a group condition, the combined quantity creates a basis of 250 pieces. This basis then exceeds the scale value of 200 pieces, which is necessary to qualify for the higher discount.
items of the business document into account.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionRecord(@Nullable String conditionRecord)
Original property name from the Odata EDM: ConditionRecord
The system uses the condition record number to store and retrieve information during processing (pricing, for example).
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionSequentialNumber(@Nullable String conditionSequentialNumber)
Original property name from the Odata EDM: ConditionSequentialNumber
If you have assigned a condition supplement to the condition, the system automatically assigns the number.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder taxCode(@Nullable String taxCode)
Original property name from the Odata EDM: TaxCode
Tax codes are unique per country. The tax rate calculation rules and further features are stored in a table for each tax code.For tax-exempt or non-taxable transactions, you should use tax codes with a 0 percentage rate if the corresponding transactions are to be displayed in the tax returns.You must define new tax codes if tax rates are changed by the state. The old codes with the old tax rates must remain in the system until no more open items which use this tax code exist.
the tax authorities.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder withholdingTaxCode(@Nullable String withholdingTaxCode)
Original property name from the Odata EDM: WithholdingTaxCode
Note that when processing a business transaction, no more than one withholding tax code can be assigned per withholding tax type. If the business transaction is subject to more than one withholding taxes, these must be represented in the system by defining various withholding tax types.
codes determine is the various percentage rates for the withholding tax type.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder cndnRoundingOffDiffAmount(@Nullable BigDecimal cndnRoundingOffDiffAmount)
Original property name from the Odata EDM: CndnRoundingOffDiffAmount
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionAmount(@Nullable BigDecimal conditionAmount)
Original property name from the Odata EDM: ConditionAmount
This value is used as a total for the condition in the pricing procedure.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder transactionCurrency(@Nullable String transactionCurrency)
Original property name from the Odata EDM: TransactionCurrency
The system proposes the document currency from the customer master record of the sold-to party. You can change the currency manually in the document. If you change the currency, the system recalculates prices for the entire document.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionControl(@Nullable String conditionControl)
Original property name from the Odata EDM: ConditionControl
The indicator shows, for example, if the prices generated by a condition have been changed manually during processing.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionInactiveReason(@Nullable String conditionInactiveReason)
Original property name from the Odata EDM: ConditionInactiveReason
A condition can be inactive due to the following reasons:Condition is excludedSubsequent price deactivates conditionFormula deactivates conditionError during pricing
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionClass(@Nullable String conditionClass)
Original property name from the Odata EDM: ConditionClass
Allows standardized processing of individual condition classes within the system.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder prcgProcedureCounterForHeader(@Nullable String prcgProcedureCounterForHeader)
Original property name from the Odata EDM: PrcgProcedureCounterForHeader
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder factorForConditionBasisValue(@Nullable Double factorForConditionBasisValue)
Original property name from the Odata EDM: FactorForConditionBasisValue
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder structureCondition(@Nullable String structureCondition)
Original property name from the Odata EDM: StructureCondition
This control is only helpful when you use bill of materials or configurable materials:' ' - None'A' - Duplication Condition: A duplicated condition is duplicated into all assigned items.'B' - Cumulation Condition: A cumulated condition contains the net value of all assigned items.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder periodFactorForCndnBasisValue(@Nullable Double periodFactorForCndnBasisValue)
Original property name from the Odata EDM: PeriodFactorForCndnBasisValue
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder pricingScaleBasis(@Nullable String pricingScaleBasis)
Original property name from the Odata EDM: PricingScaleBasis
on quantity, weight, or volume.this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionScaleBasisValue(@Nullable BigDecimal conditionScaleBasisValue)
Original property name from the Odata EDM: ConditionScaleBasisValue
You create a pricing condition based on a simple quantity scale:Quantity Price per unit10 $12100 $111000 $10A sales order item for 150 units qualifies for the $11 price. In this case, the scale base value that determines the price is 100.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionScaleBasisUnit(@Nullable String conditionScaleBasisUnit)
Original property name from the Odata EDM: ConditionScaleBasisUnit
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionScaleBasisCurrency(@Nullable String conditionScaleBasisCurrency)
Original property name from the Odata EDM: ConditionScaleBasisCurrency
If a pricing scale is based on a value instead of a quantity, you can specify a currency for the value. In the standard version of the SAP System, this field is only relevant in condition records for the following discounts:Price groupPrice group/Material pricing groupYou apply a price group discount to customers in a particular foreign country. When you create a condition record for this discount and enter values in the pricing scale, you can also enter the corresponding foreign currency. During pricing, the system then calculates discounts based on scale values in the foreign currency. The discount amount is then converted into the currency you are using in the sales document.After you enter a currency in this field and save the condition record, you cannot change the currency without deleting the record and creating it again.
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder cndnIsRelevantForIntcoBilling(@Nullable Boolean cndnIsRelevantForIntcoBilling)
Original property name from the Odata EDM: CndnIsRelevantForIntcoBilling
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionIsManuallyChanged(@Nullable Boolean conditionIsManuallyChanged)
Original property name from the Odata EDM: ConditionIsManuallyChanged
condition screen).this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder conditionIsForConfiguration(@Nullable Boolean conditionIsForConfiguration)
Original property name from the Odata EDM: ConditionIsForConfiguration
this
.@Nonnull public SalesContractPrcgElmnt.SalesContractPrcgElmntBuilder variantCondition(@Nullable String variantCondition)
Original property name from the Odata EDM: VariantCondition
To model the price for a variant of a configurable material, you typically use a larger number of variant condition keys.In a business document, the price for a selected variant is realized as surcharges and discounts specific for this variant: The sales price of a bike depends on the material that is used to produce the frame. You define a characteristic FRAME_MATERIAL that can have the values steel, aluminum, and carbon with the following surcharges:Steel: 0.0 USD per pieceAluminum: + 300 USD per pieceCarbon: + 1000 USD per pieceYou define three different variant condition keys FRAME_STEEL, FRAME_ALU, and FRAME_CARBON and maintain the above-mentioned surcharges as condition records. During order creation, you select the variant of the bike with the carbon frame. This will lead to a surcharge of 1000 USD that corresponds to the variant condition key FRAME_CARBON.
this
.@Nonnull public SalesContractPrcgElmnt build()
Copyright © 2020 SAP SE. All rights reserved.