diff --git a/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue b/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue index b6a08955ac..967a186c76 100644 --- a/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue +++ b/packages/nc-gui/components/smartsheet/grid/GroupByTable.vue @@ -51,6 +51,11 @@ function addEmptyRow(group: Group, addAfter?: number, metaValue = meta.value) { ![UITypes.Rollup, UITypes.Lookup, UITypes.Formula, UITypes.Barcode, UITypes.QrCode].includes(curr.column_uidt) ) { acc[curr.title] = curr.key + + if (curr.column_uidt === UITypes.Checkbox) { + acc[curr.title] = + acc[curr.title] === GROUP_BY_VARS.TRUE ? true : acc[curr.title] === GROUP_BY_VARS.FALSE ? false : !!acc[curr.title] + } } return acc }, {} as Record) diff --git a/packages/nocodb/src/helpers/getAst.ts b/packages/nocodb/src/helpers/getAst.ts index 9657bbc0d7..156c99e847 100644 --- a/packages/nocodb/src/helpers/getAst.ts +++ b/packages/nocodb/src/helpers/getAst.ts @@ -13,7 +13,13 @@ import type { Model, } from '~/models'; import { NcError } from '~/helpers/catchError'; -import { CalendarRange, GalleryView, KanbanView, View } from '~/models'; +import { + CalendarRange, + GalleryView, + GridViewColumn, + KanbanView, + View, +} from '~/models'; const getAst = async ({ query, @@ -127,7 +133,7 @@ const getAst = async ({ allowedCols = (await View.getColumns(view.id)).reduce( (o, c) => ({ ...o, - [c.fk_column_id]: c.show, + [c.fk_column_id]: c.show || (c instanceof GridViewColumn && c.group_by), }), {}, );