See the attached for one solution. A more precise description of the issue here is that the goal is to select a given product and then see all related products for that transaction, then for each of those related products get a distinct count of the number of transactions and % of total transactions those belonged to. Tableau offers a few ways to select a single thing:
Quick filters on regular dimensions - these reduce the entire data set to only the selection
Filter Actions - which act on dimensions as regular quick filters
Quick filters on table calc dimensions - these are late filters applied after calculations
Parameters - these are fixed lists of values from which a single value could be selected.
One could use a parameter to get the selection, but that's not dynamic and since there are 187 different transaction items in your (filtered) sample data, I'm guessing maintaining a filter list would be undesirable. An alternative that I blogged about is at Creating a Dynamic “Parameter” with a Tableau Data Blend | Drawing with Numbers. In this case, a duplicated connection to the data source is used with a filter on the secondary transactionItems_name, while the data blend is only on the transactionID dimension. This causes Tableau to only return the transactions for the selected item, then the measures can work as-is. I added an additional Non-selected Item filter to remove the chosen item from the view. Note that Tableau data blends are after aggregation and performed inside Tableau, so depending on your data source there can be performance limitations.
ProductData jtd.twbx 441.1 KB