Formatting Data in Client-Side Javascript in the Infor CRM Web Client

There are a few different formatting functions available in the web client. These are available in the Sage.Format module, located in jscript/Sage/Format.js. Let’s take a look at a few of them. Keep in mind, these are Javascript functions to be used client-side, not from server-side C# code.

Formatting a Phone Number

// will change this "8005551212" to this "(800) 555-1212"
var val = Sage.Format.phone('8005551212');

// shorten a string to a particular max length
// for example, if using a max length of 10, will change
// 'This is some long text value' to 'This is so...'
var maxLength = 10;
var val = Sage.Format.abbreviationFormatter(maxLength)('This is some long text value');

Formatting an Address

// This will return the address all formatted as a single string, the way you see it in the address
// control in the client.
// this one works a bit differently. You pass to it an array of name/value pairs containing the address data
var address = [
{name: 'addr1', value: '2324 University Ave West'},
{name: 'addr2', value: 'Suite 204'},
{name: 'city', value: 'St. Paul'},
{name: 'state', value: 'MN'},
{name: 'postalCode', value: '55114'}
];
var val = Sage.Format.Address.formatDefault(address);
/* returns:
2324 University Ave West
Suite 204
St. Paul, MN 55114
*/

These sorts of things can especially be handy for when you’re displaying lists of data in the client, you can avoid the need to format all the data yourself and instead just wrap the values in these client-side functions to format them.

Ryan Farley is the Director of Development for Customer FX and creator of slxdeveloper.com. He's been blogging regularly about SalesLogix, now Infor CRM, since 2001 and believes in sharing with the community. He loves C#, Javascript, web development, open source, and Linux. He also loves his hobby as an amateur filmmaker.