Mix all spices, honey, salt, sweet & sour sauce and marmalade in a bowl.
Massage the mixture into the meat, maing sure to prick it a few times with a long toothpick in each side when completely covered in sices. Set aside for 24 hours.
Put the ham into a roast bag or a cover-up Pyrex / ceramic dish and put in the oven - BEFORE you turn it on; the ham should be warming up along with the oven. Set the temperature to 200 degrees Celcius, and when the oven reaches that temperature leave the ham inside for about 45-55 minutes.