SmartLists (2019 Update)

Setting up your own SmartList can be done quickly, and provide customization that allows for a tailor made experience.

ArticleDescription
Creating A SmartList


Follow through and create your own SmartList (Requires Admin Access)
Suggested SmartLists
View use cases for SmartList and understand the possibilities for application
Admin Details
Learn how SmartLists are created and automatically maintained
Building Your Logic & StatementsReference materials for building select statements/SQL queries. If set correctly, your back office staff can control SmartList content through maintaining values in your ERP system.
SmartList ValidationLearn how SmartLists are validated and kept working

Overview #


SmartLists are a powerful eCat feature that allows your company to define and publish self-maintaining product lists. These are custom built and can be made available to user’s iPads with just a few short steps:

Give the list a name, enter a statement to specify which items to include, then save it. Items matching your statement criteria will automatically show, and your SmartList will update itself as your catalogue changes.

Smart Stack Demo

To learn how SmartLists work in detail, or see examples and instruction, see the sections below.

Create Your Own SmartList #

  1. Click 'SmartList' on the admin portal SmartList page.
  2. Name the SmartList
  3. Enter a data select statement/SQL query to specify which items to include in the new list.

Screen Shot 2019 10 03 At 11 46 15 Am

Suggested SmartLists #

SmartLists are best used when working with dynamic lists or evolving needs. This feature can highlight new products, promotions, excess inventory, or a focused sales effort with ease.SmartLists are "smart" because they are self-maintaining, and the most popular use cases take advantage of this feature.

SmartLists automatically change based on the criteria in a data select statement. By creating your own logic, you can achieve a variety of results:

  • Publish special promotions, sales, closeouts
  • Display top sellers or top sellers by category
  • Show Introductions by Market
  • List products by showroom to help ordering & training
  • Show items available for quick shipment
  • Highlight recently added items
  • List items not shown in the print catalog
  • Group items to consolidate direct container shipments

Combine SmartLists with other eCat Features, like User Groups and Permissions, to empower your employees and help regulated your business practices.



Admin Detail #

As field values change in product and inventory files, the SmartList automatically changes based on the criteria in a data select statement/SQL query. While any desired product list can be displayed in an eCat SmartList, its availability can be restricted by User Group. This means lists can be selectively published.

SmartLists automatically display on the iPad when populated, and hide when empty.

SmartLists sort on the iPad in the same sequence in which they appear on the Admin site list.

The sort order in the Admin Console determines the sort order on the device.

Screen Shot 2019 10 02 At 3 55 49 Pm
I Pad Smart Stacks




As your company creates more SmartLists, you may have a need to organize how they are displayed. There are two ways to change the display sequence:

Click the ‘handle’ to the left of the name and drag it to the new position

For long lists, click the ‘Reorder Items’ button, enter new position numbers in the boxes that appear to the left of the name, then click the ‘Done Reordering’ button. The SmartLists will be moved to their new positions.

Edit SmartList settings by clicking the SmartList name, Delete them by selecting the button to the right of the SmartList name. (NOTE: Deletion is permanent)

Building A Statement #

Your SmartList is powered by criteria set by an Admin using a data select statement/SQL query. This section will cover how that can be built by defining terminology and providing helpful suggestions.

Custom product fields and standard fields from the products and inventory files can be used to define SmartLists. Custom fields are often created specifically for maintaining SmartLists.

For example, to create a showroom walk-through, create a custom field, e.g. 'room', and publish room/vignette numbers for all products shown in the showroom. Create a SmartList for each room using logic like: room = '1', room = '2', etc.


Using Logic #

Here are a few example SmartLists and associated logic (the fields and codes in your company's data may differ)

SmartList name Data Select Statement / SQL Query
Only One Left! promotionprice > 0 and qtyavailable = 1
Non-promo items,

30 day delivery
((qtyavailable + qtyintransit) - qtyonbackorder) > 0 and promotionprice < 1
Chairs - immediate shipment qtyavailable > 0 and categorycode = 'chair'
Seating priced under $450 net_price < 450 and category_code in ('chair','stool','bench','sofa')
Promo items not in showroom qtyinshowroom < 1 and promotionprice > 0
Series '2345' items on promotion baseitemcode like '%2345%' and promotionprice > 0
Products priced between $99 and $200. net_price > 99 and net_price < 200
30 Day Delivery – Dining Chairs ((qtyavailable + qtyintransit) - qtyonbackorder) > 0 and categorycode = 'DiningChair'
Top 10 sellers (simply listing baseitemcode numbers) baseitemcode in ('123','321','456','654','789','987','234','432','567','765')
Pots and Pans $15 and under (longdesc like '%pot%' or longdesc like '%pan%') and netprice <= 15
Purchase Orders due in next 7 days (to_date(onpo1_date, 'YYYY-MM-DD') - 7) < current_date and onpo1_date <> ''

Standard eCat field Names that can be used in SmartList Queries

Product Field Names Type

item_number

character varying(255)

long_description character varying(255)

plist_description

character varying(255)

short_description

character varying(255)

product_dimensions_in

character varying(50)

product_dimensions_cm

character varying(50)

shipping_weight

double precision

trade_name_code character varying(255)

category_code character varying(255)

collection_code character varying(255)

features character varying(50)

materials_description character varying(50)

minimum_order integer
units_per_carton

integer

product_volume double precision
new_item

boolean

net_price numeric(11,2)
promotional_price numeric(11,2)


Inventory Field Names Type

qty_available

bigint
qty_in_showroom

bigint

qty_in_transit

bigint
qty_on_backorder

bigint
qty_on_backorder

bigint
qty_on_hand

bigint
qty_on_p_order

bigint
qty_overseas

bigint
qty_reserved

bigint

next_scheduled_receipt_qty

bigint
scheduled receipt date?


SmartList Operators

Symbol Meaning/Purpose

= Equal
<> or != Not Equal
>
Greater than
<
Less than
>=
Greater than or equal
<= Less than or equal
!< True if left operand is not less than the value of right operand
!> True if left operand is not greater than the value of right operand
+ , - Arithmetic operators (used on numeric values)
::INTEGER Convert value to integer
NOT NULL Value not null
BETWEEN Select values within an inclusive range
LIKE Search for a pattern. (A '%' sign can be used
to define wildcards both before and after the pattern)
IN
Allows specifying multiple values
AND Allows specifying multiple conditions
NOT Reverses meaning of a logical
OR Used to combine multiple conditions



SmartList Validation #

SmartLists are checked when saved to ensure they will work correctly. This includes verifying that the SQL syntax is correct, fields referenced in the statements are available in the file, and data types are as expected. If problems are found, an error message will display to alert you that corrections should be made.

There are sometimes cases where SmartLists that work when they are first created might stop working correctly due to data changes. For example, this could happen when the SQL statement assumes that a field contains only numbers, but the field is changed to include other values, like text. So the SuperCat server periodically validates SmartLists and adds the comment "(not working)" if problems are found. When this happens, click the SmartList name to view the definition along with a more detailed error message.