The Column Expressions node is used to convert the previously identified column index into its corresponding name: (the columnNames() expression returns an array of column names, and the index of the desired column name is accessed by specifying it in square brackets).
If I got it right when you use function colMax you shouldn’t have space after column name which might be an undesired behavior. Maybe you have such case.
Regarding function max_in_args have you tried it? It works with more than 3 columns for me.
that was the problem. One additional thing I have recognized was that I have missing values in several cells.
To solve this I replaced them using the Missing Value Node and then followed the approach of @dnaki which now works, it returns the product name where the customer made most revenue.