Updating SOAP Web Services Code When Advanced Bin / Numbered Inventory Management is Enabled

The SOAP web services code used to access bin number and serial/lot number data for items, including transaction line items, varies according to whether the Advanced Bin / Numbered Inventory Management feature is enabled. If this feature is not enabled, this data is available directly from the item. If this feature is enabled, this data must be accessed through the inventory detail subrecord, which was introduced in the 2011.2 endpoint.

If this feature is enabled in your account, you need to do the following to avoid unexpected results or errors in your SOAP web services code.

  1. Update to the 2011.2 endpoint or later to have access to the inventory detail subrecord and its bin and numbered inventory fields.

  2. Review the Inventory Detail subrecord to get an understanding of how it is structured in the schema.

  3. Review the list of Records that May Include Inventory Detail Data.

  4. Review any existing code for these records that accesses bin or numbered inventory fields, and update this code to use the inventory detail subrecord. See Sample Code Changes after Enabling Advanced Bin / Numbered Inventory Management.

Sample Code Changes after Enabling Advanced Bin / Numbered Inventory Management

The following code samples illustrate the difference between:

When the feature is enabled, code like the bolded, red text on the left must change to code like the bolded, red text on the right.

WITHOUT Advanced Bin/Numbered
Inventory Management
With Advanced Bin/Numbered
Inventory Management ENABLED

InventoryAdjustment ia = new InventoryAdjustment();

ia.setSubsidiary(new RecordRef(null,"1",null,null));

ia.setAccount(new RecordRef(null,"1",null,null));

InventoryAdjustmentInventory item = new InventoryAdjustmentInventory();

item.setItem(new RecordRef(null, i.getInternalId(), null, null));

item.setLocation(new RecordRef(null,"1",null,null));

item.setAdjustQtyBy(new Double(2));

item.setSerialNumbers("Grape16324299(2)");

ia.setInventoryList(new InventoryAdjustmentInventoryList(new InventoryAdjustmentInventory[] {item},true));

sessMgr.getPort().add(ia);

InventoryAdjustment ia = new InventoryAdjustment();

ia.setSubsidiary(new RecordRef(null,"1",null,null));

ia.setAccount(new RecordRef(null,"1",null,null));

InventoryAdjustmentInventory item = new InventoryAdjustmentInventory();

item.setItem(new RecordRef(null, i.getInternalId(), null, null));

item.setLocation(new RecordRef(null,"1",null,null));

item.setAdjustQtyBy(new Double(2));

InventoryAssignment assign = new InventoryAssignment();

assign.setReceiptInventoryNumber("Grape19816143,Melon12289447");

assign.setQuantity(new Double(2));

InventoryDetail id = new InventoryDetail();

id.setInventoryAssignmentList(new InventoryAssignmentList(new InventoryAssignment[] {assign},true));

item.setInventoryDetail(id);

ia.setInventoryList(new InventoryAdjustmentInventoryList(new InventoryAdjustmentInventory[] {item},true));

sessMgr.getPort().add(ia);

Records that May Include Inventory Detail Data

Review the following lists to understand which code you may need to modify after enabling the Advanced Bin / Numbered Inventory Management feature.

Items Affected by Advanced Bin/Numbered Inventory Management

The following types of items include inventory detail data when the Advanced Bin / Numbered Inventory Management feature is enabled:

Transactions Affected by Advanced Bin / Numbered Inventory Management

The following types of transactions include inventory detail data for each line item when the Advanced Bin / Numbered Inventory Management feature is enabled:

Related Topics

Items
Transactions
Subrecords
Inventory Detail
Advanced Bin / Numbered Inventory Management
How to Use the SOAP Web Services Records Help
SOAP Web Services Supported Records
SOAP Schema Browser
SuiteTalk SOAP Web Services Platform Overview

General Notices