Could anyone help we with home info regarding the best way and fastest to get all the products/variants from a catalog that have are on promotion? I need to make a promotion page where to display all the products that have a promotion applied from a catalog.
There is no solid solution I'm afraid.
I've solved it by iterating all active promotions and load the promotion settings. By inspection the settings I build up a list of all skus, categories etc that triggers the promotion. Also you'd might want to filter out promos that needs a coupon code or applies to a specific segments so you wont show promo pages that aren't valid for all users.
The bad part of this solution is that you need to create logic for each promotion type to be able to find out what triggers the promo etc. I haven't tried this with any of the built-in promotion types since they haven't fulfilled any clients needs, but it should be quite straight-forward.