NetSuite Apps and Connector
  • 24 Oct 2023
  • 5 Minutes to read
  • Contributors

NetSuite Apps and Connector


Article Summary

Integrate Tulip with NetSuite using pre-built applications and Tulip's HTTP Connectors

Introduction

The goal of this connector is to enable bi-directional communication between NetSuite’s system of record and Tulip’s Industrial Operations Platform. Many common manufacturing functions are provided out-of-the-box and advanced connectors allow extension to other applications.

Installation and Configuration

This connector requires an accompanying NetSuite script to be deployed within your NetSuite enivronment.

The connector functions have been designed with reusability in mind. As a result, to reconfigure the apps, only basic App Editor reworks are required. Replace existing content to reflect your shop floor more effectively, and the connectors will work the same.

Connector Functions

The integration provides the following functions:

Get Work Order Context Functions

Get Released Work Orders

The function will return all work orders with status Work Order: Released in Netsuite.

getAllReleasedWorkOrder -> Released Work Orders

Get Released Work Orders for Location

The function will return all work orders with status Work Order: Released in Netsuite at a specified location

getReleasedWorkOrdersByLocation(Location) -> Released Work Orders in Location

Get Released Work Orders for Product

The function will return all work orders with status Work Order: Released in Netsuite for a specified product.

getReleasedWorkOrdersByProduct(product) -> Released Work Order for product

Get In Process Work Orders

The function will return all work orders with status Work Order: Released in Netsuite for a specified product.

getAllInProgressWorkOrders -> In Process Work Orders

Get Work Order Bill of Material

The function will return the bill of material for specified work order

getWorkOrderBOM(WorkOrderID) -> Bill of Material

Get Work Order Details

The function will return all work order details for a specified work order internal id.

getWODetails(WorkOrderID) -> Work Order Details

Post Work Order Context Functions

Create Work Order Close

The function will change the order status of a WIP based in process work order to closed.

closeWorkOrder(workOrderID, orderQuantity, quantityCompleted) -> Success result, message, Work Order Close ID

Create Work Order Issue

The function will link a Work Order to a Work Order Issue record

createWorkOrderIssue(workOrderID) -> Error, Work Order Issue ID

Create Assembly Build

The function will create an assembly build against a work order while consuming component level inventory for a non-WIP based work order. There are three variations of inputs for lot managed assembly, bin managed assembly or location only managed assemblies.

Bin Managed Assembly
createAssemblyBuild(workOrderId, itemId, quantity, binNumber, locationId, subsidiaryId,component details) -> Sucess result, message, Build ID

Lot Managed Assembly
createAssemblyBuild(workOrderId, itemId, quantity, lot number, locationId, subsidiaryId,component details) -> Sucess result, message, Build ID

Location Managed Assembly
createAssemblyBuild(workOrderId, itemId, quantity, locationId, subsidiaryId,component details) -> Sucess result, message, Build ID

Create Work Order Completion (no backflush)

The function will create a work order completion transaction against a WIP based work order without consuming component inventory. There are three variations of inputs for lot managed assembly, bin managed assembly or location only managed assemblies.

Bin Managed Assembly
createWorkOrderCompletion(workOrderId, quantity, startOperation, endOperation, Bin) -> Sucess result, message, Build ID

Lot Managed Assembly
createWorkOrderCompletion(workOrderId, quantity, startOperation, endOperation, Lot) -> Sucess result, message, Build ID

Location Managed Assembly
createWorkOrderCompletion(workOrderId, quantity, startOperation, endOperation) -> Sucess result, message, Build ID

Create Work Order Completion with Backflush

The function will create a work order completion transaction against a WIP based work order and consume component inventory. There are three variations of inputs for lot managed assembly, bin managed assembly or location only managed assemblies. For final operations against the WIP order, scrap quantity can also be sent.

Bin Managed Assembly
createWorkOrderCompletionBackflush(workOrderId, quantity, completed quantity, startOperation, endOperation, item, bin, scrap quantity, component details) -> Sucess result, message, Build ID

Lot Managed Assembly
createWorkOrderCompletionBackflush(workOrderId, quantity, completed quantity, startOperation, endOperation, item, lot, scrap quantity, component details) -> Sucess result, message, Build ID

Location Managed Assembly
createWorkOrderCompletionBackflush(workOrderId, quantity, completed quantity, startOperation, endOperation, item, scrap quantity, component details) -> Sucess result, message, Build ID

Get Inventory Item Locations and Quantity Functions

Get on-hand inventory in each location for item

The function will return on-hand inventory available at each location for a specified item

getInventoryByLocation(item name) -> inventory, sucess result, message

Get on-hand inventory in each bins for item

The function will return on-hand inventory available at each bin for a specified item

getInventoryInBin(item name) -> inventory, sucess result, message

Get on-hand inventory in a bin

The function will return on-hand inventory available at a specified bin by material

getInventorybyBin(bin) -> inventory, sucess result, message

Get on-hand inventory by material lot number for item

The function will return on-hand inventory available by material lot number for a specified item.

getInventoryforMaterialLots(item name) -> inventory, sucess result, message

Get locations for a particular item

The function will return available inventory locations for a specified item.

getItemLocation(item name) -> inventory, sucess result, message

Post Inventory Movement and Adjustment Functions

Create Bin Transfer

The function will create a bin transfer transaction to move materials

createRecord(location id, subsidiary id, item id, quantity, from bin, to bin) -> error message, bin transfer id, https status code)

Create Bin Transfer

The function will create a bin transfer transaction to move materials

createRecord(location id, subsidiary id, item id, quantity, from bin, to bin) -> error message, bin transfer id, https status code)

Create Inventory Transfer

The function will create a inventory transfer transaction to move materials

createRecord(from location, subsidiary, item id, quantity, to location) -> error message, bin transfer id, https status code)

Create Inventory Adjustment

The function will create an inventory adjustment transaction to adjust inventory level details (positive or negative). There are three variations of inputs for lot managed item, bin managed item or location only managed item.

Bin Managed Assembly
createInventoryAdjustment(subsidiary id, account id, item id, location id, adjustment amount, transacion date) -> sucess result, message, inventory adjustment id

Lot Managed Assembly
createInventoryAdjustment(subsidiary id, account id, item id, location id, adjustment amount, transacion date, lot) -> sucess result, message, inventory adjustment id

Location Managed Assembly
createInventoryAdjustment(subsidiary id, account id, item id, location id, adjustment amount, transacion date, bin) -> sucess result, message, inventory adjustment id

Generic Configurable Get Requests

The following functions are generic get functions with configurable outputs depending on the inputs.

Get Results of a Saved Search

The function will return the results of a Netsuite saved search.

getSavedSearchResults(saved search id, saved search type)-> saved search results

Get Record Details

The function will return record details of the specified input.

getRecordFromTypeAndId(record id, record type)-> record details

Get Results from a Search Term

The function will return the results from a search term.

getRecordFromSearchTerm(query)-> search results

Generic Configurable Post Requests

The following functions are generic functions with configurable outputs/functionality depending on the inputs.

Create Search Results from a Search Query

The function will return the results from a search query.

getSearchResults(query with filters and columns defined) -> search results

Create Netsuite Record

The function will create a Netsuite record based on the inputs.

createRecord(record creation details) -> created record id

For full documentation on the functionality of the API provided by the Tulip SuiteApp, refer to the public documentation here.


Was this article helpful?