ItemInquiry

ItemInquiry.asmx

Unlike most Elliott web services which are based on PSQL transactional engine, this web service is based on PSQL relational engine.

 SearchItem

This method uses input fields as a filter to build a SQL command to query the item master table (IMITMFIL), then returns search result. The quantity information returned in this method is from the item master table only. If you wish to retrieve other locations or even multiple locations’ quantity, you should use SearchItemMultipleLocation method.

Usage:

Output = A.SearchItem(UserName, UserPassword, detailLevel, itemNo, customerNo, prodCat, itemDesc, note1, note2, note3, note4, note5, userDefinedCode, materialCostType, vendorNo, buyerAnalyst, minimumPrice, maximumPrice, webFlag, searchFieldValue, searchFieldColumn, orderBy, numberOfRecords, additionalWhereClause, returnPriceTable)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameter

All input parameters for this method are optional. If no parameter’s value is provided, then all items with “Brief” format will be returned. Any additional parameter’s value provided will act as “AND” condition filter to narrow down the item dataset.

 

You have the option to use standard or custom filters for searching purposes. The following are standard filters:

·        itemNo

·        prodCat

·        itemDesc

·        note1

·        note2

·        note3

·        note4

·        note5

·        userDefinedCode

·        materialCostType

·        vendorNo

·        buyerAnalyst

·        minimumPrice

·        maximumPrice

 

Some of these filters use “equal” search and some use “like” search. You may convert the “equal” search to become a “like” search. The “like” search, by default,  is a “contain” search. You can also make it  a “beginning match” or “ending match” search.

For example, itemNo uses equal search by default. If you pass “ABC” to itemNo, this method will produce a SQL statement WHERE clause like the following:

                ... WHERE ITEM_NO = ‘ABC’

You can also combine your value with “%” to covert it to “like” search. For example, if you pass “ABC%” to itemNo, this method will produce the following WHERE clause:

                ... WHERE ITEM_NO LIKE ‘ABC%’

For those of you who know SQL syntax, this is a beginning match search.

 

As another example, prodCat uses “like” search. If you pass a value “AB,” this method will produce a contain search like the following WHERE clause:

                ... WHERE ITEM_PROD_CAT LIKE ‘%AB%’

If you would rather use a beginning match or ending match search, you may pass a value that contains the “%” like “AB%” or “%AB.” Then this method will not add the beginning and ending “%” to your passed value, thus producing the following WHERE clause:

                ... WHERE ITEM_PROD_CAT LIKE ‘AB%’, or

                ... WHERE ITEM_PROD_CAT LIKE ‘%AB’

 

If you need to search items based on filters other than the above filter, then you may use custom filters by specifying the following two parameters:

·        searchFieldColumn

·        searchFieldValue

Values in the custom filters will be matched by “like” search. By using custom filters, the standard filters will be ignored. For example, you may pass “ITEM_END_ITEM_CD ITEM_PROD_CAT” to searchFieldColumn, and “K ABC” to searchFieldValue. This will result in the following WHERE clause:

WHERE ITEM_END_ITEM_CD LIKE ‘%K%’ AND ITEM_PROD_CAT LIKE “%ABC%”

 

 

Parameter Name

Type

Detail

detailLevel

String

The method can return item data set from minimum to full detail. This may not be as important if both web services and web application reside in the same local area network. On the other hand, when a large amount of item data is returned over the Internet, it could result in slower performance. Therefore, choosing the appropriate detail level may help performance. The default value is “B” (Brief). Possible values are I, D, M, B, R, E, F and C. Please see “Columns in Data Table Items”” for more detail.

itemNo

String

This field uses “equal” search by default.

customerNo

String

If you provide customer number in this field, this method will return customer’s price on each item in the return structure.

prodCat

String

This field uses “like” search.

itemDesc

String

This method will search for item description 1 and 2 using “like” search.

note1

String

This field uses “like” search.

note2

String

This field uses “like” search.

note3

String

This field uses “like” search.

note4

String

This field uses “like” search.

note5

String

This field uses “like” search.

userDefinedCode

String

This field uses “like” search.

materialCostType

String

This field uses “like” search.

vendorNo

String

This field uses “like” search.

buyerAnalyst

String

This field uses “like” search.

minimumPrice

Double

The minimum price for searched item.

maximumPrice

Double

The maximum price for searched item.

webFlag

String

Defaults to “Y” which means only the items where “94. Web Item Flag” is set to “Y” will be in the return item data set. You can set this value to “A” which means to search all items, or “N” which means to search only non web items.

searchFieldColumn

String

User can perform LIKE search on multiple columns with AND condition by separating each column with a space.

Please see “Columns in IMITMFIL” for available searchable columns.

searchFieldValue

String

This field should be used together with searchFieldColumn.

For each search column, user should pass a corresponding search value separated by a space.

orderBy

String

This field can be any column in database table IMITMFIL. Please see “Columns in IMITMFIL” for available values. Multiple ORDER BY columns and ascending/descending sequence are possible. For example, you may pass a value like “ITEM_PROD_CAT, ITEM_PRICE DESC” which will result in ORDER BY clause “ORDER BY ITEM_PROD_CAT, ITEM_PRICE DESC.”

numberOfRecords

Integer

Maximum number of records in output.

additionalWhereClause

String

The value passed here will be appended to the WHERE clause with AND condition.

returnPriceTable

String

“N” (Default)

“Y”: will create a price table in output DataSet (table name=“CustomerPrice”). This is only necessary if giving volume discount based on quantity break. Otherwise, you can rely on the returned column CUSTOMER_PRICE.

 

Columns in IMITMFIL

·        ITEM_NO

·        ITEM_DESC1

·        ITEM_DESC2

·        ITEM_PROD_CAT

·        ITEM_USER_DEF_CD

·        ITEM_MFG_LOC

·        ITEM_QTY_ON_HAND

·        ITEM_QTY_ALLOC

·        ITEM_QTY_BO

·        ITEM_QTY_ON_ORDER_O

·        ITEM_ORDER_UP_TO_LVL

·        ITEM_REORDER_LEVEL

·        ITEM_AVG_COST

·        ITEM_PRICE

·        ITEM_PRICE_UOM

·        ITEM_PRICE_RATIO

·        ITEM_WEIGHT

·        ITEM_UOM

·        ITEM_PICK_SEQ

·        ITEM_BO_FG

·        ITEM_TXBL_FG

·        ITEM_END_ITEM_CD

·        ITEM_START_SALE_DATE

·        ITEM_END_SALE_DATE

·        ITEM_SALE_PRICE

·        ITEM_PRICES_APPLY_FG

·        ITEM_DISC_APPLY_FG

·        ITEM_USAGE_PTD

·        ITEM_USAGE_YTD

·        ITEM_PRIOR_YR_USE

·        ITEM_PRIOR_YR_SALES

·        ITEM_QTY_RTRND_YTD

·        ITEM_QTY_SOLD_PTD

·        ITEM_QTY_SOLD_YTD

·        ITEM_SALES_PTD

·        ITEM_SALES_YTD

·        ITEM_COST_PTD

·        ITEM_COST_YTD

·        ITEM_REC_MIN_ORDER

·        ITEM_ECON_ORDER_QTY

·        ITEM_AVG_USAGE

·        ITEM_USAGE_WGHT_FCTR

·        ITEM_SAFETY_STOCK

·        ITEM_SAFETY_FACTR

·        ITEM_AVG_FRCST_ERR

·        ITEM_SUM_OF_ERRORS

·        ITEM_USAGE_FILTER

·        ITEM_LEAD_TIME

·        ITEM_MAT_TYPE

·        ITEM_SUBSTITUTE

·        ITEM_LAST_COST

·        ITEM_STD_COST

·        ITEM_PRIME_VEND_NO

·        ITEM_ORDER_MINIMUM

·        ITEM_ORDER_MULTIPLE

·        ITEM_TARGET_MARGIN

·        ITEM_PUR_UOM

·        ITEM_WEB_ITEM_FLG

·        FILLER_0001

·        ITEM_DATE_LAST_SOLD

·        ITEM_QTY_LAST_SOLD

·        ITEM_P_AND_IC_CD

·        ITEM_ACTIVITY_CD

·        ITEM_STOCKED_FG

·        ITEM_CONTROLLED_FG

·        ITEM_PUR_OR_MFG_CD

·        ITEM_MS_ITEM_FG

·        ITEM_INV_CLASS

·        ITEM_CYCLE_CNT_CD

·        ITEM_DATE_LAST_CNTD

·        ITEM_COMMODITY_CD

·        ITEM_BUYER_ANALYST

·        ITEM_DRAWING_REL_NO

·        ITEM_DRAWING_REV_NO

·        ITEM_ROUTING_REL_NO

·        ITEM_ROUTING_REV_NO

·        ITEM_ROUTING_NO

·        ITEM_ORDER_POLICY_CD

·        ITEM_PLAN_PERIOD

·        ITEM_PLAN_LEAD_TIME

·        ITEM_PLAN_ORDER_MULT

·        ITEM_MRP_TIME_FENCE

·        ITEM_MRP_LOC_QTY_OH

·        ITEM_STOCK_STS_CD

·        ITEM_LOW_LEVEL_CD

·        ITEM_ACTIVE_ORDERS

·        ITEM_CUTOFF_QTY

·        ITEM_PCT_ERR_LST_CNT

·        ITEM_COMM_PCT_OR_AMT

·        ITEM_CALC_COMM_TYPE

·        ITEM_SERIAL_LOT_FG

·        ITEM_SER_WAR_DAYS

·        ITEM_PUR_INV_RATIO

·        ITEM_DESC_SEARCH

·        ITEM_QTY_ON_ORDER

·        ITEM_NOTE_1

·        ITEM_NOTE_2

·        ITEM_NOTE_3

·        ITEM_NOTE_4

·        ITEM_NOTE_5

·        ITEM_USER_DATE

·        ITEM_USER_AMOUNT

·        ITEM_LAND_CST_FACTOR

·        ITEM_LST_REORDER_LVL

·        ITEM_NXT_ATP_PLN_DT

·        ITEM_INV_AGE_DAYS

·        ITEM_CREATE_DT

·        ITEM_LST_OUT_OF_STK_

·        ITEM_1ST_RECV_DT

·        ITEM_LST_RECV_DT

·        ITEM_1ST_SOLD_DT

·        ITEM_MIN_PRICE

·        OP10_FILLER

·        SAID_FILLER

·        ITEM_FRZ_QTY_ON_HAND

·        ITEM_FRZ_COST

·        ITEM_KIT_PRC_ROLLUP

·        ITEM_FEA_PRC_OPT

·        ITEM_LAND_FIX_COST

·        ITEM_VOLUME

·        ITEM_DUTY_PERCENT

·        ITEM_AVG_COST_2

·        ITEM_STD_COST_2

·        ITEM_LAST_COST_2

·        ITEM_USER_LAST_ACCES

·        ITEM_DATE_LAST_ACCES

·        ITEM_STYLE_CODE

·        ITEM_MOSTLY_PUR_MFG

·        ITEM_LINE_TAX_FLAG1

·        ITEM_LINE_TAX_FLAG2

·        ITEM_LINE_TAX_FLAG3

·        FILLER_002

 

Output Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

NumberOfRecordsFound

Integer

Number of records in “Items” DataTable.

Items

DataSet

Contains a DataTable name=“Items”.

If returnPriceTable=“Y”, this DataSet will also contain a DataTable name=“CustomerPrice”.

Please see the following section for columns in those two DataTables.

 

Columns in Items DataTable

The method can return item data set from minimum to full detail. The size of the dataset may affect web application performance. Especially if the web services and web application servers are not in the same local area network (e.g. cross over the Internet). So based on the “detailLevel”, this web services will return different level of details (columns) accordingly. The default detailLevel value is “B” (Brief).

 

CUSTOMER_PRICE column will only appear when input customerNo is not blank.

detailLevel

Columns in DataTable “Items”

I

ITEM_NO, CUSTOMER_PRICE

D

ITEM_NO, ITEM_DESC1, ITEM_DESC2, CUSTOMER_PRICE

M

ITEM_NO, ITEM_DESC1, ITEM_DESC2, ITEM_PROD_CAT, ITEM_PRICE, ITEM_WEIGHT, ITEM_QTY_AVL, ITEM_PRICE_RATIO, CUSTOMER_PRICE

B

(Default)

ITEM_NO, ITEM_DESC1, ITEM_DESC2, ITEM_PROD_CAT, ITEM_USER_DEF_CD, ITEM_PRICE, ITEM_WEIGHT, ITEM_PRICE_UOM, ITEM_START_SALE_DATE, ITEM_END_SALE_DATE, ITEM_SALE_PRICE, ITEM_USER_AMOUNT, ITEM_QTY_AVL, ITEM_PRICE_RATIO, CUSTOMER_PRICE

R

ITEM_NO, ITEM_DESC1, ITEM_DESC2, ITEM_PROD_CAT, ITEM_USER_DEF_CD, ITEM_MFG_LOC, ITEM_QTY_ON_HAND, ITEM_QTY_ALLOC, ITEM_QTY_ON_ORDER_O, ITEM_PRICE, ITEM_WEIGHT, ITEM_PRICE_UOM, ITEM_PICK_SEQ, ITEM_START_SALE_DATE, ITEM_END_SALE_DATE, ITEM_SALE_PRICE, ITEM_SUBSTITUTE, ITEM_ACTIVITY_CD, ITEM_SERIAL_LOT_FG, ITEM_NOTE_1, ITEM_NOTE_2, ITEM_NOTE_3 , ITEM_NOTE_4, ITEM_NOTE_5, ITEM_USER_DATE, ITEM_USER_AMOUNT, ITEM_VALUME, ITEM_QTY_AVL, ITEM_PRICE_RATIO, CUSTOMER_PRICE

E

ITEM_NO, ITEM_DESC1, ITEM_DESC2, ITEM_PROD_CAT, ITEM_USER_DEF_CD, ITEM_MFG_LOC, ITEM_QTY_ON_HAND, ITEM_QTY_ALLOC, ITEM_QTY_BO, ITEM_QTY_ON_ORDER_O, ITEM_AVG_COST, ITEM_PRICE, ITEM_PRICE_UOM, ITEM_PRICE_RATIO, ITEM_WEIGHT, ITEM_UOM, ITEM_PICK_SEQ, ITEM_BO_FG, ITEM_TXBL_FG, ITEM_START_SALE_DATE, ITEM_END_SALE_DATE, ITEM_SALE_PRICE, ITEM_USAGE_PTD, ITEM_USAGE_YTD, ITEM_SALES_PTD, ITEM_SALES_YTD, ITEM_COST_PTD, ITEM_COST_YTD, ITEM_LEAD_TIME, ITEM_MAT_TYPE, ITEM_SUBSTITUTE, ITEM_LAST_COST, ITEM_STD_COST, ITEM_PRIME_VEND_NO, ITEM_ORDER_MINIMUM, ITEM_ORDER_MULTIPLE, ITEM_PUR_UOM, ITEM_DATE_LAST_SOLD, ITEM_QTY_LAST_SOLD, ITEM_ACTIVITY_CD, ITEM_STOCKED_FG, ITEM_CONTROLLED_FG, ITEM_PUR_OR_MFG_CD, ITEM_INV_CLASS, ITEM_CYCLE_CNT_CD, ITEM_DATE_LAST_CNTD, ITEM_COMMODITY_CD, ITEM_BUYER_ANALYST, ITEM_COMM_PCT_OR_AMT, ITEM_CALC_COMM_TYPE, ITEM_SERIAL_LOT_FG, ITEM_SER_WAR_DAYS, ITEM_PUR_INV_RATIO, ITEM_NOTE_1, ITEM_NOTE_2, ITEM_NOTE_3, ITEM_NOTE_4, ITEM_NOTE_5, ITEM_USER_DATE, ITEM_USER_AMOUNT, ITEM_VOLUME, ITEM_AVG_COST_2, ITEM_STD_COST_2, ITEM_LAST_COST_2, ITEM_USER_LAST_ACCES, ITEM_DATE_LAST_ACCES, ITEM_STYLE_CODE, ITEM_MOSTLY_PUR_MFG, ITEM_QTY_AVL, CUSTOMER_PRICE

F

ITEM_NO, ITEM_DESC1, ITEM_DESC2, ITEM_PROD_CAT, ITEM_USER_DEF_CD, ITEM_MFG_LOC, ITEM_QTY_ON_HAND, ITEM_QTY_ALLOC, ITEM_QTY_BO, ITEM_QTY_ON_ORDER_O, ITEM_ORDER_UP_TO_LVL, ITEM_REORDER_LEVEL, ITEM_AVG_COST, ITEM_PRICE, ITEM_PRICE_UOM, ITEM_PRICE_RATIO, ITEM_WEIGHT, ITEM_UOM, ITEM_PICK_SEQ, ITEM_BO_FG, ITEM_TXBL_FG, ITEM_END_ITEM_CD, ITEM_START_SALE_DATE, ITEM_END_SALE_DATE, ITEM_SALE_PRICE, ITEM_PRICES_APPLY_FG, ITEM_DISC_APPLY_FG, ITEM_USAGE_PTD, ITEM_USAGE_YTD, ITEM_PRIOR_YR_USE, ITEM_PRIOR_YR_SALES, ITEM_QTY_RTRND_YTD, ITEM_QTY_SOLD_PTD, ITEM_QTY_SOLD_YTD, ITEM_SALES_PTD, ITEM_SALES_YTD, ITEM_COST_PTD, ITEM_COST_YTD, ITEM_REC_MIN_ORDER, ITEM_ECON_ORDER_QTY, ITEM_AVG_USAGE, ITEM_USAGE_WGHT_FCTR, ITEM_SAFETY_STOCK, ITEM_SAFETY_FACTR, ITEM_AVG_FRCST_ERR, ITEM_SUM_OF_ERRORS, ITEM_USAGE_FILTER, ITEM_LEAD_TIME, ITEM_MAT_TYPE, ITEM_SUBSTITUTE, ITEM_LAST_COST, ITEM_STD_COST, ITEM_PRIME_VEND_NO, ITEM_ORDER_MINIMUM, ITEM_ORDER_MULTIPLE, ITEM_TARGET_MARGIN, ITEM_PUR_UOM, FILLER_0001, FILLER_002, ITEM_DATE_LAST_SOLD, ITEM_QTY_LAST_SOLD, ITEM_P_AND_IC_CD, ITEM_ACTIVITY_CD, ITEM_STOCKED_FG, ITEM_CONTROLLED_FG, ITEM_PUR_OR_MFG_CD, ITEM_MS_ITEM_FG, ITEM_INV_CLASS, ITEM_CYCLE_CNT_CD, ITEM_DATE_LAST_CNTD, ITEM_COMMODITY_CD, ITEM_BUYER_ANALYST, ITEM_DRAWING_REL_NO, ITEM_DRAWING_REV_NO, ITEM_ROUTING_REL_NO, ITEM_ROUTING_REV_NO, ITEM_ROUTING_NO, ITEM_ORDER_POLICY_CD, ITEM_PLAN_PERIOD, ITEM_PLAN_LEAD_TIME, ITEM_PLAN_ORDER_MULT, ITEM_MRP_TIME_FENCE, ITEM_MRP_LOC_QTY_OH, ITEM_STOCK_STS_CD, ITEM_LOW_LEVEL_CD, ITEM_ACTIVE_ORDERS, ITEM_CUTOFF_QTY, ITEM_PCT_ERR_LST_CNT, ITEM_COMM_PCT_OR_AMT, ITEM_CALC_COMM_TYPE, ITEM_SERIAL_LOT_FG, ITEM_SER_WAR_DAYS, ITEM_PUR_INV_RATIO, ITEM_DESC_SEARCH, ITEM_QTY_ON_ORDER, ITEM_NOTE_1, ITEM_NOTE_2, ITEM_NOTE_3, ITEM_NOTE_4, ITEM_NOTE_5, ITEM_USER_DATE, ITEM_USER_AMOUNT, ITEM_LAND_CST_FACTOR, OP10_FILLER, SAID_FILLER, ITEM_FRZ_QTY_ON_HAND, ITEM_FRZ_COST, ITEM_KIT_PRC_ROLLUP, ITEM_FEA_PRC_OPT, ITEM_LAND_FIX_COST, ITEM_VOLUME, ITEM_DUTY_PERCENT, ITEM_AVG_COST_2, ITEM_STD_COST_2, ITEM_LAST_COST_2, ITEM_USER_LAST_ACCES, ITEM_DATE_LAST_ACCES, ITEM_STYLE_CODE, ITEM_MOSTLY_PUR_MFG, ITEM_QTY_AVL, CUSTOMER_PRICE

C

ITEM_NO, ITEM_QTY_AVL, ITEM_PRICE_RATIO, CUSTOMER_PRICE

 

CustomerPrice DataTable

If returnPriceTable=“Y”, the Items DataSet will also contain a DataTable name=“CustomerPrice”. The following are the columns in this table:

·        CustomerPrice

·        OnSaleFlag

·        DiscountPercent

·        PriceCodeFound

·        PRICE_CD_TYPE

·        PRICE_CD_PRICE_BASIS

·        PRICE_CD_MIN_QTY_1

·        PRICE_CD_PRCDSC_1

·        PRICE_CD_MIN_QTY_2

·        PRICE_CD_PRCDSC_2

·        PRICE_CD_MIN_QTY_3

·        PRICE_CD_PRCDSC_3

·        PRICE_CD_MIN_QTY_4

·        PRICE_CD_PRCDSC_4

·        PRICE_CD_MIN_QTY_5

·        PRICE_CD_PRCDSC_5

·        PRICE_CD_MIN_QTY_6

·        PRICE_CD_PRCDSC_6

·        PRICE_CD_MIN_QTY_7

·        PRICE_CD_PRCDSC_7

·        PRICE_CD_MIN_QTY_8

·        PRICE_CD_PRCDSC_8

·        PRICE_CD_MIN_QTY_9

·        PRICE_CD_PRCDSC_9

·        PRCE_CD_MIN_QTY_10

·        PRCE_CD_PRCDSC_10

 

Code Example (VB)

The following sample code will search for item number “ITEM001” and display its item description 1.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry

Dim Result As New webServicesItemInquiry.SearchItemResult

Result = wsItemInfo.SearchItem("", "", "M", "ITEM001", "", "", "", "", "", "", "", "", "", "", "", "", 0, 0, "A", "", "", "", 0, "", "N")

If Result.ReturnCode = 0 Then

lblResult.Text = _

Result.Items.Tables(0).Rows(0).Item("ITEM_DESC1").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "Item not found"

Else

lblResult.Text = Result.ReturnCode.ToString

End If

 

SearchItemMultipleLocation

In ItemSearch method, the quantity information returned is from the item master table which is the default location. The SearchItemMultipleLocation method is similar to SearchItem method. The difference is you can retrieve quantity from one default location, or multiple locations. If the location is not provided, then it behaves the same as SearchItem method.

Just to give an example on why you may wish to use the method, a user has two warehouse locations “C1” and “C2”. “C1” is the main warehouse. “C2” is the overstock warehouse that’s close by “C1”. When presenting the available quantity information on the web, this user would like to combine both “C1” and “C2” locations together.

Usage:

Output = A.SearchItemMultipleLocation(UserName, UserPassword, detailLevel, itemNo, customerNo, prodCat, itemDesc, note1, note2, note3, note4, note5, userDefinedCode, materialCostType, vendorNo, buyerAnalyst, minimumPrice, maximumPrice, webFlag, searchFieldValue, searchFieldColumn, orderBy, numberOfRecords, additionalWhereClause, returnPriceTable, location, userDefinedReturnColumns)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameter

Parameter Name

Type

Detail

detailLevel

String

Possible values are U, I, D, M, B, R, E, F and C.

If you set this field to “U”, you can customize output columns in userDefinedReturnColumns.

For other values, please see Input Parameter for SearchItem method.

itemNo

String

See Input Parameter for SearchItem method.

customerNo

String

See Input Parameter for SearchItem method.

prodCat

String

See Input Parameter for SearchItem method.

itemDesc

String

See Input Parameter for SearchItem method.

note1

String

See Input Parameter for SearchItem method.

note2

String

See Input Parameter for SearchItem method.

note3

String

See Input Parameter for SearchItem method.

note4

String

See Input Parameter for SearchItem method.

note5

String

See Input Parameter for SearchItem method.

userDefinedCode

String

See Input Parameter for SearchItem method.

materialCostType

String

See Input Parameter for SearchItem method.

vendorNo

String

See Input Parameter for SearchItem method.

buyerAnalyst

String

See Input Parameter for SearchItem method.

minimumPrice

Double

See Input Parameter for SearchItem method.

maximumPrice

Double

See Input Parameter for SearchItem method.

webFlag

String

See Input Parameter for SearchItem method.

searchFieldValue

String

See Input Parameter for SearchItem method.

searchFieldColumn

String

See Input Parameter for SearchItem method.

orderBy

String

Can be any field in IMITMFIL. Default to “ITEM_NO”.

Multiple ORDER BY columns and ascending/descending sequence are possible.

numberOfRecords

Integer

Maximum number of records in output. This is to avoid a return of big dataset for performance consideration.

additionalWhereClause

String

The value passed here will be appended to the WHERE clause with AND condition.

returnPriceTable

String

See Input Parameter for SearchItem method.

location

String

You can return one or multiple locations’ quantity with this method by using a single space or a comma to divide each location. If not provided, the default location’s quantity is returned which makes this method behave like the SearchItem method.

userDefinedReturnColumns

String

Only works when detailLevel = “U”. Use a single space or comma to separate the columns you want to return to DataTable “Item”.

 

Output Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

NumberOfRecordsFound

Integer

Number of records.

Items

DataSet

See Output Structure of SearchItem method.

 

Code Example (VB)

The following sample code will search for item “ITEM001” with locations 01, 02, 03 and 04.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New _

    webServicesItemInquiry. SearchItemMultipleLocationResult

Result = wsItemInfo. SearchItemMultipleLocation("", "", "M", “ITEM001”, "", "", "", "", "", "", "", "", "", "", "", "", 0, 0, "A", "", "", "", 0, "", "N", "01 02 03 04", "")

If Result.ReturnCode = 0 Then

lblResult.Text = _

Result.Items.Tables(0).Rows(0).Item("ITEM_DESC1").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "Item not found"

Else

lblResult.Text = Result.ReturnCode.ToString

End If

 

GetIMCodes

This method returns certain I/M (Inventory Management) Codes including product category, user defined code, material cost type and buyer code.

For example, the Elliott eStore needs to use the Product Category table for navigation purposes, so it needs to use this method to get a list of Elliott product categories to construct the navigation scheme on the eStore website.

Usage:

Output = A.GetIMCodes(userName, Password, GetProductCategories, GetUserDefinedCodes, GetMatCstType, GetBuyerCodes, GetDistinctValues)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

GetProductCategories

String

“A”: Get all product categories.

“Y”: Get WebFlag = “Y” product categories.

“N” (or blank): Do not get product category.

GetUserDefinedCodes

String

“N” (or blank): Do not get user defined code.

Other: Get all user defined codes.

GetMatCstTypes

String

“N” (or blank): Do not get material cost type.

Other: Get all material cost types.

GetBuyerCodes

String

“N” (or blank): Do not get buyer code.

Other: Get all buyer codes.

GetDistinctValues

String

“N” (or blank): Do not get distinct values.

Other: Provide one ore more columns in IMITMFIL in this field using comma as the separator.

For example, if you provide “ITEM_PROD_CAT, ITEM_USER_DEF_CD” in this field, since it has two columns, so it will result in the two SQL statements: “SELECT DISTICNT ITEM_PROD_CAT FROM IMITMFIL” and “SELECT DISTICNT ITEM_USER_DEF_CD FROM IMITMFIL”. Then the result will be returned to two different datasets in DistinctValues() array.

 

GetIMCodesResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ProductCategories

DataSet

Has a DataTable “ProductCategories”, which contains the following columns from database table IMCATFIL:

PROD_CATEGORY

PROD_CAT_DESC

PROD_CAT_PRINT_BOL

PROD_CAT_LABEL_FLG

PROD_CAT_HIDE_COST

PROD_CAT_WEB_FLG

FILLER_0001

UserDefinedCodes

DataSet

Has a DataTable “UserDefinedCodes”, which contains the following columns from database table IMUSRDEF:

USER_DEF_CODE

USER_DEF_DESC_1

USER_DEF_CODE_CLASS

USER_HAZARD_MATERIAL

USER_DEF_ERG_NO

FILLER_0001

FILLER_0002

MatCstTypes

DataSet

Has a DataTable “MatCstTypes”, which contains the following columns from database table IMMATCST:

MAT_COST_TYPE

MAT_COST_DESC

FILLER_0001

BuyersCodes

DataSet

Has a DataTable “BuyerCodes”, which contains the following columns from database table APCDEFIL_BYR:

AP_CODE_TYPE_3

BUYER_CODE

BUYER_NAME

FILER_1

DistinctValues()

DataSet

An array of dataset, each dataset has a DataTable (name = “DistinctValues”) with the values of queried column in GetDistinctValues string.

ItemNotes

DataSet

Not used.

 

The following sample codes return all product categories in the dataset.

Code Example (VB)

The following example codes will get product categories.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetIMCodesResult

Result = wsItemInfo.GetIMCodes(“”,“”,“A”,“”,“”,“”,“”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _ 

Result.ProductCategories.Tables(0).Rows(0).Item("PROD_CATEGORY").ToString

Else

  lblResult.Text = "Error Getting Category (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetItemAttrib

The method will retrieve attribute values for one or more items. This includes the value in SYATRFIL (Attribute Master) and SYATTRIB (Attribute Data). Attributes are often used to add extended information, like specification, to an item which can then be displayed as item catalog on the website.

Usage:

GetItemAttribResult = A.GetItemAttrib(userName, Password, itemNo, webFlag, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

itemNo

String

Required. By default, the value will be matched by “equal” search. (Refer to SearchItem method for the explanation of “equal” search)

webFlag   

String

Default to “Y”which means only the attributes with webflag = “Y” will be in the returned data set. You can set this value to “A” to search for all attributes, or “N” to search for only attributes with webflag = “N”.

orderBy

String

This can be blank or any one or multiple columns in SYATTRIB or SYATRFIL database tables. For example, if you provide the value “ATTRIB_CODE DESC”, it will result in the SQL statement with “ORDER BY ATTRIB_CODE DESC”. orderBy only affects the result in SYATTRIB DataTable.

 

GetItemAttribResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ItemAttributes

DataSet

Includes two DataTables: “SYATTRIB” and “SYATRFIL”. The SYATTRIB DataTables contains applicable attributes from this item. The “SYATRFIL” contains all attribute master records. See the following sections for columns in the DataTables.

 

Columns in SYATTRIB DataTable

This DataTable contains all the attributes of the specific item.

·        ATTRIB_FILENAME

·        ATTRIB_REF_NUMBER

·        ATTRIB_CODE

·        ATTRIB_REF_1

·        ATTRIB_REF_2

·        ATTRIB_REF_3

·        ATTRIB_REF_4

·        ATTRIB_REF_5

·        ATTRIB_DATE_1

·        ATTRIB_DATE_2

·        ATTRIB_DATE_3

·        ATTRIB_AMT_1

·        ATTRIB_AMT_2

·        ATTRIB_AMT_3

·        ATTRIB_CREATE_DATE

·        ATTRIB_CREATE_TIME

·        ATTRIB_CREATE_BY

·        ATTRIB_MODIFY_DATE

·        ATTRIB_MODIFY_TIME

·        ATTRIB_MODIFY_BY

·        ATTRIB_CHKBOX_1

·        ATTRIB_CHKBOX_2

·        ATTRIB_CHKBOX_3

·        ATTRIB_COUNTER

·        ATTRIB_FILLER

 

Columns in SYATRFIL DataTable

This SYATRFIL DataTable contains a list of all attribute master records and is not necessarily limited to the input itemNo.

·        SYATRFIL_CODE

·        SYATRFIL_DESC_1

·        SYATRFIL_DESC_2

·        SYATRFIL_REF_1_FLAG

·        SYATRFIL_REF_1_LIT

·        SYATRFIL_REF_2_FLAG

·        SYATRFIL_REF_2_LIT

·        SYATRFIL_REF_3_FLAG

·        SYATRFIL_REF_3_LIT

·        SYATRFIL_REF_4_FLAG

·        SYATRFIL_REF_4_LIT

·        SYATRFIL_REF_5_FLAG

·        SYATRFIL_REF_5_LIT

·        SYATRFIL_DATE_1_FLAG

·        SYATRFIL_DATE_1_LIT

·        SYATRFIL_DATE_2_FLAG

·        SYATRFIL_DATE_2_LIT

·        SYATRFIL_DATE_3_FLAG

·        SYATRFIL_DATE_3_LIT

·        SYATRFIL_AMT_1_FLAG

·        SYATRFIL_AMT_1_LIT

·        SYATRFIL_ATM_2_FLAG

·        SYATRFIL_AMT_2_LIT

·        SYATRFIL_AMT_3_FLAG

·        SYATRFIL_AMT_3_LIT

·        SYATRFIL_HLD_ORD1

·        SYATRFIL_GRACE_PRD1

·        SYATRFIL_HLD_ORD2

·        SYATRFIL_GRACE_PRD2

·        SYATRFIL_HLD_ORD3

·        SYATRFIL_GRACE_PRD3

·        SYATRFIL_PRIME_FLD1

·        SYATRFIL_PRIME_FLD2

·        SYATRFIL_WEB_FLG

·        SYATRFIL_CHKBOX1_FLG

·        SYATRFIL_CHKBOX1_LIT

·        SYATRFIL_CHKBOX2_FLG

·        SYATRFIL_CHKBOX2_LIT

·        SYATRFIL_CHKBOX3_FLG

·        SYATRFIL_CHKBOX3_LIT

·        SYATRFIL_FILLER

 

Code Example (VB)

The following sample code will return the attribute information of item number “ITEM001”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry. GetItemAttribResult

Result = wsItemInfo.GetItemAttrib(“”,“”,“ITEM001”,“”,“”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

      Result.ItemAttributes.Tables(“SYATTRIB”).Rows(0).Item("ATTRIB_AMT_1").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No attribute found”

Else

  lblResult.Text = "Error Getting Attribute (Error Code " & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetItemNote

This method will return the notes for one or more items. Since Elliott item master description 1 and 2 are 30 characters each and fairly limited to describe the item for the web catalog purpose, Notes are often used to add additional description for the item.

Usage:

GetItemNoteResult = A.GetItemNote(userName, Password, itemNo, webFlag, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter

Type

Detail

itemNo

String

Required. By default, this value will be matched by “equal” search. (Refer to SearchItem method for the explanation of “equal” search)

webFlag   

String

Defaults to “Y” which means only the notes with webflag = “Y” will be in the returned data set. You can set this value to “A” to search for all notes, or “N” to search  for only notes with webflag = “N”.

orderBy

String

Can be any column in database table NOTES, see “columns in ItemNotes DataTable’” for available values for this field.

Multiple ORDER BY columns and ascending/descending sequence are possible.

 

GetItemNoteResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ItemNotes

DataSet

Contains a DataTable “ItemNotes”.

 

Columns in ItemNotes DataTable

This DataTable contains the following columns from database table NOTES:

·        NOTE_FILE_NAME

·        NOTE_FILE_REF_NO

·        NOTE_FOLDER

·        NOTE_CREATE_DATE

·        NOTE_CREATE_TIME_HH

·        NOTE_CREATE_TIME_MM

·        NOTE_CREATE_TIME_SS

·        NOTE_TYPE

·        NOTE_CREATE_BY_USER

·        NOTE_TASK_STATUS

·        NOTE_FOLLOWUP_BY_NAM

·        NOTE_FOLLOWUP_DATE

·        NOTE_FOLLOWUP_TIME

·        NOTE_FILE_NAME_ALT

·        NOTE_FILE_REF_NO_ALT

·        NOTE_TOPIC

·        NOTE_CONTENT_1

·        NOTE_CONTENT_2

·        NOTE_CONTENT_3

·        NOTE_CONTENT_4

·        NOTE_CONTENT_5

·        NOTE_CONTENT_6

·        NOTE_CONTENT_7

·        NOTE_CONTENT_8

·        NOTE_CONTENT_9

·        NOTE_CONTENT_10

·        NOTE_MODIFY_DATE

·        NOTE_MODIFY_HH

·        NOTE_MODIFY_MM

·        NOTE_MODIFY_SS

·        NOTE_MODIFY_BY_USER

·        NOTE_READABLE_FLAG

·        NOTE_CHANGEABLE_FLAG

·        NOTE_DELETEABLE_FLAG

·        NOTE_ORIG_FOLL_UP_DT

·        NOTE_TIME_FOLL_DT_CH

 

Code Example (VB)

The following sample codes will return the web notes for item number “ITEM001”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetItemNoteResult

Result = wsItemInfo.GetItemNote(“”,“”,“ITEM001”,“”,“”)

If Result.ReturnCode = 0 Then

   lblResult.Text = _

   Result.ItemNotes.Tables(0).Rows(0).Item("NOTE_TOPIC").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Note (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetItemSetup

The primary purpose of this method is to return the setup value in the I/M setup table (i.e. IMCTLFIL). There may be some setup information important for your web application. For example, the default warehouse location is stored in IM_CTL_DEF_LOC field which may be required by your application to determine which location’s inventory quantity on hand and availability are relevant to you. Of course, if you don’t intend to create a generically usable web application, you can also hardcode those setup value in your application.

Usage:

GetItemSetupResult = A.GetItemSetup(userName, Password)

userName and Password are not been used for now.

 

GetItemSetupResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

IM_CTL_RECORD_NO

Integer

Always equal to 1.

IM_CTL_COST_METHD

String

Inventory cost method. The possible values are “A” = Average Cost, “F” = FIFO, “L” = LIFO, “R” = Last Cost and “S” = Standard Cost.

IM_CTL_DEF_LOC

String

This corresponds to I/M Setup “2. Default Mfg Location”.

IM_CTL_AUD_TRL_FG

String

This indicates whether to use audit trail on master file.

IM_CTL_DAYS_IN_PRD

Double

This corresponds to I/M Setup “4. Avg No of Days In Period”.

IM_CTL_INV_MN_ASST

String

This corresponds to I/M Setup, for the 1st segment of “Default Asset Account”.

IM_CTL_INV_SB_ASST

String

This corresponds to I/M Setup, for the 2nd segment of “Default Asset Account”.

IM_CTL_INV_DP_ASST

String

This corresponds to I/M Setup, for the 3rd segment of “Default Asset Account”.

IM_CTL_DEF_MATL_TP

String

This corresponds to I/M Setup “5. Default Material Type”.

IM_CTL_CURR_PRD

Integer

This corresponds to I/M Setup “7. Current Period”.

IM_CTL_SER_LOT_FG

String

This corresponds to I/M Setup “9. Serialized/Lot Items?”. The possible values are “L” = Lot, “N” = None, and “S” = Serialized.

IM_CTL_INIT_L_F_FG

String

For those who convert to LIFO or FIFO costing method, user is required to perform an initial initialization of LIFO & FIFO Cost Layer file that’s generated from the current inventory. You can initialize by going to I/M -> Processing -> Initialize LIFO FIFO file. Once this is done, this flag is set to “Y” and you are ready to use LIFO & FIFO costing method.

IM_CTL_CHANGE_FG

String

This corresponds to I/M Setup “8. Change Protected Fields?”

IM_CTL_NO_OF_PRDS

Integer

This corresponds to I/M Setup “6. No Of Periods”. Valid values are 1 thru 24.

IM_CTL_ENTER_MFG

String

This corresponds to I/M Setup “10. Enter Mfg Data For Item?”

IM_CTL_USE_GL_FG

String

This corresponds to I/M Setup “11. Validate Accounts From I/M Or G/L?”

Possible values are “I” = I/M Account File and “G” = G/L Account File.

IM_CTL_NOTE_LIT_1

String

This corresponds to I/M Setup “12. Extra Item Data Literal 1”.

IM_CTL_NOTE_LIT_2

String

This corresponds to I/M Setup “13. Extra Item Data Literal 2”.

IM_CTL_NOTE_LIT_3

String

This corresponds to I/M Setup “14. Extra Item Data Literal 3”.

IM_CTL_NOTE_LIT_4

String

This corresponds to I/M Setup “15. Extra Item Data Literal 4”.

IM_CTL_NOTE_LIT_5

String

This corresponds to I/M Setup “16. Extra Item Data Literal 5”.

IM_CTL_DATE_LIT

String

This corresponds to I/M Setup “17. Extra Item Date Literal”.

IM_CTL_AMT_LIT

String

This corresponds to I/M Setup “18. Extra Item Amount Literal”.

IM_CTL_TRX_AUD_FG

String

This corresponds to I/M Setup “19. Audit Trail On Inv Transactions? ”

IM_CTL_NEXT_DOC_NO

Integer

This corresponds to I/M Setup “22. Next Document Number”.

IM_CTL_MULT_ACCTS

String

This corresponds to I/M Setup “20. Multiple I/M Accts?”

IM_CTL_USE_KITS

String

This corresponds to I/M Setup “23. Using Kit Items?”

IM_CTL_AUD_FILL_BB

Integer

This corresponds to I/M Setup “Trx Audit Beg. Balance Date”. This date is updated when user chooses I/M -> Processing -> Set Trx Aud Trail Beg. Balance.

IM_CTL_INV_FREEZE

Integer

This corresponds to I/M Setup “Inventory Freeze Date. It is used for frozen inventory report and physical count purpose.

IM_CTL_ONLINE_UPDATE

String

This corresponds to I/M Setup “24. Online Update Inventory Trx?”

IM_CTL_UPDATE_PHY

String

This corresponds to I/M Setup “25. Upd Dist During Phy Cnt Proc?”

IM_CTL_PROCESS_NSB

String

This corresponds to I/M Setup “26. Process Non-Stk Parents In Bomp?”

IM_CTL_DIST_QTY_AMT

String

This corresponds to I/M Setup “27. Distribute By Amount Or Quantity”. Possible values are “A” = Amount, and “Q”  = Quantity.

IM_CTL_USE_JOB_NO

String

This corresponds to I/M Setup “28. Use Job Numbers?”

IM_CTL_SER_LOT_LEN

Integer

This field is no longer used and will always have a value of 15.

FILLER

String

 

 

Code Example (VB)

The following sample codes will get item setup.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetItemSetupResult

Result = wsItemInfo.GetItemSetup(“”,“”)

If Result.ReturnCode = 0 Then

  lblResult.Text = Result.IM_CTL_COST_METHD

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Item Setup. Error Code ” & _

                          Result.ReturnCode

End If

 

GetAllPrdCat

This method allows you to get all product categories from database table IMCATFIL. You can also do so with GetIMCodes method. The difference is GetIMCodes can also get other IM database table information like user defined codes. If you wish to get all other relevant IM database tables in one method call, then use GetIMCodes method. Otherwise, you can use GetAllPrdCat for product category table only.

Usage:

GetPrdCatResult = A.GetAllPrdCat(userName, Password, webFlag, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter

Type

Detail

webFlag

String

Defaults to “Y” which means only the product categories with webflag = “Y” will be in the returned data set. You can set this value to “A” to search for all categories, or “N” to search for only categories with webflag = “N”.

orderBy

String

Can be blank, any one or multiple columns in database table IMCATFIL. Please see “Columns in IMCATFIL” for available values for this field.

Multiple ORDER BY columns and ascending/descending sequence are possible.

 

GetPrdCatResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ProductCategories

DataSet

Contains a DataTable “ProductCategories”. For columns in the DataTable, please refer to “Columns in IMCATFIL”.

 

Columns in IMCATFIL

  • PROD_CATEGORY
  • PROD_CAT_DESC
  • PROD_CAT_PRINT_BOL
  • PROD_CAT_LABEL_FLG
  • PROD_CAT_HIDE_COST
  • PROD_CAT_WEB_FLG
  • PROD_CAT_LEAD_TIME
  • FILLER_0001

 

Code Example (VB)

The following sample codes will return all product categories, including non-web categories, in the IMCATFIL table.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetPrdCatResult

Result = wsItemInfo.GetAllPrdCat(“”,“”,“A”,“”)

If Result.ReturnCode = 0 Then

  lblResult.Text =  _

   Result.ProductCategories.Tables(0).Rows(0).Item("PROD_CATEGORY").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Categories (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetOnePrdCat

This method will get one product category from database table IMCATFIL. Generally speaking, IMCATFIL table will not contain a lot of records. We recommend  that you use GetAllPrdCat method to get all product categories in one method call and cache them in your application memory. This will give your application better performance. You can also use GetIMCodes to do the same.

Usage:

GetPrdCatDetailResult = A.GetOnePrdCat(userName, Password, productCategory)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

productCategory

String

Required. This value will be matched by “equal” search. (Refer to SearchItem method for the explanation of “equal” search)

 

GetPrdCatDetailResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

PROD_CATEGORY

String

 

PROD_CAT_DESC

String

 

PROD_CAT_PRINT_BOL

String

 

PROD_CAT_LABEL_FLG

String

 

PROD_CAT_HIDE_COST

String

 

PROD_CAT_WEB_FLG

String

 

FILLER_0001

String

 

 

Code Example (VB)

The following are sample codes to return product category “RUG”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetOnePrdCatResult

Result = wsItemInfo.GetOnePrdCat(“”,“”,“RUG”)

If Result.ReturnCode = 0 Then

  lblResult.Text = Result.PROD_CAT_DESC

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Product Category(Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetAllUsrDefCode

This method returns all user defined codes from the database table IMUSRDEF. You can also do so with GetIMCodes method. The difference is GetIMCodes can also get other IM database table information like product categories. If you wish to get all other relevant IM database tables in one method call, then use GetIMCodes method. Otherwise, you can use GetAllUsrDefCode for User Defined Codes only.

Usage:

GetAllUsrDefCodeResult = A.GetAllUsrDefCode(userName, Password, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

orderBy

String

Optional. This field’s value can be set to any column in table IMUSRDEF. See “Columns in IMUSRDEF” for available values.

Multiple ORDER BY columns and ascending/descending sequence are possible.

 

GetAllUsrDefCodeResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

UserDefinedCodes

DataSet

Contains a DataTable “UserDefinedCodes”. For columns in the DataTable, please refer to “Columns in IMUSRDEF”.

 

Columns in IMUSRDEF

·        USER_DEF_CODE

·        USER_DEF_DESC_1

·        USER_DEF_CODE_CLASS

·        USER_HAZARD_MATERIAL

·        USER_DEF_ERG_NO

·        FILLER_0001

·        FILLER_0002

 

Code Example (VB)

The following sample codes will return all user defined code in IMUSRDEF table ordered by the “USER_DEF_CODE” sequence.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry. GetAllUsrDefCodeResult

Result = wsItemInfo.GetAllUsrDefCode(“”,“”,“USER_DEF_CODE”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

   Result.UserDefinedCodes.Tables(0).Rows(0).Item("USER_DEF_DESC_1").ToString

ElseIf Result.ReturnCode = 30001 Then

   lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting User Define Code (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetAllMatCstType

This method will return all material cost types from database table IMMATCST. You can also do so with GetIMCodes method. The difference is GetIMCodes can also get other IM database table information like product categories or user defined codes. If you wish to get all other relevant IM database tables in one method call, then use GetIMCodes method. Otherwise, you can use GetAllMatCstType for Material Cost Types only.

Usage:

GetAllMatCstTypeResult = A.GetAllMatCstType(userName, Password, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter

Type

Detail

orderBy

String

Optional. This field’s value can be set to any column in table IMMATCST. See “Columns in IMMATCST” for available values.

Multiple ORDER BY columns and ascending/descending sequence are possible.

 

GetAllMatCstTypeResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

MatCstTypes

DataSet

Contains a DataTable “MatCstTypes”. Please refer to “Columns in IMMATCST” for columns in the DataTable.

 

Columns in IMMATCST

·        MAT_COST_TYPE

·        MAT_COST_DESC

·        FILLER_0001

 

Code Example (VB)

The following sample code will return all material cost types in IMMATCST tables in MAT_COST_TYPE sequence.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetAllMatCstTypeResult

Result = wsItemInfo.GetAllMatCstType(“”,“”,“MAT_COST_TYPE”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

  Result.MatCstTypes.Tables(0).Rows(0).Item("MAT_COST_TYPE").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Material Cost Type (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetAllBuyerCode

This method will return all buyer codes from the database table APCDEFIL. You can also do so with GetIMCodes method. The difference is GetIMCodes can also get other IM database table information like product categories or user defined codes. If you wish to get all other relevant IM database tables in one method call, then use GetIMCodes method. Otherwise, you can use GetAllBuyerCode for Buyer Codes only.

Usage:

GetAllBuyerCodeResult = A.GetAllBuyerCode(userName, Password, orderBy)

userName and Password are not been used for now.

 

Input Parameter

Parameter

Type

Detail

orderBy

String

Optional. This field’s value can be set to any column in table APCDEFIL_BYR, which are:

AP_CODE_TYPE_3

BUYER_CODE

BUYER_NAME

FILER_1

 

GetAllBuyerCodeResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

BuyerCodes

DataSet

Contains a DataTable “BuyerCodes” with the following columns from database table APCDEFIL_BYR:

AP_CODE_TYPE_3

BUYER_CODE

BUYER_NAME

FILER_1

 

Code Example (VB)

The following sample codes will return all buyer codes in APCDEFIL_BYR.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetAllBuyerCodeResult

Result = wsItemInfo.GetAllBuyerCode(“”,“”,“”)

If Result.ReturnCode.ToString = "0" Then

  lblResult.Text = _

    Result.BuyerCodes.Tables(0).Rows(0).Item("BUYER_NAME").ToString

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Buyer Codes (Error Code" & _

                          Result.ReturnCode.ToString & ")"

End If

 

GetItemDistinctValue

This method will return distinct values of one column in the item file (IMITMFIL). You can also do so with GetIMCodes method. The difference is GetIMCodes can also get other IM database table information like product categories or user defined codes. If you wish to get all other relevant IM database tables in one method call, then use GetIMCodes method. Otherwise, you can use GetItemDistinctValue.

To get distinct values of a certain Item table column maybe important for your web user interface. For example, if your website sells battery and it comes with size AA, AAA ... etc. In many cases, you may put the size of the battery as part of the description of the item. However, there’s no master table for the different size of the batteries. So, many users will use the Elliott Item NOTE_1 – NOTE_5 user definable fields to store this type of information. Let’s say you use ITEM_NOTE_1 to store the size of the battery. Then you may want to get the distinct value on ITEM_NOTE_1 and present those values as searchable criteria on your website.

Usage:

GetItemDistinctValueResult = A.GetItemDistinctValue(userName, Password, columnName)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

columnName

String

Required. The value of this field can be any one column in database table IMITMFIL. Please see “Columns in IMITMFIL” in SearchItem method for available values.

 

GetItemDistinctValueResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

DistinctValues

DataSet

Contains a DataTable “DistinctValues” which has a DataColumn “DistinctValue”.

 

Code Example (VB)

This sample code returns a list of distinct values in ITEM_NOTE_1 column from the item table.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetItemDistinctValueResult

Result = wsItemInfo.GetItemDistinctValue(“”,“”,“ITEM_NOTE_1”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

     Result.DistinctValues.Tables(0).Rows(0).Item("DistinctValue")

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Distinct Item No.(Error Code" & _

            Result.ReturnCode.ToString & ")"

End If

 

GetOneItemDetail

This method returns all columns in item master table and its associated attributes, notes and links for a specific item. In this method, quantity information is from the item’s default location. You can get quantity information from one or more other locations using another method “GetOneItemDetailMulitpleLocation”.

You can use this method, for example, at your website, when user chooses to drill down to see the detail of an item. You will most likely need to show the item notes, attributes, images (links) and other relevant information of the item. This can all accomplished by making this single method call and result in good performance. This is especially important if the web services and web applications servers are separated by the Internet.

Usage:

GetOneItemDetailResult = A.GetOneItemDetail(userName, Password, itemNo, attribWebFlag, noteWebFlag, imageLinkType, additionalLinkType)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

itemNo

String

Required. This is the item number you want to search for.

customerNo

String

If you provide a valid customer here, system will return CustomerPriceRecord so you can get the price information.

attribWebFlag

String

Default to “Y”, which means only attributes with WebFlag = “Y” will be in the returned DataSet.

You can set this value to “A” to search for all attributes, or “N” which means to search for only none web attributes.

noteWebFlag

String

Default to “Y”, which means only notes with WebFlag = “Y” will be in the returned DataSet.

You can set this value to “A” to search all notes, or “N” which means to search for only non web notes.

imageLinkType

String

You may leave this field blank or specify a valid Image link type then system will return the corresponding image to the image() as byte array  and image file path to ImageLinkRecord. For example, you can pass “IMAGE” which is the Elliott default image link type to this field.

additionalLinkType

String

You may leave this field blank or specify additional link types to search for. You can search for multiple link types by separating each type with a comma or space. The value will be returned to AdditionalLinks() array.

 

GetOneItemDetailResult Structure

The values in link records (e.g. ImageLinkRecord, SpecLinkRecord, HomepageLinkRecord, FImageLinkRecord, AdditionalLinks) are “Resolved Link”, which contains the link type’s template. For example, if the image link’s variable value is “ABC.JPG”, and the template for image link type is “\\shareimg\@@VAR1@@”, you will get “\\shareimg\ABC.JPG” in link content.

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ItemDetail

DataSet

Contains the following three DataTables:

·  SYATTRIB - See “Columns in SYATTRIB DataTable”

·  SYATRFIL - See “Columns in SYATRFIL DataTable”

·  ItemNotes - See “Columns in ItemNotes DataTable

Image()

Byte

This field contains the image of this item based on input imageLinkType. Even though image is binary in nature, the web services are based on XML and can’t directly transmit binary data. Therefore, you will convert byte array to the image’s binary format in order to display it.

ItemRecord

ItemRecord

This is all the columns of the item master table. Refer to “ItemRecord Structure” for the properties of this structure.

CustomerPriceRecord

CustomerPriceRecord

A structure contains the following parameters:

CustomerPrice (Double)

OnSaleFlag (String)

DiscountPercent (Double)

ImageLinkRecord

ImageLinkRecord

The structure has one property which contains the image file based on input imageLinkType:

ImageLinkContent (String)

SpecLinkRecord

SpecLinkRecord

The structure has one property containing the value of Elliott default link type “SPEC”:

SpecLinkContent (String)

HomepageLinkRecord

HomepageLinkRecord

The structure has one property containing the value of Elliott default link type “URL”:

HomeLinkContent (String)

FImageLinkRecord

String

This field contains the value of the full image file based on Elliott default link type “FIMAGE”.

AdditionalLinks()

String

This field contains additional link type values (e.g. file path) based on the input additionalLinkType. Each addition link type’s value will be saved to an element of this array.

 

ItemRecord Structure

Property Name

Type

Detail

ErrorStatus

String

“00”: No error for this item.

“01”: Item not found

ITEM_NO

String

?? to be documented – low priority

ITEM_DESC1

String

 

ITEM_DESC2

String

 

ITEM_PROD_CAT

String

 

ITEM_USER_DEF_CD

String

 

ITEM_MFG_LOC

String

 

ITEM_QTY_ON_HAND

Double

 

ITEM_QTY_ALLOC

Double

 

ITEM_QTY_BO

Double

 

ITEM_QTY_ON_ORDER_O

Double

 

ITEM_ORDER_UP_TO_LVL

Double

 

ITEM_REORDER_LEVEL

Double

 

ITEM_AVG_COST

Double

 

ITEM_PRICE

Double

 

ITEM_PRICE_UOM

String

 

ITEM_PRICE_RATIO

Double

 

ITEM_WEIGHT

Double

 

ITEM_UOM

String

 

ITEM_PICK_SEQ

String

 

ITEM_BO_FG

String

 

ITEM_TXBL_FG

String

 

ITEM_END_ITEM_CD

String

 

ITEM_START_SALE_DATE

Date

 

ITEM_END_SALE_DATE

Date

 

ITEM_SALE_PRICE

Double

 

ITEM_PRICES_APPLY_FG

String

 

ITEM_DISC_APPLY_FG

String

 

ITEM_USAGE_PTD

Double

 

ITEM_USAGE_YTD

Double

 

ITEM_PRIOR_YR_USE

Double

 

ITEM_PRIOR_YR_SALES

Double

 

ITEM_QTY_RTRND_YTD

Double

 

ITEM_QTY_SOLD_PTD

Double

 

ITEM_QTY_SOLD_YTD

Double

 

ITEM_SALES_PTD

Double

 

ITEM_SALES_YTD

Double

 

ITEM_COST_PTD

Double

 

ITEM_COST_YTD

Double

 

ITEM_REC_MIN_ORDER

Double

 

ITEM_ECON_ORDER_QTY

Double

 

ITEM_AVG_USAGE

Double

 

ITEM_USAGE_WGHT_FCTR

Double

 

ITEM_SAFETY_STOCK

Double

 

ITEM_SAFETY_FACTR

Double

 

ITEM_AVG_FRCST_ERR

Double

 

ITEM_SUM_OF_ERRORS

Double

 

ITEM_USAGE_FILTER

Double

 

ITEM_LEAD_TIME

Integer

 

ITEM_MAT_TYPE

String

 

ITEM_SUBSTITUTE

String

 

ITEM_LAST_COST

Double

 

ITEM_STD_COST

Double

 

ITEM_PRIME_VEND_NO

String

 

ITEM_ORDER_MINIMUM

Double

 

ITEM_ORDER_MULTIPLE

Integer

 

ITEM_TARGET_MARGIN

Integer

 

ITEM_PUR_UOM

String

 

ITEM_WEB_ITEM_FLAG

String

 

FILLER_0001

String

 

ITEM_DATE_LAST_SOLD

Date

 

ITEM_QTY_LAST_SOLD

Double

 

ITEM_P_AND_IC_CD

String

 

ITEM_ACTIVITY_CD

String

 

ITEM_STOCKED_FG

String

 

ITEM_CONTROLLED_FG

String

 

ITEM_PUR_OR_MFG_CD

String

 

ITEM_MS_ITEM_FG

String

 

ITEM_INV_CLASS

String

 

ITEM_CYCLE_CNT_CD

String

 

ITEM_DATE_LAST_CNTD

Date

 

ITEM_COMMODITY_CD

String

 

ITEM_BUYER_ANALYST

String

 

ITEM_DRAWING_REL_NO

String

 

ITEM_DRAWING_REV_NO

String

 

ITEM_ROUTING_REL_NO

String

 

ITEM_ROUTING_REV_NO

String

 

ITEM_ROUTING_NO

String

 

ITEM_ORDER_POLICY_CD

String

 

ITEM_PLAN_PERIOD

Integer

 

ITEM_PLAN_LEAD_TIME

Integer

 

ITEM_PLAN_ORDER_MULT

Integer

 

ITEM_MRP_TIME_FENCE

Integer

 

ITEM_MRP_LOC_QTY_OH

Double

 

ITEM_STOCK_STS_CD

String

 

ITEM_LOW_LEVEL_CD

Integer

 

ITEM_ACTIVE_ORDERS

Integer

 

ITEM_CUTOFF_QTY

Double

 

ITEM_PCT_ERR_LST_CNT

Double

 

ITEM_COMM_PCT_OR_AMT

Double

 

ITEM_CALC_COMM_TYPE

String

 

ITEM_SERIAL_LOT_FG

String

 

ITEM_SER_WAR_DAYS

Integer

 

ITEM_PUR_INV_RATIO

Double

 

ITEM_DESC_SEARCH

String

 

ITEM_QTY_ON_ORDER

Double

 

ITEM_NOTE_1

String

 

ITEM_NOTE_2

String

 

ITEM_NOTE_3

String

 

ITEM_NOTE_4

String

 

ITEM_NOTE_5

String

 

ITEM_USER_DATE

Date

 

ITEM_USER_AMOUNT

Double

 

ITEM_LAND_CST_FACTOR

Double

 

OP10_FILLER

String

 

SAID_FILLER

String

 

ITEM_FRZ_QTY_ON_HAND

Double

 

ITEM_FRZ_COST

Double

 

ITEM_KIT_PRC_ROLLUP

String

 

ITEM_FEA_PRC_OPT

String

 

ITEM_LAND_FIX_COST

Double

 

ITEM_VOLUME

Double

 

ITEM_DUTY_PERCENT

Double

 

ITEM_AVG_COST_2

Double

 

ITEM_STD_COST_2

Double

 

ITEM_LAST_COST_2

Double

 

ITEM_USER_LAST_ACCES

String

 

ITEM_DATE_LAST_ACCES

Date

 

ITEM_STYLE_CODE

String

 

FILLER_002

String

 

 

Code Example (VB)

The following sample code will return item “A001” detail information, including attribute, notes, images and additional links “CONTRC”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetOneItemDetailResult

Dim itemNo As String = “A001”

Dim attribWebFlag As String = “Y”

Dim noteWebFlag As String = “Y”

Dim imageLinkType As String = “IMAGE”

Dim additionalLinkType As String = “CONTRC”

Result = wsItemInfo.GetOneItemDetail("", "", itemNo, "", attribWebFlag, noteWebFlag, imageLinkType, additionalLinkType)

If Result.ReturnCode.ToString = "0" Then

  lblResult.Text = GetItemDistinctValue.ItemRecord.ITEM_DESC1

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Item Detail (Error Code" & _

            Result.ReturnCode.ToString & ")"

End If

 

GetOneItemDetailMultipleLocation

Get item attributes, item notes, and item master file for an item. In this method, you can assign one or more locations to get their quantity information. If you do not assign any location, this method will display quantity information from the default location of the item, which will be the same as using “GetOneItemDetail” method.

Just to give an example on why you may wish to use the method, a user has two warehouse locations “C1” and “C2”. “C1” is the main warehouse. “C2” is the overstock warehouse that’s close by “C1”. When present available quantity information on the web, this user would like to combine both “C1” and “C2” locations together.

Usage:

GetOneItemDetailMultipleLocationResult = A.GetOneItemDetailMultipleLocation(userName, Password, itemNo, attribWebFlag, noteWebFlag, location, imageLinkType, additionalLinkType)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

itemNo

String

Required. See “Input Parameter” of GetOneItemDetail.

customerNo

String

See “Input Parameter” of GetOneItemDetail.

attribWebFlag

String

See “Input Parameter” of GetOneItemDetail.

noteWebFlag

String

See “Input Parameter” of GetOneItemDetail.

location

String

You can return one or multiple locations’ quantity with this method by using a single space or a comma to divide each location. If not provided, the default location’s quantity is returned which make this method behaves like GetOneItemDetail.

imageLinkType

String

See “Input Parameter” of GetOneItemDetail.

additionalLinkType

String

See “Input Parameter” of GetOneItemDetail.

 

GetOneItemDetailMultipleLocationResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

ItemDetail

DataSet

Contains the following three DataTables:

·  SYATTRIB - See “Columns in SYATTRIB DataTable”.

·  SYATRFIL - See “Columns in SYATRFIL DataTable”.

·  ItemNotes - See “Columns in ItemNotes DataTable”.

·  Item - See “Columns in Items DataTable”.

Image()

Byte

See “Out Parameter” of GetOneItemDetail.

CustomerPriceRecord

CustomerPriceRecord

See “Out Parameter” of GetOneItemDetail.

ImageLink

String

See “Out Parameter” of GetOneItemDetail.

SpecLink

String

See “Out Parameter” of GetOneItemDetail.

HomepageLink

String

See “Out Parameter” of GetOneItemDetail.

FImageLink

String

See “Out Parameter” of GetOneItemDetail.

AdditionalLinks()

String

See “Out Parameter” of GetOneItemDetail.

 

Columns in Items DataTable

This DataTable contains the followings columns from IMITMFIL:

·        ITEM_QTY_ON_HAND: This is the combined total quantity on hand based on the locations you specified, not necessary the quantity on hand in item master.

·        ITEM_QTY_ALLOC: See ITEM_QTY_ON_HAND.

·        ITEM_QTY_ON_ORDER: See ITEM_QTY_ON_HAND.

·        ITEM_QTY_BO: See ITEM_QTY_ON_HAND.

·        ITEM_NO

·        ITEM_DESC1: see the ItemRecord Structure in GetOneItemDetail method.

·        ITEM_DESC2: This is the upper case ITEM_DESC2.

·        ITEM_PROD_CAT:

·        ITEM_USER_DEF_CD:

·        ITEM_MFG_LOC:

·        ITEM_ORDER_UP_TO_LVL:

·        ITEM_REORDER_LEVEL:

·        ITEM_AVG_COST

·        ITEM_PRICE

·        ITEM_PRICE_UOM

·        ITEM_PRICE_RATIO

·        ITEM_WEIGHT

·        ITEM_UOM

·        ITEM_PICK_SEQ

·        ITEM_BO_FG

·        ITEM_TXBL_FG

·        ITEM_END_ITEM_CD

·        ITEM_START_SALE_DATE

·        ITEM_END_SALE_DATE

·        ITEM_SALE_PRICE

·        ITEM_PRICES_APPLY_FG

·        ITEM_DISC_APPLY_FG

·        ITEM_USAGE_PTD

·        ITEM_USAGE_YTD

·        ITEM_PRIOR_YR_USE

·        ITEM_PRIOR_YR_SALES

·        ITEM_QTY_RTRND_YTD

·        ITEM_QTY_SOLD_PTD

·        ITEM_QTY_SOLD_YTD

·        ITEM_SALES_PTD

·        ITEM_SALES_YTD

·        ITEM_COST_PTD

·        ITEM_COST_YTD

·        ITEM_REC_MIN_ORDER

·        ITEM_ECON_ORDER_QTY

·        ITEM_AVG_USAGE

·        ITEM_USAGE_WGHT_FCTR

·        ITEM_SAFETY_STOCK

·        ITEM_SAFETY_FACTR

·        ITEM_AVG_FRCST_ERR

·        ITEM_SUM_OF_ERRORS

·        ITEM_USAGE_FILTER

·        ITEM_LEAD_TIME

·        ITEM_MAT_TYPE

·        ITEM_SUBSTITUTE

·        ITEM_LAST_COST

·        ITEM_STD_COST

·        ITEM_PRIME_VEND_NO

·        ITEM_ORDER_MINIMUM

·        ITEM_ORDER_MULTIPLE

·        ITEM_TARGET_MARGIN

·        ITEM_PUR_UOM

·        FILLER_0001

·        FILLER_002

·        ITEM_DATE_LAST_SOLD

·        ITEM_QTY_LAST_SOLD

·        ITEM_P_AND_IC_CD

·        ITEM_ACTIVITY_CD

·        ITEM_STOCKED_FG

·        ITEM_CONTROLLED_FG

·        ITEM_PUR_OR_MFG_CD

·        ITEM_MS_ITEM_FG

·        ITEM_INV_CLASS

·        ITEM_CYCLE_CNT_CD

·        ITEM_DATE_LAST_CNTD

·        ITEM_COMMODITY_CD

·        ITEM_BUYER_ANALYST

·        ITEM_DRAWING_REL_NO

·        ITEM_DRAWING_REV_NO

·        ITEM_ROUTING_REL_NO

·        ITEM_ROUTING_REV_NO

·        ITEM_ROUTING_NO

·        ITEM_ORDER_POLICY_CD

·        ITEM_PLAN_PERIOD

·        ITEM_PLAN_LEAD_TIME

·        ITEM_PLAN_ORDER_MULT

·        ITEM_MRP_TIME_FENCE

·        ITEM_MRP_LOC_QTY_OH

·        ITEM_STOCK_STS_CD

·        ITEM_LOW_LEVEL_CD

·        ITEM_ACTIVE_ORDERS

·        ITEM_CUTOFF_QTY

·        ITEM_PCT_ERR_LST_CNT

·        ITEM_COMM_PCT_OR_AMT

·        ITEM_CALC_COMM_TYPE

·        ITEM_SERIAL_LOT_FG

·        ITEM_SER_WAR_DAYS

·        ITEM_PUR_INV_RATIO

·        ITEM_DESC_SEARCH

·        ITEM_QTY_ON_ORDER_O

·        ITEM_NOTE_1

·        ITEM_NOTE_2

·        ITEM_NOTE_3

·        ITEM_NOTE_4

·        ITEM_NOTE_5

·        ITEM_USER_DATE

·        ITEM_USER_AMOUNT

·        ITEM_LAND_CST_FACTOR

·        OP10_FILLER

·        SAID_FILLER

·        ITEM_FRZ_QTY_ON_HAND

·        ITEM_FRZ_COST

·        ITEM_KIT_PRC_ROLLUP

·        ITEM_FEA_PRC_OPT

·        ITEM_LAND_FIX_COST

·        ITEM_VOLUME

·        ITEM_DUTY_PERCENT

·        ITEM_AVG_COST_2

·        ITEM_STD_COST_2

·        ITEM_LAST_COST_2

·        ITEM_USER_LAST_ACCES

·        ITEM_DATE_LAST_ACCES

·        ITEM_STYLE_CODE

·        ITEM_MOSTLY_PUR_MFG

·        ITEM_WEB_ITEM_FLG

·        ITEM_QTY_AVL: This is quantity available calculated as ITEM_QTY_ON_HAND – ITEM_QTY_ALLOC.

·        ITEM_SALES: This is item two years sales amount calculated as ITEM_SALES_YTD + ITEM_PRIOR_YR_SALES

 

Code Example (VB)

The following sample code will return item “A001” detail information on location “C1” and “C2”, including attribute, notes, images and additional links “CONTRC”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry. _

GetOneItemDetailMultipleLocationResult

Dim itemNo As String = “A001”

Dim attribWebFlag As String = “Y”

Dim noteWebFlag As String = “Y”

Dim imageLinkType As String = “IMAGE”

Dim location As String = “C1 C2”

Dim additionalLinkType As String = “CONTRC”

Result = wsItemInfo.GetOneItemDetailMultipleLocation("", "", itemNo, _

         “”, attribWebFlag, noteWebFlag, location, imageLinkType, _

        additionalLinkType)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

      Result.ItemDetail.Tables("item").Rows(0).Item("ITEM_USER_AMOUNT")

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Item Detail (Error Code" & _

            Result.ReturnCode.ToString & ")"

End If

 

GetFeatureOption

This method will return the feature table (BMFTRFIL) information for a given item. This is a legacy function which is not used anymore.

Usage:

GetFeatureOptionResult = A.GetFeatureOption(userName, Password, itemNo)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

itemNo

String

Required. This field is match by “equal” search. (Refer to SearchItem method for the explanation of “equal” search)

 

GetFeatureOptionResult Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

FeatureOption

DataSet

This DataSet contains a DataTable “BMFTRFIL” which has the following columns:

PRD_FTR_PRODUCT_NO

PRD_FTR_FEATURE_NO

PRD_FTR_FEAT_DESC_1

PRD_FTR_FEAT_DESC_2

PRD_FTR_FEAT_TYPE

FILLER

 

Code Example (VB)

The following sample codes will get feature option for item number “ITEM001”.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetFeatureOptionResult

Result = wsItemInfo.GetFeatureOption("", "", “ITEM001”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

      Result.FeatureOption.Tables(0).Rows(0).Item("PRD_FTR_FEATURE_NO")

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = "No record found”

Else

  lblResult.Text = "Error Getting Item Info (Error Code" & _

     Result.ReturnCode.ToString & ")"

End If

 

GetItemInvoiceHistory

This method returns invoice history line item information for an item from table CPINVLIN. Since many records may exist for a given item and you may not be interested in records from a long time ago, you may wish to specify the “CutOffDate” parameter to limit the number of records returned.

In a typical eCommerce implementation, it may be beneficial to provide the past repeating purchase history of a given item. In that case, you only want the system to return the invoice line item for a given customer. Therefore, you will pass the “customerNo” parameter to limit the return dataset.

You may choose the “orderBy” parameter to sorting sequence of the returned data. For example, you may choose to sort it by descending invoice date sequence so the most recent purchase show on the top.

Usage:

Output = A.GetItemInvoiceHistory(userName, Password, detailLevel, itemNo, customerNo, CutOffDate, NumberOfRecords, OrderBy, AdditionalWhereClause)

userName and Password are not been used for now.

 

Input Parameter

Parameter Name

Type

Detail

detailLevel 

String

Not used. Do not pass a value to this field.

itemNo

String

Required. This field is matched by “equal” search. (Refer to SearchItem method for the explanation of “equal” search).

customerNo         

String

In most eCommerce implementation, most likely you are only interested in getting the invoice line item for a given customer. This field is matched by “equal” search. (Refer to SearchItem method for the explanation of “equal” search).

CutOffDate

Date

Since you may not interest to know history information from a long time ago, if this field has value, return dataset will only contain records with INV_DATE > CutOffDate.

NumberOfRecords

Integer

This indicates the maximum records number in output dataset for performance consideration.

orderBy             

String

The value of this field can be any column in table CPINVHDR, CPINVLIN, or IMITMFIL. Multiple ORDER BY columns and ascending/descending sequence are possible.

additionalWhereClause

String

The value here will be appended to the WHERE clause with AND condition.

 

Output Structure

Property Name

Type

Detail

ReturnCode

Integer

Contains return code. Zero means OK; for other return codes, please see “ItemInquiry Return Code” section.

InvoiceHistory

DataSet

Contains a DataTable “InvoiceHistory”. For more detail please refer to “Columns in InvoiceHistory DataTable”.

NumberOfRecordsFound

Integer

Number of records in returned InvoiceHistory.

 

Columns in InvoiceHistory DataTable

This table contains the following columns from database table PINVLIN:

·        INV_ITM_INV_NO

·        INV_ITM_SEQ_NO

·        INV_ITM_ITM_NO

·        INV_ITM_INV_DATE

·        INV_ITM_CUST_NO

·        INV_ITM_DESC_1

·        INV_ITM_DESC_2

·        INV_ITM_SER_LOT_NO

·        INV_ITM_QTY_ORDER

·        INV_ITM_QTY_TO_SHIP

·        INV_ITM_UNIT_PRICE

·        INV_ITM_DISCOUNT_PCT

·        INV_ITM_REQUEST_DATE

·        INV_ITM_QTY_BACK_ORD

·        INV_ITM_QTY_RT_TO_ST

·        INV_ITM_UOM

·        INV_ITM_UNIT_COST

·        INV_ITM_PROMISE_DATE

·        INV_ITM_REASON_CODE

·        INV_ITM_VENDOR_NO

·        INV_SHIP_TO_NO

·        INV_PURCHASE_ORD_NO

·        INV_TYPE

·        INV_ORDER_NO

·        INV_DATE_ENTERED

·        INV_ORDER_DATE

·        INV_BILL_TO_NAME

·        INV_SHIP_TO_NAME

·        INV_SHIP_TO_ADDR_1

·        INV_SHIP_TO_ADDR_2

·        INV_SHIP_TO_CITY

·        INV_SHIP_TO_ST

·        INV_SHIP_TO_ZIPCD

·        INV_SHIPPING_DATE

·        INV_SHIP_VIA_CODE

·        INV_TERMS_CODE

·        INV_SALESMAN_NO1

·        INV_FRT_PAY_CODE

·        INV_DATE_PICKED

·        INV_DATE_BILLED

·        INV_STORE_NO

·        INV_DEPT_NO

·        INV_BOL_NO

·        INV_SHIP_TO_XREF_NO

 

Code Example (VB)

The following sample codes will return invoice history for item number “ITM01” and customer “CUST01”, cut-off date 06/30/2010 which means the invoice history on and after 07/01/2010, by the descending sequence of invoice date and restrict the maximum return record number to 100.

 

Dim wsItemInfo As New webServicesItemInquiry.ItemInquiry()

Dim Result As New webServicesItemInquiry.GetItemInvoiceHistoryResult

Result = wsItemInfo.GetItemInvoiceHistory("", "", “”, “ITM01”, _

 “CUST01”, Date(2010, 06, 30), 100, “INV_ITM_INV_DATE DESC”, “”)

If Result.ReturnCode = 0 Then

  lblResult.Text = _

  Result.InvoiceHistory.Tables(0).Rows(0).Item("INV_ITM_INV_NO")

ElseIf Result.ReturnCode = 30001 Then

  lblResult.Text = “No Record found”

Else

  lblResult.Text = "Error Getting Item History (Error Code" & _

            Result.ReturnCode.ToString & ")"

End If

 

 

 

ItemInquiry Return Code

0 = OK

30000 = Database Error

30001 = No Record Found

30002 = General Error

10001 = Missing Item No.

10002 = Invalid Value in “DetailLevel” Field.

10003 = Missing Product Category

10004 = Missing Column Name

CLS 

 

Feedback and Knowledge Base