I have faced the same situation like this. When you reload the application, it sends the mail but when you automate the application through schedulers, it will just reload the application but will not execute the Macro.
Use a variable in your batch file and use that in the macro execution.
"c:\Program Files\QlikView\QV.exe" /r /vbatch_flag=1 c:\reports\Inventory.qvw
First time just reload the application and set the variable in the macro that if the value satisfies, then and only it will send the mail.
Second time Use the above script that will send the variable value.
IMP Run the Macro on the Opening of the Secong time Application.