• Home
  • Visit Our Website
  • Home
  • Visit Our Website
Visit Our Website

Users

188
  • Getting Started
    • How to Log into Assette
    • The Assette Home Page
    • The Assette Navigation Bar
    • Glossary
  • Authoring Center
    • Smart Docs
      • Smart Docs
      • How to Create a Smart Doc
      • Copying and Restoring from Version History
      • Tracking Changes with Life Events
      • Smart Docs X-Ray View
      • Smart Doc Troubleshooting
      • Troubleshooting
        • Troubleshooting Smart Docs
    • Smart Pages
      • Creating & Editing Smart Pages
      • Smart Pages
      • How to Unlock a Smart Page
      • Deleting Smart Pages
      • Tracking Changes with Life Events
      • How to Insert Blank Columns and Rows
      • Changing a Smart Page’s Size
      • Supported PowerPoint Charts
      • Copying and Restoring from Version History
      • Smart Page X-Ray View
      • Smart Page Content Classifications
      • Compliance Tags
      • Assette Editors
        • PowerPoint Editor
          • How to Add New Series to a Chart
          • How to Insert Images Using the Assette Ribbon
          • Assette Ribbon
            • The “Un-Fabricate” Button
          • Troubleshooting
            • Resolving “Failed to Open” Errors in the Assette PPTX Editor
            • Installing the Assette PowerPoint Editor
            • How to Check Your Microsoft PowerPoint Version
          • Advanced Settings
            • Advanced Settings Overview
            • General Tab
            • Margin Tab
            • Zigzag Tab
    • Fixed Content
      • Fixed Content
    • Data Docs
      • Data Docs
    • Smart Shells
      • How to Preview Smart Shells
      • Coupled Shells
      • Smart Shells
      • Tracking Changes with Life Events
      • Copying and Restoring from Version History
      • Creating Smart Shells Using the Smart Shell Library
      • Editing Smart Shells Using the Smart Shell Library
      • Creating Smart Shells via Assette’s PowerPoint Editor
      • How to Refresh Smart Shells
      • Deleting Smart Shells
      • Renaming Smart Shells
      • Smart Shells X-Ray View
      • Smart Shell Content Classifications
      • Performance History Chart
      • Smart Shells Frequently Asked Questions (FAQ)
      • Creating an “As of Date” Smart Shell
    • Brand Themes
      • Assette Dynamic Brand Theme Setup
      • Brand Themes
      • Managing Multiple Themes Within a Single Brand Theme
      • Creating a Brand Theme
      • Shell Styling
      • Dynamic Brand Themes
      • Master Slide Layouts for Dynamic Brand Themes
      • Changing a Smart Page’s Size
    • Email Templates
      • Using Variables in Assette Email Templates
      • Email Templates
    • Additional Features
      • Using Quick View in Assette
      • Automatic Extension Correction
      • X-Ray View Overview
      • The Generation Screen
      • Compare Versions
        • Compare Smart Page Versions
    • Authoring FAQs
      • Understanding the Difference Between My Workspace and Workrooms
      • What’s the Difference between Footnotes & Coupled Shells?
  • Content Hub
    • Library
      • Saved Trays in the Assette Library
      • Content Library
      • Content Generation and Sharing with Content Library
    • My Workspace
      • Adding Generated Content to a Workroom or Workspace
      • Editing Generated Content
      • Removing Content from My Workspace
      • Copying Content to My Workspace
      • My Workspace
    • RFPs & DDQs
      • Implementing the Assette RFP Module
      • Editing, Reordering, and Categorizing Questions
      • Editing an RFP Answer
      • Uploading an RFP to the Assette
      • RFPs & DDQs
    • Workrooms
      • Adding Generated Content to a Workroom or Workspace
      • Editing Generated Content
      • Removing Content from a Workroom
      • How to Edit Content in a Workroom
      • Copying Content to a Workroom
      • Workroom
    • Assette Viewer
      • Disabling or Removing the Assette Outlook Add-in
      • Assette Viewer Overview
      • Assette Viewer Basics
    • Content Center
      • How to Add a New Organization to the Organization Master
      • Content Plan Data Model
      • Content Plans
      • Content Types
      • Using Advanced Search in the Content Library
  • Data Engine
    • Input Center
      • Input Center Overview
      • Data Files Overview
      • Recipients
      • External Content Overview
    • System Data
      • System Data
    • Data Files
      • Troubleshooting Data Files Uploads
    • Data Validations
      • Data Validations
    • Qualitative Data
      • Adding and Editing People in Qualitative Data
      • Qualitative Info
      • Ownership Data
      • Firm Overview
      • People Data
      • Master Questionnaire
    • Disclosures
      • Managing Disclosure Fragment Categories
      • Creating or Editing a Disclosure Fragment
      • Disclosures versus Footnotes
      • Disclosures
  • Analytics
    • Usage Analytics
      • Content Sharing Analytics
    • Workflow Analytics
      • Workflow Analytics Overview
    • Component Analytics
      • Search and Filtering in Component Analytics
      • Component Analytics
      • Using X-Ray with Component Analytics
      • Templates Analytics
        • Templates Dashboard
      • Brand Theme Analytics
        • Brand Theme Analytics
      • Section Analytics
        • Sections Dashboard
      • Shell Analytics
        • Shells Dashboard
      • Data Block Analytics
        • Data Blocks Dashboard
  • Administration
    • Workbox
      • Workflow Path
      • Workbox Frequently Asked Questions (FAQ)
      • Workbox Basics
    • Content Types Master
      • Overview of the Content Types Master
      • Creating an Input File Content Type
      • Understanding Purpose in Content Types
      • Content Groups
      • Creating Content Types
      • Content Classes
      • Content Filename Aliases
    • Users
      • Work Group Basics
      • Internal Users
        • Internal User Roles & Responsibilities
        • Manually Creating Users in Assette
        • Reset or Unlock User’s Accounts
        • SSO Internal User Roles & Tasks
      • Work Groups
        • Creating & Editing Work Groups
        • Creating Subgroups
    • Workflows
      • Workflows Basics
      • Workflow Frequently Asked Questions (FAQ)
      • Workflow Management
        • Workflow Management Overview
        • Workflow Reassignment
      • Workflow Design
        • Client Portal User Approval Workflow
        • Editing or Deleting a Workflow
        • Creating a Workflow
        • Creating Conditional Workflows
    • Product Master
      • Adding or Editing a Product
      • Composite vs. Rep Accounts
      • Product Master Overview
      • Deactivating & Deleting Products
      • Troubleshooting Product Master Errors
    • Classification Master
      • Classification Master Overview
      • How to Manage Content Classifications
      • Creating & Managing Labels
      • Labels
      • Limitations
      • Compliance Tags
      • Data Ingredients Overview
    • Configurations
      • Attribution Data Objects Configurations
      • Batch Configurations
        • Smart Doc Name Format
        • Batch Configurations
  • Client Portal
    • Security Overview for the Assette Client Portal
    • Client Portal Overview
    • Creating Notifications for Client Portal Users
    • Client Portal Users
      • Client Portal User Workflow Lifecycle
      • Client Portal Frequently Asked Questions (FAQ)
      • Client Portal Session Handling
      • Log into the Assette Client Portal
      • Managing User Access in the Client Portal
      • Creating a New Portal User
      • Editing or Creating Portal Users
      • Deleting a Client Portal User
      • Monitoring and Accessing User Login Activity for Client Portal
  • Tutorials
    • RFP Module Implementation Checklist
    • When to Create a New Artefact in Assette
    • Creating a Fixed-Row Zigzag Table
  • Legacy Support
    • Assette Centers [Legacy]
    • Data Validations [Legacy]
    • Assette Roles Overview [Legacy]
    • Create & Manage Attributes [Legacy]
    • Internal Users Management [Legacy]
    • Legacy Authoring Center
      • Data Object Library [Legacy]
      • Data Docs [Legacy]
      • Smart Shells [Legacy]
      • How to Create a New Smart Page [Legacy]
      • Legacy Smart Pages
        • Creating and Editing Smart Pages [Legacy]
      • Legacy Smart Docs
        • Creating a Smart Doc [Legacy]

Developers

213
  • Getting Started
    • The Assette Navigation Bar
    • User Login & Creation
      • Add Assette Users with Azure AD
      • Developer Roles & Permissions
      • How to Create & Assign Permission Groups
      • Permission Groups Overview
    • Implementation Overview
      • Introduction to Assette Implementation
      • The Assette Implementation Approach
      • What Data is Required to Start?
      • Connecting to Source Systems with Assette
      • Essential Data Blocks
      • Fields Synchronized with Assette
  • Developer Tools
    • Tool Setup
      • Developer Tools Overview
      • Assette Development Stack
      • Developer Center Configurations
      • Prohibited Data Block Keywords and Built-ins
      • Python Data Block Libraries & Keywords
      • Troubleshooting
        • Troubleshooting AxiosError-500 Errors
        • Assette VS Code Extension Troubleshooting
    • Data Block Editor
      • Using Nested Functions in Data Blocks
      • Importing Python Libraries
      • Import & Export Data Blocks
      • Data Block Unit Testing in Python
      • Data Block Editor Basics
        • Introduction to the Data Block Editor
        • Calculation Operators and Precedence
        • Secret Management
        • How to Copy & Delete Data Blocks
        • Creating & Editing Data Blocks
        • How to Freeze Data Blocks
      • Data Block Keywords
        • Understanding the “response” Keyword in Assette Data Blocks
        • Understanding the ‘read’ Keyword in Assette Data Blocks
      • Data Block Editor Metadata
        • How to Update Data Block Metadata
      • Data Block Editor Troubleshooting
        • Troubleshooting API Authentication Issues
    • Data Object Editor
      • Troubleshooting Data Object Run-Time Errors
      • Applying Row Filtration with Data Objects
      • Locking a Data Object
      • Introduction to the Data Object Editor
      • Dynamic Row Numbering
      • Force Unlocking a Data Object
      • Editing Data Objects
      • Creating Data Objects
      • Data Object KeyError
      • How to Copy & Delete Data Objects
      • Generation Time Data Settings
      • Importing & Exporting Data Objects
      • Design View
        • Data Settings Tab
          • Data Settings Tab
        • General Info Tab
          • General Info
          • Styling Classes
        • Data Source Tab
          • Data Source Tab
        • Columns Tab
          • Columns Tab
          • Date Formats
        • Groupings Tab
          • Grouping Tab
          • Group Expressions & Group Ordering
          • Creating Group Header Rows
          • Creating Group Summary Rows
          • How to Create “Group By” Data Settings
        • Sorting Tab
          • Sorting Tab
        • Summary Tab
          • Summary Tab
        • Row Types Tab
          • Row Types Tab
        • Title & Footnotes Tab
          • Title & Footnotes Tab
        • Legend Tab
          • Legend Tab
        • Output Variables Tab
          • Output Variable Tab
        • Internal Variables Tab
          • Internal Variables
          • Internal Variable Type Assignment
        • No Data Message Tab
          • No Data Message Tab
      • Expressions
        • The “round(value, n)” Expression
        • Expressions, Operators, & Functions
        • The “Contains()” Function
        • The “HasValue()” Function
        • The “NOT” Operator
        • The “OR” Operator
        • The “<> Not Equal To” Operator
        • The “>= Greater Than or Equal To” Operator
        • The “ADD” Expression
        • The “AND” Expression
        • The “Divide” Expression
        • The “Minus” Expression
        • The “Multiply” Expression
        • The “<= Less Than or Equal to” Operator
        • The > Greater Than Operator
        • The “==” Equals Operator
        • The Grouping Operator “()”
        • The < Less Than Operator
    • Dynamic Fields
      • Dynamic Fields
    • Footnote Editor
      • Footnote X-Ray View
      • Footnote Editor
      • How to Create & Edit Footnotes
      • Import Variables & Columns
    • Tenant Manager
      • Failed Validations in Tenant Manager
      • Deployment Statuses
      • Tenant Manager Overview
      • Deploy Content Using the Assette Tenant Manager
      • Review Artifacts
      • Tenant Manager Troubleshooting
      • Tenants in the Tenant Manager
      • Deployment Processing & Error Logging
    • Visual Studio Code
      • Assette Visual Studio Code Extension
      • How to Find Where a Component is Used in the VS Code Extension
      • Error and Status Messages Reference
      • Signing Into the Assette VS Code Extension
      • VS Code Frequently Asked Questions (FAQs)
      • Installing the Assette Block Editor VS Code Extension
      • Assette VS Code Extension Troubleshooting
  • Data Blocks
    • Data Block Basics
      • Restricted Keywords and Functions
      • Stacking Decorator Blocks
      • Decorator Data Blocks
      • Publishing Data Blocks
      • Data Block Basics
      • Data Block Categories
      • Data Block Request Parameters
    • Data Blocks by Category
      • Understanding Assette Data Blocks
      • System Data Blocks
        • Organization Add Data Block
        • Organization Master Data Block
        • Get Recipient Info Salesforce Transform Data Block
        • Get Recipient Info Salesforce Data Blocks
        • Get Recipients LocalDB Data Block
        • Get Recipient Info Local Data Block
        • Recipient Master Data Block
        • Attribute Type Values Local Data Block
        • Brand Theme Selector Data Block
        • Brand Theme Extract Data Block
        • System Data Blocks Overview
        • Account Master Data Block
        • Asset Classes Local Data Block
        • As of Dates Data Block
        • Countries Data Block
        • Currency Codes Data Blocks
        • Product Master Data Block
        • Sub Accounts Client Database Data Block
        • Sub Accounts Local Database Data Block
        • Sector Schemes Data Blocks
        • Sectors Data Block
        • Sub Accounts Data Block
      • Sync Data Blocks
        • Sync Data Block Overview
        • Country List Sync Data Block
        • Product Master Sync Data Block
        • Attribute Type Values Sync Data Block
      • Source Data Blocks
        • Source Product Offer Countries Data Block
        • Source Sub-Accounts Relationship Data Block
        • Source List of Attribute Type Values Data Block
        • Source Extract Accounts Details Data Block
        • Source Account Attributes Values Data Block
        • Source List of Currency Codes Data Block
        • Source Product Master Extract Data Block
      • Transform Data Blocks
        • Validation Account Performance Factors Data Block
        • Assette Get Valid Periods Data Block
        • System Period Information Data Block
        • Assette Get Begin & End Date Data Block
        • Source Extract Accounts Details Data Block
      • Interface Data Blocks
        • Strategy Info for Product Data Block
        • Organization Read Local Data Block
        • Sectors Local Database Data Block
        • Assette Period Code Map Data Block
        • Account Attribute Mapping Local Database Data Block
        • Account Attributes Local Database Data Block
        • Source Product Master Extract Data Block
        • Source List of Currency Codes Data Block
        • Source Account Attributes Values Data Block
        • Product Master Local Data Base Data Block
      • Configuration Data Blocks
        • Salesforce Settings Data Block
        • Configuration Data Block Overview
        • Calculation Python Environment Data Block
        • Python Data Calculation Modules Data Block
        • Python Environment for Date Calculation Data Block
        • Demo Snowflake Setting Data Block
        • Snowflake Demo Certificate Data Block
        • Calculation Environment Data Block
    • Data Blocks by Functionality
      • Get Major Minor Ticker Data Block
      • Account Master
        • Account Master Data Block
        • Filtering the Account Master Using Account Codes
      • Qualitative Information
        • Personnel Information Data Block
      • Assette Helper Data Blocks
        • Get Formatted Date Data Block
    • Example & Demo Blocks
      • Demo Asset Class Data Block
  • Data Objects
    • Data Objects
    • Data Object X-Ray View
    • Introduction to Data Objects
  • Integrations
    • Salesforce
      • Connecting Salesforce with Assette
    • Snowflake
      • Source Account Attributes Values Data Block
      • Snowflake Integration
    • Aprimo
      • Assette-Aprimo Integration Overview
      • Inserting Content with Aprimo
      • Aprimo Image Library Data Block
      • Aprimo Thumbnail Image Library API Data Block
      • Modifying the Aprimo API Records Data Block
      • Aprimo Data Blocks
        • Aprimo API Post Order Data Block
        • Aprimo Image Thumbnail Data Block
        • Aprimo API Single Record Data Block
        • Aprimo API Records Data Block
        • Aprimo API Order Status
        • Image Content Data Block
  • Developer FAQ
    • Batch Generation Architecture
    • How to Add a New Product to the Product Master
    • How to Add New Attributes to the Attribute Master
    • Data Blocks Frequently Asked Questions (FAQ)
    • Data Object Frequently Asked Questions (FAQ)
    • Tenant Manager Frequently Asked Questions (FAQ)
    • TLS Email Encryption via SendGrid
    • Data Block Cheat Sheet
    • Why Can’t I Edit a Data Object?
    • How Do Unit Tests Work in Assette?
    • Enable Assette Add-In in Case of Failure
    • How Do I Log into Snowflake?
    • Period Codes
    • Developer Tools FAQs
      • Artefact Name Change Handling
      • Removing Blank or NULL Columns
      • How to Display Different Values in the Account Code Dropdown in the Data Object Editor Preview
      • When and Why You See an Impact Change Message in the Developer Center
  • Tutorials
    • Creating a Correlation Matrix Table
    • Data Block Tutorials
      • Structuring Data for Time-Series Charts in PowerPoint
      • How to Cache Data Using Data Blocks
      • Creating a Certificate Data Block
      • Making Public API Calls Using Assette Data Blocks
      • Using Data Blocks to Make API Calls
    • Data Object Tutorials
      • Creating Dynamic Column Headings
implementation

Implementation

18
  • Getting Started
    • Welcome to the Assette Implementation Guide
  • Planning Your Implementation
    • Assette 101
    • The Three Layer Model
    • What to Expect from Implementation
  • Platform Layers
    • The Data Engine
    • Authoring Center
    • Content Hub
  • Assemble Your Implementation Team
    • Technical Environment & Tenant Setup
    • Building Your Implementation Dream Team
    • Scaling Your Implementation Across Strategies & Modules
  • Working With Data
    • Content Inputs
    • Prepare and Shape Your Data
    • Real-Word Examples
  • Implementation Process & Support
    • Implementation Steps
    • Analyze Backward, Build Forward
    • Assette Support & Roles
  • ACE Training
    • How ACE Training Works
    • ACE Syllabus
  • Home
  • Docs
  • Developers
  • Developer Tools
  • Data Object Editor
  • Expressions
  • The “ADD” Expression

The “ADD” Expression

3 min read

The Assette Data Object Editor supports a variety of expressions and functions that allow you to manipulate and calculate data effectively. One of the fundamental mathematical operations available is the “ADD” expression, which is performed using the + operator.

Mathematical Operators Overview #

Before exploring the “ADD” expression in detail, let’s review the basic mathematical operators supported by the Data Object Editor:

  • Addition (+): Adds two or more numbers together.
    • Example: 1 + 2 + 3 returns 6.
  • Subtraction (-): Subtracts one number from another.
    • Example: 10 - 9 - 8 returns -7.
  • Multiplication (*): Multiplies two or more numbers.
    • Example: 1 * 2 * 3 returns 6.
  • Division (/): Divides one number by another.
    • Example: 1000 / 10 / 10 returns 10.

The “ADD” Expression Using the “+” Operator #

In the Assette Data Object Editor, addition is performed using the + operator. This operator allows you to add numerical values together to calculate sums.

Syntax #

value1, value2, value3: Numeric values or variables you wish to add together.

value1 + value2 + value3 + …

Examples #

Simple Addition

Add two numbers. Result: 15

5 + 10

Adding Multiple Numbers

Add several numbers in a sequence. Result: 20

2 + 4 + 6 + 8

Using Variables

If you have variables representing data points, you can add them directly. Result: Sum of the revenues for all four quarters.

revenueQ1 + revenueQ2 + revenueQ3 + revenueQ4

Combining with Other Operators

You can combine addition with other mathematical operations. Result: Total cost including shipping.

(price * quantity) + shippingCost

Grouping with Parentheses #

Use parentheses ( and ) to group expressions and control the order of operations.

Example

Calculate the total cost with a discount:

(totalPrice - discount) + tax

Without Parentheses

This subtracts discount from totalPrice and then adds tax.

totalPrice - discount + tax

With Parentheses

This adds discount and tax first, then subtracts the result from totalPrice.

totalPrice - (discount + tax)

Important Considerations #

  • Order of Operations: The Data Object Editor follows standard mathematical order of operations (PEMDAS/BODMAS). Operations inside parentheses are evaluated first, followed by multiplication and division, then addition and subtraction.
  • Data Types: Ensure that the values you are adding are numerical. Adding non-numeric data may result in errors or unintended results.
  • Null and Undefined Values:
    • Null: Represents a null value (e.g., data point not available).
    • Undefined: Represents an undefined or unassigned value (e.g., result of dividing by zero).

Use the HasValue function to check if a value is neither null nor undefined before performing addition:

HasValue(value1) and HasValue(value2) ? (value1 + value2) : defaultValue

Conditional Addition:

You can use conditional expressions to add values only if certain conditions are met.

(quantity > 0) ? (price * quantity) : 0

This calculates the total cost only if quantity is greater than 0.

Using the Mod and Power Functions

In addition to the + operator, the Data Object Editor provides mathematical functions that can be used in conjunction with addition:

  • Mod(n1, n2): Returns the remainder of n1 divided by n2.
    • Example: Mod(11, 3) returns 2.
  • Power(n1, n2): Calculates n1 raised to the power of n2.
    • Example: Power(10, 3) returns 1000.
  • These functions can be combined with addition for more complex calculations.

Example

Calculate the sum of a number and its square. If number is 5, the expression evaluates to 5 + 25 = 30.

number + Power(number, 2)

Practical Use Cases #

Calculating Totals.

Compute the total sales amount:

unitPrice * quantitySold

Aggregating Data

Add up different expense categories to get the total expenses:

travelExpenses + lodgingExpenses + mealExpenses

Adjusting Values

Increase a value by a certain percentage:

value + (value * percentageIncrease / 100)

Calculating Averages

Compute the average of several numbers.

(score1 + score2 + score3) / 3

Summary #

  • The “ADD” expression in the Assette Data Object Editor is performed using the + operator.
  • Use the + operator to add numerical values or variables.
  • Combine addition with other mathematical operations for complex calculations.
  • Use parentheses to control the order of operations.
  • Ensure values are numeric and handle null or undefined values appropriately.
The “>= Greater Than or Equal To” OperatorThe “AND” Expression
Still stuck? How can we help?

How can we help?

Updated on November 8, 2024
Page Index
  • Mathematical Operators Overview
  • The "ADD" Expression Using the "+" Operator
    • Syntax
    • Examples
    • Grouping with Parentheses
  • Important Considerations
    • Practical Use Cases
  • Summary
Stay up to date on Assette news and updates with our Newsletter:
  • Platform
  • Modules
  • AssetteAI
  • Who We Are
  • Who We Work With
  • Platform
  • Modules
  • AssetteAI
  • Who We Are
  • Who We Work With
  • Platform
  • Modules
  • AssetteAI
  • Who We Are
  • Who We Work With
  • Platform
  • Modules
  • AssetteAI
  • Who We Are
  • Who We Work With
  • Blog
  • News
  • Events
  • Contact
  • Blog
  • News
  • Events
  • Contact
  • Blog
  • News
  • Events
  • Contact
  • Blog
  • News
  • Events
  • Contact

4 Faneuil Hall, 4th Floor
Boston, MA
02109 USA
Tel: +1.617.723.6161

Book a Demo
X-twitter Linkedin Youtube
  • Privacy Policy
  • © 2025 Assette. All Rights Reserved
  • Powered By Artrivo (PVT) Ltd.