The reason you can't use SUM is because your target module doesn't have a common dimension to a list formatted line item in your reference module.
The best practice method for what you are trying to do is to use DISCO. In this case we need a system module which is a single module with one dimension, in your case the transaction module or reference module.
Calculate once, refer often.
Here's an example. I use countries and product but you could use as many dimensions as you want.
The transaction module (reference module) only has the values we need and is keyed on a unique value that identifies the row. If you have a time dimension you should dimensionalize that and it should not be part of your key.
Then we build a system module using the keys of the transaction module.
Now we can use a SUM function in our output module.
Notice how the output module has the same dimension as the list formatted line item in our system module.
And we get the sales to sum on the country dimension!