PFR.Formatters = {
	Number: function(data) {
		if(data == null || isNaN(data))	return '';
		var nStr = data.toString();
		var x = nStr.split('.');
		var x1 = x[0];
		var x2 = x.length > 1 ? '.' + x[1] : '';

		while (/(\d+)(\d{3})/.test(x1)) {
			x1 = x1.replace(/(\d+)(\d{3})/, '$1' + ',' + '$2');
		}
		return x1 + x2;
	},
	Currency: function(data){
		if(data == null || isNaN(data))	return '';
		var nStr = Math.abs(data).toString();
		var x = nStr.split('.');
		var x1 = x[0];
		var x2 = x.length > 1 ? '.' + x[1] : '.00';
		if(x2.length == 2) {
			x2 += "0";
		}
		while (/(\d+)(\d{3})/.test(x1)) {
			x1 = x1.replace(/(\d+)(\d{3})/, '$1' + ',' + '$2');
		}
		if(data < 0) {
			elm.style.color = "red";
		}
		return '$' + x1 + x2;
	},
	Percent: function(data) {
		return data + '%';
	}
};

