You have a report that runs perfectly fine and can confirm it has content.
You shedule it to run but when it arrives you have a zero kb zip file.
Came across this today because the report name had an apostrohe in it. ex; John's Report
When scheduling a report the name is passed as a paramater in a sql query. The ' charachter causes an end of field and terminates the report before it can run.
* I havent confirmed but suspect other charachters such as % would cause issue as well