Skip to main content

Other Sublist Fields (SuiteBuilder)

Comprehensive guide to creating and configuring custom fields for sublists on entities, items, and other record types beyond standard transaction lines.


Overview

Other Sublist Fields add custom columns to sublists (related records lists) on various NetSuite records. These include address sublists, contacts lists, vendor sublists on items, and more.

OTHER SUBLIST FIELD SCOPE
═══════════════════════════════════════════════════════════════════════════════

Custom Other Sublist Field


┌───────────────────────────────────────────────────────────────────────────┐
│ APPLIES TO (Sublist Types): │
│ │
│ ENTITY SUBLISTS ITEM SUBLISTS │
│ ☐ Address ☐ Vendor (Item-Vendor mapping) │
│ ☐ Contact Roles ☐ Location (Item-Location) │
│ ☐ Credit Cards ☐ Member Items (Kits/Assemblies) │
│ ☐ Currency ☐ Bill of Materials │
│ ☐ Partners │
│ ☐ Sales Team CUSTOM RECORD SUBLISTS │
│ ☐ Subscriptions ☐ (Your custom record sublists) │
│ │
└───────────────────────────────────────────────────────────────────────────┘

Creating Other Sublist Fields

Customization → Lists, Records, & Fields → Other Sublist Fields → New

Configuration Options

OTHER SUBLIST FIELD CONFIGURATION
═══════════════════════════════════════════════════════════════════════════════

┌─────────────────────────────────────────────────────────────────────────────┐
│ BASIC SETTINGS │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ Label*: [Delivery Notes ] │
│ ID*: [custrecord_addr_delivery_notes ] │
│ Type: [Text Area ▾] │
│ │
│ Description: [Special delivery instructions for │
│ this address location ] │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────────┐
│ APPLIES TO │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ Sublist: [Address ▾] │
│ Record: [Customer ▾] │
│ │
│ This field will appear on the Address sublist of Customer records │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Common Sublist Types

Entity Sublists

Address Sublist

CUSTOMER/VENDOR ADDRESS SUBLIST FIELDS
═══════════════════════════════════════════════════════════════════════════════

Customer: ABC Corporation
┌─────────────────────────────────────────────────────────────────────────────┐
│ [Main] [Financial] [Addresses] [Contacts] [Relationships] │
├─────────────────────────────────────────────────────────────────────────────┤
│ ADDRESSES │
│ │
│ Label │ Address │ Default │ Delivery │ Access │ Notes │
│ │ │ Bill/ │ Window* │ Code* │ * │
│ │ │ Ship │ │ │ │
│ ─────────┼────────────────────┼─────────┼────────────┼───────────┼─────────│
│ HQ │ 123 Main St... │ ☑ / ☐ │ 8am-5pm │ GATE-A │ Dock 3 │
│ Warehouse│ 456 Industrial... │ ☐ / ☑ │ 6am-10pm │ 1234 │ 24hr │
│ Branch │ 789 Commerce... │ ☐ / ☐ │ 9am-6pm │ CALL │ │
│ │
│ * = Custom sublist fields │
└─────────────────────────────────────────────────────────────────────────────┘

Common Custom Address Fields:
• Delivery Window (custrecord_addr_delivery_window)
• Access Code (custrecord_addr_access_code)
• Delivery Notes (custrecord_addr_notes)
• Loading Dock (custrecord_addr_dock)
• Appointment Required (Checkbox)

Contact Roles Sublist

CUSTOMER CONTACT ROLES SUBLIST FIELDS
═══════════════════════════════════════════════════════════════════════════════

Customer: ABC Corporation
┌─────────────────────────────────────────────────────────────────────────────┐
│ [Main] [Financial] [Addresses] [Contacts] [Relationships] │
├─────────────────────────────────────────────────────────────────────────────┤
│ CONTACTS │
│ │
│ Contact │ Role │ Email │ Phone │ Decision │ │
│ │ │ │ │ Maker* │ │
│ ────────────┼─────────────┼──────────────────┼────────────┼───────────│ │
│ John Smith │ Primary │ john@abc.com │ 555-1234 │ ☑ │ │
│ Jane Doe │ Purchasing │ jane@abc.com │ 555-5678 │ ☐ │ │
│ Bob Wilson │ AP Contact │ bob@abc.com │ 555-9012 │ ☐ │ │
│ │
│ * = Custom sublist fields │
└─────────────────────────────────────────────────────────────────────────────┘

Common Custom Contact Role Fields:
• Decision Maker (Checkbox)
• Contact Preference (List: Email/Phone/Both)
• CC on Orders (Checkbox)
• Budget Authority Level (Currency)

Item Sublists

Vendor Sublist (Item-Vendor Mapping)

ITEM VENDOR SUBLIST FIELDS
═══════════════════════════════════════════════════════════════════════════════

Inventory Item: Widget-A
┌─────────────────────────────────────────────────────────────────────────────┐
│ [Main] [Purchasing] [Inventory] [Vendors] │
├─────────────────────────────────────────────────────────────────────────────┤
│ ITEM VENDORS │
│ │
│ Vendor │ Code │ Cost │ Lead │ MOQ* │ Preferred* │ Cert* │
│ │ │ │ Time │ │ │ │
│ ────────────┼───────────┼─────────┼──────────┼────────┼────────────┼───────│
│ Supplier A │ WIDG-001 │ $15.00 │ 5 days │ 100 │ ☑ │ ISO │
│ Supplier B │ W-A │ $16.50 │ 3 days │ 50 │ ☐ │ -- │
│ Supplier C │ WGT-A1 │ $14.00 │ 14 days │ 500 │ ☐ │ ISO │
│ │
│ * = Custom sublist fields │
└─────────────────────────────────────────────────────────────────────────────┘

Common Custom Vendor Sublist Fields:
• Minimum Order Quantity (custrecord_item_ven_moq)
• Preferred Vendor (custrecord_item_ven_preferred)
• Certification Status (custrecord_item_ven_cert)
• Quality Score (custrecord_item_ven_score)
• Contract Reference (custrecord_item_ven_contract)

Location Sublist (Item-Location)

ITEM LOCATION SUBLIST FIELDS
═══════════════════════════════════════════════════════════════════════════════

Inventory Item: Widget-A
┌─────────────────────────────────────────────────────────────────────────────┐
│ [Main] [Purchasing] [Inventory] [Locations] │
├─────────────────────────────────────────────────────────────────────────────┤
│ ITEM LOCATIONS │
│ │
│ Location │ On Hand │ Reorder │ Preferred │ Bin Zone* │ Pick │ │
│ │ │ Point │ Stock │ │ Sequence* │ │
│ ────────────┼─────────┼──────────┼───────────┼───────────┼───────────│ │
│ Warehouse A │ 500 │ 100 │ 300 │ Zone-A │ 001 │ │
│ Warehouse B │ 150 │ 50 │ 100 │ Zone-C │ 042 │ │
│ Store Front │ 25 │ 10 │ 20 │ -- │ -- │ │
│ │
│ * = Custom sublist fields │
└─────────────────────────────────────────────────────────────────────────────┘

Common Custom Location Sublist Fields:
• Bin Zone (custrecord_item_loc_zone)
• Pick Sequence (custrecord_item_loc_pickseq)
• Replenishment Source (custrecord_item_loc_source)
• Safety Stock (custrecord_item_loc_safety)

Bill of Materials Sublist

ASSEMBLY BOM SUBLIST FIELDS
═══════════════════════════════════════════════════════════════════════════════

Assembly Item: Finished Product
┌─────────────────────────────────────────────────────────────────────────────┐
│ [Main] [Assembly] [Build] │
├─────────────────────────────────────────────────────────────────────────────┤
│ BILL OF MATERIALS │
│ │
│ Component │ Qty │ UOM │ Critical* │ Alt Item* │ Notes* │
│ ────────────┼─────────┼───────┼───────────┼───────────┼─────────────────────│
│ Part-A │ 2 │ Each │ ☑ │ Part-A2 │ Must spec v2 │
│ Part-B │ 5 │ Each │ ☐ │ -- │ │
│ Hardware │ 10 │ Each │ ☐ │ HW-Alt │ Any grade OK │
│ │
│ * = Custom sublist fields │
└─────────────────────────────────────────────────────────────────────────────┘

Common Custom BOM Sublist Fields:
• Critical Component (Checkbox)
• Alternate Item (List/Record: Item)
• Assembly Notes (Text)
• Operation Step (Integer)
• Scrap Factor % (Percent)

Field Types for Sublists

TypeUse CaseExample
Free-Form TextShort text, codesAccess Code, Reference
Text AreaLonger notesDelivery Instructions
IntegerWhole numbersSequence, MOQ
DecimalPrecise numbersQuality Score
CurrencyMoney valuesPrice Override
DateDatesExpiration Date
CheckboxBoolean flagsPreferred, Critical
List/RecordLookupsAlternate Item, Zone

Sublist Field Sourcing and Flow

Sourcing to Transactions

Sublist fields can flow to transaction lines:

ADDRESS FIELD FLOW TO TRANSACTION
═══════════════════════════════════════════════════════════════════════════════

Customer Address Sublist Sales Order
┌─────────────────────────────────┐ ┌─────────────────────────────────┐
│ Address: Warehouse │ │ Ship To: Warehouse │
│ custrecord_addr_notes: │──▶│ custbody_ship_notes: │
│ "Dock 3, call ahead" │ │ "Dock 3, call ahead" │
│ custrecord_addr_access: │──▶│ custbody_access_code: │
│ "1234" │ │ "1234" │
└─────────────────────────────────┘ └─────────────────────────────────┘

This requires script-based sourcing or workflow action
to copy from address to transaction body/line.

Custom Record Sublists

When you create parent-child custom records, the child records appear as a sublist on the parent:

CUSTOM RECORD SUBLIST PATTERN
═══════════════════════════════════════════════════════════════════════════════

Parent: Vehicle (customrecord_vehicle)
Child: Maintenance Log (customrecord_maint_log)

Vehicle Record Form:
┌─────────────────────────────────────────────────────────────────────────────┐
│ VEH-00001: 2024 Toyota Camry │
│ │
│ [Main] [Maintenance History] [Costs] │
├─────────────────────────────────────────────────────────────────────────────┤
│ MAINTENANCE HISTORY (Child Sublist) │
│ │
│ Date │ Service Type │ Cost │ Vendor │ Warranty* │ Notes │
│ ───────────┼────────────────┼─────────┼──────────────┼───────────┼────────│
│ 2026-01-15 │ Oil Change │ $75 │ Quick Lube │ ☐ │ │
│ 2026-02-01 │ Tire Rotation │ $50 │ Tire Shop │ ☑ │ Free │
│ │
│ * = Custom field on child record │
└─────────────────────────────────────────────────────────────────────────────┘

Adding Custom Fields to Child Sublist:
1. Go to child record type definition
2. Add fields to the child record
3. Fields automatically appear in parent's sublist

Scripting with Sublist Fields

Reading Sublist Fields

// Read address sublist fields
var customer = record.load({
type: 'customer',
id: customerId
});

var addressCount = customer.getLineCount('addressbook');

for (var i = 0; i < addressCount; i++) {
var label = customer.getSublistValue({
sublistId: 'addressbook',
fieldId: 'label',
line: i
});

var deliveryNotes = customer.getSublistValue({
sublistId: 'addressbook',
fieldId: 'custrecord_addr_notes',
line: i
});

var accessCode = customer.getSublistValue({
sublistId: 'addressbook',
fieldId: 'custrecord_addr_access',
line: i
});
}

Setting Sublist Fields

// Add address with custom fields
customer.selectNewLine('addressbook');

customer.setCurrentSublistValue({
sublistId: 'addressbook',
fieldId: 'label',
value: 'New Warehouse'
});

customer.setCurrentSublistValue({
sublistId: 'addressbook',
fieldId: 'custrecord_addr_notes',
value: 'Call 30 min before arrival'
});

customer.setCurrentSublistValue({
sublistId: 'addressbook',
fieldId: 'custrecord_addr_access',
value: 'GATE-B'
});

customer.commitLine('addressbook');
customer.save();

Best Practices

Naming Conventions

ElementConventionExample
Address Fieldscustrecord_addr_[name]custrecord_addr_notes
Item-Vendorcustrecord_item_ven_[name]custrecord_item_ven_moq
Item-Locationcustrecord_item_loc_[name]custrecord_item_loc_zone

Design Checklist

ConsiderationRecommendation
Sublist FitChoose correct sublist type
Field TypeMatch type to data needs
WidthKeep columns narrow for visibility
FlowPlan how data flows to transactions
ReportingEnable list views for key fields
ScriptsDocument sublist IDs and field IDs