---
title: "販売可能なアイテムコマンド、パイプライン、ブロック"
slug: "sellable-item-commands-pipelines-and-blocks"
abstract: ""
---
# 販売可能なアイテムコマンド、パイプライン、ブロック

以下の表は、販売可能なアイテムコマンドとパイプラインについて説明します。

**コマンド/パイプライン**

**概要**

CreateSellableItemCommand  
  
CreateSellableItemPipeline

コマースエンジンで新しい販売可能なアイテムを作成します。  
  
パラメータ:  
  

-   productId: 販売可能な商品の一意識別子
-   name販売可能なアイテムの内部名称
-   displayName: 販売可能な商品の表示名
-   description販売可能なアイテムの説明
-   brand: 販売可能な商品のブランド
-   manufacturer:販売可能な商品の製造元
-   typeOfGood販売可能な商品の種類
-   tags: 販売可能な商品に関連するタグ

  
  
\> \[!注\]  
\> 販売可能なアイテムをプログラム的に作成する場合、新しいアイテムをカタログに明示的に関連付ける必要があります。この [例](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/sellable-item-commands,-pipelines-and-blocks.html#UUID-d4410c9d-50aa-c013-d366-53ee382fe316_section-idm4611522343163231651271394118)に示されています。

CreateSellableItemVariationCommand  
  
CreateSellableItemVariationPipeline

既存の販売可能なアイテムのバリアントを作成します。  
  
パラメータ:  
  

-   sellableItemId: 親販売品の識別子
-   variantId: 販売可能なアイテムバリアントの識別子
-   variantName: 販売可能なアイテムのバリアントの名称
-   variantDisplayName: 販売可能なアイテムバリアントの表示名

DeleteSellableItemCommand

指定された販売可能なアイテムを削除します。  
  
パラメータ:  
  

-   sellableItemId: 販売可能なアイテムの一意識別子。

DeleteSellableItemVariationCommand

販売可能なアイテムの指定 *バリアン*トを削除します。  
  
パラメータ:  
  

-   sellableItemId: 親販売品の一意識別子。
-   variantId: 販売可能なアイテムバリアントの一意識別子。

DisableSellableItemVariationCommand  
  
DisableSellableItemVariationPipeline

販売可能なアイテムから指定されたバリアントを削除します。  
  
パラメータ:  
  

-   sellableItemId: 親販売品の識別子
-   variantId: 販売可能なアイテムバリアントの : ID

EditSellableItemCommand  
  
EditSellableItemPipeline

既存の販売可能なアイテムに変更を加えます。  
  

-   sellableItem販売可能な品目の識別子

GetBulkPricesCommand  
  
GetSellableItemPipeline

販売可能なアイテム識別子の列を取得し、各アイテムのまとめ価格モデルを返します。バリアント識別子が提供されている場合は特定のバリアントの価格を返し、そうでなければすべてのバリアントの価格を返します。  
  
パラメータ:  
  

-   itemIds: 項目識別子の区切られたリスト;特定のアイテム(文字列)を完全に記述するためのCatalog、ProductId、VariantIdを含みます。

GetSellableItemsByParentCommand  
  
GetSellableItemsByParentPipeline

指定された親(カタログやカテゴリ)に属するすべての販売可能なアイテムを取得します。  
  
パラメータ:  
  

-   ParentIdカタログまたはカテゴリの識別子
-   Skip:スキップすべき項目数
-   Take:スキップすべき項目数

GetSellableItemCommand  
  
GetSellableItemPipeline

指定された販売可能なアイテムを回収します。  
  
パラメータ:  
  

-   itemId販売可能な品目の識別子
-   filterVariations: は販売可能なアイテムのバリエーションを回収すべきかどうかを示します

GetSellableItemsCommand  
  
GetSellableItemsPipeline

システム内の販売可能なすべてのアイテムのリストを取得します。  
  
パラメータ:なし。

RemoveListPricesCommand  
  
RemoveListPricesPipeline

販売可能な商品の指定リスト価格を除外します。  
  
パラメータ:  
  

-   itemId販売可能な品目の識別子
-   prices販売可能な商品の異なる通貨の区切られた価格の列

UpdateListPricesCommand  
  
UpdateListPricesPipeline

販売可能な商品の指定リスト価格(通貨別)を追加または更新します。  
  
パラメータ:  
  

-   itemId販売可能な品目の識別子
-   prices販売可能な商品の異なる通貨の区切られた価格の列

UpdateSellableItemPurchasableCommand

商品が購入可能かどうかを判断します。  
  

-   true: 商品は購入可能です
-   false: そのアイテムは購入できません。

DeleteSellableItemBundleReferencesBlock

削除されるアイテムが販売可能なアイテムかどうかを確認し、必要に応じてバンドル関連を整理します。

## 例:販売可能なアイテムをプログラム的に作成する場合

CreateSellableItemコマンドを使って、プログラム的に販売可能なアイテムを作成します。コードを使って販売可能なアイテムを作成する場合は、関連するカタログとの明示的な関連付けも含めなければなりません。

以下の例は、必要なカタログ関連付けを含むサンプルcreateSellableItemコマンドを示しています。

namespace Sitecore.Commerce.Plugin.Sample
{
 using System;
 using System.Threading.Tasks;
 using Sitecore.Commerce.Core;
 using Sitecore.Commerce.Core.Commands;
 using Sitecore.Commerce.Plugin.Catalog;

 /// <inheritdoc />
 /// <summary>
 /// Defines the SampleCommand command.
 /// </summary>
 public class SampleCommand : CommerceCommand
 {
 private readonly CreateSellableItemCommand \_createSellableItemCommand;

 private readonly AssociateSellableItemToParentCommand \_associateSellableItemToParent;

 public SampleCommand(CreateSellableItemCommand createSellableItemCommand, AssociateSellableItemToParentCommand associateSellableItemToParent, IServiceProvider serviceProvider) : base(serviceProvider)
 {
 \_createSellableItemCommand = createSellableItemCommand;
 \_associateSellableItemToParent = associateSellableItemToParent;
 }

 public async Task<SampleEntity> Process(CommerceContext commerceContext, string catalogID)
 {
 using (var activity = CommandActivity.Start(commerceContext, this))
 {
 SellableItem sellableItem = await \_createSellableItemCommand.Process(commerceContext, "My Prodcut ID", "", "My Product Name", "My Product DisplayName", "My Description", "My Brand", "Manufacturer", Array.Empty<string>()).ConfigureAwait(continueOnCapturedContext: false);
 if (sellableItem != null)
 {
 await \_associateSellableItemToParent.Process(commerceContext, "Entity-Catalog-Habitat\_Master", catalogID, sellableItem.Id).ConfigureAwait(continueOnCapturedContext: false);
 }

 return new SampleEntity();
 }
 }
 }
}