Can’t you just add the Sales entity as XML Type=datasource in the widget XML and then configure the Product name as an attribute of this datasource?
In that way you should be able to process and show associated Sales and Product data within your widget.
If that doesn’t work create a non persistent entity which has exactly the attributes from both the Sales and Products entity which you need. Create a microflow or nanoflow to create these non persistent entities out of the persistent Sales and Product entity and feed this new non persistent denormalized entity to your Pluggable widget.
EDIT: I just tested the first scenario and that works. So, make sure you get the correct Sales entities via correct datasource and then select the Product attributes over association via configured type=”attribute” in the widget XML.