transactinos that were explicitly closed, were throwing an exception, because it would be closing transaction twice
compressed sale into one transaction, if something fails all changes in sale and saledetail are rollbacked.
All the changes necessary to save shopping cart to DB