Removing the Comma (Thousands Separator) from Integer Fields in Creatio

When using an Integer column in Creatio, formatting will be automatically applied, adding a thousands separator comma to any integer values. However, this might not be the desired behavior. For example, for values that represent a year.

To remove this formatting from an integer field on an edit page, we can simply add the following to the values of the field in the diff:

"controlConfig": {
	"useThousandSeparator": false
}

The full item in the diff would look like this:

{
	"operation": "insert",
	"name": "INTEGERdada32f2-37e4-4737-8338-8a9f293b9f90",
	"values": {
		"layout": {
			"colSpan": 6,
			"rowSpan": 1,
			"column": 0,
			"row": 0,
			"layoutName": "ProductGeneralInfoTabGridLayout3b71793f"
		},
		"bindTo": "UsrManufacturerYear",
		"enabled": true,
		"controlConfig": {
			"useThousandSeparator": false
		}
	},
	"parentName": "ProductGeneralInfoTabGridLayout3b71793f",
	"propertyName": "items",
	"index": 0
}

With that one line in place, the field will change from this:

to this:

That fixes this for the edit page. However, in the section list you’ll still see it with the comma:

To fix it in this list we’ll need to override the prepareResponseCollectionItem function and change the value to prevent it from getting formatted. This function gets called for each item, or row, that gets returned from the query for the list. We’ll use this to change it from an integer to text. Then, the system won’t apply the formatting because it will no longer see it as an integer column.

The code we will add to the Section page will look like this (in my scenario, my column is called UsrManufacturerYear)

prepareResponseCollectionItem: function(item) {
    this.callParent(arguments);

    var yearCol = item && item.columns && item.columns.UsrManufacturerYear;
    if (yearCol) {
        yearCol.dataValueType = Terrasoft.DataValueType.TEXT;
        item.set("UsrManufacturerYear", item.values.UsrManufacturerYear.toString());
    }
}

With that code in place our column will no longer be an integer (in the list) so the formatting won’t get applied as it is now seen as text.

You’ll need to also add that to any detail schemas where the column might get displayed as well.

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, now Infor CRM, since 2001 and believes in sharing with the community. His new passion for CRM is Creatio, formerly bpm'online. He loves C#, Javascript, 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) and Creatio (bpm'online) news and product updates!

You have Successfully Subscribed!