I think your gut feeling about adding new columns to a table upon changing a filter are correct, that's not a common pattern and it breaks some heuristics around consistency and acting like a regular table pattern.
Something you might look into is tabs for the most common views. You could have an All Operations tab that shows the table as you describe above, with info from all 20 sources. Then, you could show something like a Physical Items tab that pulls up a table that's optimized for the physical items view, with their special columns. Same with the Digital Items, etc.
In SAAS, it's common for users to want to access the same view every day, and not want to click the same filters each time they look at their table. So, you might also want to allow each user to create a custom view and save that as a default tab as well.