import { Entity, DefaultDeSerializers, DeSerializers, DeserializedType } from '@sap-cloud-sdk/odata-v2'; import { SalesQuotation, SalesQuotationType } from './SalesQuotation'; import { SalesQuotationItem, SalesQuotationItemType } from './SalesQuotationItem'; /** * This class represents the entity "A_SalesQuotationItemPrcgElmnt" of service "API_SALES_QUOTATION_SRV". */ export declare class SalesQuotationItemPrcgElmnt extends Entity implements SalesQuotationItemPrcgElmntType { /** * Technical entity name for SalesQuotationItemPrcgElmnt. */ static _entityName: string; /** * Default url path for the according service. */ static _defaultServicePath: string; /** * All key fields of the SalesQuotationItemPrcgElmnt entity */ static _keys: string[]; /** * Sales Document. * The number that uniquely identifies the sales document. * Maximum length: 10. */ salesQuotation: DeserializedType; /** * Condition item number. * The number that uniquely identifies the condition item. * The condition item number corresponds to the number in the originating document. For example, if the condition applies to a sales order, the condition item number corresponds to the item number in the sales order. * Maximum length: 6. */ salesQuotationItem: DeserializedType; /** * Step Number. * Number that determines the sequence of the condition within a procedure. * Maximum length: 3. */ pricingProcedureStep: DeserializedType; /** * Condition Counter. * Access number of the conditions within a step in the pricing procedure. * During automatic pricing, the system takes into account the sequence specified by the counter. * Maximum length: 3. */ pricingProcedureCounter: DeserializedType; /** * Condition Type. * The key that uniquely identifies the condition. * 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. * Maximum length: 4. * @nullable */ conditionType?: DeserializedType | null; /** * Timestamp for Pricing. * Maximum length: 14. * @nullable */ pricingDateTime?: DeserializedType | null; /** * Price Condition Determination Dte. * @nullable */ priceConditionDeterminationDte?: DeserializedType | null; /** * Calculation Type for Condition. * Determines how the system calculates prices, discounts, or surcharges in a condition. For example, the system can calculate a price as a fixed amount or as a percentage based on quantity, volume, or weight. * 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. * Maximum length: 3. * @nullable */ conditionCalculationType?: DeserializedType | null; /** * Condition Basis. * Defines the value in a business document that the system uses together with the condition amount to calculate the condition value for the price condition. * During the pricing process in a business document, for each condition type used 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 it into the unit of measure of 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 (-1 USD / PC) is based on the quantity ordered that is the condition basis equals the item quantity and the result is - 120 USD.The second discount (- 2 %) is calculated as a percentage which is applied to the results of the list price (USD 12120) and the first discount (- 120 USD). Its result (12000 USD) is the condition basis for the second discount. The result of the second discount is - 240 USD. * @nullable */ conditionBaseValue?: DeserializedType | null; /** * Condition Amount or Percentage. * Determines how the system calculates prices using a specific condition. * 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, such as 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. * @nullable */ conditionRateValue?: DeserializedType | null; /** * Currency Key. * Currency key for amounts in the system. * Maximum length: 5. * @nullable */ conditionCurrency?: DeserializedType | null; /** * Condition Pricing Unit. * The quantity on which the amount or percentage is based. The quantity is expressed in sales units (for example, bottles). * 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. * @nullable */ conditionQuantity?: DeserializedType | null; /** * Condition Unit in the Document. * Quantity unit, to which the condition amount or percentage refers. * Maximum length: 3. * @nullable */ conditionQuantityUnit?: DeserializedType | null; /** * SAP Unit Code for Condition Quantity. * Unit of measure (SAP unit code) for the condition quantity. * For the condition quantity, you can use either the language-dependent unit code, the ISO code, or the SAP code (the format found in the database without conversions). * Maximum length: 3. * @nullable */ conditionQuantitySapUnit?: DeserializedType | null; /** * ISO Unit Code for Condition Quantity. * Unit of measure (ISO code) for the condition quantity. * For the condition quantity, you can use either the language-dependent unit code, the ISO code, or the SAP code (the format found in the database without conversions). * Maximum length: 3. * @nullable */ conditionQuantityIsoUnit?: DeserializedType | null; /** * Condition Category (Examples: Tax, Freight, Price, Cost). * A classification of conditions according to pre-defined categories (for example, all conditions that relate to freight costs). * Maximum length: 1. * @nullable */ conditionCategory?: DeserializedType | null; /** * Condition is used for statistics. * This indicator causes a surcharge or discount to be set in the document statistically (that is, without altering the value). * @nullable */ conditionIsForStatistics?: DeserializedType | null; /** * Scale Type. * Indicator that controls the validity of the scale value or percentage: * 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. * Maximum length: 1. * @nullable */ pricingScaleType?: DeserializedType | null; /** * Condition is Relevant for Accrual (e.g. Freight). * Indicates that the system posts the amounts resulting from this condition to financial accounting as accruals. * If you mark this indicator, the condition appears in the document as a statistical condition. * @nullable */ isRelevantForAccrual?: DeserializedType | null; /** * Condition for Invoice List. * Indicates that the condition type is relevant for internal costing. * Maximum length: 1. * @nullable */ cndnIsRelevantForInvoiceList?: DeserializedType | null; /** * Origin of the Condition. * Indicates where the condition originated (for example, whether you entered the condition manually or whether the system determined it automatically). * Maximum length: 1. * @nullable */ conditionOrigin?: DeserializedType | null; /** * Group Condition. * Indicates whether the system calculates the scale base value or the condition value taking all related items of the business document into account. * 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. * Maximum length: 1. * @nullable */ isGroupCondition?: DeserializedType | null; /** * Number of the Condition Record. * Number that uniquely identifies a condition record. * The system uses the condition record number to store and retrieve information during processing (pricing, for example). * Maximum length: 10. * @nullable */ conditionRecord?: DeserializedType | null; /** * Sequential Number of the Condition. * The sequential number that uniquely identifies the condition if a condition supplement exists. * If you have assigned a condition supplement to the condition, the system automatically assigns the number. * Maximum length: 3. * @nullable */ conditionSequentialNumber?: DeserializedType | null; /** * Tax on Sales/Purchases Code. * The tax on sales and purchases code represents a tax category that has to be considered for tax reporting to the tax authorities. * 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.If the tax rates are changed by law, you have to define new tax codes. The old codes with the old tax rates must remain in the system until no more open items which use this tax code exist.For countries/regions for which time-dependent tax calculation is activated, the process for specifying your tax codes may differ. For more information, log onto SAP Help Portal and search for “time-dependent taxes”. * Maximum length: 2. * @nullable */ taxCode?: DeserializedType | null; /** * Withholding Tax Code. * One or more "withholding tax codes" are assigned to each withholding tax type. One of the things these codes determine is the various percentage rates for the withholding tax type. * 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. * Maximum length: 2. * @nullable */ withholdingTaxCode?: DeserializedType | null; /** * Rounding-Off Difference of the Condition. * @nullable */ cndnRoundingOffDiffAmount?: DeserializedType | null; /** * Condition Value. * The value, resulting from pricing, for a particular condition, total, or subtotal in a document. * This value is used as a total for the condition in the pricing procedure. * @nullable */ conditionAmount?: DeserializedType | null; /** * SD Document Currency. * The currency that applies to the document (for example, to a sales order or an invoice). * 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. * Maximum length: 5. * @nullable */ transactionCurrency?: DeserializedType | null; /** * Condition Control. * Indicates whether the prices or values in a condition are fixed or whether and in what way they changed. * The indicator shows, for example, if the prices generated by a condition have been changed manually during processing. * Maximum length: 1. * @nullable */ conditionControl?: DeserializedType | null; /** * Condition is Inactive. * Indicates if the condition is active. * A condition can be inactive due to the following reasons:Condition is excludedSubsequent price deactivates conditionFormula deactivates conditionError during pricing. * Maximum length: 1. * @nullable */ conditionInactiveReason?: DeserializedType | null; /** * Condition Class. * Preliminary structuring of condition types, for example, in surcharges and discounts or prices. * Allows standardized processing of individual condition classes within the system. * Maximum length: 1. * @nullable */ conditionClass?: DeserializedType | null; /** * Condition Counter (Header). * Maximum length: 3. * @nullable */ prcgProcedureCounterForHeader?: DeserializedType | null; /** * Factor for Condition Base Value. * @nullable */ factorForConditionBasisValue?: DeserializedType | null; /** * Structure Condition. * Controls whether the condition type is a duplicated condition or a cumulated condition. * 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. * Maximum length: 1. * @nullable */ structureCondition?: DeserializedType | null; /** * Factor for Condition Basis (Period). * @nullable */ periodFactorForCndnBasisValue?: DeserializedType | null; /** * Scale Basis Indicator. * Determines how the system interprets a pricing scale in a condition. For example, the scale can be based on quantity, weight, or volume. * Maximum length: 3. * @nullable */ pricingScaleBasis?: DeserializedType | null; /** * Scale Base Value. * A value or quantity that the system uses to access a pricing scale to determine a scale level. * The scale base value can be a condition value or the value of a quantity, weight, and so on that has been entered in the document.You create a price condition based on a simple quantity scale with scale type A: Base scale:Quantity Price per Unit10 12 USD100 11 USD1000 10 USDA sales order item with 150 units qualifies for the condition scale quantity of 100 units and the price per unit of USD 11. In this case, the scale base value that determines the price is 150. * @nullable */ conditionScaleBasisValue?: DeserializedType | null; /** * Condition Scale Unit of Measure. * Unit of measure to which the quantity scale refers. * Maximum length: 3. * @nullable */ conditionScaleBasisUnit?: DeserializedType | null; /** * Scale Currency. * Specifies a currency for a pricing scale in a condition record. * 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. * Maximum length: 5. * @nullable */ conditionScaleBasisCurrency?: DeserializedType | null; /** * Condition for Intercompany Billing. * Indicator that defines a condition as relevant for the intercompany process. * Intercompany conditions are usually statistical in the sales order and the customer invoice and not statistical in the intercompany invoice. * @nullable */ cndnIsRelevantForIntcoBilling?: DeserializedType | null; /** * Condition Changed Manually. * If this flag is set, the condition has been manually or automatically changed or created (by entry in the condition screen). * @nullable */ conditionIsManuallyChanged?: DeserializedType | null; /** * Condition Used for Variant Configuration. * A condition that is relevant for variant configuration. * @nullable */ conditionIsForConfiguration?: DeserializedType | null; /** * Variant Condition Key. * Freely definable attribute that determines the valid price components of a configurable material. * 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. * Maximum length: 26. * @nullable */ variantCondition?: DeserializedType | null; /** * One-to-one navigation property to the [[SalesQuotation]] entity. */ toSalesQuotation?: SalesQuotation | null; /** * One-to-one navigation property to the [[SalesQuotationItem]] entity. */ toSalesQuotationItem?: SalesQuotationItem | null; } export interface SalesQuotationItemPrcgElmntType { salesQuotation: DeserializedType; salesQuotationItem: DeserializedType; pricingProcedureStep: DeserializedType; pricingProcedureCounter: DeserializedType; conditionType?: DeserializedType | null; pricingDateTime?: DeserializedType | null; priceConditionDeterminationDte?: DeserializedType | null; conditionCalculationType?: DeserializedType | null; conditionBaseValue?: DeserializedType | null; conditionRateValue?: DeserializedType | null; conditionCurrency?: DeserializedType | null; conditionQuantity?: DeserializedType | null; conditionQuantityUnit?: DeserializedType | null; conditionQuantitySapUnit?: DeserializedType | null; conditionQuantityIsoUnit?: DeserializedType | null; conditionCategory?: DeserializedType | null; conditionIsForStatistics?: DeserializedType | null; pricingScaleType?: DeserializedType | null; isRelevantForAccrual?: DeserializedType | null; cndnIsRelevantForInvoiceList?: DeserializedType | null; conditionOrigin?: DeserializedType | null; isGroupCondition?: DeserializedType | null; conditionRecord?: DeserializedType | null; conditionSequentialNumber?: DeserializedType | null; taxCode?: DeserializedType | null; withholdingTaxCode?: DeserializedType | null; cndnRoundingOffDiffAmount?: DeserializedType | null; conditionAmount?: DeserializedType | null; transactionCurrency?: DeserializedType | null; conditionControl?: DeserializedType | null; conditionInactiveReason?: DeserializedType | null; conditionClass?: DeserializedType | null; prcgProcedureCounterForHeader?: DeserializedType | null; factorForConditionBasisValue?: DeserializedType | null; structureCondition?: DeserializedType | null; periodFactorForCndnBasisValue?: DeserializedType | null; pricingScaleBasis?: DeserializedType | null; conditionScaleBasisValue?: DeserializedType | null; conditionScaleBasisUnit?: DeserializedType | null; conditionScaleBasisCurrency?: DeserializedType | null; cndnIsRelevantForIntcoBilling?: DeserializedType | null; conditionIsManuallyChanged?: DeserializedType | null; conditionIsForConfiguration?: DeserializedType | null; variantCondition?: DeserializedType | null; toSalesQuotation?: SalesQuotationType | null; toSalesQuotationItem?: SalesQuotationItemType | null; } //# sourceMappingURL=SalesQuotationItemPrcgElmnt.d.ts.map