ItemInquiry
ItemInquiry.asmx
Unlike most Elliott web services which are based on PSQL transactional engine, this web service is based on PSQL relational engine.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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