From b81a2428dadf08c1a9f26856086cc96f21b6afe1 Mon Sep 17 00:00:00 2001 From: Steve Reis <stevereis93@gmail.com> Date: Thu, 30 Sep 2021 14:00:01 +0200 Subject: [PATCH] Edit safer transform for tableresult (single only) --- api/src/engine/connectors/exareme/transformations.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/api/src/engine/connectors/exareme/transformations.ts b/api/src/engine/connectors/exareme/transformations.ts index 597ac39..7e9af19 100644 --- a/api/src/engine/connectors/exareme/transformations.ts +++ b/api/src/engine/connectors/exareme/transformations.ts @@ -18,7 +18,9 @@ export const transientToTable = jsonata(` }; result.data.[ - $.single.*@$p#$i.{ + $.single.*@$p#$i.( + $ks := $keys($p.*.data[$type($) = 'object']); + { 'groupBy' : 'single', 'name': $keys(%)[$i], 'headers': $append("", $keys(*)).{ @@ -30,14 +32,14 @@ export const transientToTable = jsonata(` ['Datapoints', $p.*.($e(num_datapoints))], ['Nulls', $p.*.($e(num_nulls))], $p.*.data.($fn($)) ~> $reduce(function($a, $b) { - $each($a, function($v, $k) {( + $map($ks, function($k) {( { - $k : [$v, $e($lookup($b,$k), "No data")] + $k : [$e($lookup($a,$k), "No data"), $e($lookup($b,$k), "No data")] } )}) ~> $merge() }) ~> $each(function($v, $k) {$append($k,$v)}) ] - } + }) ] ) `); -- GitLab