If the customer had the engineer code from the start, you move liability of the system working as it should to the customer. No insurance company will ever accept it because there is always going to be the worry that the customer deciding to meddle with the system themselves when say they want to move a detector due to decorating. They go into engineer and unwittingly they reprogram the system so that it doesnt work in the event of a burglary. What do you think they will do when they are burgled and the alarm didnt work? I can hear my customers now saying "I have been paying all that money each year and the system didnt work when I was broken into, my insurance wont pay out so what are you going to do about it?"
Then from the engineers point of veiw, I know that I would not feel happy being the last person to service an alarm system knowing full well that the customer has the ability to faff around in engineer mode after I have gone. The last engineer on site could get accused of sabotaging the alarm system (inside job) if a customer defaulted zones unwittingly then a burglary was to happen.
As others have tried to point out, when you buy a security system, you are not just buying a few items that someone screws to the wall, you are buying an assurance that it will do what it was intended to do. Anyone can screw bits to the wall, programming and testing it to work correctly and understanding how the programming works is another matter.
If you want to know the engineer code of your alarm, fit it yourself or use a non accredited company to install it, you wont have anyone to sue if it fails to operate, but when you decide to get rid of it you wont have this problem.
Anyway all of this is by the by as you have a man with a hammer coming to sort it for you.
Have you told your insurer that you no longer have an alarm btw?