Ironchild is correct in his statement that UPQ must be run after price-tapes to update pricing in permanent quotes. Failure to do so will create GL variances that can be huge. It is a best practice to have this run in your jobstack after every price update so be aware if your manufacturer provides a daily update.
With regards to the assertions that SDL will not price properly, this is the only way to have the parts price properly on your repair orders. Permanent quotes should be for limited situations with very special pricing such as a special oil change structure. If a Service Advisor changes the labor type with SDL the parts will price accordingly unless you have forced the prices. Permanent quotes force the prices so they will not reprice should the labor type change. An observant Service Adviser will note this and could take advantage of your special prices to "help" a customer.
If your billed prices are incorrect when using SDL it means your pricing system is not setup to accomplish the pricing structure you wish to use. You will need to revisit your sourcing, pricing matrix, labor type, and labor price settings to have it work for you. Your Parts Associates should rarely need to adjust parts prices, and never need to adjust maintenance items.
I check my pricing exception report every day. If my pricing strategy needs work I modify it as my Parts Associates have enough to do without having to adjust prices on every invoice.