Roast 2½ hours covered in a preheated 350° oven. Drain ham of stock, reserving 2½ cups. Remove as much skin and fat as possible from the ahm. Pour the reserved stock back over the ham and add the bottle of champagne. Return to oven and let cook another hour, basting often.
Drain off the stock and reserve. Sprinkle ham with the sugar. Drop the onions in the pan.
Raise oven heat to 500 degrees, return ham to oven to brown and glaze. Remove ham to warm serving platter.
Mix flour with stock until smooth and cook over low flame, stirring constantly until it boils.
Carve ham and serve sauce individually over slices.
A ham this large, depending on how thinly it is sliced, serves a great many people - certainly a sufficiency for a large buffet supper.