Once the original price list is selected, and the amount or percentage is set, the solution will clone each product and apply the changes in the background so that users can continue doing their tasks. This is helpful when there are hundreds of products in the price list.
As the new price list is created by cloning the previous list, it means that users still have access to the original. This is good to have as a reference when handling previous sales and related issues, but also means that is users need to honour a sales with previous prices, it will be easy to handle. For example to make sure the price of a subscription based sales doesn't change in price when the new price list is produced.
Allow this solution to take care of a task that would could drain precious resources, by letting members of the team focus on activities that can't be automated.