Soak the beans overnight. Drain them, place in a pan, cover with fresh water and bring to the boil over a medium heat.
Cook for about 45 minutes-1 hour until tender, then remove from the heat and set aside for 30 minutes. Drain well.
Heat the oil in a large saucepan over a medium heat, add the onions and cook for 6-8 minutes.
Stir in the garlic, tomatoes, sugar, vinegar and 400ml water,worcester sauce and tomato puree, then tip in the beans.
Place everything into your slow cooker, and cook on LOW for 4-5 hours, although I have found even after 8 hours of cooking they are fine, just check to make sure that they do not dry out, you want the sauce lovely and thick. Season to taste.
If cooking on the hob turn the heat to low and cook for 1½-2 hours, again checking that the beans do not dry out, add a touch of water if they are looking to dry. Season to taste.