Columns from Related Records

Let’s look at how to retrieve data from related records through our Search Columns.

We retrieve data from related records in our Searches using Join Columns.

There are two different ways to specify a Join Column:

  1. Using the Object syntax for a Column, specify the join property
  2. Using the String syntax for a Column, specify "joinName.columnName"

Here is an example showing both notations. This Customer Search retrieves the First Name and Email Address of the Customer and the same fields from the Sales Rep associated to the Customer:

s.create({
    type: s.Type.CUSTOMER,
    filters: [ /* filters here */ ],
    columns: [
        "firstname", // the Customer's first name
        "email", // the Customer's email address
        {
            name: "email",
            join: "salesrep"
        }, // Join Column for the associated Sales Rep's email address
        "salesrep.firstname" // Join Column for the Sales Rep's first name
    ]
});

When you retrieve the value from a Join Column using getValue, you need to again specify the join property:

var salesRepEmail = result.getValue({
    name: "email",
    join: "salesrep"
});

To find the available Joins for the Record Type you are searching, check the “Search Joins” section of the Records Browser for that particular Record Type.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Related posts

January 7, 2021

Anything I wrote today about business would both feel and be inadequate. I simply can’t arrive at the words to express how I feel in this moment. So instead, here are a few helpful ...

Read More

December 20, 2020

2020 was a hundred swift kicks to the shorts and one giant kick in the ass. If you’ve lost people you love, if you’ve gotten sick or hurt, if you’ve lost your job, if ...

Read More

December 16, 2020

“I’ve been meaning to learn SuiteScript, but it’s hard to find the time …”“We’re slammed, and I just don’t have the time …”“I haven’t made the time …” All are variations of a theme ...

Read More

December 14, 2020

Last week we looked at mimicking the functionality of a REST endpoint with its own module (e.g. retrieving a User, or a list of Users, refreshing a token, etc). For complex integrations that rely on a large ...

Read More