Listing all possible trebles from multiple sets where you can only select one element of each set

I'm stuck on a combinatorics problem and was hoping someone could help me.

I would like to know the number of possible trebles (order not important) from sets of elements where only one element can be chosen from each set.

For example, say we have 6 sporting events with possible number of outcomes in brackets:
Man Utd, Draw1, Arsenal (3)
England, Draw2, Germany (3)
Murray, Federer (2)
Warriors, Cavaliers (2)

I want to find out how many ways I can choose exactly 3 outcomes from the 6 events, with the restriction that I can't choose 2 outcomes from the same sporting event, E.G:
(Arsenal, Germany, Nadal), (England, Murray, Warriors),.....

I know how that the number of combinations of events, without the added complication of having multiple elements, is just 6 Choose 3 = 20. I also know that the number of ways of choosing one element from all 6 events is just the product rule: 3*3*3*2*2*2 = 216.

However, I can't work out the solution when you combine the two problems of having to choose one thing from each set and having to choose a certain number of sets. It's probably really simple but I just can't get my head round it.

My next problem is working out how to list all of the combinations programmatically but I'll be content for today if I can just work out how many of them there are as a start!

There's one way each to choose all two-way and all three-way events, giving $2^3$ and $3^3$ options each. Then there are ${3 \choose 2}{3\choose 1}2^23^1$ and ${3 \choose 1}{3\choose 2}2^13^2$ ways of selecting from mixed-type events. Total:
$$8+9\cdot12 + 9\cdot 18 + 27 = 8+108+162+27 = 305 \text{ options}$$