I came across a new theory from my attorney last Friday. Which is :
If your Priority date is close to the I485 processing dates, then even if you filed your I140 recently, you case will have good chance of being processed compared to the I140 which might be filed 9 months ago ans still be waiting.
For example :
LC filed in May,2001
LC approved Jan, 2004
I140, I485 filed in Feb, 2004
And current processing times for I485 is Jun,2001.
which means you will have immigrant visa numbers available for your I485.
Which eventually triggers to process your I140, even though your Receipt date is Feb,2004 and current processing for I140 is Feb, 2003.
This is the theory from my Attorney. so, checkout your Priority dates...as well.