Bring a large pan of water to the boil. Cook the asparagus for 5 minutes in the boiling water, then remove with a slotted spoon and place in a bowl. Toss with the olive oil.
Grease a gratin dish with the butter. Wrap each of the asparagus spears in a piece of ham and place them in the greased dish side by side. Sprinkle with the Parmesan and bake in a preheated oven, 200°C (400°F), Gas Mark 6, for 10 minutes until the cheese is golden and melted.
Serve the asparagus in blankets with chunks of warm fresh bread and homemade tomato ketchup (see