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
Navigation
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
| Type | Use Case | Example |
|---|---|---|
| Free-Form Text | Short text, codes | Access Code, Reference |
| Text Area | Longer notes | Delivery Instructions |
| Integer | Whole numbers | Sequence, MOQ |
| Decimal | Precise numbers | Quality Score |
| Currency | Money values | Price Override |
| Date | Dates | Expiration Date |
| Checkbox | Boolean flags | Preferred, Critical |
| List/Record | Lookups | Alternate 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
| Element | Convention | Example |
|---|---|---|
| Address Fields | custrecord_addr_[name] | custrecord_addr_notes |
| Item-Vendor | custrecord_item_ven_[name] | custrecord_item_ven_moq |
| Item-Location | custrecord_item_loc_[name] | custrecord_item_loc_zone |
Design Checklist
| Consideration | Recommendation |
|---|---|
| Sublist Fit | Choose correct sublist type |
| Field Type | Match type to data needs |
| Width | Keep columns narrow for visibility |
| Flow | Plan how data flows to transactions |
| Reporting | Enable list views for key fields |
| Scripts | Document sublist IDs and field IDs |