Salesforce CPQ は、見積品目の計算で使用する小数部の精度を拡張するためのオプションを全体的なパッケージ設定で提供しています。この設定を更新するためのパスは次のとおりです。
[設定] | [インストール済みパッケージ] | [Salesforce CPQ] | [設定] | [価格設定と計算] | [単価スケール]
パッケージの [単価スケール] 設定を変更して小数位の桁数を指定することで、特定の項目の小数部の精度を高めることができます。この設定は、見積品目エディタ (QLE) の他の項目の小数位桁数にも影響します。Salesforce CPQ では、リスト単価、通常単価、正味単価、追加割引を品目エディタ項目セットに追加して、単価スケールで定義されている小数位桁数が反映されているかどうかを目視で確認できます。この精度を Salesforce 全体に反映させる方法については、Enable 'More Decimals on Price' (価格の小数位桁数を増やす方法) を参照してください。
QLE または見積ドキュメントの項目では、データベースにすべての小数値が保存されていても、パッケージレベルの設定に従って小数部の桁数が表示されます。ネイティブの計算順序に小数部の精度を含める方法を理解しやすいように、この説明では簡素化した計算順序を使用しています。
リスト単価 ([特別価格種別] が空白ではない場合は特別価格)
パートナー価格
正味単価
注意: 上記の太字の項目では、単価スケールの CPQ パッケージ設定を使用します。
単価項目
品目エディタや SBQQ__AdditionalDiscount__c では、上記セクションの各単価項目には拡張された小数部精度が適用されます。見積を保存すると、これらの値もデータベースに保存されます。
[価格設定と計算] パッケージの設定で単価スケールの値を変更しても、[品目の編集] Visualforce ページ以外では、この設定の影響を受ける項目の項目定義は変更されません。たとえば、SBQQ__CustomerPrice__c で項目の小数部精度が 2 (12,2) に設定された項目定義があるとします。見積品目レコードは常にこの項目定義に従います。一方、データベースに保存される値は、パッケージ設定の単価スケールの定義に従います。
Classic では、この詳細ページでレコードを編集して保存すると、ページレイアウト上のすべての項目の値が項目定義に従って切り詰められます。ページレイアウトで項目の精度が拡張されている場合でも、レコードを編集して保存すると、項目で定義されている小数部精度に切り詰められます。レイアウト以外では、レコードを詳細ページで編集して保存しても値は切り詰められません。Lightning Experience では、レコードを編集して保存しても、小数位の桁数は変更されません。
システム割引
割引率表 (期間またはボリューム) を使用する場合に、システム管理者は割引率表レコードに対して小数部の精度を定義できます。割引率表レコードに対して定義された精度は、関連付けられている割引層で定義されているパーセント値から割引金額を計算するための精度を決定します。割引層でパーセント値ではなく金額を使用している場合は、SBQQ__DiscountAmount__c で定義されている値が使用されます。
例:
単価スケール = 2
リスト価格 = $5.32
割引層 = 7%
割引率表の価格スケール = 4
すべての割引は、単価に金額として適用されます。金額は、以前の単価に割引率を乗算して計算され、割引金額の精度は割引率表の価格スケールに従って決定されます。
注意: リスト単価と通常単価の間では、リスト単価に按分の乗数を適用した後で割引金額を計算します。
5.32 * .07 = $0.3724
算出された金額は、以前の単価から減算されます。
5.32 - .3724 = 4.9476
そして、組織で定義されている単価スケールに従って単価が丸められます。
$4.95
ブロック価格
ブロック価格を編集するための [一括編集] Visualforce ページでは、ブロック価格オブジェクトの SBQQ__Price__c 項目で割り当てられている追加の精度が小数位 2 桁に切り詰められるため、ブロック価格の精度は現時点では小数位 2 桁に制限されています。
ユーザが入力する割引項目:
QLE SBQQ__AdditionalDiscount__c では、拡張精度が保持されます。SBQQ__Discount__c または SBQQ__DiscountAmount__c が QLE に追加された場合、これらの項目では拡張精度は使用されません。ただし、SBQQ__AdditionalDiscount__c を使用して値を計算する場合は、これらの項目値の拡張精度がデータベースで取得されます。
Line Editor SBQQ__PartnerDiscount__c と SBQQ__DistributorDiscount__c では、項目定義に従ってパーセント項目 (3,2) として表示されます。小数部の拡張精度がパッケージ設定で定義されていても、拡張精度は表示されませんが、計算順序では拡張精度をサポートするために使用されます。
パーセント値として使用する場合、SBQQ__AdditionalDiscount__c は、まず管理パッケージ設定で定義されている小数部精度に従って割引金額を計算します。その後、この金額を通常単価から減算することで、顧客単価を計算します。追加割引が金額として適用される場合、ユーザが入力した値は単価スケールで定義されている精度に丸められ、その値を通常単価から減算することによって顧客単価が計算されます。
Line Editor SBQQ__PartnerDiscount__c と SBQQ__DistributorDiscount__c では、項目定義に従ってパーセント項目 (3,2) として表示されます。小数部の拡張精度がパッケージ設定で定義されていても、拡張精度は表示されませんが、計算順序では拡張精度をサポートするために使用されます。
割引の計算例:
SBQQ__Discount__c (パーセント値として適用される追加割引)、SBQQ__PartnerDiscount__c、SBQQ__DistributorDiscount__c は、計算順序のそれぞれのステップで同じように適用されます。
SBQQ__RegularPrice__c を 10.9473、Unit Price Scale を 4、SBQQ__Discount__c を 5% とします。
まず、以前の単価に割引率を乗算し、単価スケールに従って計算結果を丸めて、割引金額を計算します。
$10.9473 * 0.05 = $0.547365
$0.547365 を $0.5474 に丸める
次に、この値を以前の単価から減算して、計算順序で次の単価を計算します。
$10.9473 - $0.5474 = $10.3999
従って SBQQ__CustomerPrice__c = $10.3999
注文、修正、更新での小数部精度の維持
小数部の拡張精度は、注文、修正、更新の各プロセスで取得されます。目的は、管理パッケージで定義されている単価スケールをデータフロー全体で維持することです。
注文商品:
納入商品項目:
登録項目:
関連情報:
Data type number field can store more decimal places than defined (データ型数値項目に定義されているより多くの小数位桁数が保存できてしまう)
The CPQ Quote Calculation Sequence (CPQ の見積計算順序)
000382046

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.