[purchase] cancel lines and procurements when cancel the purchase order

Fixes #4168, backport of 8.0 code