I have gotten every commercial account I ever went after. I watch just the ones I want. When they have shrubs with 2-3 feet of growth is the best time to hit them with an introduction.
A letter is fine, but personal is where it is at. I have found that if I walk in with already set price on paper with several different programs and price ranges, looking good on printed letter head, I walk out with the business.
How do you do a price ahead of time? Easy, say it is a resturaunt. You eat there a few times, walk around, check it out. Go do drivebys at night after they close, sit in the lot and mow the place in your head, plan where to park, trim the shrubs, etc. Go during the day, how busy are they during your mowing time, do you really want the hassle, will it fit in your already running schedule, etc..
Something else I do is watch who is doing the work now. Where is it that they lack. Use that info when talking to the property manager, but do not just knock down your competitor, say what they are good at and what they are doing good, but you can do better where they lack. Also mean it.
Shrubs are the easiest way for me to get an account. Let's face it, a place with neat shaped shrubs looks like it is kept up. I have found most of my competitors want paid for everytime they showup to trim shrubs, they usually try for three times a year. Problem, not all shrubs grow on our schedules. They trim 3 times, but do not trim every shrub, but want paid for it. So, inbetween the visits there are always shrubs with growth. I make sure no growth over a few inches, usually comes to trimming each shrub the same 3 times but maybe 6 actual visits a year to get every shrub, equalls out same time. Give the customer what they are paying for is all you are doing.
I do not go to heavy on the pointing out weeds in the grass, unless very bad, same with beds. I might have weeds myself if doing it later.
Best thing is to be positive and confident and do not make promises that you can not keep. Remember one well kept place is worth it later for getting more accounts.