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');

Formatting an E-mail Address

// will change to an email hyperlink
// for example: "<a href=\"mailto:name@myaddress.com\">name@myaddress.com</a>"
var val = Sage.Format.email('name@myaddress.com');

// you can also display the hyperlink as an email icon instead of text
// for example: "<a href=\"mailto:name@myaddress.com\"><img src=\"images/icons/Send_Write_email_16x16.png\" /></a>"
Sage.Format.icon = true;
var val = Sage.Format.email('name@myaddress.com');

Restricting The Length of Strings

// 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.

ABOUT THE AUTHOR

Ryan Farley

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

Submit a Comment

Your email address will not be published. Required fields are marked *

Subscribe To Our Newsletter

Join our mailing list to receive the latest Infor CRM (Saleslogix) news and product updates!

You have Successfully Subscribed!