Laddawn.com : Programming Doc - Web Search Results

Search Results
Clicking Find:
Validate panel
If ValidationPassed Then
Collapse Search
Run WebProductItem_GetByFilter
Select Case Returned Count
Case 0
GetMODItem
Case 1
GetMODItem
Case > 1
Create Broad Search Results
End
Run WebProductItem_YMAC
Display Results
Architecture Changes:
We will remove ProductItem, and move some of its properties to BaseProduct. We will add a new entity and call it WebProductItem. The search results will need to be based on this new object.
Use this object structure.
BaseProduct
WebProductItem
We are going to move the following properties from ProductItem to BaseProduct.

  • PartNumber
  • Class

1/13/14 (Judy):

Add the following selection to RPC$WEBPRODUCTITEM_GETBYFILTER:

If SHOP.MATERIAL = "LLD" - select with ITMMST< 38> matching what is in SHOP.SPECLLD

Properties to add to BaseProduct:

Property Name

Data Type

FieldName

ID

String

CPN

StockUOM

String

STOCK.UOM

Weight

Single

WEIGHT

PartNumber

String

PART.NBR

Description1

String

DESCRIPTION1

Description2

String

DESCRIPTION2

Description3

String

DESCRIPTION3

GenericName

String

GENERIC.NAME

Packaging

String

PACKAGING

Folded

Boolean

FOLDED

Material

String

MATERIAL

AntiStaticResin

String

ANTISTATIC.RESIN

AntiStaticMilSpec

String

ANTISTATIC.MILSPEC

AntiStaticPercent

Single

ANTISTATIC.PERCENT

LLD ResinStringSPECLLD

Metallocene

Boolean

METALLOCENE

MetallocenePercent

Single

METALLOCENE.PERCENT

Antiblock

Boolean

ANTIBLOCK

HighSlip

Boolean

HIGHSLIP

UVI

Boolean

UVI

UVIPct

Single

UVI.PCT

Color

String

COLOR

Opacity

String

OPACITY

Plate.Nbr

String

PLATE.NBR

ImageHeight

Single

IMAGE.HEIGHT

ImageWidth

Single

IMAGE.WIDTH

InkColor

String

INK.COLOR

PrintDirection

String

PRINT.DIRECTION

ReadOrientation

String

READ.ORIENTATION

HoleType

String

HOLE.TYPE

HolePlacement

String

HOLE.PLACEMENT

HoleSide

String

HOLE.SIDE

HoleCount

Integer

HOLE.COUNT

HoleFromSide

Single

HOLE.FROM.SIDE

HoleFromBottom

Single

HOLE.FROM.BOTTOM

FullGauge

Boolean

FULL.GAUGE

Width

Single

WIDTH

Depth

Single

DEPTH

Length

Single

LENGTH

Gauge

Single

GAUGE

SupplyCode

String

SUPPLY.CODE


WebProductItem
Properties:

AvailabilityDate

Date

DATE.AVAILABLE

Price

Single

UNIT.PRICE

Freight

String (Needs to support "Free @ $500")

FREIGHT

MinimumQty

Single

MIN.QTY

Methods:
GetByFilter – Calls RPC$WEBPRODUCTITEM_GETBYFILTER
Parameters

  • PageIndex
  • PageSize
  • SortFieldName
  • SortDirection (Ascend, Descend)
  • ContactID – Blank if anonymous user.
  • All the Search Field Values like we do for the Shop Widget Calls.

The search results will look different based on how many exact matches are returned from the search routines.

  • Broad Search Results is what is shown if there are multiple stock items that match the search parameters. This indicates that the user did not specify enough parameters to get a MOD product.
  • Single Stock Match Results is what is shown when we find 1 exact stock match. This may also include an exact MOD item if it is possible.
  • No stock Match results. Includes a MOD item if possible, and YMAC (You Might Also Consider) or close matches.



Broad Search Results
Visual Design can be found at: https://laddawn1.atlassian.net/wiki/download/attachments/2555970/Laddawn_BroadSearches_Scenario2_Rev5.png?version=1&modificationDate=1344739066661&api=v2
Elements:

  • MOD message at the top
  • User selectable page size.
  • Sort Field Buttons
    • Clicking on a Sort Field button Sets the Sort Field
      • SortField = Button clicked, swap sort direction
      • SortField <> Button Clicked Set SortField & Sort Direction = Ascend
  • Items Per Page links:
    • The number they click becomes the page size returned from the RPC.
    • Clicking on View All sets the page size to 500,
  • Details Link:
  • Units Dropdown:
    • Available Options in Dropdown:
      • LB
      • Stocking UOM from UOM property on WebProductItem
      • Thou (Our abbreviation for Thousand)
    • WebProductItem will hold the weight & Packout.
      • If the user chooses:
        • LB: we will divide the price by the weight and round to three decimal places. We do the same to the qty.
        • Thou, we will divide the price by the packout and * by 1000. We will do the same to the qty.
  • Price per Unit: For logged in users they will see the price for the given quantity. For anonymous users they will see a link that says "log in to see prices".
  • Available Date link: Will bring up a shadow box explaining the details of the availability that has yet to be designed.
  • Share Link: Will bring up a shadow box to item sharing. It has yet to be designed.
  • Save Link: Brings up a Shadow box for Item Saving to be designed later.
  • Price Breaks Link: Brings up a shadow box like the one found here: https://laddawn1.atlassian.net/wiki/download/attachments/589829/PB%20shadow%20stock.png?version=1&modificationDate=1345217916295&api=v2