Skip to main content

Notifications

How to Set and Get Field Values in Dynamics 365 JavaScript

Introduction

When working with Dynamics 365, different field types handle different kinds of data, each with its specific requirements. The xrm-ex library simplifies interactions with these fields by offering a consistent approach to setting and getting values, regardless of field type. This guide will help you understand the unique characteristics of each field type, the data they store, and how to manipulate them using xrm-ex.

Prerequisites

Overview of Common Field Types

1. Text Fields

Text fields in Dynamics 365 are straightforward, storing string data such as names, addresses, or any other textual information. With xrm-ex, you can easily set and get text values.

Example of Setting and Getting Text Fields

Here’s a look at how xrm-ex makes text field manipulation easy:

// Setting the value using the Value property
fields.Firstname.Value = "John";
// Setting the value using the setValue method
fields.Firstname.setValue("John");
// Retrieving the value using the Value property
var firstname = fields.Firstname.Value;  // Returns "John"
// Retrieving the value using the getValue method
var firstname = fields.Firstname.getValue();  // Returns "John"

The Value property in xrm-ex is unique to the library, allowing a more streamlined approach than the traditional setValue/getValue methods.

2. Number Fields

Number fields can store integer or decimal values, typically used for quantities, scores, or other numeric data.

// Setting a numeric value
fields.Quantity.Value = 42;
// Getting a numeric value
var quantity = fields.Quantity.Value;  // Returns 42

In Dynamics 365, number fields may have constraints, such as minimum and maximum values, so ensure that any number you store complies with these rules.

3. Date Fields

Date fields store date-only or date-time values. In Dynamics 365, they can represent anything from a user’s birthdate to an event timestamp.

Example of Working with Date Fields

// Setting a date using a JavaScript Date object
fields.Birthday.Value = new Date(2024, 0, 1);  // January 1, 2024
// Getting a date
var birthday = fields.Birthday.Value;  // Returns the Date object

4. Boolean Fields

Boolean fields store true or false values, commonly used for flags, switches, or options (e.g., Do Not Email).

Example of Boolean Fields

// Setting a Boolean value
fields.DoNotEmail.Value = true;
// Getting a Boolean value
var doNotEmail = fields.DoNotEmail.Value;  // Returns true

5. Lookup and Optionset (Choice) Fields

Lookup and optionset fields are more complex, often referencing other entities or specific predefined choices. They deserve their own dedicated guides, which you can check out below:

6. Clearing Field Values

To clear a field's current value, you can simply set it to null. This applies to all supported field types, allowing you to reset fields without additional code.

Example of Clearing Field Values

// Clearing the value of a text field
fields.Firstname.Value = null;
// Clearing a number or date field
fields.Quantity.Value = null;
fields.Birthday.Value = null;
// Clearing a Boolean field
fields.DoNotEmail.Value = null;

Setting a field to null effectively removes its current value, a useful feature when you need to reset data in Dynamics 365.

Key Differences Among Field Types

The main distinctions across field types lie in the kind of data they store and how that data is represented:

  • Text Fields: Store strings; expect direct text input.
  • Number Fields: Store integers or decimals; expect numeric input, often with validation.
  • Date Fields: Store JavaScript Date objects, making it possible to perform date manipulations.
  • Boolean Fields: Store true or false values; expect Boolean input.
  • Lookup Fields: Reference records from other tables; require entity type and ID for setting values.
  • Optionset (Choice) Fields: Store numeric choice values predefined in Dynamics 365.
xrm-ex enables a consistent approach with the Value property across these types, simplifying the development experience.

Conclusion

The xrm-ex library helps unify field handling across various data types in Dynamics 365, whether you’re working with text, numbers, dates, or Booleans. Understanding the nuances of each field type ensures that you store data correctly and leverage the strengths of xrm-ex fully.

Additional Resources


Comments