В целом в компоненте есть штатный механизм показа и скрытия столбцов.
Но у вас есть возможность гибкой настройки показа столбцов. Например, вы можете добавить фильтр, который будет скрывать или показывать часть столбцов.
Можно сделать для каждого столбца фильтр или работать с целыми группами столбцов.
Как это реализовать:
Создаем столбцы col1, col2, col3. На col1 ставим фильтр Флажок.
В GetItems получаем значение фильтра:
declare @fcol1 bit = (select try_cast(Value as bit) from @filters where [Key] = 'col1')
При выводе столбцов используем особенность - если в первой строке в столбце идет NULL, то столбец не выводится.
-- SELECT 1
select iif(@fcol1=1, isnull(...вычисляем столбец.., ''), NULL ) col1
Таким образом при установленном фильтре будут выводиться столбцы, а при сброшенном флажке эти столбцы не будут показаны (и данные не будут переданы от сервера на клиент).