Websphere Commerce Catalog Subsystem
Websphere Commerce Catalog Subsystem
The Catalog Subsystem contains all logic and data relevant
to an online catalog, including catalog groups (or categories), catalog
entries, and any associations or relationships among them.
Master Catalog
It is the single catalog that contains all products, items,
relationships, and standard prices for everything that is for
sale in your store. Every store in the Web Sphere Commerce system must
have a master catalog. It is possible to share the master catalog
across stores.
Master Catalog Restrictions
1)The master catalog must be a proper tree, which means
that there are no cycles.
e.g.The parent category "Women" has a subcategory
"WomenDress". It is important that WomenDress and any of WomenDress's
subcategories like tops,jeans etc are not the parent category of
"Women" category.
2)A catalog entry or category cannot belong to multiple
parent categories in the master catalog. To place a catalog entry or
category in multiple categories, use a sales catalog.
e.g.If you want to place a product under both men and women
category go for sales catalog .
3) The Catalog tool and the Product Management tools work
with only products that are associated with a master catalog.
Sales Catalog
A store could be associated with more than one sales
catalog.In a sales catalog a product can belong to more than one category,
Sales catalog is usually used as taxonomy for the site and serves to display
the front end category navigation for an E-Commerce site.Display
sequence of categories in a sales catalog is maintained using sequence field,
Sales Catalog can be managed by a business user using Management Center.
STORECAT Table- This table stores information
between store and catalog, this table will have information on both
master and sales catalog associated to a store.
STORECAT Table MASTERCATALOG column value "1"
indicates that is it master catalog.
Products : Product is a group of items which exhibit same attributes. We can say Shirt is a products, but a shirt of red color of size 44 is a item. So it is clear in this example that there are two attributes size and color which belong to this item. And we can also say , that items belong to a particular product exhibit the same set of attributes.
Items : An item is a tangible unit of merchandise that has a specific name, part number,size and price. For example, a 44 size shirt with red color is an item for the above item.
Bundles-(Components or products under bundle can be
modified before adding to cart or after adding to cart)
A bundle is a collection of catalog entries to allow
customers to buy multiple items at once. For example, a bundle for a
laptop might be composed of a central processing unit, mouse and a hard
drive. A bundle is a grouping of items, or a combination of products, items,
and fully resolved packages. If you select a bundle which only contains items,
the bundle is decomposed into separate orderable SKUs that are added
individually to the shopping cart. However, if you select a bundle which
contains products, these products need to be resolved into items through SKU
resolution before they can be added to a shopping cart. In either case, once a
bundle is decomposed and its component items are added to a shopping cart, you
can modify or remove each item.
Packages/Prebuilt kit(Components or products under
package can't be modified)
A package is an atomic collection of catalog entries. For example,
a laptop package might contain a specific central processing unit, monitor, and hard
drive that cannot be sold separately. Similar to a product, a package has
defining attributes and is a container for fully resolved packages. A fully
resolved package is comparable to a SKU. A package has its own price and is an
actual orderable SKU that can be added to a shopping cart. You cannot decompose
or modify a package either during navigation or after the package has been
placed in the shopping cart.
A prebuilt kit has its own price and can be added to the
shopping cart. Once added to the shopping cart, you cannot change the prebuilt
kit contents.Viewed in similar ways as a product, a prebuilt kit can have
descriptive attributes.
Inventory for a prebuilt kit is independent of the
inventory of its component parts.For example, selling a laptop prebuilt kit
does not affect the inventory of the processor, monitor, and hard drive that
the prebuilt kit contains.
Static kits (Components or products under Static
kits can't be modified)
A static kit is a group of products that are ordered as a
unit. The information about the products contained in a static kit is
predefined and controlled within WebSphere Commerce. The individual components
within the order cannot be modified and must be fulfilled together. A
static kit will back order if any of its components are unavailable. A
static kit is first created as a package, and then configured by an
administrator.
A static kit has no inventory of its own. When a static
kit is purchased, the inventory of its component parts is lowered. For
example, if a computer was sold as a static kit and not a prebuilt kit, the
inventory amounts for the processor, monitor, and hard drive would be
decreased when a computer was sold.
(Package / Prebuilt kit) vs. Static kits
Prebuilt and Static kits are both considered to be a kit
(kit and dynamic kit are the two options provided) in Management
Center. They differ only in how the inventory is configured and managed. For
a prebuilt kit/Package , the inventory must be tracked at the kit level whereas
a static kit's inventory must be tracked at each individual child component.
Dynamic kits (Components or products under Dynamic Kits
can't be modified once configured but can be configure by an external
configurator)
A dynamic kit is a type of catalog entry which can
be dynamically configured by the customer.This configuration (or grouping) of
products is based on the customer's requirements and is sold as a single unit.The
components of a dynamic kit are controlled by an external product
configurator through a set of predefined rules and user interaction,and
supplied at order entry time. Adding a dynamic kit to an order is
similar to adding a package.Like a package, the individual components of a dynamic kit
cannot be modified and the entire configuration must be fulfilled as a
whole.However, you may change the dynamic kit components by
reconfiguring it using an externalproduct configurator.
On the product display page for the dynamic kit,
you must have a 'Configure and Buy' button. This button takes
the customer to a page where the contents of thedynamic kit can be
customized. Once the customer has chosen which components to include as part of
the dynamic kit, a configuration_id must be assigned to this
configuration and the DynamicKitConfigurationAddCmd command is called.
DynamicKitConfigurationAddCmd
This controller command is used by an external Product
Configuration to define the components of a dynamic kit. This command
assumes that each configuration of a kit has a unique configuration id. The kit
definition can be passed in via the individual class set methods, or by setting
the entire XML definition of the dynamic kit. If both the class
setters and the XML definition are used, the values defined in the XML document
take precedence.
We can use the CATCONFINF database table to
store information that can be required by your external configurator to
configure the dynamic kit.
CATCONFINF Table
This table holds additional information for catalog entries
that represent configurable products. This information may be required by an
external configurator to configure these catalog entries.
OICOMPLIST Table
Each row contains information about the components of a
configured Order Item.
OICOMPREL Table
Stores all kit level information for an Order item that is a
kit. A kit may contain other kits and catalog entries outside of a kit. This table
stores information about kit components and the OICOMPLIST table
stores information about catalog entries outside of a kit.
Commands used in Catalog Subsystem
TopCategoriesDisplayCmd
This command sets the view task that will display the root Categories in a specified Catalog.
StoreCatalogDisplayCmd
This command can be used as the first page of a shopping flow to display the catalogs of a given store.
CategoryDisplayCmd
This command retrieves the configured display page for the specified category in the specified catalog.
ProductDisplayCmd
This command retrieves the configured Display Page for the specified CatalogEntry which will in turn be launched in order to display information about the CatalogEntry.This command first ensures that the CatalogEntry specified by the ProductId can be displayed in the current store, if published, and is not marked for delete.
This command retrieves the configured Display Page for the specified CatalogEntry which will in turn be launched in order to display information about the CatalogEntry.This command first ensures that the CatalogEntry specified by the ProductId can be displayed in the current store, if published, and is not marked for delete.
ErrorProductAttributeCmd
This error task command is set when a Product to Item resolution fails due to incorrect product attributes
ErrorMissingAttributeCmd
This error task command is set when a Product to Item resolution fails due to missing product attributes.
ProductSetPublishCmd
This product set publish publishes a product set, or all
product sets, to the catalog.
Tables used in Catalog Subsystem
Catalog tables
CATALOG This table holds the information related
to a catalog.
CATALOGDSC This table holds
language-dependent information related to a catalog.
STORECAT This table has relationship on store
with catalog and also says that whether the catalog which is referenced to the
stores is master catalog or sales catalog.
Category\CatGroup tables
CATGROUP This table hold the information
related to a catalog group. A catalog group is similar to a generic category
that can contain both other catalog groups and also catalog entries.
CATGRPDESC This table holds the
language-dependent information related to a catalog group.
STORECGRP This table holds the relationship
between StoreEntities and the CatalogGroups that they can display and process.
CATTOGRP This table has the information on
relationship of CATALOG_ID and ROOT CATGROUP [category]
CATGRPREL This table has the information
on the relationship between the CATEGORY or CATGROUP, like it says which is
parent and which is child.
CatalogEntry tables
BASEITEM BaseItems represent a general family of
goods with a common name and description. BaseItems are used exclusively for
fulfillment. Each CatalogEntry that represents a Product in the catalog has a
corresponding BaseItem for fulfillment purposes.
BASEITMDSC Each row of this table contains
language-dependent information for a BaseItem.
STOREITEM Each row of this table contains
attributes that affect how a particular Store allocates inventory for the
specified items of a particular Base Item. If there is no row for the Store,
then the row for its Store Group is used.
ITEMVERSN Each row of this table represents an
ItemVersion for a BaseItem. An ItemVersion expires when its expiration date is
in the past. Each BaseItem must only have a single ItemVersion defined.
VERSIONSPC Each row defines the relationship
between a product version and a specified item.
DISTARRANG Each row of this table represents a
DistributionArrangement, enabling a Store to sell its own inventory.
CATENTRY This table holds the information
related to a catalog entry. Examples of catalog entries include products,
items, packages, and bundles.
CATENTDESC This table holds language-dependent
information related to a catalog entry.
CATENTREL This table holds containment
relationships between catalog entries. Examples of these relationships are
Product-Item, Bundle, and Package relationships. This table should not be used
for peer-to-peer catalog relationships, such as cross-sells.
CATGPENREL This table relates catalog groups (or
categories) to the catalog entries that are inside them. You can also use this
table to dictate the navigational flow from catalog groups to catalog entries.
Each relationship is also qualified by a Catalog ID.
STORECENT This table holds the relationship
between StoreEntities and the CatalogEntries that they can display and process.
LISTPRICE Each row of this table represents a
ListPrice in a particular currency for a CatalogEntry.
ITEMSPC Information about specified items.
A specified item is a product with values for all its attributes. A specified
item could correspond to a 2L bottle of milk, with 2% fat content. A specified
item is the customer view of what the merchant sells.
Thanks for sharing this article here about the church book publishing services. Your article is very informative and I will share it with my other friends as the information is really very useful. Keep sharing your excellent work.
ReplyDeleteecommerce solutions services
catalogue management services
Excellent Article, I just read and shared it to my friends as it is very useful for everyone. I will learn a lot of new stuff right from this article. You can check our services of ecommerce solutions services
ReplyDeletecatalogue management services