B2B AND B2B2C Commerce Data Model

衝撃です、何か　[Commerce の種類がいっぱいあるなぁ　B2C, B2B, B2B2C, B2C Lightning?](https://qiita.com/Keiji_otsubo/items/2d92c76b215e4b82ca96)
今まで話が読めなかったのはこの値が複雑に絡まっていたからじゃないか？

---------------------

B2B AND B2B2C Commerceも無料の環境が使えないので、さっぱり意味が分からん製品です。　学習するために少しは開放して欲しいところです。質問に対する回答すらできないです。触ったことがないので分からないですねぇ。

元の質問 : [How to Mass update "Mark as Not Searchable"](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000ITJRqSAP)

商品を検索対象から外すためにMark as Not Searchableを設定するのですが、一括更新したいらしい。
どのオブジェクトのどのフィールドなのかが特定で特定できればデータローダで一括更新できそうなのですが...

この２つの資料を読む限りは標準オブジェクトの商品２(product2）がB2B AND B2B2Cでも商品見たい。
おまけに

Products in your store are based on a data object named Product2. This object serves as a template for all store products. You use the Product2 object to control search, facet, and display behavior.

と書かれているから、おそらく商品2オブジェクトでしょう。

+ [B2B AND B2B2C Commerce Data Model](https://developer.salesforce.com/docs/atlas.en-us.b2b_b2c_comm_dev.meta/b2b_b2c_comm_dev/b2b_b2c_dev_data_model.htm)
+ [How Behaviors Are Controlled](https://help.salesforce.com/s/articleView?id=sf.comm_search_behavior_how.htm&type=5)

しかし、オブジェクトのリファレンスを見てもそれらしいフィールドはないし、B2Bと注釈のあるフィールドは２つあったのですが、関係なさそうですね。IsActiveかなあ？

このレコードが有効か (true) 有効でないか (false) を示します。無効な Product2 レコードは、ユーザインターフェースの多くの領域で非表示となります。必要に応じて、Product2 オブジェクトの IsActive フラグを変更できます。表示ラベルは [有効] です。

[Product2　オブジェクトリファレンス](https://developer.salesforce.com/docs/atlas.ja-jp.object_reference.meta/object_reference/sforce_api_objects_product2.htm)

---------------------------------------

画面をみるとStoreにひもついているようですね。
しかしStoreオブジェクトだと商品が複数あるので、違うでしょう。よく見るとWebStorePricebookオブジェクトがある。この中にもIsActiveというフィールドがある。これじゃないかな？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/1d569692-af16-1e25-5331-59a6ba873db0.png)



[WebStorePricebook](https://developer.salesforce.com/docs/atlas.en-us.238.0.object_reference.meta/object_reference/sforce_api_objects_webstorepricebook.htm)

---------------------------------------------

最終的には　Store Search Product Settings(WebStoreSearchProdSettings) らしい。　調べても出てこないけどなぁ。

# 関連しそうな資料

+ [購入数量ルールを一括更新する方法](https://trailhead.salesforce.com/en/trailblazer-community/feed/0D54S00000ISLz2)

# 関連するオブジェクト

|Data Mode Object|API Name|説明|
|:---------------|:-------|:---|
|Store|Webstore|サポートされている通貨、言語、価格表、ページごとに表示されるカスタマイズ可能な結果などのフィールドが含まれます。|
|Catalog|ProductCatalog|コマース管理者またはマーチャンダイザーは、B2C データ インポートを使用して設定します。|
|Category|ProductCategory|コマース管理者またはマーチャンダイザーは、B2C データ インポートを使用して、名前、カタログ、カテゴリ、検索順序などを含む既定のコンパクト レイアウトを入力します。レイアウトはカスタマイズ可能です。|
|Entitlement Policy|CommerceEntitlementPolicy|BuyerGroup メンバーシップによってフィルター処理されます。カスタマイズ可能な CanViewPrice および CanViewProduct フィールドが含まれます。|
|Product|Product2|コマース管理者またはマーチャンダイザーは、B2C データ インポートを使用して、さまざまなカスタマイズ可能なフィールド (名前、家族など) を含む既定のコンパクト レイアウトに入力します。|
|Buyer Account|BuyerAccount|買い物客の財務情報。クレジットや注文の制限など、B2B のみに関連するものもあります。B2C BuyerAccount は、買い物客が自己登録するときに確立されます。|
|Buyer Group|BuyerGroup|B2B2C Web ストアごとに 1 つ。B2C データのインポート中にデフォルトで作成されます。BuyerGroup の名前と説明はカスタマイズ可能です。|
|Buyer Group Member|BuyerGroup|買い物客が自己登録またはゲストとして買い物をしたときに確立されます。BuyerAccount 名はカスタマイズ可能です。|
|Price Book|PriceBook2|通常、ストアのデータ インポートのセットアップ中に追加されますが、カスタム フィールドを追加することもできます。|
|Price Book Entry|PricebookEntry|通常は事前設定され、インポート時に価格表オブジェクトに準拠しますが、カスタム フィールドをサポートします。|

本当にPrice Bookなのかなぁ、WebStorePricebookのように思うけど...