SharpSync
  • Welcome
  • Fundamentals
    • Getting Started
      • Registration
      • Landing Page
      • Support
      • Subscription
    • Data Sources
    • Property Mappings
      • Adding Property Mapping
      • Property Mapping Settings
    • Rules
      • Import / Export
        • Append text
        • Calculate number
        • Export manipulation
        • Format as decimal number
        • Prepend text
        • Remove property
        • Replace all instances
        • Replace first instance
        • Round to nearest X
        • Select from JSON
        • Set cell value
        • Set empty cells
        • Text manipulation
      • Display
        • Number between
        • Text contains
        • Text ends with
        • Text evaluation
        • Text is a number
        • Text is exactly
        • Text is in list
        • Text is not a number
        • Text is not empty
        • Text is not in list
        • Text length between
        • Text length is exactly
        • Text maximum length
        • Text minimum length
        • Text not contains
        • Text not ends with
        • Text not starts with
        • Text starts with
      • Advanced Scripting
    • BOM Comparison
    • Data Safety
    • Troubleshooting
      • Duplicate component paths
      • OAuth 2.0
  • Data Sources
    • Autodesk Inventor
    • CSV
      • Getting Started
      • Importing a Bill of Materials (BOM)
    • MS Dynamics 365 Business Central
      • Getting Started
      • Item Fields Json & Internal Names
      • Resource Fields Json & Internal Names
      • List Names For nestedObject Mappings
    • NetSuite
      • OAuth Setup
        • Permissions
      • RESTlet Script Setup
        • SharpSync RESTlet Script
      • Thumbnail Folder Setup
      • Authentication + Configuration
      • Common setup
        • Configure quantity mapping
        • Configure accounts mappings
        • Configure itemType mapping
        • Configure isPhantom mapping
        • Configure subsidiary mapping
        • Configure price mapping
        • Configure Where Used Link mapping
        • Configure thumbnail mapping
        • Read-Only NetSuite Fields
        • Common Mapping Rules
        • Common List names
      • Advanced Bill of Materials
      • Configure Routings
      • Integration tips
      • Troubleshooting
    • Odoo
      • Getting Started
        • Authentication + Configuration
        • Debugging tips
      • Common Setup
        • Map BOM Codes
        • Map BOM Types
        • Map Attribute Values
          • Reading Attributes - Overview
          • Display All Attribute Names
          • Display Single Attribute Values
          • Writing attributes
      • Product Management
      • Hosting Options
      • List Names
      • Permissions
      • Troubleshooting
    • Onshape
      • Getting Started
      • Setting up Derivatives
    • Propel PLM
      • Getting Started
    • SolidWorks
    • SolidWorks PDM
      • Downloading and installing the add-in
      • Configure the add-in
      • Setting up the Solidworks PDM Web 2
      • Troubleshooting
      • Submitting a BOM for update
  • Advanced
    • Derivatives
  • User management
    • User Management
    • Application Permissions
Powered by GitBook
On this page
  • Using Advanced BOMs - Reading And Writing bom and bomrevision Metadata
  • Next Steps
  1. Data Sources
  2. NetSuite

Advanced Bill of Materials

PreviousCommon List namesNextConfigure Routings

Last updated 6 days ago

Advanced BOMs are NetSuite's way of keeping track of Bill of Materials (BOM) snapshots. You can think of an advanced BOM as the revision of a Bill of Materials at a certain point in time.

Advanced BOMs use the following notable features:

  • A parent BOM record (NetSuite itemtype --> bom), which is associated to a Assembly (NetSuite itemtype --> assemblyitem)

  • BOM Revision records (NetSuite itemtype --> bomrevision), which are associated to the BOM record and which contain a revision of a set of BOM Components.

  • Activation dates

  • Routings

  • Manufacturing steps

Using Advanced BOMs - Reading And Writing bom and bomrevision Metadata

You can map NetSuite fields related to bom and bomrevision item types just like you map fields for regular item types (assemblyitem, inventoryitem, etc...).

When loading a BOM, SharpSync will query the associated BOM and BOM Revision for any related assemblyitem that exists in NetSuite and fetch the bom and bomrevision metadata for the configured mappings.

Similarly, when submitting a BOM, SharpSync will query the associated BOM and BOM Revision for any related assemblyitem that exists in NetSuite and update the bom and bomrevision metadata for the configured mappings. If an assemblyitem is to be created in NetSuite, SharpSync will also automatically create an associated BOM and BOM Revision, and update the fields accordingly.

Some notes on the bom and bomrevision metadata:

  • Some bom fields such as bom.id , bom.name , bom.createdDate , etc... are determined by a NetSuite or SharpSync logic, and their mappings should not be set to update NetSuite, and preferably be set to readonly.

  • Some bomrevision fields such as bomrevision.id , bomrevision.name , bomrevision.effectiveStartDate , bomrevision.effectiveEndDate , etc... are determined by a NetSuite or SharpSync logic, and their mappings should not be set to update NetSuite, and preferably be set to readonly.

  • The bom field bom.useComponentYield is a boolean field, but once it is set to true it can not be set back to false . This is a NetSuite limitation.

  • For boms where bom.useComponentYield is set to true , a related bomrevision's child components can have the field bomrevisioncomponent.componentYield set to values greater than 0 and less or equal than 100 (0 < x <= 100).

  • For boms where bom.useComponentYield is set to false , a related bomrevision's child components will have the field bomrevisioncomponent.componentYield values always ignored by NetSuite and kept at 100.

Next Steps

[optional]

Configure Routings