We make use of VDTs to display data which expresses a specific state of the customer process. The user can see the state in Apps. The user can also manipulate the state via edits to a front end table.
The queries became quite complicated over the time.
Underlying business problem
Now we want to show the user an aggregate over a set of values of this process state.
To retrieve an aggregate over the specific dimension and keep the rest of the query clean, i introduced grouping sets to the VDT.
SELECT SUM(k.values) as value_sum, GROUPING(k.second_group) as group_two, MIN(k."__ROW_ID__") AS "__ROW_ID__", k.thread as thread, COALESCE(k.second_group, 'thread_sum') AS second_group, MIN(k.values) as values, MAX(k.timex) as timex, MAX(k.valuesy2) as valuesy2 FROM ( SELECT i.*, CASE WHEN (i.values>0) THEN 'h' ELSE 'c' END as second_group FROM inputTable i ) as k GROUP BY GROUPING SETS ( (k.thread, k.second_group), (k.thread) )
Since i introduced the grouping sets functionality i can observe the following Error:
Error: Failed to expand the changed rows: Could not expand rows as there are no rows with the following row IDs in the original FRT:
The error is thrown when i want to edit two rows at the some same. If i edit the rows sequentially the Apps do not throw any error. The following screen displays the error:
The left shows the console with the error and the network tab with the request. Here i can see the row ids which are involved. Strangely enough the to-be-manipulated table does hold the rows, as indicated on the right.
I was not able to reproduce the error in an example app with a small data set of data and a less complicated VDT.
Does anyone experienced this problem? Does anyone have a solution to this problem?
The Error is independent of the function
I i use the equivalent of an union over two group by’s:
[...] group by x, y,z union [...] group by x,y
the error persists.