export function toNumberDecimalFormatter({ value }: ValueFormatterParams) {
var formatted = Math.floor(value).toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g, “,”) +((value%1) == 0? “”:(Math.round((value%1) * 1000000)/1000000).toString().replace(/^0+/, “”));
return `${formatted}`;
}
{
field: ‘qty’,
headerName:’QTY’),
options: {
formatter: ‘number’,
type: ‘rightAligned’,
editable: true,
valueFormatter: toNumberDecimalFormatter,
initialWidth: 90,
}, //RITM0788635 initialWidth add
},
123456.78
to be rendered as 123,457
var columnDefs = [
{headerName: "Number", field: "number"},
{headerName: "Formatted", field: "number", valueFormatter: currencyFormatter}
];
function currencyFormatter(params) {
return '£' + formatNumber(params.value);
}
function formatNumber(number) {
// this puts commas into the number eg 1000 goes to 1,000,
// i pulled this from stack overflow, i have no idea how it works
return Math.floor(number).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,");
}