The PostReload macro will not execute when reloaded in batch or by server. The processing is done in the backend and no objects are drawn in the layout when reloading via server (which they are when reloading manually in QV developer). Because of this, macros can't access front end objects when reloaded via server. One workaround I can think of is to write a VBScript to open the QlikView document, reload, run the macro, save the document, quit QV.
This would however require QV Standalone to be installed on the server.
1. Create a VBScript file named something like MyVBScript.vbs with the following info:
set Qv = CreateObject("QlikTech.QlikView")
Set QvDoc = Qv.OpenDoc ("C:\Folder\Filename.qvw","","")
'--Add code here--
You add your macro between the two comments in the code above. All commands have to be preceeded by QvDoc though as in the rest of the example above.
2. Create a batch file called MyBatFile.bat and just add the path and name of the VBS file to run which was created in step 1.
3. Schedule the bat file to run using QVS or Windows Scheduler.
This of course has its drawbacks as you lose a lot of the task functionality in the QEMC with proper logging etc.