Print

Overview

Catalog helps you manage all your

...and anything associated with any of the mentioned. The default layout is an intuitive TREE structure that shows categories and sub-categories on the left.


The catalog has the following sections, each wil be explained in the following sections:

Catalog Tree

The Category tree shows a hierarchy of Categories and sub-categories. The tree can have any number of levels based on how your catalog was setup. A category that contains other categories is also known as a parent and any sub-category to it is known as its child. Categories that do not have any children as known as leaves or leaf (singular) category. On clicking any Category you will see the listing on the right for it.

Category Product Listing

The listing by default are the products that are immediate to the category selected in the tree. By immediate we mean that if the category has a sub-category also, then the products listed will not contain the ones from the sub-category. However, we can make the following alterations to how we view the list easily:

Customizations

The category listing can be customized to show columns that you prefer to see and also one can customize icons to appear in the list for things like SALE, NEW or anything custom. These customizations are controlled via simple CSS and property modifications, that your developer can achieve with minimal effort.

	HTML
	<span class="bool_newItem"></span>

	CSS
	.rep .bool_newItem {
	 background-image: url('../img/gen/new.png');
	 display: inline-table;
	}
	


Below is an example where the Listing customization incluides an NEW icon and also gives a grey background to the title of disabled products.


This can be achieved simply by CSS (/admin/common.css) modifications. CSS code
	td .bitmask_1 {
	  color: #888;
	  background-color: #DDD;
	}
	

Bulk Operations

One can also perform bulk operations on any Listing. By default the DELETE operation is provided for this. However one can define and add more buttons by the backend configurations.

DELETE operation may attempt to delete records that are used or locked by another process. For example, a product that is part of an Order in process. This can cause an error. See Bulk actions on orders, on how to get around this. Essentially you need to UN-LOCK, perform your DELETE and any other INSERT or UPDATES, and then finally RE-LOCK products to the orders.

Note: There can be other bulk operations added to your project. Like Turn SALE on/off, Turn NEW on/off. For all you need to select the products of interest and ten press the button or you will get an error. Additionally, SALE on/off works only for those products that have a salePrice entered. Youcant take a Product on SALE without explicitly giving it a Sale Price.

Notifications

There is also a panel provided on top, that can list Notifications. Notifications maybe INFO, WARNING or CRITICAL type. Each signfied by an icon.
Notifications are custom to a project. For instance in E-Commerce, a common need is to notify of products low on inventory. These can be completely csutomized and so can the message. These messages can also link to some action if required (currently under development).
The example below shows a WARNING type notification on products that are out of stock

Inventory

For convenience (and security) sake, there is a report that allows the admin to check the inventory quickly of all or a selection of products. Since its a report, it can be customized.
The security aspect comes in when we don't want someone in operations to have access to the core catalog but just keep an eye on inventory data, which is such a common scenario.

Product Details

The Product Details is a PopUp Dialog view, that shows all the details for a selected product. Again these details will appear based on what is applicable and customized for your application. The details is capable of thee following:




Moving a product

You can also move a product from one category to another by clicking Move to another category. This will present a Tree and allow you to select the node where you wish to move this category to. Some logical restrictions apply automatically, like a Product Category cannot be moved into its own sub-category. Additionally, if you move a catgory the entire category will move.

Document / Image Upload


Before you upload please ensure the file is of correct TYPE and size.
For instance do not upload a ZIP file and expect the system to read through it or Do not upload a really heavy image.
Use ETL for example ETL Ready Images for any type of activity that requires pre processing


Select Document Viewer icon


Select Folder


Select Image to enlarge. One can also click the link to embed it or copy the link shown as a relative path and use in the editor.


You can also learn about the Document Uploader/Editor here.

Complex field types

The catalog is also capable of handling dynamic (polymorphic) states like Size. Where a size may take on the form of dimensions, fit or any other custom form within the same project for different products. Such cases are handled really well both by the data model and by the admin.

It can also pull in dynamic data like Colors based on the distinct colors that orginaically exist in the database compared to some pre-set list. Or for that matter the ability to query which other products are related to the current products.

						
The platform is capable of performing multi dimension range searches on complex (multi dimensional) data. For example, searching for a product within a certain Width and Height range.
						
					

Catalog Buttons

Delete

Will delete the product.
In e-commernce, if the product is related to an active order, a Delete maybe prevented by the system. But this is project dependent, as it maybe the case that the system automatically unlocks the product before deleting. Refer to Order Locking for more details.

Move to category

Will allow you to select a new parent to move this product under. The category refers to the primary category (incase the project supports multiple categories).

Misc. Actions

In addition to regular Save, Move etc. One can define some custom Actions also on the Product Details For example the following buttons that you see in the screenshots are configured and commonly useful. Note there can be more custom actions defined and even the ones mentoned below may vary in behavior from project to project:

Custom / Complex Fields

We can have custom fields designed to make Admin easier for a particular need. The customization can be on the behavior of the field or how it looks or how it processed its data. The screen below demonstrates use of complex fields for size, colors, related items.
For example in size we may want to capture the WIDTH, LENGTH and HEIGHT with unit as a special field. And if the SIZE type changes than change it to a Drop down.
Another example, is selecting colors. While the drop down below may look ordinary, it picks the list dynamically from the database and presents unique list of colors available real time. Similarly with Related Groups.

Based on Size Type the Size field changes its format:



Another example, is this Data Grid that allows a user to price their property (as a product) and setup pricing parameters season wise.


... The list can be endless in terms of both UI rendering as well as custom data processing needs for a field.

Product Relations

A product can have different types of relations or association types, with other products. A lot of flexibility in any catalog management system lies in the ability of how easily one can define associations of various product types, modify and customize them. PLease note that these relations are more aplicable on how they are used by the application. The admin allows one to control these in the views already defined above. How they can be controlled will also be explained below for each case. The following order defines the different types of associations in descending order of Strength of association.

  1. Default Category (Inheritance)

    This is the strongest form of association. A Single parent category (default category) for a Product. Based on the application logic a product can inherit aspects from its Default Parent. For example: In E-Commerce one may define a Tax field for a category and the tax is applicable for products within that category without having to mention it for each product. A product down the hierarchy can always override the value set by its parent.
    Impacts: Catalog hierarchy, Inheritance of Data/Properties from parent to Child, Default Policies and rules set on a Parent Category, Indexing taxonomy for showing Search results for a Category.
    Admin: By Creating a new Sub-Category. If a product has any other product as its child, then it automatically becomes a parent and hence a category. One can use the Convert to Category button toi define an created product as a category.
  2. Related products - Model Code

    The same product may exist in multiple sizes or colours. Products like these can share the same Model Code. There is a very strong association between products of the same Model Code. One may consider this as a form of "Related Products" however this is a very common and specific case of "Related products" that requires special attention.
    Impacts: Display of a product usually. Example A product available in different sizes or colours. They will share the same Model/Design code..
    Admin: Product Details > Model Code field
  3. Multiple parents

    Multiple parents or Alternate Parent, are also supported via Product Alias. The same product may exist in multiple sizes or colours. Products like these can share the same Model Code. There is a very strong association between products of the same Model Code. One may consider this as a form of "Related Products" however this is a very common and specific case of "Related products" that requires special attention.
    Impacts: Display of a product usually. Example A product available in different sizes or colours. They will share the same Model/Design code.
    Admin: If this is applicable for your project, you will find a field within product Details that will list its alternate parents (Alias).
  4. Cross Related products

    A product maybe related to other products. like a Coushion Cover and its filler, or a Dinner Set (as a Product) and various other products that make up the Set like plates, cups etc. This is realized in e-commerce module.
    Impacts: Display of a product usually, one may optionally use to for Shipping and Promotion policies. Like for every Dinner set get an extra Cup free etc.
    Admin: Product Details > Related Groups field
  5. Collection

  6. Variations

    Some products data is such that they are essentially the same product (common name, sku, codes, color, size, price) however one of these attributes may vary. the variation could be very subtle. For Example: A Sofa sold with different covers. That may change its appearance but the store maintains data for it under 1 SKU.
    For example: One can group by "model code", "related products" or even adopt a convention on SKU: v1, v2. So the application in can scan all products which start with the same base SKU. Since each variation is also a Product in its own respect it has all the attributes of a normal product hence you could have images per variation etc.
    Impacts: Display of a product usually.
    Admin: Product Details > product attribute variation (Attribute code: ATTRIB_VARIATION_NAME)
  7. Tags

    Tags are a way to associate products with other products in the same or another category. Tags influence the way search will associate proucts or how the recommendation engine will associate products to selected product in a You may also Like type feature. The order in which tags are mentioned is also important. The first word shows a stronger association than a latter word and so on. For example if a Pot is tagged as kids, bathroom. It will show up in a search for kids or may even show up when a person clicks another kids product that is also for the bathroom. The more thsa tags in a product, the stronger one can define associations.
    Impacts: Display in searches and Associations with a selected product.
    Admin: Product Details > tags
  8. Entity Type & Templates

    For more advanced cases, we may want to change the entire Scheme of Product Details. The fields, their order, type etc. This is useful in very complex situations, where different types of products may require altogether completely different data models.
    Entity refers to the actual Product Type/Model while Template refers to how a product type is treated in Admin. Impacts: Display of a product usually.
    Admin: Product Details > Select Template
    Entity is the inherited type from the base Product type. Each entity can define a set of custom fields.
    				

Server Cache & Index

Since most web applications work on the principal that there are many more reads on a piece of content, and very less updates to the same content. Caching ensures that a change is available more quickly to serve as it will be re-used across multiple requets to the page, thereby considerably improving performance.

Indexing is more suited for search scenarios where products/content have to be fetched in some order or based on some criteria. This is slightly slower than a cache but more flexible as it accounts for dynamic situations on how a user may want to view the data.

The Catch : This performance benefit, comes at the cost of assuming, that the change will also require the cache to be updated. This means in addition to saving the data, the cache and index also need to be updated. In some cases this maybe automated behind the scenes, and in some cases it may require to be manual. The sophistication of this is outside the scope of the document and varies from project to project, but you can check with the developer.

In either case, it is important to note there is a manual trigger provided to clear cache and/or re-index.

Depending on the type of project, for performance gains; data is that not frequently updated can be cached and for faster Search, Indeces maybe used.
When a ETL Bulk update is done, one can check for the latest update by clearing the cache or re-indexing. Caches impact navigations, or frequently/common display items, while Index impact Search. In some cases entire Search results for the website maybe cached. This differs from project to project, but the trigger to clear them lies with the Admin. For this reason these options are provided on the Catalog itself.
The system is designed to re-index every 2 hours by default automatically, however this number is configurable.

Items that are cached are also likely to be cached by the Browser session. When testing or checking if you do not see the updated items on the Site, you should try to clear your browser cache or use Private/Incognito mode. If you still fail to see updates then you can refer to the Trouble Shooting Guide.

Also note that Admin does not use the Cache or Index in any way. Caches and Indeces are for the front-end user facing site. Technically one can employ the use of caches for Admin but it is not recommended. This ensures that the Admin data is always accurate and current.

Read more about Fixing Old/Expired content here.

Frequently Asked Questions (FAQ)

  1. When the customer searches a product by colour, where does the information get picked from? Is it picked from the colour column of the master sheet of the keywords section? Every field is tightly mapped to the column in concern. So if you are FILTERING by colour it will for sure only pick from Colour. However if you are just doing a keyword search then the system will generalize the search and pick any searchable field, which includes keywords and tags.
  2. How does "Also available in" and "sizes" work? Each product is different, however products can be associated in many ways. One way is to use their Model (aka design) code. When products share the same design code, then ifthe colours differ or sizes differ the system will be able to pick that up. In come cases where you do not choose to degfine a design code we can also associate by Name of the product, but this can be brittle. Its best to use a model code so that these things can be well defined.
    Refer to section on Product Relations for more details.
  3. When I make a change to a product I do not see the changes immediately!?
    When I make a product New or Sale (or some status change), it does not appear on site?
    For performance reasons your project may employ any of the below or both:
    • Page level Client side Caching - The catalog search result / page result maybe cached by the browser for a session. You can try on another browser or clear your browser cache or try Chrome Incognito mode to verify this.
    • Indexing - If your project uses Indexing then please Re-Index
    • Products of Common Model type - Sometimes products that belong to the same model, some products in the model maybe updated and some not. For instance a new Model is out but some Sizes are Marked new and some not. While viewing a Product it maybe you are not viewing the one market so this can trick you into believing the product that you modified and seeing are the same but changes are not reflected, so you should verify the SKU or product code
  4. What kind of Sizes can I use? Sizes can be of three types:
    • Dimensional - 1D like 23 centimeters or 2D 34cm x 44cm or 3D 34cm x 77cm x 99cm.
    • Fit - Applicable for the fashion industry, where people use codes. The following codes are supported by the backend. Note, while the backend name is as given below the one presented to the user can be customized. Like SMALL can be "S" etc:
      • EXTRA_SMALL
      • SMALL
      • MEDIUM
      • LARGE
      • EXTRA_LARGE
      • XXL
    • Free String Format - Any custom word for each size. But when using this the application has to define how it works like any order of precdence within the coding etc must be custom defined.

Back to Top