From b14cca15f6b02ebb80e414c907e300dcea3b7b36 Mon Sep 17 00:00:00 2001 From: Abdul Rehman <76230556+Abdulrehman-PIAIC80387@users.noreply.github.com> Date: Sat, 2 May 2026 11:31:54 +0500 Subject: [PATCH] fix(table): preserve decimals in totals row when Time Comparison is enabled (#39747) --- .../plugins/plugin-chart-table/src/transformProps.ts | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-table/src/transformProps.ts b/superset-frontend/plugins/plugin-chart-table/src/transformProps.ts index ad1977ba8de..ffa23217f68 100644 --- a/superset-frontend/plugins/plugin-chart-table/src/transformProps.ts +++ b/superset-frontend/plugins/plugin-chart-table/src/transformProps.ts @@ -130,13 +130,12 @@ const processComparisonTotals = ( Object.keys(totalRecord).forEach(key => { if (totalRecord[key] !== undefined && !key.includes(comparisonSuffix)) { transformedTotals[`Main ${key}`] = - parseInt(transformedTotals[`Main ${key}`]?.toString() || '0', 10) + - parseInt(totalRecord[key]?.toString() || '0', 10); + parseFloat(transformedTotals[`Main ${key}`]?.toString() || '0') + + parseFloat(totalRecord[key]?.toString() || '0'); transformedTotals[`# ${key}`] = - parseInt(transformedTotals[`# ${key}`]?.toString() || '0', 10) + - parseInt( + parseFloat(transformedTotals[`# ${key}`]?.toString() || '0') + + parseFloat( totalRecord[`${key}__${comparisonSuffix}`]?.toString() || '0', - 10, ); const { valueDifference, percentDifferenceNum } = calculateDifferences( transformedTotals[`Main ${key}`] as number,