Alex Hall
f7a9638992
(core) CONTAINS() and summarising by ChoiceList columns with flattening
...
Summary:
Added CONTAINS 'function' which can be used in lookups
Changed LookupMapColumn._row_key_map to use right=set so one row can have many keys when CONTAINS is used.
Use CONTAINS to implement group column in summary table, while helper column in source table can reference and create multiple rows in summary table, especially when summarising by ChoiceList columns.
Use itertools.product to generate all combinations of lookup keys and groupby values.
cleanup
Test Plan: Added python unit tests.
Reviewers: dsagal
Reviewed By: dsagal
Subscribers: paulfitz, dsagal
Differential Revision: https://phab.getgrist.com/D2900
2021-07-19 16:35:35 +02:00
..
2021-07-19 16:35:35 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 12:00:58 +02:00
2021-06-25 12:00:58 +02:00
2021-06-22 17:13:17 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 12:00:58 +02:00
2021-07-19 16:35:35 +02:00
2021-06-25 12:00:58 +02:00
2021-07-19 14:53:28 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 22:53:07 -04:00
2021-06-25 22:53:07 -04:00
2021-07-19 14:53:28 +02:00
2021-07-19 14:53:28 +02:00
2021-07-15 15:18:32 -07:00
2021-06-22 17:13:17 +02:00
2021-05-12 10:38:32 -04:00
2020-07-29 08:57:25 -04:00
2021-06-22 17:13:17 +02:00
2020-07-29 08:57:25 -04:00
2021-07-19 16:35:35 +02:00
2021-07-15 15:18:32 -07:00
2020-07-29 08:57:25 -04:00
2021-06-25 22:53:07 -04:00
2021-06-25 12:00:58 +02:00
2021-06-25 12:00:58 +02:00
2021-06-25 12:00:58 +02:00
2021-07-19 14:53:28 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 22:53:07 -04:00
2021-06-25 12:00:58 +02:00
2021-06-22 17:13:17 +02:00
2021-07-12 06:45:47 -04:00
2021-06-25 22:53:07 -04:00
2021-07-19 16:35:35 +02:00
2021-06-22 17:13:17 +02:00
2021-07-19 16:35:35 +02:00
2021-06-22 17:13:17 +02:00
2021-01-04 22:03:01 -05:00
2020-07-29 08:57:25 -04:00
2021-06-25 12:00:58 +02:00
2021-06-22 17:13:17 +02:00
2021-07-19 14:53:28 +02:00
2020-09-10 18:06:06 -04:00
2021-06-18 15:42:20 +02:00
2020-11-04 16:45:47 -05:00
2021-05-12 11:26:21 -04:00
2021-06-22 17:13:17 +02:00
2021-07-15 15:18:32 -07:00
2020-07-29 08:57:25 -04:00
2021-07-12 23:25:33 +02:00
2021-05-12 11:26:21 -04:00
2021-06-25 12:00:58 +02:00
2021-07-19 14:53:28 +02:00
2021-06-22 17:13:17 +02:00
2021-06-22 17:13:17 +02:00
2020-11-04 16:45:47 -05:00
2020-07-29 08:57:25 -04:00
2021-07-19 16:35:35 +02:00
2021-06-22 17:13:17 +02:00
2021-06-22 17:13:17 +02:00
2021-06-22 17:13:17 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 22:53:07 -04:00
2020-11-26 22:29:37 -05:00
2021-06-25 12:00:58 +02:00
2020-11-04 16:45:47 -05:00
2021-07-19 14:53:28 +02:00
2021-06-30 16:56:09 +02:00
2020-11-04 16:45:47 -05:00
2021-06-22 17:13:17 +02:00
2021-07-19 16:35:35 +02:00
2020-11-04 16:45:47 -05:00
2020-07-29 08:57:25 -04:00
2021-06-22 17:13:17 +02:00
2020-12-15 16:39:56 -05:00
2021-06-22 17:13:17 +02:00
2020-07-29 08:57:25 -04:00
2021-07-15 15:18:32 -07:00
2020-07-29 08:57:25 -04:00
2021-06-25 12:00:58 +02:00
2021-06-22 17:13:17 +02:00
2021-06-25 12:00:58 +02:00
2021-07-15 15:18:32 -07:00
2021-06-22 17:13:17 +02:00
2020-07-29 08:57:25 -04:00
2021-06-25 12:00:58 +02:00
2021-06-25 22:53:07 -04:00
2021-06-25 12:00:58 +02:00
2020-07-29 08:57:25 -04:00
2021-06-22 17:13:17 +02:00
2020-07-29 08:57:25 -04:00
2021-06-25 12:00:58 +02:00
2021-07-15 15:18:32 -07:00
2021-06-30 21:46:18 +02:00
2021-07-15 15:18:32 -07:00
2021-06-29 10:24:16 -04:00
2021-06-30 21:46:18 +02:00