Skip to content

EliOrderService

EliOrderService.asmx

This web service provides the methods to create/modify/delete a customer sales order. To create an order, the minimum requirement is to provide the customer number, item number, and quantity for the order. For the remaining fields, if you don't provide them, the system will automatically generate the appropriate values. Unless you have a specific reason to override these values, there's no need to pass them. Passing unnecessary fields can cause more problems than not passing them. Therefore, it is a better strategy to only provide the minimum required fields to accomplish your goals.

CreateHeader

This method creates an order header. This is a legacy method. You will find that using CreateOrder method, which will create the Order Header and Order Line Items, is much more convenient to use.

Usage:

CreateHeaderResult = A.CreateHeader(UserName, UserPassword, CreateHeaderInput)

Parameters UserName and UserPassword are not used at this moment.

 

CreateHeaderInput Structure

Property Name

Length

Type

Upper

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used. This method will auto assign an order number based on the Elliott Order Header Global Setup “19. Next Order No For Web Order?”

ORDER_DATE_ENTERED

8

Date

 

Not used. This method will always use system date as order date entered.

ORDER_DATE

8

Date

 

Not used. This method will always use system date as order date.

ORDER_TYPE

1

String

 

Must be one of the following: blank, “I”, “O”, or “Q.”

If blank or not assigned, order type will be the default order type from Elliott Order Header Global Setup “10. Default Order Type.”

ORDER_APPLY_TO_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_PURCH_ORDER_NO

25

String

Y

 

ORDER_CUSTOMER_NO

6

String

Y

Required.

ORDER_NO_ALT

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_CUST_BALANCE

1

String

 

Not used.

ORDER_BILL_TO_NAME

30

String

 

Bill to name, addr 1, addr 2, city, state, zip code, and country are considered as a group. If any one of the group is not blank, this method will use the whole group value as bill-to information. On the other hand, if none of the fields is passed, then system defaults to customer’s bill-to information.

ORDER_BILL_TO_ADDR_1

30

String

 

See ORDER_BILL_TO_NAME.

ORDER_BILL_TO_ADDR_2

30

String

 

See ORDER_BILL_TO_NAME.

ORDER_BILL_TO_CITY

15

String

 

See ORDER_BILL_TO_NAME.

ORDER_BILL_TO_ST

2

String

 

See ORDER_BILL_TO_NAME.

ORDER_BILL_TO_ZIPCD

10

String

 

See ORDER_BILL_TO_NAME.

ORD_BILL_TO_COUNTRY

20

String

 

See ORDER_BILL_TO_NAME.

ORDER_SHIP_TO_NO

4

String

Y

If this field is provided, this method will use the ship-to name, addr 1, addr 2, city, state, zip code, and country from ship-to table.

ORDER_SHIP_TO_NAME

30

String

 

Ship-to name, addr 1, addr 2, city, state, zip code, and country are considered as a group. If any one of the group is not blank, this method will use the whole group value as ship-to information. Otherwise, the system will either use customer’s bill-to address or ship-to address as looked up from the ship-to table if the ORDER_SHIP_TO_NO is passed.

ORDER_SHIP_TO_ADDR_1

30

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIP_TO_ADDR_2

30

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIP_TO_CITY

15

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIP_TO_ST

2

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIP_TO_ZIPCD

10

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIP_TO_COUNTRY

20

String

 

See ORDER_SHIP_TO_NAME.

ORDER_SHIPPING_DATE

8

Date

 

If not passed, ORDER_SHIPPING_DATE will become “ASAP” which internally is stored as zeroes. ORDER_SHIPPING_DATE will become the default value for order line item’s request and promise date.

ORDER_SHIP_VIA_CODE

2

String

Y

Defaults to customer or ship-to’s ship via.

ORDER_TERMS_CODE

2

String

Y

Defaults to customer’s terms code.

ORDER_FRGHT_PAY_CODE

1

String

 

The possible values are: C=Consignee, P=Prepaid, T=Third party, R=Recpt(Collect), S=Sender, H=Hold or Blank which uses the freight pay code in the customer record.

ORDER_SHIP_INSTRUC1

40

String

 

 

ORDER_SHIP_INSTRUC2

40

String

 

 

ORDER_SALESMAN_NO_1

3

String

 

Salesman 1, 2, and 3 are considered a group. If multiple salesmen are passed, then you must also pass commission pct. If no salesman is passed, this method will default salesman 1 to customer or ship-to’s salesman number.

ORDER_SLS_PCT_COMM_1

3.2

Double

 

If you choose to pass commission percent, then 1+ 2 + 3 must be equal 100.

If there’s only one salesman, this field is assumed to be 100.00 and you don’t have to set the value.

ORDER_SLS_COMM_AMT_1

7.2

Double

 

Not used.

ORDER_SALESMAN_NO_2

3

String

 

See ORDER_SALESMAN_NO_1.

ORDER_SLS_PCT_COMM_2

3.2

Double

 

See ORDER_SLS_PCT_COMM_1.

ORDER_SLS_COMM_AMT_2

7.2

Double

 

Not used.

ORDER_SALESMAN_NO_3

3

String

 

See ORDER_SALESMAN_NO_1.

ORDER_SLS_PCT_COMM_3

3.2

Double

 

See ORDER_SLS_PCT_COMM_1.

ORDER_SLS_COMM_AMT_3

7.2

Double

 

Not used.

ORDER_TAX_CODE_1

3

String

 

Tax code 1, 2, 3 and tax percent 1, 2, 3 are considered as a group. If tax code 1 is not passed, all tax codes and tax percents will be ignored. In this case, they will default to ship-to or customer’s tax code 1, 2, 3 and corresponding tax percent 1, 2, 3.

ORDER_TAX_PERCENT_1

2.4

Double

 

If you pass tax code, you also need to pass tax percent. Otherwise, tax percent will default to zero as if this is a non-taxable order.

If you do not pass a tax code, then the tax percent will default to the current tax code tax percent.

ORDER_TAX_CODE_2

3

String

 

See ORDER_TAX_CODE_1.

ORDER_TAX_PERCENT_2

2.4

Double

 

See ORDER_TAX_PERCENT_1.

ORDER_TAX_CODE_3

3

String

 

See ORDER_TAX_CODE_1.

ORDER_TAX_PERCENT_3

2.4

Double

 

See ORDER_TAX_PERCENT_1.

ORDER_DISC_PERCENT

3.2

Double

 

Not used. System will use customer discount percent.

ORDER_JOB_NO

6

String

 

 

ORDER_MFGING_LOC

2

String

Y

Defaults to the customer’s order location. If the customer order location is blank, the default value is the default location from Elliott I/M Setup “2. Default Mfg Location.”

ORDER_PROFIT_CENTER

8

String

Y

This field will be used if COP Setup “2. Profit Center Usage” is set to “O.” Otherwise, the value will be ignored. If you do not pass value for this field, the order profit center will be “00000000.”

ORDER_DEPARTMENT

8

String

 

Not used.

ORDER_AR_REFERENCE

30

String

 

Not used.

ORDER_TOTAL_SALE_AMT

7.2

Double

 

Not used.

ORDER_TOTL_TAXBL_AMT

7.2

Double

 

Not used.

ORDER_TOTAL_COST

7.2

Double

 

Not used.

ORDER_TOTAL_WEIGHT

7.3

Double

 

Not used.

ORDER_MISC_CHRG_AMT

5.2

Double

 

If you do not assign a value (or assign 0) to this field, in FinishOrder method the system may automatically calcuate misc charge based on terms code extra charge feature.

ORD_MISC_CHRG_ACT_NO

24

String

 

Not used.

ORD_FREIGHT_AMOUNT

5.2

Double

 

If you do not assign a value (or assign 0) to this field, in FinishOrder method it may automatically calculate freight if this feature is enabled.

ORD_FREIGHT_ACT_NO

24

String

 

Not used.

ORD_SALES_TAX_AMT_1

6.2

Double

 

Not used.

ORD_SALES_TAX_AMT_2

6.2

Double

 

Not used.

ORD_SALES_TAX_AMT_3

6.2

Double

 

Not used.

ORDER_COMM_PERCENT

2.2

Double

 

Not used.

ORDER_COMM_AMOUNT

6.2

Double

 

Not used.

ORDER_COMMENT1

35

String

 

Auto assign comment based on eContact feature is not supported.

ORDER_COMMENT2

35

String

 

See ORDER_COMMENT1.

ORDER_COMMENT3

35

String

 

See ORDER_COMMENT1.

ORDER_PAYMENT_AMOUNT

7.2

Double

 

To use this field, you will usually use it in conjunction with EliCrCrd or EliAutDP web services which create A/R open payment records. The payment information is written to Order Header with CreateHeader method. Then at the FinishOrder method, the system will allocate A/R Open Item record if there is order payment info.

ORDER_PAYMNT_DIS_AMT

6.2

Double

 

Not used.

ORDER_CHECK_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

This field is used in conjunction with ORDER_PAYMENT_AMOUNT. This is the document number in A/R open item and not necessarily the check number.

ORDER_CHECK_DATE

8

Date

 

This field is used in conjunction with ORDER_PAYMENT_AMOUNT.

ORDER_CASH_ACT_NO

24

String

 

Not used.

ORDER_DATE_PICKED

8

Date

 

Not used.

ORDER_DATE_BILLED

8

Date

 

Not used.

ORDER_INVOICE_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_INVOICE_DATE

8

Date

 

Not used.

ORDER_SELECTION_CODE

1

String

 

Not used.

ORDER_POSTED_DATE

8

Date

 

Not used.

ORDER_PART_PSTED_FLG

1

String

 

Not used.

ORDSHPTO_FRE_FRM_FLG

1

String

 

Not used.

ORDBILTO_FRE_FRM_FLG

1

String

 

Not used.

ORDER_COPY_TO_BM_FLG

1

String

 

Not used.

ORDER_EDI_FLAG

1

String

Y

If you do not use EDI, you may consider setting this flag to “Y” as a way to indicate that this is an order created through web services.

ORDER_CLOSED_FLAG

1

String

 

Not used.

ORDER_ACC_MISC_AMT

5.2

Double

 

Not used.

ORDER_ACC_FREIGHT

5.2

Double

 

Not used.

ORDER_ACC_TOT_TAXBLE

7.2

Double

 

Not used.

ORDER_ACC_SALES_TAX

7.2

Double

 

Not used.

ORDER_ACC_TOT_SALES

7.2

Double

 

Not used.

ORDER_STORE_NO

6

String

 

Not used.

ORDER_BILL_TO_NO

6

String

 

Order Bill To Number is another way to set up customer with ship-to, but without setting up the ship-to. If you do not know how this feature works, do not pass a value here.

ORDER_RMA_STATUS

1

String

 

Not used.

ORDER_PHANTM_INV_FLG

1

String

 

Not used.

ORDER_DEPT_NO

6

String

 

Not used.

ORDER_BOL_PRINTED

1

String

 

Not used.

ORDER_ORGIN_INV_NO

6

String

 

Not used.

ORDER_PAYMENT_TP

1

String

 

This field is used in conjunction with ORDER_PAYMENT_AMOUNT. The possible values are P=Payment or C=Credit.

ORDER_EDI_EXP_FLG

1

String

 

Not used.

ORDER_BOL_NO

10

String

 

Not used.

ORDER_SHIP_ACK_DATE

8

Date

 

Not used.

ORDER_PO_REQ_GEN_FL

1

String

 

Not used.

ORDER_PICK_TICK_CUT

8

Date

 

Not used.

ORDER_ORD_EDI_EXP_F

1

String

 

Not used.

ORDER_SHIP_TO_XREF

17

String

 

Not used.

ORDER_856_EXP_FLG

1

String

Y

Not used.

ORDER_ORD_ACK_SENT

1

String

Y

Not used.

OrderTimeRelease

2

Date

 

Not used.

ErrorDupPoFlag

1

String

Y

Defaults to “Y.” If this field is “Y”, this method will check if a duplicate customer PO exists in the Order Header file based on the Elliott Order Header Global Setup flag “5. Duplicate Criteria For PO # in Sales Order?”  If you do not wish the system to check for a duplicate PO number, set this flag to “N.”

VendorNo

6

String

Y

Not used in standard version.

VoucherNo

6

String

 

Not used in standard version.

OrderTimeReleaseNew

2

Integer

 

Two-digit hours for Order Time Release in Elliott Invoice Printing if Global Setup flag “7. Turn ON Time Release Order?” is set to “Y.”

* Upper = Y indicates the value of the property will be converted to upper case.

               

CreateHeaderResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is the description of return code. For example, if return code is zero, you can expect “OK” in this field. If the order is placed on hold, the ReturnMsg will contain a number > 1024.

Order_No

Prior to V8.5: Integer

V8.5 and Above: String

The order number for created order.

 

Code Example (VB)

The following sample codes will create an order without line item. ReturnCode equal to zero means an order is created, but if the ReturnMsg does not contain "OK" there is a warning message in ReturnMsg.

Dim Service As New webServicesOrder.EliorderService
Dim Input As New webServicesOrder.CreateHeaderInput
Dim Result As New webServicesOrder.CreateHeaderResult
Input.ORDER_CUSTOMER_NO = "A100"
Input.ORD_FREIGHT_AMOUNT = 8.5
Result = Service.CreateHeader("","",Input)
If Result.ReturnCode = 0  Then
  If Result.ReturnMsg.Contains("OK") Then
     lblResult.Text = “Order  ” + Result.Order_No + “ Header Created”
  Else
   lblResult.Text = “Order ” + Result.Order_No + “ Header Created with Warning”  
  End If
Else
   lblResult.Text = Result.ReturnMsg
  lblReturnCd.Text = Result.ReturnCode.ToString
End If

CreateLineItem

This method creates a line item for an order. You will find that using the CreateOrder method, which will create the Order Header and Order Line Items, is much more convenient to use.

If you wish to add line items to an existing order, you should use this method to add line items followed by the FinishOrder method to cause the order total amounts to recalculate.

Usage:

CreateLineItemResult = A.CreateLineItem(UserName, UserPassword, CreateLineItemInput)

Parameters UserName and UserPassword are not used at this moment.

 

CreateLineItemInput Structure

Property Name

Length

Type

Upper

Detail

LINE_ITM_ORDER_NO

6

Prior to V8.5: Integer

V*.5 and Above: String

 

Required.

LINE_ITM_SEQ_NO

3

Integer

 

Not used. System automatically assigns next sequence number starting from 1.

LINE_ITM_ITEM_NO

15

String

Y

Required.

LINE_ITM_ORD_NO_ALT1

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_ORD_NO_ALT2

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_PICK_SEQ

8

String

 

Not used. The value will come from item or inventory location pick sequence.

LINE_ITM_DESC1

30

String

 

Defaults to item description 1 in item file.

LINE_ITM_DESC2

30

String

 

Defaults to item description 2 in the item file. If you should pass description 1 and not pass description 2 (or leave it blank), the result may not be desirable.

LINE_ITM_SERL_LOT_NO

15

String

 

This field is for lot number only. For serial number, do not pass any value to this field.

LINE_ITM_SER_EFF_DT

8

Date

 

Not used.

LINE_ITM_LOT_EXP_DT

8

Date

 

Not used.

LINE_ITM_QTY_ORDRD

9.3

Double

 

Defaults to 1.

LINE_ITM_QTY_TO_SHIP

9.3

Double

 

If order type is “Q” (quote), the ship qty will be zero and this field will be ignored.

If order type is “I” (invoice), the ship qty will be equal to order qty and this field will be ignored.

If order type = “O” (order), and both this field and LINE_ITM_QTY_BCK_ORD is not passed or zero, then Elliott will evaluate the Global Setup Line Item Screen, for flag “11. Default Qty-To-Ship To Zero?” If “Y”, then this field is zero. If “N,” then this field will be equal to Qty Order.  If you should assign a value to this field, then system will check if Qty Order = Qty-To-Ship + Qty-BO. If not, then you will receive error code 28 for formula error.

LINE_ITM_UNIT_PRICE

6.4

Double

 

If not passed, this method will calculate customer’s default unit price for this item.

LINE_ITM_DISC_PCT

3.2

Double

 

Defaults to order discount percent (i.e., customer discount percent).

LINE_ITM_REQST_DATE

8

Date

 

Defaults to order shipping date. If order shipping date is blank (i.e., ASAP), default to system date.

LINE_ITM_QTY_BCK_ORD

9.3

Double

 

If order type is “Q” (quote) or “I” (invoice), B/O qty will be zero and this field will be ignored.

If order type = “O” (order), please refer to LINE_ITM_QTY_TO_SHIP on how the value is determined.

LINE_QTY_RET_TO_STCK

9.3

Double

 

Not used.

LINE_ITM_BACKORD_FG

1

String

 

Not used. System will auto assign the value from item’s backorderable flag.

LINE_ITM_UOM

2

String

 

Defaults to the item’s stocking UOM. Can also be set to selling UOM and in that case, quantity, price and cost will be calculated based on selling UOM ratio.

LINE_ITM_UNIT_COST

6.4

Double

 

Not used. System uses default item unit cost based on the cost method in I/M setup.

LINE_ITM_UNIT_WEIGHT

5.3

Double

 

Not used. System uses default item weight.

LINE_COMM_CALC_TYPE

1

String

 

Not used. System will determine this flag based on commission setup in Elliott.

LINE_COMM_PCT_OR_AMT

5.2

Double

 

See LINE_COMM_CALC_TYPE.

LINE_ITM_PROMISE_DT

8

Date

 

Defaults to LINE_ITM_REQST_DATE.

LINE_ITM_TAXABLE_FG

1

String

 

Not used.

LINE_ITM_STOCKED_FG

1

String

 

Not used.

LINE_ITM_CONTRL_FG

1

String

 

Not used.

LINE_ITM_SELECT_CD

1

String

 

Not used.

LINE_TOTAL_QTY_ORDRD

9.3

Double

 

Not used.

LINE_TOTAL_QTY_SHIPD

9.3

Double

 

Not used.

LINE_ITM_TAXBLE_FLG1

1

String

 

Not used.

LINE_ITM_TAXBLE_FLG2

1

String

 

Not used.

LINE_ITM_TAXBLE_FLG3

1

String

 

Not used.

LINE_ITM_PRICE_ORG

6.4

Double

 

Not used.

LINE_ITM_CPY_TO_BM_F

1

String

 

Not used.

LINE_ITM_EXPLODE_KIT

1

String

 

Not used.

LINE_ITM_BM_ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_MUL_FTR_FG

1

String

 

Not used.

LINE_ITM_PRC_FIXD_FG

1

String

 

Not used.

LINE_ITM_NO_PACKAGE

4

Integer

 

Not used.

LINE_ITM_PO_XR_SEQNO

3

Integer

 

Not used.

LINE_ITM_PROD_CATE

3

String

Y

Defaults to the item’s product category.

LINE_ITM_REASON_CODE

6

String

Y

If you do not know how line item reason code works, do not pass any value here.

LINE_ITM_PRC_LVL_NO

2

Integer

 

Not used.

LINE_ITM_BKT_ORD_NO

 

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_BKT_SEQ_NO

 

Integer

 

Not used.

LINE_ITM_STLY_TMP_FG

 

String

 

Not used.

LINE_ITM_VENDOR_NO

6

String

Y

If you do not know how line item vendor number works, do not pass any value here.

LINE_ITM_ORG_ITM_NO

15

String

Y

Defaults to item number. If you do not know how this works, don’t pass any value here.

LINE_ITM_EDI_TURNAR

30

String

Y

This field is used as a pass through purpose for EDI orders. If you are not sure how it works, don’t pass any value here.

IMHLTFIL_TRX_ID

9

Double

 

This is not used by the standard version.

UseSetDiscPct

1

String

 

If you wish to override line item’s default discount percent (i.e., customer’s discount percent), you must set this flag to “Y.” Otherwise system will use the default discount percent.

UseSetUnitPrice

1

String

 

If you wish to override line item’s default unit price, you must set this flag to “Y.” Otherwise, system will use the default calculated unit price.

* Upper = Y indicates the value of the property will be converted to upper case.

 

Output Parameter

Parameter Name

Type

Detail

CreateLineItemResult

Integer

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

 

Code Example (VB)

The following sample codes will create a line item to order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Input As New webServicesOrder.CreateLineItemInput
Dim Result As Integer
Input.LINE_ITM_ORDER_NO = "123456"
Input.LINE_ITM_ITEM_NO = “557799”
Input.LINE_ITM_QTY_ORDRD = 5
Input.LINE_ITM_QTY_TO_SHIP = 5
Result = Service.CreateLineItem("","",Input)
If Result = 0 Then
  lblResult.Text = "Line Item Created"
Else
   lblReturnCd.Text = Result
End If

DeleteOrder

This method deletes an order and the associated records like line items, PO reference records, notes, attribute, event, link, e-contacts. After deleting the order, it also sets the flag “deleted” = ‘Y’ in WSORDHDR table.Usage:

DeleteOrderResult = A.DeleteOrder(UserName, UserPassword, ORDER_NO)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameter

Parameter Name

Required

Length

Type

Detail

ORDER_NO

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

 

Output Parameter

Parameter

Type

Detail

DeleteOrderResult

Integer

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

 

Code Example (VB)

The following sample codes will delete order# 123456 and associated records.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New Integer
Dim ORDER_NO As String = "123456"
Result = Service.DeleteOrder("","",ORDER_NO)
If Result = 0 Then
  lblResult.Text = "Order Deleted"
Else
  lblReturnCd.Text = Result
End If

FinishOrder

This purpose of this method is to finish an order similar to what the order billing screen does. After CreateHeader and CreateLineItem methods are called, you must call the FinishOrder method to calculate the order total amount, check if order needs to be put on credit hold, and make the order complete.

You will find that using CreateOrder method -- which will create the Order Header, line items and perform the task in FinishOrder method -- is much more convenient to use.

Usage:

FinishOrderResult = A.FinishOrder(UserName, UserPassword, ORDER_NO, ORD_FREIGHT_AMOUNT,  ORDER_MISC_CHRG_AMT, UseAutoFreight, UseAutoMiscChrg)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameters

The following fields only work when current order freight amount is zeros:

ORD_FREIGHT_AMOUNT

UseAutoFreight

That is to say, if you choose to assign ORD_FREIGHT_AMOUNT during CreateHeader method, then don’t bother to assign freight amount again during FinishOrder method because it will be ignored.

 

The following fields only work when current order misc charge amount is zeros:

ORDER_MISC_CHRG_AMT

UseAutoFreight

That is to say, if you choose to assign ORD_MISC_CHRG_AMT during CreateHeader method, then don’t bother to assign misc. charge amount again during FinishOrder method because it will be ignored.

 

Property Name

Length

Type

Upper

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Required.

ORD_FREIGHT_AMOUNT

5.2

Double

 

If current order header freight amount is greater than zero, then its value will not be overridden.

Otherwise, you can set UseAutoFreight = “Y” to calculate it, or set “N” and manually assign a value here.

ORDER_MISC_CHRG_AMT

5.2

Double

 

If current order header misc charge amount is greater than zero, then its value will not be overridden.

Otherwise, you can set UseAutoMiscCharg = “Y” to calculate it, or set “N” and manually assign a value here.

UseAutoFreight

1

String

 

Default is “N”. If you wish to set this flag as “Y” to auto calculate freight, then you should not assign a freight amount during CreateHeader method.

UseAutoMiscChrg

1

String

 

Default is “N”. If you wish to set this flag as “Y” to auto calculate misc. charge, then you should not assign a misc. charge amount during CreateHeader method.

 

Output Parameter

Parameter Name

Type

Detail

FinishOrderResult

Integer

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

 

Code Example (VB)

The following sample will assign freight amount to the order, then do the finish order process for order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New Integer
Dim ORDER_NO As String = "123456"
Dim ORD_FREIGHT_AMOUNT as Double = 15
Dim ORDER_MISC_CHRG_AMT as Double = 0
Result = Service.FinishOrder("","", ORDER_NO, ORD_FREIGHT_AMOUNT,  ORDER_MISC_CHRG_AMT, “N”, “N”)
If Result = 0 Then
  lblResult.Text = "Order Finished"
Else
  lblReturnCd.Text = Result
End If

 

ChangeHeader

This method provides a way to change an order Header to certain order header fields. This method is to simulate "Order Entry", "Change" behavior. We only allow change to the "O" type of order, the order selection code must = "C" (Complete), and the order-date-pick = zeroes (the pick ticket is not printed yet). We don't allow change to "I" and "C" type of order because it may involve the calculation of the order Misc. Charge, Freight Charge and Tax Amount which is possible to do, but we are not supporting that at this moment.

Usage:

ChangeHeaderResult = A.ChangeHeader(UserName, UserPassword, ChangeHeaderInput)

Parameters UserName and UserPassword are not used at this moment.

 ·        This method provides the ability to clear supported fields, for fields with data type String, just pass a space. On the other hand, if you do not provide any value (null), then it implies you don’t want to change the field.

·        To clear fields with data type Double, set “Y” to the “Clear” flag (i.e. ClearFreightAmount, ClearMiscChrgAmount). The reason for this special field to clear Freight or Misc. Charge is because there’s no way to pass a null value to the numeric field. So even if you don’t set any value to Freight and Misc. Charge, our web services will receive the zero value. We can’t assume receiving a zero value for Freight or Misc. Charge means to clear these two fields. Therefore, we add these two field ClearFreightAmount and ClearMiscChrgAmount for the clearing purpose.

·        To clear sales commission, set the corresponding salesman to space.

 

ChangeHeaderInput Structure

The followings are a list of supported properties at this moment.

 

Supported Property

Property Name

Length

Type

Upper

Detail

ORDER_NO

6

Prior to V8.5: Integer

V85. and Above: String

 

Required.

ORDER_PURCH_ORDER_NO

25

String

 

 

ErrorDupPoFlag

1

String

Y

“Y” (Default) or “N”. If PO number is provided and the flag is “Y” and Global Setup is set to check duplicate PO, then this method will check if the new PO number is duplicated in database. If duplication is found, error code 44 will be returned.

ClearFreightAmount

1

String

Y

“Y” or “N” (Default). If set to “Y”, freight amount will be cleared to zero.

ORD_FREIGHT_AMOUNT

5.2

Double

 

To set this value for an “O” type of order, the order billing screen global setup must allow users to access the billing screen during order entry. To set this field to zeroes will not cause the value in Freight Amount get cleared. You must set ClearFreightAmount to “Y” and not set value at this field (or set it to zero) to clear it.

ClearMiscChrgAmount

1

String

Y

“Y” or “N” (Default). If set to “Y”, misc. charge amount will be cleared to zero.

ORDER_MISC_CHRG_AMT

5.2

Double

 

To set this value for an “O” type of order, the order billing screen global setup must allow users to access the billing screen during order entry. To set this field to zeroes will not cause the value in Misc. Charge get cleared. You must set ClearMiscChrgAmount to “Y” and not set value at this field (or set it to zero) to clear it.

ORDER_TERMS_CODE

2

String

Y

At this moment, we don’t automatically calculate misc. charges as the terms code is changed through this method.

ORDER_SHIP_VIA_CODE

2

String

Y

At this moment, we don’t automatically calculate freight amount at the ship via code is changed through this method.

ORDER_SHIP_INSTRUC1

40

String

 

 

ORDER_SHIP_INSTRUC2

40

String

 

Shipping Instruction 2 is independent set from Instruction 1. That is to say, if you set Shipping Instruction 1 to some value, and leave Shipping Instruction 2 as null, then Shipping Instruction 2’s value will not change.

ORDER_COMMENT1

35

String

 

 

ORDER_COMMENT2

35

String

 

Order Comment 2 is independent from Order Comment 1. That is to say, if you set Order Comment 1 to some value, and leave Order Comment 2 as null, then Order Comment 2’s value will not change.

ORDER_COMMENT3

35

String

 

Same principle as Order Comment 2.

ORDER_SALESMAN_NO_1

3

String

 

Salesman 1, 2 and 3 are considered a group. Therefore, even if you only want to change one salesman, you must pass all salesman values.

ORDER_SALESMAN_NO_2

3

String

 

If you set this value, then salesman 1 must be set as well.

ORDER_SALESMAN_NO_3

3

String

 

If you set this value, then salesman 2 must be set as well.

ORDER_SLS_PCT_COMM_1

3.2

Double

 

If there’s only one salesman, this field is assumed to be 100.00 and you don’t have to set.

ORDER_SLS_PCT_COMM_2

3.2

Double

 

If there’s more than one salesman, you must set this value.

ORDER_SLS_PCT_COMM_3

3.2

Double

 

If there are three salesmen, you must set this value.

ORDER_JOB_NO

6

String

 

Job Number may be required per Global Setup. In that case, you may not clear the job number by passing a space.

ORDER_SHIP_TO_NO

4

String

Y

Changing this field will not cause freight to recalculate, nor to cause the restricted attribute to be checked. It will not cause the order ship via or salesman be changed to the new ship-to default values. However, the order tax codes will be re-assigned to the new ship-to tax codes.

ORDER_FRGHT_PAY_CODE

1

String

 

The valid values are: C=Consignee, P=Prepaid, T=Third Party, R=Recpt(Collect), S=Sender, H=Hold, or blank.

If the order is on hold, and you change this field to one of the valid value above, it is equivalent to release this order and the corresponding hold note will be deleted. In this scenario, if you change this field to blank, system will automatically copy customer default freight pay code value to this field.

You can also change this field to “H” to hold this order. If you wish to add hold reason notes, you may use EliNotesServices web service.

* Upper = Y indicates the value of the property will be converted to upper case.

 

Not Supported Properties

The following are a list of properties in this web method, but we are not supporting them at this moment. The reason we add them into this method is we may support them in the future and we do not wish to break the web services contract with your client side code at that time. So we reserve these fields at this moment for possible future expansion. If you should set a value to these fields, you will receive an error code 45.

·        ORDER_SHIP_TO_NAME

·        ORDER_SHIP_TO_ADDR_1

·        ORDER_SHIP_TO_ADDR_2

·        ORDER_SHIP_TO_CITY

·        ORDER_SHIP_TO_ST

·        ORDER_SHIP_TO_ZIPCD

·        ORD_SHIP_TO_COUNTRY

·        ORDER_CUSTOMER_NO

·        ORDER_BILL_TO_NO

·        ORDER_BILL_TO_NAME

·        ORDER_BILL_TO_ADDR_1

·        ORDER_BILL_TO_ADDR_2

·        ORDER_BILL_TO_CITY

·        ORDER_BILL_TO_ST

·        ORDER_BILL_TO_ZIPCD

·        ORD_BILL_TO_COUNTRY

·        ORDER_MFGING_LOC

·        ORDER_TYPE

·        ORDER_CHECK_NO

·        ORDER_CHECK_DATE

·        ORDER_PAYMENT_AMOUNT

·        ORDER_PAYMENT_TP

·        ORDER_SHIPPING_DATE

·        ORDER_TAX_CODE_1

·        ORDER_TAX_CODE_2

·        ORDER_TAX_CODE_3

·        ORDER_TAX_PERCENT_1

·        ORDER_TAX_PERCENT_2

·        ORDER_TAX_PERCENT_3

·        ORDER_EDI_FLAG

·        ORDER_ORD_ACK_SENT

·        ORDER_PROFIT_CENTER

·        OrderTimeReleaseNew

·        VoucherNo

·        VendorNo

·        ORDER_DATE_ENTERED

·        ORDER_DATE

·        ORDER_APPLY_TO_NO

·        ORDER_NO_ALT

·        ORDER_CUST_BALANCE

·        ORDER_SLS_COMM_AMT_1

·        ORDER_SLS_COMM_AMT_2

·        ORDER_SLS_COMM_AMT_3

·        ORDER_DISC_PERCENT

·        ORDER_DEPARTMENT

·        ORDER_AR_REFERENCE

·        ORDER_TOTAL_SALE_AMT

·        ORDER_TOTL_TAXBL_AMT

·        ORDER_TOTAL_COST

·        ORDER_TOTAL_WEIGHT

·        ORD_FREIGHT_ACT_NO

·        ORD_SALES_TAX_AMT_1

·        ORD_SALES_TAX_AMT_2

·        ORD_SALES_TAX_AMT_3

·        ORDER_COMM_PERCENT

·        ORDER_COMM_AMOUNT

·        ORDER_PAYMNT_DIS_AMT

·        ORDER_CASH_ACT_NO

·        ORDER_DATE_PICKED

·        ORDER_DATE_BILLED

·        ORDER_INVOICE_NO

·        ORDER_INVOICE_DATE

·        ORDER_SELECTION_CODE

·        ORDER_POSTED_DATE

·        ORDER_PART_PSTED_FLG

·        ORDSHPTO_FRE_FRM_FLG

·        ORDBILTO_FRE_FRM_FLG

·        ORDER_COPY_TO_BM_FLG

·        ORDER_CLOSED_FLAG

·        ORDER_ACC_MISC_AMT

·        ORDER_ACC_FREIGHT

·        ORDER_ACC_TOT_TAXBLE

·        ORDER_ACC_SALES_TAX

·        ORDER_ACC_TOT_SALES

·        ORDER_STORE_NO

·        ORDER_RMA_STATUS

·        ORDER_PHANTM_INV_FLG

·        ORDER_DEPT_NO

·        ORDER_BOL_PRINTED

·        ORDER_ORGIN_INV_NO

·        ORDER_EDI_EXP_FLG

·        ORDER_BOL_NO

·        ORDER_SHIP_ACK_DATE

·        ORDER_PO_REQ_GEN_FL

·        ORDER_PICK_TICK_CUT

·        ORDER_ORD_EDI_EXP_F

·        ORDER_SHIP_TO_XREF

·        ORDER_856_EXP_FLG

·        ORD_MISC_CHRG_ACT_NO

 

ChangeHeaderResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

 

Code Example (VB)

The following sample VB.NET code will change order number 123456 and set the new ship-to to “0001” and purchase order number to “1234567890123456”.

Dim Service As New webServicesOrder.EliorderService
Dim Input As New webServicesOrder.ChangeHeaderInput
Dim Result As New webServicesOrder.ChangeHeaedrResult
Input.ORDER_NO = 123456
Input.ORDER_SHIP_TO_NO = “0001”
Input.ORDER_PURCH_ORDER_NO = “1234567890123456”
Result = Service.ChangeHeader("","",Input)
If Result.ReturnCode = 0 Then
  lblResult.Text = "Order Header Changed"
Else
  lblReturnCd.Text = Result.ReturnMsg
End If

ChangeOrder

Don’t let the name of this method mislead you. This method provides a way to change an order line item’s quantity. If Qty-To-Ship and Qty-BO are passed, system will enforce the rule that Qty-Order = Qty-To-Ship + Qty-BO. You can’t change order header with this method. For that, please refer to ChangeHeader method.

Usage:

ChangeOrderResult = A.ChangeOrder(UserName, UserPassword, ORDER_NO, LINE_ITM_SEQ_NO, LINE_ITM_QTY_ORDRD, double LINE_ITM_QTY_BCK_ORD, LINE_ITM_QTY_TO_SHIP)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameters

Parameter

Length

Type

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

LINE_ITM_SEQ_NO

3

Integer

Required.

LINE_ITM_QTY_ORDRD

9.3

Double

Defaults to 0.

LINE_ITM_QTY_BCK_ORD

9.3

Double

If order type is “Q” (quote) or “I” (invoice), B/O qty will be zero and this field will be ignored.

If order type = “O” (order), this field default to zero or order qty based on Elliott Order Line Item Screen Global Setup, “11. Default Qty-To-Ship To Zero?” If you should assign a value to this field, then you must also assign Qty To-Ship, so that Qty Order = Qty-To-Ship + Qty-BO. Otherwise, you will receive error code 28.

LINE_ITM_QTY_TO_SHIP

9.3

Double

If order type is “Q” (quote), to ship qty will be zero and this field will be ignored.

If order type is “I” (invoice), to ship qty will be equal to order qty and this field will be ignored.

If order type = “O” (order), this field default to zero or order qty based on Elliott Order Line Item Screen Global Setup, “11. Default Qty-To-Ship To Zero?” If you assign a value, the formula in LINE_ITM_QTY_BCK_ORD needs to hold.

 

Output Parameter

Parameter

Type

Detail

ChangeOrderResult

Integer

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

 

Code Example (VB)

The following sample codes will Change the quantity information for the fist line item of order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.ChangeOrderResult
Dim ORDER_NO As String = 1"23456"
Dim LINE_ITM_SEQ_NO As Integer = 1
Dim LINE_ITM_QTY_ORDRD As Double = 4
Dim LINE_ITM_QTY_BCK_ORD As Double = 1
Dim LINE_ITM_QTY_TO_SHIP As Double = 3
Result = Service.ChangeOrder("","",ORDER_NO, LINE_ITM_SEQ_NO, LINE_ITM_QTY_ORDRD, double LINE_ITM_QTY_BCK_ORD, LINE_ITM_QTY_TO_SHIP)
If Result = 0 Then
  lblResult.Text = "Order Changed"
Else
  lblReturnCd.Text = Result
End If

ReapplyCredit

This method allows you to add payment information to an order after the order is already created. It will update order header’s payment related fields as well as allocate A/R Open Item record with the payment info provided. You will receive an error if the order payment information is already on file.

Usage:

ReapplyCreditResult = A.ReapplyCredit(UserName, UserPassword, ORDER_NO, ORDER_CHECK_NO, ORDER_CHECK_DATE, ORDER_PAYMENT_TP, ORDER_PAYMENT_AMOUNT)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameters

Parameter

Length

Type

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

ORDER_CHECK_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

This field is used in conjunction with ORDER_PAYMENT_AMOUNT. This is the document number in A/R open item and not necessary the check number.

ORDER_CHECK_DATE

8

Date

Required.

This field is used in conjunction with ORDER_PAYMENT_AMOUNT.

ORDER_PAYMENT_TP

1

String

Required.

This field is used in conjunction with ORDER_PAYMENT_AMOUNT. The possible values are P=Payment or C=Credit.

ORDER_PAYMENT_AMOUNT

7.2

Double

Must be greater than zero.

To use this field, you will usually use it in conjunction with EliCrCrd or EliAutDP web services which create A/R open payment records. The payment information is written to Order Header with CreateHeader method. Then at the FinishOrder method, system will allocate A/R Open Item record if there is order payment info.

 

Output Parameter

Parameter

Type

Detail

ReapplyCreditResult

Integer

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

 

Code Example (VB)

The following example code will add payment information to order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New Integer
Dim ORDER_NO As String = "123456"
Dim ORDER_CHECK_NO As String = "001234"
Dim ORDER_CHECK_DATE As DateTime = New Date(2012,12,16)
Dim ORDER_PAYMENT_TP As String = “P”
Dim ORDER_PAYMENT_AMOUNT As Double = 20
Result = Service.ReapplyCredit(“”, “”, ORDER_NO, ORDER_CHECK_NO, ORDER_CHECK_DATE, ORDER_PAYMENT_TP, ORDER_PAYMENT_AMOUNT)
If Result = 0 Then
  lblResult.Text = "Payment Is Applied to Order Successfully"
Else
  lblReturnCd.Text = Result
End If

ViewOrder

This method returns an order header’s information. For majority of the fields in the returned structure, please refer to CreateHeader for more detail explanation.

Usage:

ViewOrderResult = A.ViewOrder(UserName, UserPassword, ORDER_NO)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameter

Parameter

Required

Length

Type

Detail

ORDER_NO

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

 

ViewOrderResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

ORDER_856_EXP_FLG

String

This field indicates if the shipping data of the order had been exported. It is mostly used for EDI Advanced Shipment Notice (856) purpose.

ORDER_ACC_FREIGHT

Double

This is accumulated total of past shipment freight amount for this order.

ORDER_ACC_MISC_AMT

Double

See ORDER_ACC_FREIGHT.

ORDER_ACC_SALES_TAX

Double

See ORDER_ACC_FREIGHT.

ORDER_ACC_TOT_SALES

Double

See ORDER_ACC_FREIGHT.

ORDER_ACC_TOT_TAXBLE

Double

See ORDER_ACC_FREIGHT.

ORDER_APPLY_TO_NO

Prior to V8.5: Integer

V8.5 and Above: String

This field is only applicable for credit memo to indicate which invoice that this credit memo shall be applied to upon posting.

ORDER_AR_REFERENCE

String

“AR Reference” field in Order Billing Screen.

ORDER_BILL_TO_ADDR_1

String

Order Bill To address 1 in Order Entry Screen.

ORDER_BILL_TO_ADDR_2

String

Order Bill To address 2 in Order Entry Screen.

ORDER_BILL_TO_CITY

String

Order Bill To City in Order Entry Screen.

ORD_BILL_TO_COUNTRY

String

Order Bill To Country in Order Entry Screen.

ORDBILTO_FRE_FRM_FLG

String

Under most situations, this flag is “N”. If “Y”, it implies international address where the Bill to City, State and Zip is not in standard format.

ORDER_BILL_TO_NAME

String

Order Bill To Name.

ORDER_BILL_TO_NO

String

Order Bill To Number.

ORDER_BILL_TO_ST

String

Order Bill To Street.

ORDER_BILL_TO_ZIPCD

String

Order Bill To Zip Code.

ORDER_BOL_PRINTED

String

Bill of Lading (BOL) is a shipping document for truck shipment. This flag indicates if BOL had been printed.

ORDER_CASH_ACT_NO

String

“Csh Act” field in Order Billing Screen.

This is the 24 digits chart of account numbers for payments on the order, if any.

ORDER_CHECK_DATE

Date

“Check Date” field in Order Billing Screen.

ORDER_CHECK_NO

Prior to V8.5: Integer

V8.5 and Above: String

“Check No” field in Order Billing Screen.

ORDER_COMM_AMOUNT

Double

“Comm Amount” field in Order Billing Screen.

ORDER_COMMENT1

String

The first line of “Comments” field in Order Billing Screen.

ORDER_COMMENT2

String

The second line of “Comments” field in Order Billing Screen.

ORDER_COMMENT3

String

The third line of “Comments” field in Order Billing Screen.

ORDER_COMM_PERCENT

Double

“Comm Percent” field in Order Billing Screen.

ORDER_CUST_BALANCE

String

Order customer balance.

ORDER_CUSTOMER_NO

String

“Cust No” field in Order Entry Screen.

ORDER_DATE

Date

“Order Date” field in Order Entry Screen.

ORDER_DATE_BILLED

Date

This indicates the date this order was billed.

ORDER_DATE_ENTERED

Date

This indicates the date this order was entered.

ORDER_DATE_PICKED

Date

This indicates the date this order’s picking ticket printed.

ORDER_DEPARTMENT

String

Order department name.

ORDER_DEPT_NO

String

“Dept No” field in Order Entry Screen.

ORDER_DISC_PERCENT

Double

“Disc Pct” field in Order Entry Screen.

ORDER_EDI_EXP_FLG

String

EDI Export Flag. If this is an EDI order, this flag indicates if the invoice (810) had been exported for EDI interfacing.

ORDER_EDI_FLAG

String

Indicates whether this order is from EDI.

ORDER_BOL_NO

String

See ORDER_BOL_PRINTED.

ORD_FREIGHT_AMOUNT

Double

“Freight” field in Order Billing Screen.

ORD_FREIGHT_ACT_NO

String

Freight account number.

ORDER_FRGHT_PAY_CODE

String

“Frt/Ord St” field in Order Entry Screen.

ORDER_INVOICE_DATE

Date

This indicates the date this order was invoiced.

ORDER_INVOICE_NO

Prior to V8.5: Integer

V8.5 and Above: String

Invoice number for this order.

ORDER_JOB_NO

String

“Job No” field in Order Entry Screen.

ORDER_MFGING_LOC

String

“Whse Loc” field in Order Entry Screen.

ORDER_MISC_CHRG_AMT

Double

“Misc Charges” field in Order Billing Screen.

ORD_MISC_CHRG_ACT_NO

String

Order misc charge account number.

ORDER_NO

Prior to V8.5: Integer

V8.5 and Above: String

Order Number.

ORDER_ORD_EDI_EXP_F

String

This is different from ORDER_EDI_EXP_FLG. ORDER_ORD_EDI_EXP_F refers to if the order (not the invoice) had been exported. This is normally used to acknowledge Order received or to indicate the Order had been changed purpose.

ORDER_PART_PSTED_FLG

String

This flag indicate if the order had been partially posted (backorder).

ORDER_PAYMENT_AMOUNT

Double

“Amount Paid” field in Order Billing Screen.

ORDER_PAYMNT_DIS_AMT

Double

Payment discount amount.

ORDER_PAYMENT_TP

String

Payment type.

ORDER_PHANTM_INV_FLG

String

This flag indicates if this is a phantom invoice. See Global Setup -> Order Heeder Screen, “1. Use Phantom Invoices” for more details.

ORDER_PICK_TICK_CUT

Date

Pick Ticket Cut-Off Date. During picking ticket printing, the pick ticket cut-off date will be written back to the order header to be used for later billing selection purpose.

ORDER_PURCH_ORDER_NO

String

“Cust Po No” field in Order Entry Screen. The full 25 characters is returned.

ORDER_PO_REQ_GEN_FL

String

In special order situation, system can create a purchase order based on sales order. This flag indicates if the special order’s PO has been created.

ORDER_POSTED_DATE

Date

This indicates the date this order was posted.

ORDER_PROFIT_CENTER

String

The profit center for this order.

ORDER_RMA_STATUS

String

For credit memo, it could also serve as RMA (return materials authorization) purpose. RMA status could be blank, W=Waiting for Returns, P=RMA Printed, R=Return Material Is Received.

ORDER_SALESMAN_NO_1

String

Salesman number 1 in Order Entry Screen.

ORDER_SALESMAN_NO_2

String

See ORDER_SALESMAN_NO_1.

ORDER_SALESMAN_NO_3

String

See ORDER_SALESMAN_NO_1.

ORDER_SLS_COMM_AMT_1

Double

Salesman commission amount for salesman 1.

ORDER_SLS_COMM_AMT_2

Double

See ORDER_SLS_COMM_AMT_1.

ORDER_SLS_COMM_AMT_3

Double

See ORDER_SLS_COMM_AMT_1.

ORDER_SLS_PCT_COMM_1

Double

Salesman commission percent in Order Entry Screen.

ORDER_SLS_PCT_COMM_2

Double

See ORDER_SLS_PCT_COMM_1.

ORDER_SLS_PCT_COMM_3

Double

See ORDER_SLS_PCT_COMM_1.

ORD_SALES_TAX_AMT_1

Double

Tax amount for Tax Cd 1.

ORD_SALES_TAX_AMT_2

Double

Tax amount for Tax Cd 2.

ORD_SALES_TAX_AMT_3

Double

Tax amount for Tax Cd 3.

ORDER_SELECTION_CODE

String

The possible values are I=Incomplete, C=Complete, S=Selected, N=Invoice Printed But Not OK, X=Invoice Printed, Z=Invoice Posted.

ORDER_SHIP_INSTRUC1

String

The first line of “Ship Instr” field in Order Entry Screen.

ORDER_SHIP_INSTRUC2

String

The second line of “Ship Instr” field in Order Entry Screen.

ORDER_SHIPPING_DATE

Date

“Ship Date” field in Order Entry Screen.

ORDER_SHIP_TO_ADDR_1

String

Ship-To address line 1 in Order Entry Screen.

ORDER_SHIP_TO_ADDR_2

String

Ship-To address line 2 in Order Entry Screen.

ORDER_SHIP_TO_CITY

String

Ship-To City in Order Entry Screen.

ORD_SHIP_TO_COUNTRY

String

Ship-To Country in Order Entry Screen.

ORDSHPTO_FRE_FRM_FLG

String

See ORDBILTO_FRE_FRM_FLG.

ORDER_SHIP_TO_NAME

String

Ship to Name.

ORDER_SHIP_TO_NO

String

“Ship-To No” field in Order Entry Screen.

ORDER_SHIP_TO_ST

String

Ship-To City in Order Entry Screen.

ORDER_SHIP_TO_XREF

String

Ship-To X-Ref#.

ORDER_SHIP_TO_ZIPCD

String

Ship-To Zip Code in Order Entry Screen.

ORDER_SHIP_VIA_CODE

String

“Ship Via” field in Order Entry Screen.

ORDER_STORE_NO

String

“Store#” field in Order Entry Screen.

ORDER_TAX_CODE_1

String

“Tax Cd 1” field in Order Entry Screen.

ORDER_TAX_CODE_2

String

“Tax Cd 2” field in Order Entry Screen.

ORDER_TAX_CODE_3

String

“Tax Cd 3” field in Order Entry Screen.

ORDER_TAX_PERCENT_1

Double

Tax percent for Tax Cd 1.

ORDER_TAX_PERCENT_2

Double

Tax percent for Tax Cd 2.

ORDER_TAX_PERCENT_3

Double

Tax percent for Tax Cd 3.

ORDER_TERMS_CODE

String

“Terms” field in Order Entry Screen.

ORDER_TOTAL_COST

Double

Total Cost of this order.

ORDER_TOTAL_SALE_AMT

Double

Total Sales Amount of this order.

ORDER_TOTL_TAXBL_AMT

Double

Total Taxable Amount of this order.

ORDER_TOTAL_WEIGHT

Double

Total Weight of this order.

ORDER_TYPE

String

“Order Type” field in Order Entry Screen. Possible values are: O = Order, I = Invoice, C = Credit Memo, B = Blanket Order and Q = Quote.

ShipManifestDate()

Date

This information is retrieved from Shipment Tracking Note belong to the order.

ShipTrackNo()

String

This information is retrieved from Shipment Tracking Note belong to the order.

CPBOXSHP_BOX_NO

Integer

This indicates how many boxes for the order based on shipment verification.

 

Code Example (VB)

The following sample codes will return order information of order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.ViewOrderResult
Dim ORDER_NO As String = "123456"
Result = Service.ViewOrder(UserName, UserPassword, ORDER_NO)
If Result = 0 Then
  lblResult.Text = "ViewOrder Successfully Executed"
Else
  lblReturnCd.Text = Result
End If

ViewLineLS

This method allows you to see the serial numbers that had been assigned to an order line item, i.e. the records in the CPORDLS table. You will only find serial number if (a) The order line item is a serialized item; and (b) It is an “I” type of order, or it is an “O” type of order that had been selected for billing already.

Usage:

ViewLineLsResult = A.ViewLineLs(UserName, UserPassword, ORDER_NO, ORD_LINE_LS_LIN_NO)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameters

Parameter

Length

Type

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

Required.

ORD_LINE_LS_LIN_NO

3

Integer

Required. This is the line item sequence number. If not assigned, you will receive error code 21.

* Upper = Y indicates the value of the property will be converted to upper case.

 

ViewLineLsResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

ORD_LINE_LS_BIN_NO

String

This is the first serial number’s bin number, even though multiple serial numbers may be returned.

ORD_LINE_LS_ITEM_NO

String

This is the same item number as of the order line item.

ORD_LINE_LS_LIN_NO

Integer

This is the line item sequence number.

ORD_LINE_LS_ORD_NO

Prior to V8.5: Integer

V8.5 and Above: 

This is the same order number from the order header.

ORD_LINE_LS_QTY

Double

This value will always be 1.

ORD_LINE_LS_S_L_NO()

String

This is an array of the serial number that’s assigned to the particular order line item.

 

Code Example (VB)

The following sample code will return the first line item’s serial number and related information for order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.ViewLineLsResult
Dim ORDER_NO As String = "123456"
Dim ORD_LINE_LS_LIN_NO As Integer = 1
Result = Service.ViewLineLs("","", ORDER_NO, ORD_LINE_LS_LIN_NO)
If Result.ReturnCode = 0 Then
  If Result.ORD_LINE_LS_S_L_NO.Length > 0 Then
      lblResult.Text = "The first serial# for this item is " & _
      Result.ORD_LINE_LS_S_L_NO(0)
  Else
      lblResult.Text = "No serial# for this item"
  End If
Else
  lblResult.Text = Result.ReturnMsg
End If

TrialAllocation

If you directly create order by using CreateOrder or CreateLineItem methods, you may potentially run into the following issues: (1) The item is locked which will cause the creation of order failed; and (2) You may not have sufficient quantity availability to fulfill the order.

To address these issues, the TrialAllocation method is created. This method will return current item’s on-hand, allocated, and backorder qty to ItemDataSet. In addition, for the incorrect items or locked items it will return error code to ItemDataSet.

If there is any error in ItemDataSet, you should not proceed to create the Order.

EliOrderServices Web Services does not prevent over allocation since whether to allow backorder depends on your business rule. So you may need to check if the order will cause over allocation. i.e.

                Qty-Available = Qty-OH – Qty-Allocation

If Qty-Order > Qty-Available, then this is over allocation and you should not create the order if backorder is not allowed.

This method uses the same input structure as CreateOrder method. However, most of the Order Header and Line Item fields are not used because this method will not actually create an order.

Usage:

TrialAllocationResult = A.TrialAllocation(UserName, UserPassword, CreateOrderInput)

Parameters UserName and UserPassword are not used at this moment.

 

CreateOrderInput Structure

For TrialAllocation method, only “LineItem”, ORDER_CUSTOMER_NO and “ORDER_MFGING_LOC” properties are used.

Property Name

Length

Type

Upper

Detail

LineItem()

 

LineItem

 

This array contains all items in the order. Please refer to LineItem Structure.

ORDER_MFGING_LOC

2

String

Y

Item manufacturing location for line items. Default to blank.

 If ORDER_MFGING_LOCATION is not provided

  • If the ORDER_CUSTOMER_NO is provided, the method will look up the customer default location. If found, the method will use the location for the trial allocation. If not found, the I/M Control file default location will be used for the trial allocation. 
  • If the ORDER_CUSTOMER_NO is not provided,  the I/M Control file default location will be used for the trial allocation.
 If ORDER_MFGING_LOCATION is provided, this location will be used for the trial allocation even if the ORDER_CUSTOMER_NO is provided.

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_DATE_ENTERED

8

Date

 

Not used.

ORDER_DATE

8

Date

 

Not used.

ORDER_TYPE

1

String

Y

Not used.

ORDER_APPLY_TO_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_PURCH_ORDER_NO

25

String

 

Not used.

ORDER_CUSTOMER_NO

6

String

Y

Customer number to determine default inventory location to use for the trial allocation. Default to blank.

 If ORDER_MFGING_LOCATION is not provided

  • If the ORDER_CUSTOMER_NO is provided, the method will look up the customer default location. If found, the method will use the location for the trial allocation. If not found, the I/M Control file default location will be used for the trial allocation.
  • If the ORDER_CUSTOMER_NO is not provided, the I/M Control file default location will be used for the trial allocation.
 If ORDER_MFGING_LOCATION is provided, this location will be used for the trial allocation even if the ORDER_CUSTOMER_NO is provided.

ORDER_NO_ALT

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_CUST_BALANCE

1

String

 

Not used.

ORDER_BILL_TO_NAME

30

String

 

Not used.

ORDER_BILL_TO_ADDR_1

30

String

 

Not used.

ORDER_BILL_TO_ADDR_2

30

String

 

Not used.

ORDER_BILL_TO_CITY

15

String

 

Not used.

ORDER_BILL_TO_ST

2

String

 

Not used.

ORDER_BILL_TO_ZIPCD

10

String

 

Not used.

ORD_BILL_TO_COUNTRY

20

String

 

Not used.

ORDER_SHIP_TO_NO

4

String

Y

Not used.

ORDER_SHIP_TO_NAME

30

String

 

Not used.

ORDER_SHIP_TO_ADDR_1

30

String

 

Not used.

ORDER_SHIP_TO_ADDR_2

30

String

 

Not used.

ORDER_SHIP_TO_CITY

15

String

 

Not used.

ORDER_SHIP_TO_ST

2

String

 

Not used.

ORDER_SHIP_TO_ZIPCD

10

String

 

Not used.

ORD_SHIP_TO_COUNTRY

20

String

 

Not used.

ORDER_SHIPPING_DATE

8

Date

 

Not used.

ORDER_SHIP_VIA_CODE

2

String

Y

Not used.

ORDER_TERMS_CODE

2

String

Y

Not used.

ORDER_FRGHT_PAY_CODE

1

String

 

Not used.

ORDER_SHIP_INSTRUC1

40

String

 

Not used.

ORDER_SHIP_INSTRUC2

40

String

 

Not used.

ORDER_SALESMAN_NO_1

3

String

 

Not used.

ORDER_SLS_PCT_COMM_1

3.2

Double

 

Not used.

ORDER_SLS_COMM_AMT_1

7.2

Double

 

Not used.

ORDER_SALESMAN_NO_2

3

String

 

Not used.

ORDER_SLS_PCT_COMM_2

3.2

Double

 

Not used.

ORDER_SLS_COMM_AMT_2

7.2

Double

 

Not used.

ORDER_SALESMAN_NO_3

3

String

 

Not used.

ORDER_SLS_PCT_COMM_3

3.2

Double

 

Not used.

ORDER_SLS_COMM_AMT_3

7.2

Double

 

Not used.

ORDER_TAX_CODE_1

3

String

 

Not used.

ORDER_TAX_PERCENT_1

2.4

Double

 

Not used.

ORDER_TAX_CODE_2

3

String

 

Not used.

ORDER_TAX_PERCENT_2

2.4

Double

 

Not used.

ORDER_TAX_CODE_3

3

String

 

Not used.

ORDER_TAX_PERCENT_3

2.4

Double

 

Not used.

ORDER_DISC_PERCENT

3.2

Double

 

Not used.

ORDER_JOB_NO

6

String

 

Not used.

ORDER_PROFIT_CENTER

8

String

 

Not used.

ORDER_DEPARTMENT

8

String

 

Not used.

ORDER_AR_REFERENCE

30

String

 

Not used.

ORDER_TOTAL_SALE_AMT

7.2

Double

 

Not used.

ORDER_TOTL_TAXBL_AMT

7.2

Double

 

Not used.

ORDER_TOTAL_COST

7.2

Double

 

Not used.

ORDER_TOTAL_WEIGHT

7.3

Double

 

Not used.

ORDER_MISC_CHRG_AMT

5.2

Double

 

Not used.

ORD_MISC_CHRG_ACT_NO

24

String

 

Not used.

ORD_FREIGHT_AMOUNT

5.2

Double

 

Not used.

ORD_FREIGHT_ACT_NO

24

String

 

Not used.

ORD_SALES_TAX_AMT_1

6.2

Double

 

Not used.

ORD_SALES_TAX_AMT_2

6.2

Double

 

Not used.

ORD_SALES_TAX_AMT_3

6.2

Double

 

Not used.

ORDER_COMM_PERCENT

2.2

Double

 

Not used.

ORDER_COMM_AMOUNT

6.2

Double

 

Not used.

ORDER_COMMENT1

35

String

 

Not used.

ORDER_COMMENT2

35

String

 

Not used.

ORDER_COMMENT3

35

String

 

Not used.

ORDER_PAYMENT_AMOUNT

7.0

Double

 

Not used.

ORDER_PAYMNT_DIS_AMT

6.2

Double

 

Not used.

ORDER_CHECK_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_CHECK_DATE

8

Date

 

Not used.

ORDER_CASH_ACT_NO

24

String

 

Not used.

ORDER_DATE_PICKED

8

Date

 

Not used.

ORDER_DATE_BILLED

8

Date

 

Not used.

ORDER_INVOICE_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

ORDER_INVOICE_DATE

8

Date

 

Not used.

ORDER_SELECTION_CODE

1

String

 

Not used.

ORDER_POSTED_DATE

8

Date

 

Not used.

ORDER_PART_PSTED_FLG

1

String

 

Not used.

ORDSHPTO_FRE_FRM_FLG

1

String

 

Not used.

ORDBILTO_FRE_FRM_FLG

1

String

 

Not used.

ORDER_COPY_TO_BM_FLG

1

String

 

Not used.

ORDER_EDI_FLAG

1

String

Y

Not used.

ORDER_CLOSED_FLAG

1

String

 

Not used.

ORDER_ACC_MISC_AMT

5.2

Double

 

Not used.

ORDER_ACC_FREIGHT

5.2

Double

 

Not used.

ORDER_ACC_TOT_TAXBLE

7.2

Double

 

Not used.

ORDER_ACC_SALES_TAX

7.2

Double

 

Not used.

ORDER_ACC_TOT_SALES

7.2

Double

 

Not used.

ORDER_STORE_NO

6

String

 

Not used.

ORDER_BILL_TO_NO

6

String

 

Not used.

ORDER_RMA_STATUS

1

String

 

Not used.

ORDER_PHANTM_INV_FLG

1

String

 

Not used.

ORDER_DEPT_NO

6

String

 

Not used.

ORDER_BOL_PRINTED

1

String

 

Not used.

ORDER_ORGIN_INV_NO

6

String

 

Not used.

ORDER_PAYMENT_TP

1

String

 

Not used.

ORDER_EDI_EXP_FLG

1

String

 

Not used.

ORDER_BOL_NO

10

String

 

Not used.

ORDER_SHIP_ACK_DATE

8

Date

 

Not used.

ORDER_PO_REQ_GEN_FL

1

String

 

Not used.

ORDER_PICK_TICK_CUT

8

Date

 

Not used.

ORDER_ORD_EDI_EXP_F

1

String

 

Not used.

ORDER_SHIP_TO_XREF

17

String

 

Not used.

ORDER_856_EXP_FLG

1

String

 

Not used.

ORDER_ORD_ACK_SENT

1

String

Y

Not used.

OrderTimeRelease

2

Date

 

Not used.

ErrorDupPoFlag

1

String

Y

Not used.

UseAutoFreight

1

String

 

Not used.

UserAutoMiscChrg

1

String

 

Not used.

OrderInstruction

 

String

 

Not used.

CustomerEmail

 

String

 

Not used.

ContactID

 

Integer

 

Not used.

Phone

 

String

 

Not used.

DisplayFreight

 

Double

 

Not used.

DisplayTax

 

Double

 

Not used.

DisplayMisc

 

Double

 

Not used.

DisplayAmtPaid

 

Double

 

Not used.

DisplayTaxPercent1

 

Double

 

Not used.

DisplayTaxPercent2

 

Double

 

Not used.

DisplayTaxPercent3

 

Double

 

Not used.

ApprovalID

 

String

 

Not used.

IPAddress

 

String

 

Not used.

WebSiteURL

 

String

 

Not used.

OrderContact()

 

OrderContact

 

Not used.

Links()

 

String

 

Not used.

Attributes()

 

String

 

Not used.

Notes()

 

String

 

Not used.

VendorNo

 

String

 

Not used.

VoucherNo

 

String

 

Not used.

SendConfirmationEmail

 

String

 

Not used.

OrderTimeReleaseNew

 

Integer

 

Not used.

* Upper = Y indicates the value of the property will be converted to upper case.

 

LineItem Structure

Property Name

Length

Type

Upper

Detail

LINE_ITM_ITEM_NO

15

String

Y

Required.

LINE_ITM_QTY_ORDRD

9.3

Double

 

Defaulte to 0. Since order zero quantity does not make sense, you should pass a valid quantity to this field.

IMHLTFIL_TRX_ID

 

Double

 

Hold transaction ID is not used in standard version.

LINE_ITM_ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_SEQ_NO

3

Integer

 

Not used.

LINE_ITM_ORD_NO_ALT1

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_ORD_NO_ALT2

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_PICK_SEQ

8

String

 

Not used.

LINE_ITM_DESC1

30

String

 

Not used.

LINE_ITM_DESC2

30

String

 

Not used.

LINE_ITM_SERL_LOT_NO

15

String

 

Not used.

LINE_ITM_SER_EFF_DT

8

Date

 

Not used.

LINE_ITM_LOT_EXP_DT

8

Date

 

Not used.

LINE_ITM_QTY_TO_SHIP

9.3

Double

 

Not used.

LINE_ITM_UNIT_PRICE

6.4

Double

 

Not used.

LINE_ITM_DISC_PCT

3.2

Double

 

Not used.

LINE_ITM_REQST_DATE

8

Date

 

Not used.

LINE_ITM_QTY_BCK_ORD

9.3

Double

 

Not used.

LINE_QTY_RET_TO_STCK

9.3

Double

 

Not used.

LINE_ITM_BACKORD_FG

1

String

 

Not used.

LINE_ITM_UOM

2

String

 

Not used.

LINE_ITM_UNIT_COST

6.4

Double

 

Not used.

LINE_ITM_UNIT_WEIGHT

5.3

Double

 

Not used.

LINE_COMM_CALC_TYPE

1

String

 

Not used.

LINE_COMM_PCT_OR_AMT

5.2

Double

 

Not used.

LINE_ITM_PROMISE_DT

8

Date

 

Not used.

LINE_ITM_TAXABLE_FG

1

String

 

Not used.

LINE_ITM_STOCKED_FG

1

String

 

Not used.

LINE_ITM_CONTRL_FG

1

String

 

Not used.

LINE_ITM_SELECT_CD

1

String

 

Not used.

LINE_TOTAL_QTY_ORDRD

9.3

Double

 

Not used.

LINE_TOTAL_QTY_SHIPD

9.3

Double

 

Not used.

LINE_ITM_TAXBLE_FLG1

1

String

 

Not used.

LINE_ITM_TAXBLE_FLG2

1

String

 

Not used.

LINE_ITM_TAXBLE_FLG3

1

String

 

Not used.

LINE_ITM_PRICE_ORG

6.4

Double

 

Not used.

LINE_ITM_CPY_TO_BM_F

1

String

 

Not used.

LINE_ITM_EXPLODE_KIT

1

String

 

Not used.

LINE_ITM_BM_ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_MUL_FTR_FG

1

String

 

Not used.

LINE_ITM_PRC_FIXD_FG

1

String

 

Not used.

LINE_ITM_NO_PACKAGE

4

Integer

 

Not used.

LINE_ITM_PO_XR_SEQNO

3

Integer

 

Not used.

LINE_ITM_PROD_CATE

3

String

Y

Not used.

LINE_ITM_REASON_CODE

6

String

Y

Not used.

LINE_ITM_PRC_LVL_NO

2

Integer

 

Not used.

LINE_ITM_BKT_ORD_NO

 

Prior to V8.5: Integer

V8.5 and Above: String

 

Not used.

LINE_ITM_BKT_SEQ_NO

 

Integer

 

Not used.

LINE_ITM_STLY_TMP_FG

 

String

 

Not used.

LINE_ITM_VENDOR_NO

6

String

Y

Not used.

LINE_ITM_ORG_ITM_NO

15

String

Y

Not used.

LINE_ITM_EDI_TURNAR

30

String

Y

Not used.

DisplayUnitPrice

 

Double

 

Not used.

UseSetDiscPct

1

String

 

Not used.

UseSetUnitPrice

1

String

 

Not used.

* Upper = Y indicates the value of the property will be converted to upper case.

 

TrialAllocationResult Structure

Property Name

Type

Detail

ReturnCode

Integer

This is always zero; The actual return code is at each line item level which is stored in ItemDataSet.

ReturnMsg

String

This is always empty.

ItemDataSet

DataSet

See ItemDataSet Structure.

 

ItemDataSet Structure

This DataSet contains a table "ItemAllocations" with the following columns:

Column

Type

Detail

ItemNo

String

This is the line item’s item number.

HoldTrxId

Integer

Equal to input IMHLTFIL_TRX_ID which is not used with standard version.

ErrCode

Integer

Return code for this item. Zero means OK. For non-zero values, possible values are 8, 9, 41 & 42 please see “EliOrderService Return Code” section for details.

ErrMsg

String

This is description of error code. For example, if return code is 0, you can expect “OK” in this field.

OrderQty

Double

Equal to input LINE_ITM_QTY_ORDRD.

QtyOnHand

Double

This is the current quantity on hand for this item at the specified warehouse location. You may use this and next field to determine if over allocation will take place.

QtyAllocated

Double

This is the current quantity allocated.

QtyBackOrdered

Double

This is the current quantity backorder.

 

Code Example (VB)

The following sample code will perform the trail allocation.

Dim Service As New webServicesOrder.EliorderService
Dim Input As New webServicesOrder.CreateOrderInput
ReDim Input.LineItem(0)
Input.LineItem(0) = New webServicesOrder.LineItem
Input.LineItem(0).LINE_ITM_ITEM_NO = "G123456"
Input.LineItem(0).LINE_ITM_QTY_ORDRD = 2
Result = Service.TrialAllocation("", "", Input)
If Result.ItemDataSet.Tables(0).Rows(0).Item("ErrCode").ToString = “0” Then
  lblResult.Text = "First item qty on hand:" + _
  Result.ItemDataSet.Tables(0).Rows(0).Item("QtyOnHand").ToString + _
  "  Allocated Qty:" + _
  Result.ItemDataSet.Tables(0).Rows(0).Item _
  ("QtyAllocated").ToString + _
  "  B/O Qty:" + _
  Result.ItemDataSet.Tables(0).Rows(0).Item("QtyBackOrdered").ToString
Else
  lblResult.Text = "First Item has an error, error code " + _
      Result.ItemDataSet.Tables(0).Rows(0).Item("ErrCode").ToString
  lblReturnCd.Text = _
      Result.ItemDataSet.Tables(0).Rows(0).Item("ErrMsg").ToString
End If

CreateOrder

This method creates an order with header and line items in one method call. In addition, it will call the FinishOrder method to calculate the order total amount, apply payment information and determine if the order should be put on hold. If the order is created successfully, it can also send an order confirmation email.

Generally speaking, it is much easier to use this method to create order instead of using CreateHeader, CreateLineItem and FinishOrder individually.

Usage:

CreateOrderResult = A.CreateOrder(UserName, UserPassword, CreateOrderInput)

Parameters UserName and UserPassword are not used at this moment.

 

 

CreateOrderInput Structure

Most properties of this structure are the same as CreateHeaderInput, FinishOrder and FinishOrder method’s input parameters. Please refer to them for property details.

Property Name

Length

Type

Upper

Detail

ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateHeaderInput.

ORDER_DATE_ENTERED

8

Date

 

See CreateHeaderInput.

ORDER_DATE

8

Date

 

See CreateHeaderInput.

ORDER_TYPE

1

String

 

See CreateHeaderInput.

ORDER_APPLY_TO_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateHeaderInput.

ORDER_PURCH_ORDER_NO

25

String

Y

See CreateHeaderInput.

ORDER_CUSTOMER_NO

6

String

Y

See CreateHeaderInput.

ORDER_NO_ALT

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateHeaderInput.

ORDER_CUST_BALANCE

1

String

 

See CreateHeaderInput.

ORDER_BILL_TO_NAME

30

String

 

See CreateHeaderInput.

ORDER_BILL_TO_ADDR_1

30

String

 

See CreateHeaderInput.

ORDER_BILL_TO_ADDR_2

30

String

 

See CreateHeaderInput.

ORDER_BILL_TO_CITY

15

String

 

See CreateHeaderInput.

ORDER_BILL_TO_ST

2

String

 

See CreateHeaderInput.

ORDER_BILL_TO_ZIPCD

10

String

 

See CreateHeaderInput.

ORD_BILL_TO_COUNTRY

20

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_NO

4

String

Y

See CreateHeaderInput.

ORDER_SHIP_TO_NAME

30

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_ADDR_1

30

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_ADDR_2

30

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_CITY

15

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_ST

2

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_ZIPCD

10

String

 

See CreateHeaderInput.

ORD_SHIP_TO_COUNTRY

20

String

 

See CreateHeaderInput.

ORDER_SHIPPING_DATE

8

Date

 

See CreateHeaderInput.

ORDER_SHIP_VIA_CODE

2

String

Y

See CreateHeaderInput.

ORDER_TERMS_CODE

2

String

Y

See CreateHeaderInput.

ORDER_FRGHT_PAY_CODE

1

String

 

See CreateHeaderInput.

ORDER_SHIP_INSTRUC1

40

String

 

See CreateHeaderInput.

ORDER_SHIP_INSTRUC2

40

String

 

See CreateHeaderInput.

ORDER_SALESMAN_NO_1

3

String

 

See CreateHeaderInput.

ORDER_SLS_PCT_COMM_1

3.2

Double

 

See CreateHeaderInput.

ORDER_SLS_COMM_AMT_1

7.2

Double

 

See CreateHeaderInput.

ORDER_SALESMAN_NO_2

3

String

 

See CreateHeaderInput.

ORDER_SLS_PCT_COMM_2

3.2

Double

 

See CreateHeaderInput.

ORDER_SLS_COMM_AMT_2

7.2

Double

 

See CreateHeaderInput.

ORDER_SALESMAN_NO_3

3

String

 

See CreateHeaderInput.

ORDER_SLS_PCT_COMM_3

3.2

Double

 

See CreateHeaderInput.

ORDER_SLS_COMM_AMT_3

7.2

Double

 

See CreateHeaderInput.

ORDER_TAX_CODE_1

3

String

 

See CreateHeaderInput.

ORDER_TAX_PERCENT_1

2.4

Double

 

See CreateHeaderInput.

ORDER_TAX_CODE_2

3

String

 

See CreateHeaderInput.

ORDER_TAX_PERCENT_2

2.4

Double

 

See CreateHeaderInput.

ORDER_TAX_CODE_3

3

String

 

See CreateHeaderInput.

ORDER_TAX_PERCENT_3

2.4

Double

 

See CreateHeaderInput.

ORDER_DISC_PERCENT

3.2

Double

 

See CreateHeaderInput.

ORDER_JOB_NO

6

String

 

See CreateHeaderInput.

ORDER_MFGING_LOC

2

String

Y

See CreateHeaderInput.

ORDER_PROFIT_CENTER

8

String

 

See CreateHeaderInput.

ORDER_DEPARTMENT

8

String

 

See CreateHeaderInput.

ORDER_AR_REFERENCE

30

String

 

See CreateHeaderInput.

ORDER_TOTAL_SALE_AMT

7.2

Double

 

See CreateHeaderInput.

ORDER_TOTL_TAXBL_AMT

7.2

Double

 

See CreateHeaderInput.

ORDER_TOTAL_COST

7.2

Double

 

See CreateHeaderInput.

ORDER_TOTAL_WEIGHT

7.3

Double

 

See CreateHeaderInput.

ORDER_MISC_CHRG_AMT

5.2

Double

 

See CreateHeaderInput.

ORD_MISC_CHRG_ACT_NO

24

String

 

See CreateHeaderInput.

ORD_FREIGHT_AMOUNT

5.2

Double

 

See CreateHeaderInput.

ORD_FREIGHT_ACT_NO

24

String

 

See CreateHeaderInput.

ORD_SALES_TAX_AMT_1

6.2

Double

 

See CreateHeaderInput.

ORD_SALES_TAX_AMT_2

6.2

Double

 

See CreateHeaderInput.

ORD_SALES_TAX_AMT_3

6.2

Double

 

See CreateHeaderInput.

ORDER_COMM_PERCENT

2.2

Double

 

See CreateHeaderInput.

ORDER_COMM_AMOUNT

6.2

Double

 

See CreateHeaderInput.

ORDER_COMMENT1

35

String

 

See CreateHeaderInput.

ORDER_COMMENT2

35

String

 

See CreateHeaderInput.

ORDER_COMMENT3

35

String

 

See CreateHeaderInput.

ORDER_PAYMENT_AMOUNT

7.0

Double

 

See CreateHeaderInput.

ORDER_PAYMNT_DIS_AMT

6.2

Double

 

See CreateHeaderInput.

ORDER_CHECK_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateHeaderInput.

ORDER_CHECK_DATE

8

Date

 

See CreateHeaderInput.

ORDER_CASH_ACT_NO

24

String

 

See CreateHeaderInput.

ORDER_DATE_PICKED

8

Date

 

See CreateHeaderInput.

ORDER_DATE_BILLED

8

Date

 

See CreateHeaderInput.

ORDER_INVOICE_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateHeaderInput.

ORDER_INVOICE_DATE

8

Date

 

See CreateHeaderInput.

ORDER_SELECTION_CODE

1

String

 

See CreateHeaderInput.

ORDER_POSTED_DATE

8

Date

 

See CreateHeaderInput.

ORDER_PART_PSTED_FLG

1

String

 

See CreateHeaderInput.

ORDSHPTO_FRE_FRM_FLG

1

String

 

See CreateHeaderInput.

ORDBILTO_FRE_FRM_FLG

1

String

 

See CreateHeaderInput.

ORDER_COPY_TO_BM_FLG

1

String

 

See CreateHeaderInput.

ORDER_EDI_FLAG

1

String

Y

See CreateHeaderInput.

ORDER_CLOSED_FLAG

1

String

 

See CreateHeaderInput.

ORDER_ACC_MISC_AMT

5.2

Double

 

See CreateHeaderInput.

ORDER_ACC_FREIGHT

5.2

Double

 

See CreateHeaderInput.

ORDER_ACC_TOT_TAXBLE

7.2

Double

 

See CreateHeaderInput.

ORDER_ACC_SALES_TAX

7.2

Double

 

See CreateHeaderInput.

ORDER_ACC_TOT_SALES

7.2

Double

 

See CreateHeaderInput.

ORDER_STORE_NO

6

String

 

See CreateHeaderInput.

ORDER_BILL_TO_NO

6

String

 

See CreateHeaderInput.

ORDER_RMA_STATUS

1

String

 

See CreateHeaderInput.

ORDER_PHANTM_INV_FLG

1

String

 

See CreateHeaderInput.

ORDER_DEPT_NO

6

String

 

See CreateHeaderInput.

ORDER_BOL_PRINTED

1

String

 

See CreateHeaderInput.

ORDER_ORGIN_INV_NO

6

String

 

See CreateHeaderInput.

ORDER_PAYMENT_TP

1

String

 

See CreateHeaderInput.

ORDER_EDI_EXP_FLG

1

String

 

See CreateHeaderInput.

ORDER_BOL_NO

10

String

 

See CreateHeaderInput.

ORDER_SHIP_ACK_DATE

8

Date

 

See CreateHeaderInput.

ORDER_PO_REQ_GEN_FL

1

String

 

See CreateHeaderInput.

ORDER_PICK_TICK_CUT

8

Date

 

See CreateHeaderInput.

ORDER_ORD_EDI_EXP_F

1

String

 

See CreateHeaderInput.

ORDER_SHIP_TO_XREF

17

String

 

See CreateHeaderInput.

ORDER_856_EXP_FLG

1

String

 

See CreateHeaderInput.

ORDER_ORD_ACK_SENT

1

String

Y

See CreateHeaderInput.

OrderTimeRelease

2

Date

 

See CreateHeaderInput.

ErrorDupPoFlag

1

String

Y

See CreateHeaderInput.

UseAutoFreight

1

String

 

See Input Parameters of FinishOrder method.

UserAutoMiscChrg

1

String

 

See Input Parameters of FinishOrder method.

LineItem()

 

LineItem

 

This array contains all items in the order. Please refer to LineItem Structure.

OrderInstruction

 

String

 

If the length of this field is less than 40 characters, it will write to shipping instruction 1; if the length is more than 40 characters, from the 41 to 80 characters will be written to shipping instruction 2. This orverwrites ORDER_SHIP_INSTRUC1 and ORDER_SHIP_INSTRUC2.

In addition, this order instruction will appear in the bottom of confirmation email body.

CustomerEmail

 

String

 

This is the email address for Order Confirmation only which is sent by this web services. To send to multiple email addresses, use “;” to separate each address. If you wish an email address to receive both order and shipping confirmation email, use OrderContact().

ContactID

 

Integer

 

This will be written to database table WSORDHDR for auditing. If you wish this contact to receive Elliott emails (e.g. shipping confirmation), you should also populate OrderContact().

Phone

 

String

 

This will be written to database table WSORDHDR for auditing.

DisplayFreight

 

Double

 

Since freight may be re-calculated or overridden manually in Elliott, this information is written to WSORDHDR table for auditing.

DisplayTax

 

Double

 

See DisplayFreight

DisplayMisc

 

Double

 

See DisplayFreight.

DisplayAmtPaid

 

Double

 

See DisplayFreight.

DisplayTaxPercent1

 

Double

 

See DisplayFreight.

DisplayTaxPercent2

 

Double

 

See DisplayFreight.

DisplayTaxPercent3

 

Double

 

See DisplayFreight.

ApprovalID

 

String

 

Initially, this field was intended to store credit card approval number into WSORDHDR for auditing. Since EliCrCrdService or EliAutDPService web services will also record credit card approval number into the ARCRCLOG table, you can skip this field.

IPAddress

 

String

 

This will be written to database table WSORDHDR for auditing and fraud investigation.

WebSiteURL

 

String

 

Since multiple websites can use this web services to create Elliott order. You may provide the URL of your website so this will be written to database table WSORDHDR for auditing.

OrderContact()

 

OrderContact

 

An Array of OrderContact to be added to CPORDHDR to send order confirmation (this method) and shipping confirmation (Elliott) email. The structure contains two properties: ContactID (Integer) and ContactEmail (String). You only need to provide either one of them. If you pass both ContactID and ContactEmail, system will use ContactID to look up corresponding email and ignore ContactEmail.

Links()

 

String

 

Not used.

Attributes()

 

String

 

Not used.

Notes()

 

String

 

Not used. You may use EliNoteService to add notes for the order.

VendorNo

 

String

 

Not used in standard version.

VoucherNo

 

String

 

Not used in standard version.

SendConfirmationEmail

 

String

 

Default “Y”. If this field is not set to “N”, system will send confirmation email after successfully created an order.

OrderTimeReleaseNew

 

Integer

 

See CreateHeaderInput.

* Upper = Y indicates the value of the property will be converted to upper case.

 

LineItem Structure

Most properties of this structure are the same as CreateLineItemInput structure. Please refer to CreateLineItemInput for property details.

Property Name

Length

Type

Upper

Detail

LINE_ITM_ITEM_NO

15

String

Y

See CreateLineItemInput.

LINE_ITM_QTY_ORDRD

9.3

Double

 

See CreateLineItemInput.

IMHLTFIL_TRX_ID

 

Double

 

See CreateLineItemInput.

LINE_ITM_ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateLineItemInput.

LINE_ITM_SEQ_NO

3

Integer

 

See CreateLineItemInput.

LINE_ITM_ORD_NO_ALT1

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateLineItemInput.

LINE_ITM_ORD_NO_ALT2

6

Prior to V8.5: Integer

V8.5 and above: String

 

See CreateLineItemInput.

LINE_ITM_PICK_SEQ

8

String

 

See CreateLineItemInput.

LINE_ITM_DESC1

30

String

 

See CreateLineItemInput.

LINE_ITM_DESC2

30

String

 

See CreateLineItemInput.

LINE_ITM_SERL_LOT_NO

15

String

 

See CreateLineItemInput.

LINE_ITM_SER_EFF_DT

8

Date

 

See CreateLineItemInput.

LINE_ITM_LOT_EXP_DT

8

Date

 

See CreateLineItemInput.

LINE_ITM_QTY_TO_SHIP

9.3

Double

 

See CreateLineItemInput.

LINE_ITM_UNIT_PRICE

6.4

Double

 

See CreateLineItemInput.

LINE_ITM_DISC_PCT

3.2

Double

 

See CreateLineItemInput.

LINE_ITM_REQST_DATE

8

Date

 

See CreateLineItemInput.

LINE_ITM_QTY_BCK_ORD

9.3

Double

 

See CreateLineItemInput.

LINE_QTY_RET_TO_STCK

9.3

Double

 

See CreateLineItemInput.

LINE_ITM_BACKORD_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_UOM

2

String

 

See CreateLineItemInput.

LINE_ITM_UNIT_COST

6.4

Double

 

See CreateLineItemInput.

LINE_ITM_UNIT_WEIGHT

5.3

Double

 

See CreateLineItemInput.

LINE_COMM_CALC_TYPE

1

String

 

See CreateLineItemInput.

LINE_COMM_PCT_OR_AMT

5.2

Double

 

See CreateLineItemInput.

LINE_ITM_PROMISE_DT

8

Date

 

See CreateLineItemInput.

LINE_ITM_TAXABLE_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_STOCKED_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_CONTRL_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_SELECT_CD

1

String

 

See CreateLineItemInput.

LINE_TOTAL_QTY_ORDRD

9.3

Double

 

See CreateLineItemInput.

LINE_TOTAL_QTY_SHIPD

9.3

Double

 

See CreateLineItemInput.

LINE_ITM_TAXBLE_FLG1

1

String

 

See CreateLineItemInput.

LINE_ITM_TAXBLE_FLG2

1

String

 

See CreateLineItemInput.

LINE_ITM_TAXBLE_FLG3

1

String

 

See CreateLineItemInput.

LINE_ITM_PRICE_ORG

6.4

Double

 

See CreateLineItemInput.

LINE_ITM_CPY_TO_BM_F

1

String

 

See CreateLineItemInput.

LINE_ITM_EXPLODE_KIT

1

String

 

See CreateLineItemInput.

LINE_ITM_BM_ORDER_NO

6

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateLineItemInput.

LINE_ITM_MUL_FTR_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_PRC_FIXD_FG

1

String

 

See CreateLineItemInput.

LINE_ITM_NO_PACKAGE

4

Integer

 

See CreateLineItemInput.

LINE_ITM_PO_XR_SEQNO

3

Integer

 

See CreateLineItemInput.

LINE_ITM_PROD_CATE

3

String

Y

See CreateLineItemInput.

LINE_ITM_REASON_CODE

6

String

Y

See CreateLineItemInput.

LINE_ITM_PRC_LVL_NO

2

Integer

 

See CreateLineItemInput.

LINE_ITM_BKT_ORD_NO

 

Prior to V8.5: Integer

V8.5 and Above: String

 

See CreateLineItemInput.

LINE_ITM_BKT_SEQ_NO

 

Integer

 

See CreateLineItemInput.

LINE_ITM_STLY_TMP_FG

 

String

 

See CreateLineItemInput.

LINE_ITM_VENDOR_NO

6

String

Y

See CreateLineItemInput.

LINE_ITM_ORG_ITM_NO

15

String

Y

See CreateLineItemInput.

LINE_ITM_EDI_TURNAR

30

String

Y

See CreateLineItemInput.

DisplayUnitPrice

 

Double

 

Since line item unit price may be re-calculated or overridden manually in Elliott, this information is written to WSORDLIN table for auditing.

UseSetDiscPct

1

String

 

See CreateLineItemInput.

UseSetUnitPrice

1

String

 

See CreateLineItemInput.

* Upper = Y indicates the value of the property will be converted to upper case.

 

CreateOrderResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field. If the order is placed on hold, the ReturnMsg will contain a number > 1024.

OrderNo

Prior to V8.5: Integer

V8.5 and Above: String

When a new order is created, Elliott Web Services assign the next order number and return the new order number in this field. Next Order Number is defined in Global Setup -> Order Header Screen -> “19. Next Order No For Web Order?”

ORDER_CUSTOMER_NO

String

The same as input’s ORDER_CUSTOMER_NO.

LineItemErrors()

LineItemError

Contains an array of LineItemError. See LineItemError Structure for detail.

 

LineItemError Structure

Property Name

Type

Detail

ErrorCode

Integer

Error code for the line item.

LineItemIndex

Integer

Index for the line item.

LINE_ITM_ITEM_NO

String

Item number.

 

Code Example (VB)

The following sample codes will create an order with two line items.  You may create up to maximum 999 line items per order.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.CreateOrderResult
Dim Input As New webServicesOrder.CreateOrderInput
ReDim Input.LineItem(0)
Input.LineItem(0) = New webServicesOrder.LineItem
Input.ORDER_CUSTOMER_NO = "A0100"
Input.LineItem(0).LINE_ITM_ITEM_NO = "G123456"
Input.LineItem(0).LINE_ITM_QTY_ORDRD = 2
Input.LineItem(0).LINE_ITM_QTY_TO_SHIP = 2
Input.LineItem(0).LINE_ITM_UNIT_PRICE = 15.2
Input.LineItem(1).LINE_ITM_ITEM_NO = "ABC321"
Input.LineItem(1).LINE_ITM_QTY_ORDRD = 1
Input.LineItem(1).LINE_ITM_QTY_TO_SHIP = 0
Input.LineItem(1).LINE_ITM_UNIT_PRICE = 32.15
Result = Service.CreateOrder("", "", Input)
If Result.ReturnCode = 0 
   If Result.ReturnMsg.Contains("OK") Then
      lblResult.Text = “Order ” + Result.Order_No + “ Created”
  Else
     lblResult.Text = “Order ” + Result.Order_No + “ Created with Warning”  
  End If
Else
    lblResult.Text = Result.ReturnMsg
    lblReturnCd.Text = Result.ReturnCode.ToString
End If

ReCreateOrder

This method creates a new order by copying from an existing order.

Usage:

ReCreateOrderResult = A.ReCreateOrder(UserName, UserPassword, OrderNo)

Parameters UserName and UserPassword are not used at this moment.

 

Input Parameter

Parameter

Required

Length

Type

Detail

OrderNo

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

Required. This is the copy from order number.

 

ReCreateOrderResult Structure

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field. If the order is placed on hold, the ReturnMsg will contain a number > 1024.

 OrderNo

Prior to V8.5: Integer

V8.5 and Above: String

This is the newly created order’s order number.

 

Code Example (VB)

The following sample code will copy order# 123456 to a new order.

 

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.ReCreateOrderResult
Dim OrderNo As String = "123456"
Result = Service.ReCreateOrder("","",OrderNo)
If Result.ReturnCode = 0 
    If Result.ReturnMsg.Contains("OK") Then  
        lblResult.Text = "New Order Copied with Order#" + Result.OrderNo
    Else
         lblResult.Text = "New Order Copied with Order " + Result.OrderNo + " With Warning"
    End If
Else
  lblResult.Text = Result.ReturnMsg
  lblReturnCd.Text = Result.ReturnCode.ToString
End If

 

CancelOrder

This method cancels an order similar to the Distribution-> Customer Order Processing-> Utility-> Cancel Order application in Elliott. This includes marking the order as cancelled, updating the line item audit trail information, updating any A/R open credit items that have been applied to the order, deallocating inventory, updating ATP, cancelling payments, and updating the PO reference file.

 

Usage:

CancelOrderResult = A.CancelOrder(UserName, UserPassword, OrderNo)

 

Input Parameter

Parameters UserName and UserPassword are not used at this moment.

Parameter

Required

Length

Type

Upper

Detail

OrderNo

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Required.

 

Output Parameter

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

 

Code Example (VB)

The following sample code will cancel order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.CancelOrderResult
Dim OrderNo As String = "123456"
Result = Service.CancelOrder("","",OrderNo)
If Result.ReturnCode = 0 Then
  lblResult.Text = "Order Cancelled - " + OrderNo
Else
  lblResult.Text = Result.ReturnMsg
  lblReturnCd.Text = Result.ReturnCode.ToString
End If

CloseOrder

This method closes an order similar to the Distribution-> Customer Order Processing-> Processing-> Consolidate/Close Customer Order application in Elliott. This includes marking the order as closeded, updating the line item audit trail information, deallocating inventory and updating back ordered quantities, updating ATP, and updating the PO reference file.

 

Note: Only partially posted orders can be closed.

 

Usage:

CloseOrderResult = A.CloseOrder(UserName, UserPassword, OrderNo)

 

Input Parameter

Parameters UserName and UserPassword are not used at this moment.

Parameter

Required

Length

Type

Upper

Detail

OrderNo

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Required.

 

Output Parameter

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

 

Code Example (VB)

The following sample code will close order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.CloseOrderResult
Dim OrderNo As String = "123456"
Result = Service.CloseOrder("","",OrderNo)
If Result.ReturnCode = 0 Then
  lblResult.Text = "Order Closed - " + OrderNo
Else
  lblResult.Text = Result.ReturnMsg
  lblReturnCd.Text = Result.ReturnCode.ToString
End If

 

CloseOrCancelOrder

This method will determine if an order should be closed or cancelled and will attempt to either close or cancel the order. See the CloseOrder and CancelOrder method documention for further information.

 

Usage:

CloseOrCancelOrderResult = A.CloseOrCancelOrder(UserName, UserPassword, OrderNo)

 

Input Parameter

Parameters UserName and UserPassword are not used at this moment.

Parameter

Required

Length

Type

Upper

Detail

OrderNo

Y

6

Prior to V8.5: Integer

V8.5 and Above: String

 

Required.

 

Output Parameter

Property Name

Type

Detail

ReturnCode

Integer

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

ReturnMsg

String

This is description of return code. For example, if return code is zero, you can expect “OK” in this field.

 

Code Example (VB)

The following sample code will either close or cancel order# 123456.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.CloseOrCancelOrderResult
Dim OrderNo As String = "123456"
Result = Service.CloseOrCancelOrder("","",OrderNo)
If Result.ReturnCode = 0 Then
  lblResult.Text = "Order Closed/Cancelled - " + OrderNo
Else
  lblResult.Text = Result.ReturnMsg
  lblReturnCd.Text = Result.ReturnCode.ToString
End If 

SendOrderConfirmationEmail

This method sends the order confirmation email after the order is already created. You could also choose to send order confirmation email with CreateOrder method which can result in simpler coding.

Usage:

SendOrderConfirmationEmailResult = A.SendOrderConfirmationEmail(UserName, UserPassword, SendOrderConfirmationEmailInput)

Parameters UserName and UserPassword are not used at this moment.

 

SendOrderConfirmationEmailInput Structure

Property

Length

Type

Detail

ORDER_NO

 

Prior to V8.5: Integer

V8.5 and Above: String

Required.

OrderInstruction

 

String

This order instruction will be put in the button of email body.

CustomerEmail

 

String

This is the email your will send to. To send to multiple email addresses, use “;” to separate each address.

 

SendOrderConfirmationEmailResult Structure

Property

Type

Detail

ReturnCode

Integer

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

ReturnMsg

Integer

Not used.

ResponseText

Integer

If there is an error getting order contact, the error will be shown here with String “Error retrieving order contacts. Eliecont ReturnCode: XX”

 

Code Example (VB)

The following sample code will send order confirmation email to cust01@yahoo.com.

Dim Service As New webServicesOrder.EliorderService
Dim Result As New webServicesOrder.SendOrderConfirmationEmailResult
Dim Input As New webServicesOrder.SendOrderConfirmationEmailInput
Input.CustomerEmail = “cust01@yahoo.com”
Result = Service.SendOrderConfirmationEmail("","",Input)
If Result.ReturnCode = 0 Then
  lblResult.Text = "Email Sent"
Else
  lblReturnCd.Text = Result.ReturnCode.ToString
End If

EliOrderService Return Code

 

0 = OK
 1 = File Error or Assigned Order Number Already Exist (Check your Next Web order Counter Setting)
 2 = Data Missing (Customer No Missing)
 3 = Data Missing (Order No or Item Missing)
 4 = Data Missing (Order No Missing) (Reapply Credit)
 5 = Customer Not On File (Create Header)
 6 = Ship To Not On File (Create Header)
 7 = Order Not On File (Create Line Item & Delete Order)
 8 = Item Not On File Or Record Locked (Create Line Item)
 9 = Inv Location Not On File (Create Line Item)
10 = NSI Control File Not Found
11 = Customer PO No Duplicate
12 = Terms Code Not On File
13 = Ship Via Code Not On File
14 = Order Type Must Be "I" or "O"
15 = No Serial Number Assign, Line Item Not Created
16 = Line Item Qty To Ship Must Be 1 when Hold Trx ID is provide
17 = Hold Trx Not Found
18 = Hold Trx Item No Mismatch
19 = Fail To Apply A/R Open Item
20 = Customer No Not Provided (Order Inquiry & Customer Key)
21 = Order No Not Provided (Order Inquiry)
22 = Order Seq No Not Provided (Order Inquiry)
23 = Item No Not Provided (Order Inquiry)
24 = Picking Seq Not Provided (Order Inquiry)
25 = Serial No Not Provided (Order Inquiry)
26 = Data Missing (Order No & Seq No Missing)
27 = Order Line Item Not On File (Change Line Item)
28 = Quantity Formula Error (QtyOrdered <> QtyToShip + QtyBO)
29 = No Serial Number Assign, Change Not Effect
30 = Check No, Date, Amount, Type Not Provided (Reapply)
31 = Order Already Have Check No, Date, Amount, Type (Reapply)
32 = Tax Code Not Found
33 = Bill To Customer No Not Found (Create Header)
34 = Bill To Number Not Allowed in Order Header
35 = Wrong UOM
36 = Salesman Total Commission Not = 100
37 = Product Category Not On File
38 = Reason Code Not On File
39 = Vendor Number Not On File
40 = Reason Code not allow for this order type
41 = Item Record Locked
42 = Inv Location Record Locked
43 = Job No Is Required
44 = Misc. Charge & Freight Are Not Allowed Per Global Setup
45 = One Or More Unsupported Field In Input (ChangeHeader)
46 = ClearFreightAmount Must be "Y", "N" or Blank (ChangeHeader)
47 = Freight Amount must be zero while ClearFreightAmount = "Y" (ChangeHeader)
48 = ClearMiscChrgAmount Must be "Y", "N" or Blank (ChangeHeader)
49 = Misc. Chg Amt must be zero while ClearMiscChrgAmount = "Y" (ChangeHeader)
50 = This Order's Order Type Is Not 'O'(ChangeHeader)
51 = Freight Pay Code Can Only Be: blank, C, P, T, R, S, H (ChangeHeader, CreateHeader, CreateOrder)
52 = This Order's Order Selection Code Is Not 'C' (ChangeHeader)
53 = Pick Ticket Has Been Printed For This Order (ChangeHeader)
54 = Salesman1 Cannot Be Empty (ChangeHeader)
55 = Salesman2 Cannot Be Empty (ChangeHeader)
56 = Salesman1 Not On File (ChangeHeader)
57 = Salesman2 Not On File (ChangeHeader)
58 = Salesman3 Not On File (ChangeHeader)
59 = Invalid Job No
60 = Cannot Override Bill To Address (CreateHeader)61 = Cannot Override Ship To Address (CreateHeader)
61 = Cannot Override Ship To Address (CreateOrder)
62 = Transfer Order Cannot Be Closed/Cancelled (CancelOrder)
63 = Order Partially Posted - Use CloseOrder Instead (CancelOrder)
64 = Shipment Processed - Order Cannot Be Cancelled
65 = Manifest Found - Order Cannot Be Cancelled
66 = This Order Is Incomplete (CloseOrder)
67 = Order Already Closed Or Posted (CloseOrder)
68 = Order Already Invoiced (CloseOrder)
69 = Order Selected For Billing (CloseOrder)
70 = Order Not Partially Posted - Use CancelOrder Instead (CloseOrder)
71 = Item Cannot Be Backordered - System Set To Prevent
10001 = Order Not Found
10002 = Unable to create order contact 

Even though a response has a return code of 0, you should still examine the ReturnMsg field. If the order has been placed on hold, the ReturnMsg field will contain a number > 1024. This does not mean there was an error. It is additional messages like why the order is put on hold. You could have multiple reasons why an order is put on hold. Therefore, you will use the following explanation to figure out the messages. The ReturnMsg field will also contain the last  hold message that was generated when the credit check was performed.

 1025 - 1535 Order or Customer on Hold (see reason formula)
 1025 : A1
1026 : A2
1027 : A1 & A2
1028 : A3
1029 : A1 & A3
1030 : A2 & A3
1031 : A1 & A2 & A3
1032 : A4
1033 : A1 & A4
1034 : A2 & A4
1035 : A1 & A2 & A4
................................ (1036 - 1535)
1535 : A1 & A2 & A3 & A4 & A5 & A6 & A7 & A8 & A9
 
Formula = 1024 + A1 + A2 + A3 + A4 + A5 + A6 + A7 + A8 + A9
Yes =            1    2    4    8  16  32  64  128 256
No  =            0    0    0    0    0    0    0    0      0
 

Hold Status

A1 = This Order is On Hold because Customer is on hold.
A2 = This Order is On Hold Based on the AR Terms Code
A3 = This Order is On Hold For Exceeding Credit Limit
A4 = This Order is On Hold For Account Is Past Due
A5 = This Customer is On Hold For Terms Code Customer On Hold
A6 = This Order & Customer is On Hold For FFL Expire
A7 = This Order & Customer is On Hold For HGUN & AMMO Coexisted
A8 = This Order Is On Hold For Job No Is Required
A9 = This Order Is On Hold Based On Salesman 
For example, if an order is created and put on hold due to the following reasons:
                Customer Exceed Credit Limit
                Customer Account Is Past Due
We know Customer Exceed Credit Limit is A3 (value 4).
We know Customer Account Is Past Due is A4 (value 8).
Therefore, the return code will be 1024 + 4 + 8 = 1036.
The ReturnMsg will have the following value: "1036^1036^Customer Account Is Past Due." Only the last hold reason is shown. You can find all the hold reasons in the order notes created for the order.

Frequently Asked Questions

Q - I received Error 19 when use CreateOrder() method to create order. What caused it?
A - See KB article: https://support.elliott.com/knowledgebase/articles/2009015-error-code-19-using-eliorderservice-asmx-createord



 CLS               

 Updated: 5/11/23

Feedback and Knowledge Base