# Grid Wizard in Salesforce

Create a custom grid in Wave Embedded to interact with your Salesforce data in a **spreadsheet-like interface**. Configure fields, filters, and display options to organize and manage your data efficiently within Salesforce.

For Wave Embedded, users create grids through the **Grid Wizard** tab. This guide is written for Admins and Designers (People who build and configure grids for their teams).

### How Long Does Setup Take?

A basic grid (fields + filters) takes about 5–10 minutes. A fully configured grid with rules, related lists, actions, and custom permissions takes 20–30 minutes. You can save and come back at any point.

### The 8 Steps at a Glance

Creating a grid follows a wizard with 8 steps. All steps except Grid Details and Fields are optional. You can click Next to skip them and come back later by editing the grid.

<table><thead><tr><th width="288" valign="top">Step</th><th valign="top">What you configure</th></tr></thead><tbody><tr><td valign="top">1.  Create a New Grid</td><td valign="top">Start the wizard — first-time or returning user</td></tr><tr><td valign="top">2.  Grid Details</td><td valign="top">Name, object, and starting point (scratch or list view)</td></tr><tr><td valign="top">3.  Fields</td><td valign="top">Which columns to show and in what order</td></tr><tr><td valign="top">4.  Filters</td><td valign="top">Which records to include by default</td></tr><tr><td valign="top">5.  Display Options</td><td valign="top">Rules, column grouping, related lists, layout, sort</td></tr><tr><td valign="top">6.  Actions</td><td valign="top">Row-level and grid-level action buttons</td></tr><tr><td valign="top">7.  Permissions</td><td valign="top">Who can access the grid and what they can do</td></tr><tr><td valign="top">8.  Save &#x26; Go to Surf the Wave</td><td valign="top">Save your grid and switch to Surf the Wave to use it</td></tr></tbody></table>

***

## 1. Create a New Grid

There are two starting points depending on whether you've used Grid Wizard before.

### **First-Time Users**:&#x20;

When you open the Grid Wizard tab for the first time, you'll see an a screen with a prompt to get started.

* Click the **Add New** button at the bottom of the page, and choose Grid.<br>

  <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FZBv2aXxcrTlvLb5gFF6G%2FCreate%20a%20new%20grid%20v3.gif?alt=media&#x26;token=ebe78a28-4653-4247-8713-ef7520e878e4" alt=""><figcaption><p>Create a new grid for first-time user</p></figcaption></figure>

### **Users with Existing Grids**:

Once you have at least one grid, the Grid Wizard tab shows all your existing grids. You have two options:

* Click **Add New** at the top right, and choose Grid.<br>

  <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fh38tNJvQSXxTLiKWeXq2%2FCreate%20a%20new%20grid%20existing%20user.gif?alt=media&#x26;token=61f25f22-99ff-45c2-add7-63bb22d52ee2" alt=""><figcaption><p>Create a new grid with existing grid</p></figcaption></figure>

* Navigate to the **Grid Wizard** tab and create a new grid from there.<br>

  <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FmOTn51kTCh6vssI3jtyB%2FCreate%20a%20new%20grid%20(grid%20wizard).gif?alt=media&#x26;token=ea46bf55-913f-4fd9-bde1-c899c67e220b" alt=""><figcaption><p>Create a new grid by navigating to Grid Wizard tab.</p></figcaption></figure>

***

## 2. Grid Details

This is where you define the basics of your grid. What Salesforce object it will show and what to call it.

### Choose Your Object

In the Object field, search for the Salesforce object you want to work with — for example *Account*, *Contact*, or *Opportunity*.

#### Choose How to Add Fields

After selecting an object, choose one of two starting points:

<table><thead><tr><th width="283" valign="top">Option</th><th valign="top">When to use it</th></tr></thead><tbody><tr><td valign="top">Create from Scratch</td><td valign="top">You want full control. You'll manually pick and arrange fields in Step 3.</td></tr><tr><td valign="top">Select from a Salesforce List View</td><td valign="top">You already have a list view with the right fields set up. The grid will pre-populate with those fields, saving you time.</td></tr></tbody></table>

### Name & Description

* **Grid Name (required)** — choose something clear and specific, e.g. *"Hot Accounts – Q2"* rather than *"Accounts"*. Your team will see this name.
* **Description (optional)** — briefly explain the purpose of the grid. Useful when multiple grids exist for the same object.

When ready, click **Next** to move to Fields.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FfHWfDBNeKXbXTcIAhM0C%2FCreate%20a%20new%20grid%20(grid%20details)%20v2.gif?alt=media&#x26;token=54ca3720-69c4-44b4-8287-345eccb9793a" alt=""><figcaption><p>Grid Details</p></figcaption></figure>

{% hint style="info" %}
You can always rename your grid or change its description later by editing the grid from the Grid Wizard tab.
{% endhint %}

***

## 3. Fields

Fields are the columns in your grid. In this step you choose which fields appear, in what order, and how each one behaves.

Use the search bar to find a field by name, especially useful for objects with many fields.

{% hint style="warning" %}
You must select at least one field to create a grid. You can always add or remove fields later by editing the grid.
{% endhint %}

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F7fOazbaUpGoy3nFTJkHZ%2FAdd%20Fields.gif?alt=media&#x26;token=45debc80-ecf9-4eba-bde4-858306c75ffe" alt=""><figcaption><p>Adding Fields</p></figcaption></figure>

### Add or Remove Fields.

Use the **+** button to include or exclude fields. \
\&#xNAN;***Note**: Select at least one field to create a grid.*

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F7ceae8llXK6nkNmf57TI%2FDelete%20field.gif?alt=media&#x26;token=78231002-7327-4536-a572-44f7146568a8" alt=""><figcaption><p>Remove Field</p></figcaption></figure>

### Rearranging Column Order.

The order fields appear in the **Preview** is the order they appear as columns in your grid.

•       Drag and drop any field left or right to reposition it.

•       The live preview updates as you reorder.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FznzFOCMHJSGMGd2f8i9N%2FRearrange%20Field%20Full%20Screen.gif?alt=media&#x26;token=72685cfc-d86e-427c-a0d8-f12698a4c4ca" alt=""><figcaption><p>Rearrange Fields</p></figcaption></figure>

### Field Configuration

Beyond just picking fields, you can control exactly how each field behaves in your grid. Click the configure icon next to any field to access these options:

#### **Key Capabilities**

**Rename Columns**\
Update column labels to better match business terminology or improve clarity for users.

{% hint style="info" %}
Use "Rename Column" to match your company's terminology. If your team calls Leads "Prospects", rename the field header so the grid speaks your language.
{% endhint %}

**Mark Fields as Required**\
Ensure that specific fields must be completed when creating new records.

**Hide Fields**\
Removes the column from view but keeps it available for use in filters and rules in the background.

**Mark Fields as Read-Only**\
The field is visible but cannot be edited by users. Useful for calculated or protected fields.

**Format Cell Column**\
For number fields: set decimal places and apply scaling (e.g. show 1,500,000 as 1.5Mn). Visual only: the underlying value is unchanged.

**Assign Default Values**\
Pre-fills this field with a value when a new record is created. Only applies to new records.

**Search Fields in Configuration**\
Use the search bar within the Fields Configuration screen to quickly locate fields by name. This is especially useful when working with objects that contain a large number of fields.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FINrCIl0nijdhQd5UiOkg%2FField%20Configuration.gif?alt=media&#x26;token=372a8684-c867-4ec8-ba30-e1b7940b03ca" alt=""><figcaption></figcaption></figure>

Once you have selected and configured the fields as desired, click **Next**.

***

## 4. [Filters](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/filter)

Filters control which records appear in your grid by default. This step is optional. If you skip it, the grid will show all records for the object (subject to each user's Salesforce permissions).

### Types of Filters

<table><thead><tr><th width="165" valign="top">Filter type</th><th valign="top">Use this when...</th></tr></thead><tbody><tr><td valign="top">Add a Filter</td><td valign="top">You want to filter on a single field. <br>e.g. show only Accounts where Industry = "Energy".</td></tr><tr><td valign="top">Add a Filter Group</td><td valign="top">You need AND/OR logic across multiple conditions<br>e.g. show Accounts where Rating = Hot AND Industry = Energy OR Construction.</td></tr><tr><td valign="top">Cross Filter</td><td valign="top">You want to filter parent records based on their related child records <br>e.g. show only Accounts that have at least one open Opportunity. This is not available in standard Salesforce List Views.</td></tr></tbody></table>

#### **Adding a** [**Filter**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/filter#adding-a-filter)

1. Click the "+ Add a filter" button.
2. Select the field you want to filter on.
3. Choose the condition(e.g. equals, contains, greater than).
4. Enter or select the value. The filter will be applied automatically.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FXCCFmNBrCiK0eQshLWE3%2FAdd%20a%20filter.gif?alt=media&#x26;token=9e3684da-f694-4697-a795-7ca877495b47" alt=""><figcaption><p>Add a filter</p></figcaption></figure>

#### **Adding a** [**Filter Group**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/filter#filter-groups)

Combine multiple filters to create more advanced criteria using AND/OR logic.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F7fmLOtfxhL53PuMbEZFf%2FAdd%20a%20filter%20group.gif?alt=media&#x26;token=381a7e7c-79a3-466e-bfd0-85031c9a6eec" alt=""><figcaption><p>Add a filter group</p></figcaption></figure>

#### Using [**Cross Filter**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/filter#cross-filters)

Cross Filters are one of Wave Grid's most powerful features. It is not available in standard Salesforce. They let you filter a parent object based on whether related child records exist (or don't exist).

* **With related records** — e.g. show Accounts that have at least one Case.
* **Without related records** — e.g. show Contacts with no related Opportunities (potential orphaned leads).
* **You can also add child conditions** — e.g. show Accounts that have at least one open Case created in the last 30 days.

{% hint style="info" %}
Cross Filters work alongside standard filters and filter groups. You can drag them to reorder, group them, or clone them just like any other filter.
{% endhint %}

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FFa7l7QXyZtZVjeqwD4ov%2FAdd%20a%20cross%20filter.gif?alt=media&#x26;token=dd28856c-069a-4c31-9cc3-5678c9546d3f" alt=""><figcaption><p>Add cross filter</p></figcaption></figure>

#### [Dynamic Filter](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/dynamic-filter) as Value

When setting a filter condition, instead of entering a static value you can use a Dynamic Filter as Value. This lets the filter value update automatically based on the current context. For example, always filtering to the current user or today's date.

Common dynamic values include:

<table><thead><tr><th width="304" valign="top">Dynamic</th><th valign="top">What it resolves to</th></tr></thead><tbody><tr><td valign="top">Current User</td><td valign="top">The Salesforce user who is viewing the grid</td></tr><tr><td valign="top">Today</td><td valign="top">The current date at runtime</td></tr><tr><td valign="top">This Month / This Quarter / This Year</td><td valign="top">The current calendar period</td></tr><tr><td valign="top">Current User's Role</td><td valign="top">The role of the logged-in user in Salesforce</td></tr></tbody></table>

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FgVTaGw0b5ahh824QYiCh%2FDynamic%20Filter.gif?alt=media&#x26;token=28a86e92-97ab-4f4d-9a40-4379c1cffe48" alt=""><figcaption><p>Dynamic Filter</p></figcaption></figure>

#### Filter Collections

Every filter you add in this step whether a standard filter, filter group, or cross belongs to the currently active Filter Collection. A collection is simply a named container that holds a complete set of filters for your grid.

You can create multiple collections per grid, each with a completely independent set of filters. This means you can build several different filtered views of the same data and let users switch between them instantly.

<table><thead><tr><th valign="top">Example</th></tr></thead><tbody><tr><td valign="top">You are building an Account grid and want two separate filtered views:</td></tr><tr><td valign="top">Collection 1 — Hot Accounts: Filter: Account Rating = Hot</td></tr><tr><td valign="top">Collection 2 — Cold Accounts: Filter: Account Rating = Cold</td></tr><tr><td valign="top">Each collection is independent. At runtime, selecting "Hot Accounts" applies only those filters. Selecting "Cold Accounts" instantly switches the entire filter configuration.</td></tr></tbody></table>

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Ff9ZUnzva6rkQLddVXsb2%2FFilter%20Collection.gif?alt=media&#x26;token=49064d89-1d32-437f-82de-b839b59aa17d" alt=""><figcaption><p>Filter Collection</p></figcaption></figure>

**Managing Filter Collections:**

<table><thead><tr><th width="108" valign="top">Action</th><th valign="top">How it works</th></tr></thead><tbody><tr><td valign="top">Rename </td><td valign="top">Update the name directly in the Filter Collections section. Names must be unique and cannot be empty.</td></tr><tr><td valign="top">Duplicate </td><td valign="top">Create a copy of an existing collection. The duplicate will include "Copy" in its name.</td></tr><tr><td valign="top">Delete </td><td valign="top">Remove a collection and all its filters. Note: at least one collection must always remain. The last collection cannot be deleted.</td></tr><tr><td valign="top">Switch</td><td valign="top">Click a collection name to activate it. Its filters apply to the grid immediately.</td></tr></tbody></table>

{% hint style="info" %}
If you already had filters configured before using Filter Collections, those filters are automatically saved as a Default Filter Collection. Nothing is lost.\
\
Whether standard users can switch between collections at runtime is controlled by the Filters permission in the Permissions tab.
{% endhint %}

***

## 5. Display Options

Display Options control how data looks and is organised in the grid. This step has five sub-tabs. All are optional.

### [**Rule**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/rule) — Conditional Formatting

Rules apply visual formatting to rows or cells based on conditions you define — like a traffic-light system for your data.

* Single rule: Highlights a row or cell when a condition is met — e.g. turn the row red if Stage = "Closed Lost".
* Color bar: Applies a colour gradient to a numeric column to show relative values at a glance — e.g. colour Deal Size from green (small) to red (large).

To add a rule: click + Add Rule, set your condition, choose the action, add the legend and click Apply.&#x20;

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FtTyK3jjzPsRPPYt5lGr0%2FRule.gif?alt=media&#x26;token=c832b184-4f09-4036-92c7-124a45787e22" alt=""><figcaption><p>Apply Rule</p></figcaption></figure>

### [**Column Grouping**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data/column-group)

Group related columns under a shared header label. For example, group "Mobile", "Business Phone", and "Email" under a "Contact Details" header. This helps users navigate wide grids with many columns.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FdQusL1kSV6ZwJnmrmTBa%2FColumn%20Grouping.gif?alt=media&#x26;token=ae96bc04-fa01-414a-82cc-cb6cc989169a" alt=""><figcaption><p>Add Column Grouping</p></figcaption></figure>

### **Related List**

Include related records to provide additional context within the grid. Choose the Related List position either in the right panel or as a hierarchical view.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FbI9jux9IOJKjJtzDOuKf%2FRelated%20List%20(Position).gif?alt=media&#x26;token=ee634579-434d-4fec-862a-8df513e7e684" alt=""><figcaption><p>Add related list</p></figcaption></figure>

#### **Key Capabilities**

**Full-Screen Overlay**\
Open related lists in full-screen mode as an overlay on top of the main grid, improving visibility and focus.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F5FomVvDyzq7TdU6j5YEg%2FR%20Full-Screen%20Overlay.gif?alt=media&#x26;token=5e13534e-7c8f-415d-a75a-3cd35d6e7766" alt=""><figcaption><p>Full-Screen Overlay</p></figcaption></figure>

**Limit**\
Add up to 6 related lists (previously 4). The **Add New** button is automatically disabled once the limit is reached.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FHDSdevHUaJKbtIjjdV3x%2FR%20Extended%20Limit.gif?alt=media&#x26;token=a49378fe-0d66-4082-8e13-a8c984b28884" alt=""><figcaption><p>Limit</p></figcaption></figure>

**Reorder Related Lists**\
Drag and drop related list icons or tabs to change their order.

* Designer changes are saved in grid metadata.
* Runtime users can reorder tabs, with preferences stored in Inter Personal Copy (IPC).

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fe7CSdRy4hzraXLxzIMaX%2FR%20Reorder%20Related%20Lists.gif?alt=media&#x26;token=5799bc90-2618-4593-8712-804516c16368" alt=""><figcaption><p>Reorder Related List</p></figcaption></figure>

**Tooltip Support**\
Add or edit tooltips for each related list. If left empty, the relationship name is used by default. Tooltips appear on hover at runtime.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fg120PP4cJLBkWI7dTd17%2FR%20Tooltip%20Support.gif?alt=media&#x26;token=6dd46f55-021d-4b9d-94ee-8d724f00dd6b" alt=""><figcaption><p>Tooltip Support</p></figcaption></figure>

### **Layout**

Freeze specific columns to enhance navigation. Users can freeze **columns to the left or right of the grid** as needed. Users can also adjust the [**Row Height**](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data#layout) to optimize data visibility.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FaVJUdKpd2Nk4RslyH4Sn%2FLayout%20Latest.gif?alt=media&#x26;token=2c81cab7-cefa-40e8-9f07-7bcc2d587e22" alt=""><figcaption><p>Configure grid's layout</p></figcaption></figure>

### [Sort](https://docs.valorx.com/valorx-wave/wave-data-management/managing-grid-data#sort)

The **Sort** feature helps you arrange records in a meaningful order, making it easier to analyze data effectively.

After configuring the display options, click **Next** to proceed.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FobCNfXcrdcrKynKEZB8F%2FSort.gif?alt=media&#x26;token=fa7e2fd7-369c-43c3-9396-374dde480065" alt=""><figcaption><p>Sort</p></figcaption></figure>

## 6. Actions

The **Action Tab** in the Grid Wizard enables **Designers** to create interactive row actions, improving workflows and data management. These actions integrate with **Flows, Lightning Components (Aura), and Lightning Web Components (LWC)** to provide flexibility and seamless customization.

Designers can configure two types of row actions:

### Row Action

Use this option to create and configure **Row Action buttons** for individual rows.

#### **Steps to Configure a Row Action**

{% stepper %}
{% step %}
**Add and Customize an Action Button**

Click **+ Row Action** to create a new action button. Then, customize its appearance and details:

* **Button Style** – Choose between:
  * **Icon and Text**
  * **Icon Only**
* **Label** – Enter a name for the button.
* **Tooltip** – Provide additional guidance for users.
* **Color Scheme** – Select a button color.
* **Icon** – Choose an icon to represent the action visually.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fg8awXPVqb8BfvgjTMWjh%2FAdd%20and%20Customize%20an%20Action%20Button.gif?alt=media&#x26;token=294f0ea8-b179-4ba7-a496-03350ef72df6" alt=""><figcaption><p>Add and Customize an Action Button</p></figcaption></figure>
{% endstep %}

{% step %}
**Select Action Type and Configure Return Settings**

Click **Next**, then choose the desired action type:

* **Lightning Web Component (LWC)**
* **Aura Component**
* **Flow**

**Set Action Component and Return Settings**

* **Row Refresh** – Determines post-action behavior:
  * **None** (Default)
  * **Always Refresh Row**
* **Success Message** – Define a message to display after a successful action.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F2TqBks2CgVDUBLOgOHpk%2FSelect%20Action%20Type%20and%20Configure%20Return%20Settings.gif?alt=media&#x26;token=47cccba1-877a-4886-84c2-b4008ad43256" alt=""><figcaption><p>Select Action Type and Configure Return Settings</p></figcaption></figure>
{% endstep %}

{% step %}
**Add Variables and Finalize Configuration**

Click **Next** to assign variables:

* **Name** – Define a variable name (e.g., *recordId*).
* **Type** – Select the appropriate data type.
* **Parameters** – Specify how values will be passed.
* **Value** – Provide a value for the component.

**Note:** In Flows, variables are dynamically added as they are configured.

Click **Finish** to save the action.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FpG2fo4UnqIlQ7EbUAxwS%2FAdd%20Variables%20and%20Finalize%20Configuration.gif?alt=media&#x26;token=4482caa4-a9b4-450b-abfa-5a28547c4a93" alt=""><figcaption><p>Add Variables and Finalize Configuration</p></figcaption></figure>
{% endstep %}

{% step %}
**Action Column Position**

This option determines where the **action buttons** appear within the row.

#### **Steps to Configure Column Position**

1. Click **Action Column Position**.
2. Select the button placement:
   * **Left**
   * **Right**

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fp1tSzocOXkaLMSmz04F5%2FConfigure%20Row%20Action%20Account%204.gif?alt=media&#x26;token=86b347f8-0366-409d-aa80-207b1f475e75" alt=""><figcaption><p>Configure the Action column position on the grid</p></figcaption></figure>
{% endstep %}

{% step %}
**Combine Row Action**

Configure how row-level actions are displayed and executed within the grid.

Enable the **Combine Row Actions** toggle (enabled by default) to consolidate all row action buttons into a single icon in the action column.

* Clicking the icon opens a dropdown menu listing all available row actions.
* Users can select and execute actions as usual from the dropdown.
* A dedicated icon with a **“Row Actions”** tooltip represents the combined button at runtime.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FgoH9V5P6Qkf0o3OA7ugC%2FCombine%20Row%20Actions.gif?alt=media&#x26;token=4d9629bb-7c15-4fd1-8d63-6a2950ea9278" alt=""><figcaption><p>Combined Row Action</p></figcaption></figure>
{% endstep %}

{% step %}
**Callback Event for Row Action Completion** *(Aura Components and LWC only)*

When implementing the Row Action button in an Aura Component or Lightning Web Component, you can use a callback event to trigger actions after the row update is completed. This allows you to refresh data, display success messages, or execute additional logic automatically.

> **Note:** This step is **not applicable** if you are using the Row Action in a Flow component.

To integrate this functionality into your org, add the following code to your component:

#### **Aura Component Setup**

1. **Add the Message Channel**\
   Include the Message Channel in your Aura component definition:

   ```xml
   <lightning:messageChannel type="valorxwave__callbackMessageChannel__c" aura:id="callbackMessage" />
   ```
2. **Publish the Callback Event**\
   In your Aura controller, use the following code to publish the callback message:

   ```javascript
   invokeValorxCallback: function (component, isSuccess) {
     try {
       const payload = {
           status: isSuccess ? 'SUCCESS' : 'ERROR',
       };
       component.find("callbackMessage").publish(payload);
     } catch (err) {
       console.info('error while triggering close', err);
     }
   },
   ```

#### **LWC Setup**

1. **Import Message Service Features**\
   Import the necessary features in your LWC component:

   ```javascript
   import { MessageContext, publish } from 'lightning/messageService';
   import callbackMessage from '@salesforce/messageChannel/valorxwave__callbackMessageChannel__c';
   ```
2. **Publish the Callback Message**\
   After completing all component actions, use the following code to publish the callback message:

   ```javascript
   @wire(MessageContext) messageContext;

   invokeValorxCallBack(isSuccess = false) {
     const payload = {
         status: isSuccess ? 'SUCCESS' : 'ERROR',
     };
     publish(this.messageContext, callbackMessage, payload);
   }
   ```

{% endstep %}
{% endstepper %}

### Grid Action

Use this option to create and configure **Grid Action buttons** for individual rows.

#### **Steps to Configure a Grid Action**

{% stepper %}
{% step %}
**Add and Customize an Action Button**

Click **+ Grid Action** to create a new action button. Then, customize its appearance and details:

* **Button Style** – Choose between:
  * **Icon and Text**
  * **Icon Only**
* **Label** – Enter a name for the button.
* **Tooltip** – Provide additional guidance for users.
* **Color Scheme** – Select a button color.
* **Icon** – Choose an icon to represent the action visually.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FgQTPDHlrsKlpJnhrRuV5%2FGrid%20Actions%20p1.gif?alt=media&#x26;token=813aace9-3f77-44f2-9bb7-29b0d7a7c815" alt=""><figcaption><p>Add and Customize a Grid Action Button</p></figcaption></figure>
{% endstep %}

{% step %}
**Select Action Type and Configure Return Settings**

Click **Next**, then choose the desired action type:

* **Lightning Web Component (LWC)**
* **Aura Component**
* **Flow**

**Set Action Component and Return Settings**

* **Refresh on Execution** – Determines post-action behavior:
  * **Do not Refresh** (Default)
  * **Always Refresh Selected Rows**
  * **Refresh Selected Rows on Success**
  * **Always Refresh Grid**
  * **Refresh Grid on Success**
* **Success Message** – Define a message to display after a successful action.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FPL6givVSvZkcooEt6jWv%2FGrid%20Actions%20p2.gif?alt=media&#x26;token=8aa2fda8-b926-4174-a140-61737934ddb7" alt=""><figcaption><p>Select Action Type and Configure Return Settings</p></figcaption></figure>
{% endstep %}

{% step %}
**Add Variables and Finalize Configuration**

Click **Next** to assign variables:

* **Name** – Define a variable name (e.g., *recordId*).
* **Type** – Select the appropriate data type.
* **Parameters** – Specify how values will be passed.
* **Value** – Provide a value for the component.

**Note:** In Flows, variables are dynamically added as they are configured. For Aura and LWC, user need to handle collection types manually.

Click **Finish** to save the action.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fn744UftFdZoxdR51keaK%2FGrid%20Actions%20p3.gif?alt=media&#x26;token=015d7168-1873-4a55-b9ec-da36969b6103" alt=""><figcaption><p>Add Variables and Finalize Configuration</p></figcaption></figure>
{% endstep %}
{% endstepper %}

This setup ensures a **customized and efficient grid experience**, allowing users to trigger actions directly from the Grid.

***

## 7. Permissions (Manage Access)

The Permission tab is used to configure grid access and permissions. It contains two sub-tabs: **Users** and **Grid Controls**.

### 1. **Users Tab**

This tab allows designers to manage user access to the grid. Access can be set to **All Users** or **Custom**.

Selecting **Custom** enables granular control based on specific user attributes. Three access options are available:

* **Users** – Assign grid access to individual users.
* **Permission Sets** – Grant access based on Salesforce permission sets, ideal for large teams or dynamic user groups.
* **Profiles** – Provide access according to user profiles.

Use the **Add** button to grant access using any of the options above, or the **Remove Access** button to revoke it.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FazusSSMgI01sxJxLs5YI%2FUsers.gif?alt=media&#x26;token=512fda4c-57a4-45ea-be9a-354f9748c9ae" alt=""><figcaption><p>Users</p></figcaption></figure>

### 2. **Grid Controls Tab**

Fine-tune grid functionality for specific users, profiles, or permission sets.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FYoPpVsYJwQJQOqPLghJ8%2Fimage.png?alt=media&#x26;token=84ba1c18-abb1-4687-9928-0c391846d58e" alt=""><figcaption><p>Grid Controls</p></figcaption></figure>

#### &#x20;**Fields**

* Allow or restrict the ability to **add** and **remove** fields to the grid.
* Allow or restrict the ability to **rearrange** field positions.

#### &#x20;**Filters**

Control whether Standard Users can edit filters within the grid.

* When **Allow Editing** is enabled, users can modify existing filters.
* When **Allow Editing** is disabled, filters become read-only, and the **Hide Filters** option is available.

**Hide Filters in Toolbar**\
Toggle to show or hide filters from the toolbar.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FQ0H5BUEMoqr7pS4SfCOU%2Fimage.png?alt=media&#x26;token=55d98983-8733-45bc-a9e5-311149423425" alt=""><figcaption><p>Toolbar when “Hide rules in toolbar" is enabled</p></figcaption></figure>

#### **Record Controls**

Configure permissions for record-level actions within the grid.

* **Allow Add and Clone** – Enable users to add new records and clone existing records.
* **Allow Delete** – Enable users to delete records.
* **Allow Import** – Enable users to import records into the grid.
* **Allow Export** – Enable users to export records from the grid.

**Default Page Size**\
Set the default number of records displayed in the grid (200 to 10,000 records).

#### **Display Options**

* **Allow Editing (Rules)**\
  Control whether Standard Users can edit Rules within the grid.

  * When **Allow Editing** is enabled, users can modify existing Rules.
  * When **Allow Editing** is disabled, Rules become read-only, and the **Hide Rules** option is available.

  **Hide Rules in Toolbar**\
  Toggle to show or hide Rules from the toolbar.

  <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2Fx5MJnTFVqw6sy2BT7r9N%2Fimage.png?alt=media&#x26;token=22fb15ec-066d-43b7-be6c-24ad664ad51e" alt=""><figcaption><p>Toolbar when “Hide rules in toolbar" is enabled</p></figcaption></figure>
* **Column Grouping** – Enable users to group data by specific columns.
* **Related Lists** – Allow adding related list
* **Freeze/Unfreeze Columns** – Allow users to lock or unlock columns for easier navigation.
* **Allow Sorting** – When disabled, users cannot sort data in the grid UI.
* **Grid Header Label** – Controls the label displayed when the grid is published on a record page. Choose from three options: **Object Plural Name**, **Grid Name**, or **No Label**.

<div><figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2F1zix3oz44FBx8FD7Ooay%2FObject%20Plural%20Name.png?alt=media&#x26;token=a47d20e1-f066-4578-b6b4-0319728e5599" alt=""><figcaption><p>Object Plural Name</p></figcaption></figure> <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FV3446IAolcUXSDNBAklc%2FGrid%20Name.png?alt=media&#x26;token=7bd04c52-98e2-43f4-b8e1-4ce1c17f0b45" alt=""><figcaption><p>Grid Name</p></figcaption></figure> <figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FURr8khmN3Fpw9wxqYsta%2FNo%20Label.png?alt=media&#x26;token=8acc3c66-eb6d-41ad-9dee-8161c180c02b" alt=""><figcaption><p>No Label</p></figcaption></figure></div>

#### **Save Options**

* **Refresh on Save**: Automatically refreshes modified records after saving. Enabled by default.

#### **Access Options**

* **Allow Creating Custom Grids** – Enables standard users to create their own Custom Grids from the Global Grid.
* **Allow Sharing Custom Grids with All Users** – Allows users to share their Custom Grids with others. This option is only available when custom grid creation is enabled.

Permissions are **grid-specific** and take effect immediately after saving.\
Existing **Inter Personal Copy (IPC) grids** are automatically converted to **Custom Grids** once custom grid creation is enabled.

If custom grid creation access is **revoked**, a warning is displayed and all associated Custom Grids are permanently deleted upon confirmation.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FBpr2fl9NCwvr6wHSHFnD%2FGrid%20Controls%20.gif?alt=media&#x26;token=bd357be0-d0c1-406c-b30c-17a5154970d2" alt=""><figcaption><p>Grid Controls: Access Options</p></figcaption></figure>

***

## 8. Save & Surf

When you're happy with your configuration, click Save and Surf in the top-right corner to finish building your grid. Once saved, your grid is live and ready to use.

To use your grid, navigate to the [**Surf the Wave**](https://docs.valorx.com/valorx-wave/surf-the-wave/surf-the-wave-in-salesforce) tab. This is a separate tab from Grid Wizard and is where your grid comes to life at runtime showing your live Salesforce data in the spreadsheet-like interface you just configured.

<figure><img src="https://2237973035-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F65f4C4H8V5e0YV342mwp%2Fuploads%2FSV7Imou0j5BHUmyu2RsO%2FSave%20and%20Surf.gif?alt=media&#x26;token=0d7a97da-c16c-4714-b48d-551d69be409e" alt=""><figcaption><p>Save and Surf</p></figcaption></figure>

#### What Happens After Saving

* Your grid is immediately available to all permitted users in the Surf the Wave tab.
* Users can personalise their view (fields, filters, sort) based on the permissions you set — without affecting your original configuration.
* You can edit the grid configuration at any time from the Grid Wizard tab using the Edit button, or jump directly to any step from within Surf the Wave using the Admin Controls Edit button.
* The grid can be added to a Lightning App page or a record page. To learn how, visit this [link](https://docs.valorx.com/valorx-wave/surf-the-wave/surf-the-wave-in-salesforce).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.valorx.com/valorx-wave/wave-experience/create-a-new-grid/grid-wizard-in-salesforce.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
