Hi Daniel
Both could be done through workflow. I'm in the middle of writing a wiki page/KBA on this (though not yet finished!) but take a look at our external wiki - http://wiki.sdn.sap.com/wiki/x/DAGSBQ
For the 2nd issue, In the standard workflow template there is no cancel step but you can add this via the BUS2089 method 'CANCEL' step and then adjust the text elements to change the status so that it reflects in ESS/PR05. (Program SAPLPTRA_UTIL_TRIPS and the relevant text elements should be 062 and 063)
Hope it helps
Sally