Another approach that works for Reporting, this one uses Expressions and is fairly clean, but would put an upper static limit on the number of DataSelect columns (100, 1000, whatever we decide would be enough)