To make béchamel sauce, melt butter in a sauce pan. Add flour and stir until smooth, 3 or 4 minutes. Slowly add milk, stirring constantly. Season with salt and pepper. Continue cooking over low heat until thickened. Cover and set aside. Sauté onion in oil. Add tomatoes and parsley. Cook over moderate heat until liquid has evaporated. Add mushrooms, salt and pepper, mix well, set aside. Preheat oven to 350º. Cook noodles according to package directions. Drain. Butter a 9” x 13” dish. Place a layer of noodles in the bottom of the dish, followed by a layer of half the mushroom mixture. Next dribble 1/2 cup béchamel sauce and then add a layer of ham and sprinkle with parmesan cheese. Repeat the layers and top with a layer of noodles. Pour the remaining 1 cup of béchamel sauce on top and dot with butter. Bake uncovered 25 to 30 minutes or until hot and bubbly. If frozen, prepare 1 cup béchamel sauce over lasagna before heating.