Suite Builder
Create custom records, fields, forms, and lists without writing code using NetSuite's Suite Builder tools.
Suite Builder Overview
SUITE BUILDER COMPONENTS
═══════════════════════════════════════════════════════════════════════════════
┌─────────────────────────────────────────────────────────────────────────────┐
│ SUITE BUILDER │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ CUSTOM RECORDS │ │ CUSTOM FIELDS │ │ CUSTOM FORMS │ │
│ │ │ │ │ │ │ │
│ │ • New record │ │ • Entity fields │ │ • Entry forms │ │
│ │ types │ │ • Item fields │ │ • Transaction │ │
│ │ • Subtabs │ │ • Transaction │ │ forms │ │
│ │ • Child records │ │ body/line │ │ • Sublist │ │
│ └─────────────────┘ │ • CRM fields │ │ customization │ │
│ └─────────────────┘ └─────────────────┘ │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ CUSTOM LISTS │ │ SUBLISTS │ │ SUBTABS │ │
│ │ │ │ │ │ │ │
│ │ • Dropdown │ │ • Related │ │ • Group fields │ │
│ │ values │ │ records │ │ • Organize │ │
│ │ • Selection │ │ • Line items │ │ information │ │
│ │ options │ │ • Child data │ │ │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Custom Records
When to Use Custom Records
| Scenario | Use Custom Record? |
|---|---|
| Track data not in standard records | Yes |
| Store configuration settings | Yes |
| Create lookup/reference tables | Yes |
| Track project-specific data | Yes |
| Store integration logs | Yes |
| Replace standard record | No - customize existing |
Creating a Custom Record
Navigation: Customization → Lists, Records, & Fields → Record Types → New
CUSTOM RECORD SETUP
═══════════════════════════════════════════════════════════════════════════════
Main Tab:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Name: Vehicle Fleet │
│ ID: customrecord_vehicle (auto-generated) │
│ Description: Track company vehicles │
│ │
│ Record Type Options: │
│ ┌───────────────────────────────────────────────────────────────────────┐ │
│ │ ☑ Include Name Field Show name field on form │ │
│ │ ☑ Show ID Display internal ID │ │
│ │ ☐ Hierarchical Parent-child relationships │ │
│ │ ☑ Allow Inline Editing Edit directly in lists │ │
│ │ ☐ Show Notes Enable notes functionality │ │
│ └───────────────────────────────────────────────────────────────────────┘ │
│ │
│ Icon: [Truck Icon ▼] │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Access Tab:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Permission Level: │
│ ○ No Permission Required │
│ ● Use Permission List │
│ ○ Use Custom Record Permission │
│ │
│ Available Permissions: │
│ ☑ View ☑ Create ☑ Edit ☑ Delete │
│ │
│ Available to Script: ☑ │
│ Available via Web Services: ☑ │
└─────────────────────────────────────────────────────────────────────────────┘
Adding Fields to Custom Record
CUSTOM RECORD FIELDS
═══════════════════════════════════════════════════════════════════════════════
Fields Tab → Click "New Field"
Example: Vehicle Record Fields
┌─────────────────────────────────────────────────────────────────────────────┐
│ Field Label │ Type │ ID │ Required │
├────────────────────┼──────────────┼───────────────────────┼────────────────┤
│ Vehicle Name │ Free-Form │ (Built-in name field) │ Yes │
│ License Plate │ Free-Form │ custrecord_license │ Yes │
│ VIN Number │ Free-Form │ custrecord_vin │ Yes │
│ Make │ Free-Form │ custrecord_make │ No │
│ Model │ Free-Form │ custrecord_model │ No │
│ Year │ Integer │ custrecord_year │ No │
│ Vehicle Type │ List/Record │ custrecord_type │ Yes │
│ Assigned Employee │ List/Record │ custrecord_employee │ No │
│ Purchase Date │ Date │ custrecord_purchased │ No │
│ Purchase Price │ Currency │ custrecord_price │ No │
│ Active │ Checkbox │ custrecord_active │ No │
└────────────────────┴──────────────┴───────────────────────┴────────────────┘
Custom Fields
Field Types
CUSTOM FIELD TYPES
═══════════════════════════════════════════════════════════════════════════════
TEXT FIELDS
┌─────────────────────────────────────────────────────────────────────────────┐
│ Free-Form Text │ Single line text input │
│ Text Area │ Multi-line text │
│ Rich Text │ HTML formatted text │
│ Password │ Masked input │
│ Phone Number │ Formatted phone number │
│ Email Address │ Email with validation │
│ URL │ Hyperlink │
└─────────────────────────────────────────────────────────────────────────────┘
NUMERIC FIELDS
┌─────────────────────────────────────────────────────────────────────────────┐
│ Integer │ Whole numbers only │
│ Decimal Number │ Numbers with decimals │
│ Currency │ Money values with currency symbol │
│ Percent │ Percentage values │
└─────────────────────────────────────────────────────────────────────────────┘
DATE/TIME FIELDS
┌─────────────────────────────────────────────────────────────────────────────┐
│ Date │ Date only │
│ Time of Day │ Time only │
│ Date/Time │ Combined date and time │
└─────────────────────────────────────────────────────────────────────────────┘
SELECTION FIELDS
┌─────────────────────────────────────────────────────────────────────────────┐
│ List/Record │ Dropdown from list or record type │
│ Multiple Select │ Select multiple values │
│ Checkbox │ Boolean true/false │
│ Radio Button │ Select one from visible options │
└─────────────────────────────────────────────────────────────────────────────┘
OTHER FIELDS
┌─────────────────────────────────────────────────────────────────────────────┐
│ Document │ File attachment │
│ Image │ Image file │
│ Inline HTML │ Display HTML content │
│ Long Text │ Very long text content │
│ Help │ Help text display │
└─────────────────────────────────────────────────────────────────────────────┘
Field Applies To
FIELD APPLICATION AREAS
═══════════════════════════════════════════════════════════════════════════════
Entity Fields (Customization → Lists, Records, & Fields → Entity Fields)
┌─────────────────────────────────────────────────────────────────────────────┐
│ Customer, Vendor, Employee, Contact, Partner, Lead, Prospect │
│ Example: Add "Industry" field to all customers │
└─────────────────────────────────────────────────────────────────────────────┘
Item Fields (Customization → Lists, Records, & Fields → Item Fields)
┌─────────────────────────────────────────────────────────────────────────────┐
│ All item types: Inventory, Service, Non-Inventory, etc. │
│ Example: Add "Country of Origin" to inventory items │
└─────────────────────────────────────────────────────────────────────────────┘
Transaction Body Fields
┌─────────────────────────────────────────────────────────────────────────────┐
│ Header-level fields on transactions │
│ Example: Add "Project Code" to Sales Orders │
└─────────────────────────────────────────────────────────────────────────────┘
Transaction Line Fields
┌─────────────────────────────────────────────────────────────────────────────┐
│ Line-level fields on transaction items │
│ Example: Add "Delivery Instructions" to each line item │
└─────────────────────────────────────────────────────────────────────────────┘
CRM Fields
┌─────────────────────────────────────────────────────────────────────────────┐
│ Tasks, Events, Phone Calls, Cases, Campaigns │
│ Example: Add "Priority Score" to Cases │
└─────────────────────────────────────────────────────────────────────────────┘
Custom Lists
Create dropdown selection options.
Navigation: Customization → Lists, Records, & Fields → Lists → New
CUSTOM LIST SETUP
═══════════════════════════════════════════════════════════════════════════════
List Configuration:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Name: Vehicle Types │
│ ID: customlist_vehicle_types │
│ Description: Types of vehicles in fleet │
│ │
│ ☑ Allow Editing (values can be modified) │
│ ☑ Show as Inactive (can mark values inactive) │
└─────────────────────────────────────────────────────────────────────────────┘
List Values:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Value │ Internal ID │ Is Inactive │
├────────────────────┼─────────────┼─────────────────────────────────────────┤
│ Sedan │ 1 │ ☐ │
│ SUV │ 2 │ ☐ │
│ Truck │ 3 │ ☐ │
│ Van │ 4 │ ☐ │
│ Motorcycle │ 5 │ ☐ │
│ Electric Vehicle │ 6 │ ☐ │
│ Hybrid │ 7 │ ☐ │
└────────────────────┴─────────────┴─────────────────────────────────────────┘
Custom Forms
Customize the appearance and fields on transaction and entity forms.
Navigation: Customization → Forms → Transaction Forms / Entry Forms
FORM CUSTOMIZATION
═══════════════════════════════════════════════════════════════════════════════
Form Types:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Transaction Forms │ Sales Order, Invoice, PO, Bill, etc. │
│ Entry Forms │ Customer, Vendor, Item, Employee, etc. │
└─────────────────────────────────────────────────────────────────────────────┘
Customization Options:
┌─────────────────────────────────────────────────────────────────────────────┐
│ SCREEN FIELDS (Layout) │
│ ├── Show/Hide fields │
│ ├── Reorder fields │
│ ├── Set mandatory/optional │
│ ├── Set default values │
│ └── Group in subtabs │
│ │
│ SUBLIST FIELDS (Lines) │
│ ├── Show/Hide columns │
│ ├── Reorder columns │
│ └── Set column widths │
│ │
│ FORM ACTIONS │
│ ├── Add custom buttons │
│ ├── Hide standard buttons │
│ └── Assign to roles │
└─────────────────────────────────────────────────────────────────────────────┘
Subtabs
Organize fields into logical groups.
Navigation: Customization → Forms → Subtabs → New
SUBTAB SETUP
═══════════════════════════════════════════════════════════════════════════════
Subtab Configuration:
┌─────────────────────────────────────────────────────────────────────────────┐
│ Tab Label: Fleet Information │
│ ID: custpage_fleet │
│ Tab Type: SUBTAB │
│ │
│ Applies To: │
│ ☑ Employee │
│ ☐ Customer │
│ ☐ Vendor │
│ │
│ Fields on this Subtab: │
│ ┌───────────────────────────────────────────────────────────────────────┐ │
│ │ Assigned Vehicle (List/Record → Vehicle Fleet) │ │
│ │ Driver License # │ │
│ │ License Expiration Date │ │
│ │ Vehicle Allowance │ │
│ └───────────────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
Best Practices
SUITE BUILDER BEST PRACTICES
═══════════════════════════════════════════════════════════════════════════════
Naming Conventions:
┌─────────────────────────────────────────────────────────────────────────────┐
│ • Use descriptive names (not abbreviations) │
│ • Include company/module prefix for fields │
│ • Keep IDs concise but meaningful │
│ │
│ Good: custbody_project_code │
│ Bad: custbody_pc │
└─────────────────────────────────────────────────────────────────────────────┘
Planning:
┌─────────────────────────────────────────────────────────────────────────────┐
│ • Document requirements before building │
│ • Consider data relationships (parent/child) │
│ • Plan for reporting needs │
│ • Think about performance (index on search fields) │
└─────────────────────────────────────────────────────────────────────────────┘
Maintenance:
┌─────────────────────────────────────────────────────────────────────────────┐
│ • Use descriptions on all fields │
│ • Document field purposes │
│ • Mark unused fields as inactive (don't delete) │
│ • Test in sandbox first │
└─────────────────────────────────────────────────────────────────────────────┘
Next Steps
| Goal | Go To |
|---|---|
| Custom fields in detail | Custom Fields → |
| Form customization | Custom Forms → |
| Build workflows | Workflows → |