Jet Reports Running in Background on Server
Overview
The Jet Scheduler is
a Jet-specific interface for creating Windows Tasks that are then run by the
Windows Task Scheduler.
In addition to any
permissions that Microsoft requires for being able to create and run scheduled
tasks (for detailed information, please refer to Microsoft's documentation for
your specific version of Windows), there are a few other specific requirements
for running Jet tasks - especially when the user is not logged in to Windows.
All permissions listed in this article
typically need to be assigned to the individual login. It is usually not
sufficient to only assign them to a group to which the individual belongs
Jet Reports versions
2013 and higher incorporate running the Jet Scheduler with elevated (i.e.,
'administrator') rights, automatically.
Due to Microsoft
updates (KB 23692 and KB 2836943) for the Windows Task Scheduler
published for Windows Vista and higher, if you plan on using the Jet
Scheduler with Jet Essentials 2012 R2 or earlier, you will need to start Excel
by right clicking the Excel.exe file and choosing "Run as
Administrator".
Special Requirements for your
version of Windows
-
Windows 10 / Server 2012 or higher / Windows 8.0-8.1
In addition to the requirements for
Windows 7 (see below)...
This Windows Registry Key:
[ HKEY_Current_User\Software\Microsoft\Windows\CurrentVersion\Explorer\User
Shell Folders\Cache]
must be set to: C:\Windows\Temp
-
Windows 7 /
Server 2008 and higher
If you are using a NAV Server or Local
connection, you will find most of the information you need to configure
your data source on the Connection tab.
-
The
folder C:\Windows\System32\config\systemprofile\desktop must
exist and you must have Full Control permissions
to both the systemprofile and desktop directories (if either folder
does not exist, it must be created)
-
For
64-bit versions of Windows, in addition to the folders under System32,
the folder C:\Windows\SysWOW64\config\systemprofile\desktop folder
must *also* exist and you need Full Control permissions
to both the systemprofile and desktop directories (if either folder
does not exist, it must be created)
-
You must have Log
on as Batch permissions. (see Setting
Log on as Batch Permissions below)
-
Local Launch, Remote Launch, Local Activation, and Remote Activation DCOM permissions for the Excel Application need to be set
to Allow. (see Setting
DCOM Permissions below)
-
The scheduled task needs to be run with Highest Privileges. (see Running
Tasks with Highest Privileges)
-
You may need to have your system administrator run CACLS to give
you permissions to the “C:\Windows\Tasks” folder and the files it
contains. This should allow you to edit and delete Windows tasks.
(see Setting
Permissions on Scheduled Tasks)
-
You must become a member of Backup Operators group. (see Becoming
a Member of Backup Operators)
Windows
Vista
-
The
directory C:\Windows\System32\config\systemprofile\desktop must
exist and you need Full Control permissions
to both the systemprofile and desktop directories (if either folder does
not exist, it must be created).
-
For
64-bit versions of Windows, in addition to the two folders under
System32, the folder C:\Windows\SystemWOW\config\systemprofile\desktop must
also exist and you need Full Control permissions
to both the systemprofile and “desktop” directories (if either folder
does not exist, it must be created)
-
You must have Log
on as Batch permissions. (see Setting
Log on as Batch Permissions below)
-
Local Launch, Remote Launch, Local Activation, and Remote Activation DCOM permissions for the Excel Application need to be set to Allow. (see Setting
DCOM Permissions below)
-
It is possible that you may need to have your system administrator
run CACLS to give you permissions to the the folder C:\Windows\Tasks and the files it contains. This should allow you to
edit and delete Windows tasks. (see Setting
Permissions on Scheduled Tasks)
All Versions of Windows:
Running Tasks with Highest Privileges
To run Jet reports
in a scheduled task when logged off of Windows you need the privileges that you
are allowed when logged on. In order to have these privileges you will
need to check the Run with highest
privileges option on the General tab
of the scheduled task.
In
order to check this task property you will need to be part of the Backup
Operators group. For more information about becoming a member of Backup
Operators see the Becoming
a Member of Backup Operators section.
Open the Task
Scheduler (Click the Windows Orb and type Task
Scheduler) and select the Jet task you wish to run. In the Actions
pane click Properties. On the General tab
check the Run with highest privileges box
and click OK. You will have to
do this every time a new task is created or edited through the Jet Scheduler.
Setting Log on as Batch Permissions
In Microsoft
Windows, when a user submits a job by means of the task scheduler, the task
scheduler logs that user on as a batch user rather than as an interactive user.
This means that to run a Jet Report using the Windows Task Scheduler you
will need Log on as Batch permissions.
This user permission
is defined in the Default Domain Controller Group Policy object (GPO) and in
the local security policy of workstations and servers.
To set “Log on as
Batch” permissions have your system administrator go to the Local Security
Policy editor in Administrative Tools. Then follow the links to Local Policies->User Rights Assignment. In the list of Policies right-click
on Log on as batch job and
select Properties. Click Add User or Group… and add the user that
needs to run the Jet scheduled task.
Setting DCOM Permissions
To run Jet reports
in a scheduled task you must have permissions to open and activate the Excel
application. These permissions can be set using the DCOM Configuration
utility.
To run
the DCOM Configuration utility have your system administrator click the Windows
orb and type DCOMCNFG to
open the Component Services console.
On
64-bit systems running a 32-bit version of MS Excel, type DCOMCNFG -32 to open the 32-bit version of the Component
Services console*
-
Go to Console
Root->Component
Services->Computers->My
Computer->DCOM
Config->Microsoft
Excel Application,
right-click it, and select Properties.
-
Click on the Security tab,
-
Select the Customize option in the Launch and Activation Permissions section and click the Edit… button.
-
Click Add... and add the user that
needs to run the Jet scheduled task.
-
Select the newly added user
and allow the Local Launch , Remote Launch , Local Activation , and Remote Activation options (click OK)
-
Select the Customize option in the Access Permissions section and click the Edit... button.
-
Click Add... and add the user that
needs to run the Jet scheduled task.
-
Select the newly added user
and allow Local Access and Remote Access (click OK)
*NOTE: on 64-bit systems running 32-Excel,
if Microsoft Excel Application does not appear in
the DCOMCNFG list, it may be necessary to run the 32-bit version of
the Microsoft Management Console [mmc -32] in order to add the
'Component Services' snap-in. Contact your system administrator for
further assistance.
Setting CACLS Permissions
See
the article on Setting
Permissions on Scheduled Tasks .
Becoming a Member of Backup Operators
To become a member
of the Backup Operators security group have your system administrator click on
the Windows Orb and type Computer
Management. In the Computer Management console select the Users folder in Local Users and Groups.
If the user is not present in the
list then it will be necessary to add them.
-
Right click on the blank
user area and select New User…
- Specify the UserID (without
the Domain) and full name.
- Enter and confirm the
password.
(NOTE: *uncheck* the box that states User must change password at next logon.)
Right-click on the
user that needs to be a member of Backup Operators, and select Properties. On the 'Member Of' tab
click Add... Type Backup Operators as the object name and
click OK.
NOTE: This article pertains to machines
with a 32 bit operating system. Adjustments will need to be made for 64
bit systems. Contact your